projects/linux·commit 362f6729

Merge tag 'usb-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb

362f6729 · Linus Torvalds <[email protected]> · 2017-07-03 19:30:55 -07:00

Pull USB/PHY updates from Greg KH:
 "Here is the big patchset of USB and PHY driver updates for 4.13-rc1.

  On the PHY side, they decided to move files around to "make things
  easier" in their tree. Hopefully that wasn't a mistake, but in
  linux-next testing, we haven't had any reported problems.

  There's the usual set of gadget and xhci and musb updates in here as
  well, along with a number of smaller updates for a raft of different
  USB drivers. Full details in the shortlog, nothing really major.

  All of these have been in linux-next for a while with no reported
  issues"

* tag 'usb-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (173 commits)
  Add USB quirk for HVR-950q to avoid intermittent device resets
  USB hub_probe: rework ugly goto-into-compound-statement
  usb: host: ohci-pxa27x: Handle return value of clk_prepare_enable
  USB: serial: cp210x: add ID for CEL EM3588 USB ZigBee stick
  usbip: Fix uninitialized variable bug in vhci
  usb: core: read USB ports from DT in the usbport LED trigger driver
  dt-bindings: leds: document new trigger-sources property
  usb: typec: ucsi: Add ACPI driver
  usb: typec: Add support for UCSI interface
  usb: musb: compress return logic into one line
  USB: serial: propagate late probe errors
  USB: serial: refactor port endpoint setup
  usb: musb: tusb6010_omap: Convert to DMAengine API
  ARM: OMAP2+: DMA: Add slave map entries for 24xx external request lines
  usb: musb: tusb6010: Handle DMA TX completion in DMA callback as well
  usb: musb: tusb6010_omap: Allocate DMA channels upfront
  usb: musb: tusb6010_omap: Create new struct for DMA data/parameters
  usb: musb: tusb6010_omap: Use one musb_ep_select call in tusb_omap_dma_program
  usb: musb: tusb6010: Add MUSB_G_NO_SKB_RESERVE to quirks
  usb: musb: Add quirk to avoid skb reserve in gadget mode
  ...
Commit
362f6729cbb1d6bbab59e069f19441b0622ff7ec
Parents
4422d80e · 6836796d

Merge commit. Changes below are compared with the first parent: 4422d80e.

Changes

246 files changed · +11217 −4615

FileStatusAddDelContent
Documentation/ABI/stable/sysfs-class-udcmodified+8−8View file
Documentation/ABI/testing/configfs-usb-gadget-uac1modified+10−8View file
Documentation/ABI/testing/configfs-usb-gadget-uac1_legacyadded+12−0View file
Documentation/ABI/testing/sysfs-class-typecmodified+15−0View file
Documentation/devicetree/bindings/leds/common.txtmodified+33−2View file
Documentation/devicetree/bindings/phy/bcm-ns-usb3-phy.txtmodified+19−8View file
Documentation/devicetree/bindings/phy/brcm,ns2-drd-phy.txtadded+30−0View file
Documentation/devicetree/bindings/phy/brcm-sata-phy.txtmodified+4−3View file
Documentation/devicetree/bindings/phy/meson-gxl-usb2-phy.txtadded+17−0View file
Documentation/devicetree/bindings/phy/meson8b-usb2-phy.txtmodified+2−1View file
Documentation/devicetree/bindings/phy/phy-cpcap-usb.txtadded+40−0View file
Documentation/devicetree/bindings/phy/phy-rockchip-inno-usb2.txtmodified+1−0View file
Documentation/devicetree/bindings/phy/rcar-gen3-phy-usb3.txtadded+46−0View file
Documentation/devicetree/bindings/usb/dwc3.txtmodified+2−0View file
Documentation/devicetree/bindings/usb/iproc-udc.txtadded+21−0View file
Documentation/devicetree/bindings/usb/usb-ohci.txtmodified+1−0View file
Documentation/driver-api/usb/dwc3.rstadded+712−0View file
Documentation/driver-api/usb/index.rstmodified+3−0View file
Documentation/usb/typec.rst → Documentation/driver-api/usb/typec.rstrenamed+0−0View file
Documentation/usb/usb3-debug-port.rst → Documentation/driver-api/usb/usb3-debug-port.rstrenamed+0−0View file
Documentation/usb/gadget-testing.txtmodified+49−4View file
MAINTAINERSmodified+10−10View file
arch/arm/mach-omap2/dma.cmodified+24−0View file
drivers/base/core.cmodified+16−0View file
drivers/base/pinctrl.cmodified+3−0View file
drivers/dma/omap-dma.cmodified+15−24View file
drivers/extcon/Kconfigmodified+1−0View file
drivers/extcon/extcon-arizona.cmodified+1−3View file
drivers/extcon/extcon-intel-int3496.cmodified+1−4View file
drivers/extcon/extcon.cmodified+5−6View file
drivers/phy/Kconfigmodified+12−480View file
drivers/phy/Makefilemodified+14−57View file
drivers/phy/allwinner/Kconfigadded+31−0View file
drivers/phy/allwinner/Makefileadded+2−0View file
drivers/phy/phy-sun4i-usb.c → drivers/phy/allwinner/phy-sun4i-usb.crenamed+0−0View file
drivers/phy/phy-sun9i-usb.c → drivers/phy/allwinner/phy-sun9i-usb.crenamed+0−0View file
drivers/phy/amlogic/Kconfigadded+27−0View file
drivers/phy/amlogic/Makefileadded+2−0View file
drivers/phy/amlogic/phy-meson-gxl-usb2.cadded+273−0View file
drivers/phy/phy-meson8b-usb2.c → drivers/phy/amlogic/phy-meson8b-usb2.crenamed+3−2View file
drivers/phy/broadcom/Kconfigadded+69−0View file
drivers/phy/broadcom/Makefileadded+7−0View file
drivers/phy/phy-bcm-cygnus-pcie.c → drivers/phy/broadcom/phy-bcm-cygnus-pcie.crenamed+0−0View file
drivers/phy/phy-bcm-kona-usb2.c → drivers/phy/broadcom/phy-bcm-kona-usb2.crenamed+0−0View file
drivers/phy/phy-bcm-ns-usb2.c → drivers/phy/broadcom/phy-bcm-ns-usb2.crenamed+0−0View file
drivers/phy/phy-bcm-ns-usb3.c → drivers/phy/broadcom/phy-bcm-ns-usb3.crenamed+166−64View file
drivers/phy/phy-bcm-ns2-pcie.c → drivers/phy/broadcom/phy-bcm-ns2-pcie.crenamed+0−0View file
drivers/phy/broadcom/phy-bcm-ns2-usbdrd.cadded+437−0View file
drivers/phy/phy-brcm-sata.c → drivers/phy/broadcom/phy-brcm-sata.crenamed+73−0View file
drivers/phy/hisilicon/Kconfigadded+20−0View file
drivers/phy/hisilicon/Makefileadded+2−0View file
drivers/phy/phy-hi6220-usb.c → drivers/phy/hisilicon/phy-hi6220-usb.crenamed+0−0View file
drivers/phy/phy-hix5hd2-sata.c → drivers/phy/hisilicon/phy-hix5hd2-sata.crenamed+0−0View file
drivers/phy/marvell/Kconfigadded+50−0View file
drivers/phy/marvell/Makefileadded+6−0View file
drivers/phy/phy-armada375-usb2.c → drivers/phy/marvell/phy-armada375-usb2.crenamed+0−0View file
drivers/phy/phy-berlin-sata.c → drivers/phy/marvell/phy-berlin-sata.crenamed+0−0View file
drivers/phy/phy-berlin-usb.c → drivers/phy/marvell/phy-berlin-usb.crenamed+0−0View file
drivers/phy/phy-mvebu-sata.c → drivers/phy/marvell/phy-mvebu-sata.crenamed+0−0View file
drivers/phy/phy-pxa-28nm-hsic.c → drivers/phy/marvell/phy-pxa-28nm-hsic.crenamed+0−0View file
drivers/phy/phy-pxa-28nm-usb2.c → drivers/phy/marvell/phy-pxa-28nm-usb2.crenamed+0−0View file
drivers/phy/motorola/Kconfigadded+12−0View file
drivers/phy/motorola/Makefileadded+5−0View file
drivers/phy/motorola/phy-cpcap-usb.cadded+676−0View file
drivers/phy/qualcomm/Kconfigadded+58−0View file
drivers/phy/qualcomm/Makefileadded+9−0View file
drivers/phy/phy-qcom-apq8064-sata.c → drivers/phy/qualcomm/phy-qcom-apq8064-sata.crenamed+0−0View file
drivers/phy/phy-qcom-ipq806x-sata.c → drivers/phy/qualcomm/phy-qcom-ipq806x-sata.crenamed+0−0View file
drivers/phy/phy-qcom-qmp.c → drivers/phy/qualcomm/phy-qcom-qmp.crenamed+0−0View file
drivers/phy/phy-qcom-qusb2.c → drivers/phy/qualcomm/phy-qcom-qusb2.crenamed+0−0View file
drivers/phy/phy-qcom-ufs-i.h → drivers/phy/qualcomm/phy-qcom-ufs-i.hrenamed+0−0View file
drivers/phy/phy-qcom-ufs-qmp-14nm.c → drivers/phy/qualcomm/phy-qcom-ufs-qmp-14nm.crenamed+0−0View file
drivers/phy/phy-qcom-ufs-qmp-14nm.h → drivers/phy/qualcomm/phy-qcom-ufs-qmp-14nm.hrenamed+0−0View file
drivers/phy/phy-qcom-ufs-qmp-20nm.c → drivers/phy/qualcomm/phy-qcom-ufs-qmp-20nm.crenamed+0−0View file
drivers/phy/phy-qcom-ufs-qmp-20nm.h → drivers/phy/qualcomm/phy-qcom-ufs-qmp-20nm.hrenamed+0−0View file
drivers/phy/phy-qcom-ufs.c → drivers/phy/qualcomm/phy-qcom-ufs.crenamed+0−0View file
drivers/phy/phy-qcom-usb-hs.c → drivers/phy/qualcomm/phy-qcom-usb-hs.crenamed+1−2View file
drivers/phy/phy-qcom-usb-hsic.c → drivers/phy/qualcomm/phy-qcom-usb-hsic.crenamed+1−2View file
drivers/phy/renesas/Kconfigadded+24−0View file
drivers/phy/renesas/Makefileadded+3−0View file
drivers/phy/phy-rcar-gen2.c → drivers/phy/renesas/phy-rcar-gen2.crenamed+0−0View file
drivers/phy/phy-rcar-gen3-usb2.c → drivers/phy/renesas/phy-rcar-gen3-usb2.crenamed+0−0View file
drivers/phy/renesas/phy-rcar-gen3-usb3.cadded+226−0View file
drivers/phy/rockchip/Kconfigadded+51−0View file
drivers/phy/rockchip/Makefileadded+6−0View file
drivers/phy/phy-rockchip-dp.c → drivers/phy/rockchip/phy-rockchip-dp.crenamed+0−0View file
drivers/phy/phy-rockchip-emmc.c → drivers/phy/rockchip/phy-rockchip-emmc.crenamed+0−0View file
drivers/phy/phy-rockchip-inno-usb2.c → drivers/phy/rockchip/phy-rockchip-inno-usb2.crenamed+70−4View file
drivers/phy/phy-rockchip-pcie.c → drivers/phy/rockchip/phy-rockchip-pcie.crenamed+0−0View file
drivers/phy/phy-rockchip-typec.c → drivers/phy/rockchip/phy-rockchip-typec.crenamed+0−0View file
drivers/phy/phy-rockchip-usb.c → drivers/phy/rockchip/phy-rockchip-usb.crenamed+0−0View file
drivers/phy/samsung/Kconfigadded+95−0View file
drivers/phy/samsung/Makefileadded+11−0View file
drivers/phy/phy-exynos-dp-video.c → drivers/phy/samsung/phy-exynos-dp-video.crenamed+0−0View file
drivers/phy/phy-exynos-mipi-video.c → drivers/phy/samsung/phy-exynos-mipi-video.crenamed+0−0View file
drivers/phy/phy-exynos-pcie.c → drivers/phy/samsung/phy-exynos-pcie.crenamed+0−0View file
drivers/phy/phy-exynos4210-usb2.c → drivers/phy/samsung/phy-exynos4210-usb2.crenamed+0−0View file
drivers/phy/phy-exynos4x12-usb2.c → drivers/phy/samsung/phy-exynos4x12-usb2.crenamed+0−0View file
drivers/phy/phy-exynos5-usbdrd.c → drivers/phy/samsung/phy-exynos5-usbdrd.crenamed+0−0View file
drivers/phy/phy-exynos5250-sata.c → drivers/phy/samsung/phy-exynos5250-sata.crenamed+0−0View file
drivers/phy/phy-exynos5250-usb2.c → drivers/phy/samsung/phy-exynos5250-usb2.crenamed+0−0View file
drivers/phy/phy-s5pv210-usb2.c → drivers/phy/samsung/phy-s5pv210-usb2.crenamed+0−0View file
drivers/phy/phy-samsung-usb2.c → drivers/phy/samsung/phy-samsung-usb2.crenamed+0−0View file
drivers/phy/phy-samsung-usb2.h → drivers/phy/samsung/phy-samsung-usb2.hrenamed+0−0View file
drivers/phy/st/Kconfigadded+33−0View file
drivers/phy/st/Makefileadded+4−0View file
drivers/phy/phy-miphy28lp.c → drivers/phy/st/phy-miphy28lp.crenamed+0−0View file
drivers/phy/phy-spear1310-miphy.c → drivers/phy/st/phy-spear1310-miphy.crenamed+0−0View file
drivers/phy/phy-spear1340-miphy.c → drivers/phy/st/phy-spear1340-miphy.crenamed+0−0View file
drivers/phy/phy-stih407-usb.c → drivers/phy/st/phy-stih407-usb.crenamed+0−0View file
drivers/phy/ti/Kconfigadded+78−0View file
drivers/phy/ti/Makefileadded+7−0View file
drivers/phy/phy-da8xx-usb.c → drivers/phy/ti/phy-da8xx-usb.crenamed+0−0View file
drivers/phy/phy-dm816x-usb.c → drivers/phy/ti/phy-dm816x-usb.crenamed+0−0View file
drivers/phy/phy-omap-control.c → drivers/phy/ti/phy-omap-control.crenamed+0−0View file
drivers/phy/phy-omap-usb2.c → drivers/phy/ti/phy-omap-usb2.crenamed+0−0View file
drivers/phy/phy-ti-pipe3.c → drivers/phy/ti/phy-ti-pipe3.crenamed+0−0View file
drivers/phy/phy-tusb1210.c → drivers/phy/ti/phy-tusb1210.crenamed+38−3View file
drivers/phy/phy-twl4030-usb.c → drivers/phy/ti/phy-twl4030-usb.crenamed+0−0View file
drivers/thermal/max77620_thermal.cmodified+6−2View file
drivers/usb/chipidea/core.cmodified+21−8View file
drivers/usb/chipidea/otg_fsm.cmodified+4−4View file
drivers/usb/class/cdc-wdm.cmodified+4−13View file
drivers/usb/core/devio.cmodified+3−0View file
drivers/usb/core/hcd.cmodified+12−2View file
drivers/usb/core/hub.cmodified+23−28View file
drivers/usb/core/ledtrig-usbport.cmodified+56−0View file
drivers/usb/core/of.cmodified+2−1View file
drivers/usb/core/quirks.cmodified+4−0View file
drivers/usb/core/usb-acpi.cmodified+23−3View file
drivers/usb/core/usb.cmodified+2−0View file
drivers/usb/dwc3/core.cmodified+46−11View file
drivers/usb/dwc3/core.hmodified+28−20View file
drivers/usb/dwc3/debug.hmodified+240−7View file
drivers/usb/dwc3/debugfs.cmodified+4−5View file
drivers/usb/dwc3/dwc3-exynos.cmodified+10−3View file
drivers/usb/dwc3/dwc3-st.cmodified+1−1View file
drivers/usb/dwc3/ep0.cmodified+7−1View file
drivers/usb/dwc3/gadget.cmodified+173−126View file
drivers/usb/dwc3/gadget.hmodified+18−4View file
drivers/usb/dwc3/trace.hmodified+15−13View file
drivers/usb/dwc3/ulpi.cmodified+12−0View file
drivers/usb/early/xhci-dbc.cmodified+0−1View file
drivers/usb/gadget/Kconfigmodified+28−3View file
drivers/usb/gadget/composite.cmodified+34−25View file
drivers/usb/gadget/configfs.cmodified+9−5View file
drivers/usb/gadget/function/Makefilemodified+4−1View file
drivers/usb/gadget/function/f_fs.cmodified+63−47View file
drivers/usb/gadget/function/f_mass_storage.cmodified+174−256View file
drivers/usb/gadget/function/f_uac1.cmodified+358−538View file
drivers/usb/gadget/function/f_uac1_legacy.cadded+1021−0View file
drivers/usb/gadget/function/f_uac2.cmodified+101−706View file
drivers/usb/gadget/function/storage_common.hmodified+5−13View file
drivers/usb/gadget/function/u_audio.cadded+662−0View file
drivers/usb/gadget/function/u_audio.hadded+95−0View file
drivers/usb/gadget/function/u_fs.hmodified+3−0View file
drivers/usb/gadget/function/u_uac1.hmodified+23−64View file
drivers/usb/gadget/function/u_uac1.c → drivers/usb/gadget/function/u_uac1_legacy.crenamed+4−3View file
drivers/usb/gadget/function/u_uac1_legacy.hadded+82−0View file
drivers/usb/gadget/legacy/Kconfigmodified+12−3View file
drivers/usb/gadget/legacy/audio.cmodified+54−1View file
drivers/usb/gadget/legacy/mass_storage.cmodified+6−2View file
drivers/usb/gadget/udc/Kconfigmodified+16−2View file
drivers/usb/gadget/udc/Makefilemodified+2−1View file
drivers/usb/gadget/udc/amd5536udc.hmodified+17−1View file
drivers/usb/gadget/udc/amd5536udc_pci.cmodified+1−0View file
drivers/usb/gadget/udc/atmel_usba_udc.cmodified+2−2View file
drivers/usb/gadget/udc/atmel_usba_udc.hmodified+6−21View file
drivers/usb/gadget/udc/bdc/bdc_core.cmodified+1−1View file
drivers/usb/gadget/udc/core.cmodified+43−3View file
drivers/usb/gadget/udc/dummy_hcd.cmodified+23−16View file
drivers/usb/gadget/udc/mv_udc_core.cmodified+6−3View file
drivers/usb/gadget/udc/net2280.cmodified+3−2View file
drivers/usb/gadget/udc/renesas_usb3.cmodified+392−0View file
drivers/usb/gadget/udc/amd5536udc.c → drivers/usb/gadget/udc/snps_udc_core.crenamed+48−32View file
drivers/usb/gadget/udc/snps_udc_plat.cadded+344−0View file
drivers/usb/gadget/udc/udc-xilinx.cmodified+1−1View file
drivers/usb/host/Kconfigmodified+10−2View file
drivers/usb/host/Makefilemodified+0−1View file
drivers/usb/host/ehci-exynos.cmodified+3−1View file
drivers/usb/host/ehci-sched.cmodified+1−1View file
drivers/usb/host/ehci-timer.cmodified+1−1View file
drivers/usb/host/fotg210-hcd.cmodified+1−1View file
drivers/usb/host/ohci-omap3.cdeleted+0−211View before deletion
drivers/usb/host/ohci-platform.cmodified+13−0View file
drivers/usb/host/ohci-pxa27x.cmodified+7−3View file
drivers/usb/host/uhci-hcd.cmodified+14−3View file
drivers/usb/host/uhci-hcd.hmodified+51−0View file
drivers/usb/host/uhci-platform.cmodified+21−1View file
drivers/usb/host/xhci-mem.cmodified+6−75View file
drivers/usb/host/xhci-ring.cmodified+120−80View file
drivers/usb/host/xhci.cmodified+12−13View file
drivers/usb/host/xhci.hmodified+11−11View file
drivers/usb/misc/Kconfigmodified+0−26View file
drivers/usb/misc/Makefilemodified+0−1View file
drivers/usb/misc/iowarrior.cmodified+3−8View file
drivers/usb/misc/ucsi.cdeleted+0−478View before deletion
drivers/usb/misc/ucsi.hdeleted+0−215View before deletion
drivers/usb/misc/usbsevseg.cmodified+8−10View file
drivers/usb/mtu3/mtu3.hmodified+2−6View file
drivers/usb/mtu3/mtu3_plat.cmodified+20−3View file
drivers/usb/musb/musb_core.cmodified+3−0View file
drivers/usb/musb/musb_core.hmodified+1−0View file
drivers/usb/musb/musb_cppi41.cmodified+7−4View file
drivers/usb/musb/musb_host.cmodified+2−4View file
drivers/usb/musb/tusb6010.cmodified+5−16View file
drivers/usb/musb/tusb6010_omap.cmodified+155−224View file
drivers/usb/phy/Kconfigmodified+3−3View file
drivers/usb/phy/phy-msm-usb.cmodified+18−67View file
drivers/usb/phy/phy-qcom-8x16-usb.cmodified+5−15View file
drivers/usb/phy/phy.cmodified+57−0View file
drivers/usb/serial/cp210x.cmodified+1−0View file
drivers/usb/serial/qcserial.cmodified+2−0View file
drivers/usb/serial/upd78f0730.cmodified+3−3View file
drivers/usb/serial/usb-serial.cmodified+141−102View file
drivers/usb/storage/ene_ub6250.cmodified+51−36View file
drivers/usb/typec/Kconfigmodified+2−0View file
drivers/usb/typec/Makefilemodified+1−0View file
drivers/usb/typec/typec.cmodified+121−15View file
drivers/usb/typec/ucsi/Kconfigadded+39−0View file
drivers/usb/typec/ucsi/Makefileadded+9−0View file
drivers/usb/typec/ucsi/debug.hadded+64−0View file
drivers/usb/typec/ucsi/trace.cadded+2−0View file
drivers/usb/typec/ucsi/trace.hadded+143−0View file
drivers/usb/typec/ucsi/ucsi.cadded+790−0View file
drivers/usb/typec/ucsi/ucsi.hadded+335−0View file
drivers/usb/typec/ucsi/ucsi_acpi.cadded+158−0View file
drivers/usb/usbip/stub_main.cmodified+4−0View file
drivers/usb/usbip/stub_tx.cmodified+4−0View file
drivers/usb/usbip/vhci.hmodified+26−10View file
drivers/usb/usbip/vhci_hcd.cmodified+444−161View file
drivers/usb/usbip/vhci_rx.cmodified+9−7View file
drivers/usb/usbip/vhci_sysfs.cmodified+95−43View file
drivers/uwb/i1480/dfu/phy.cmodified+1−0View file
include/linux/device.hmodified+4−0View file
drivers/phy/ulpi_phy.h → include/linux/phy/ulpi_phy.hrenamed+0−0View file
include/linux/usb/gadget.hmodified+4−0View file
include/linux/usb/hcd.hmodified+2−2View file
include/linux/usb/phy.hmodified+7−0View file
include/linux/usb/typec.hmodified+7−3View file
include/uapi/linux/usb/functionfs.hmodified+4−3View file
include/uapi/linux/usbdevice_fs.hmodified+6−0View file
tools/usb/testusb.cmodified+9−7View file
tools/usb/usbip/libsrc/vhci_driver.cmodified+96−37View file
tools/usb/usbip/libsrc/vhci_driver.hmodified+9−1View file
tools/usb/usbip/src/usbip_attach.cmodified+4−1View file

Only the first 600 diff lines are shown. Download the complete patch.

Documentation/ABI/stable/sysfs-class-udc

View file
diff --git a/Documentation/ABI/stable/sysfs-class-udc b/Documentation/ABI/stable/sysfs-class-udc
index 85d3dac..d1e2f3e 100644
--- a/Documentation/ABI/stable/sysfs-class-udc
+++ b/Documentation/ABI/stable/sysfs-class-udc
@@ -55,14 +55,6 @@ Description:
Indicates the maximum USB speed supported by this port.
Users:
-What: /sys/class/udc/<udc>/maximum_speed
-Date: June 2011
-KernelVersion: 3.1
-Contact: Felipe Balbi <[email protected]>
-Description:
- Indicates the maximum USB speed supported by this port.
-Users:
-
What: /sys/class/udc/<udc>/soft_connect
Date: June 2011
KernelVersion: 3.1
@@ -91,3 +83,11 @@ Description:
'configured', and 'suspended'; however not all USB Device
Controllers support reporting all states.
Users:
+
+What: /sys/class/udc/<udc>/function
+Date: June 2017
+KernelVersion: 4.13
+Contact: Felipe Balbi <[email protected]>
+Description:
+ Prints out name of currently running USB Gadget Driver.
+Users:

Documentation/ABI/testing/configfs-usb-gadget-uac1

View file
diff --git a/Documentation/ABI/testing/configfs-usb-gadget-uac1 b/Documentation/ABI/testing/configfs-usb-gadget-uac1
index 8ba9a12..abfe447 100644
--- a/Documentation/ABI/testing/configfs-usb-gadget-uac1
+++ b/Documentation/ABI/testing/configfs-usb-gadget-uac1
@@ -1,12 +1,14 @@
What: /config/usb-gadget/gadget/functions/uac1.name
-Date: Sep 2014
-KernelVersion: 3.18
+Date: June 2017
+KernelVersion: 4.14
Description:
The attributes:
- audio_buf_size - audio buffer size
- fn_cap - capture pcm device file name
- fn_cntl - control device file name
- fn_play - playback pcm device file name
- req_buf_size - ISO OUT endpoint request buffer size
- req_count - ISO OUT endpoint request count
+ c_chmask - capture channel mask
+ c_srate - capture sampling rate
+ c_ssize - capture sample size (bytes)
+ p_chmask - playback channel mask
+ p_srate - playback sampling rate
+ p_ssize - playback sample size (bytes)
+ req_number - the number of pre-allocated request
+ for both capture and playback

Documentation/ABI/testing/configfs-usb-gadget-uac1_legacy

View file
diff --git a/Documentation/ABI/testing/configfs-usb-gadget-uac1_legacy b/Documentation/ABI/testing/configfs-usb-gadget-uac1_legacy
new file mode 100644
index 0000000..b2eaefd
--- /dev/null
+++ b/Documentation/ABI/testing/configfs-usb-gadget-uac1_legacy
@@ -0,0 +1,12 @@
+What: /config/usb-gadget/gadget/functions/uac1_legacy.name
+Date: Sep 2014
+KernelVersion: 3.18
+Description:
+ The attributes:
+
+ audio_buf_size - audio buffer size
+ fn_cap - capture pcm device file name
+ fn_cntl - control device file name
+ fn_play - playback pcm device file name
+ req_buf_size - ISO OUT endpoint request buffer size
+ req_count - ISO OUT endpoint request count

Documentation/ABI/testing/sysfs-class-typec

View file
diff --git a/Documentation/ABI/testing/sysfs-class-typec b/Documentation/ABI/testing/sysfs-class-typec
index d4a3d23..5be552e 100644
--- a/Documentation/ABI/testing/sysfs-class-typec
+++ b/Documentation/ABI/testing/sysfs-class-typec
@@ -30,6 +30,21 @@ Description:
Valid values: source, sink
+What: /sys/class/typec/<port>/port_type
+Date: May 2017
+Contact: Badhri Jagan Sridharan <[email protected]>
+Description:
+ Indicates the type of the port. This attribute can be used for
+ requesting a change in the port type. Port type change is
+ supported as a synchronous operation, so write(2) to the
+ attribute will not return until the operation has finished.
+
+ Valid values:
+ - source (The port will behave as source only DFP port)
+ - sink (The port will behave as sink only UFP port)
+ - dual (The port will behave as dual-role-data and
+ dual-role-power port)
+
What: /sys/class/typec/<port>/vconn_source
Date: April 2017
Contact: Heikki Krogerus <[email protected]>

Documentation/devicetree/bindings/leds/common.txt

View file
diff --git a/Documentation/devicetree/bindings/leds/common.txt b/Documentation/devicetree/bindings/leds/common.txt
index 24b6560..1d4afe9 100644
--- a/Documentation/devicetree/bindings/leds/common.txt
+++ b/Documentation/devicetree/bindings/leds/common.txt
@@ -1,4 +1,4 @@
-Common leds properties.
+* Common leds properties.
LED and flash LED devices provide the same basic functionality as current
regulators, but extended with LED and flash LED specific features like
@@ -49,6 +49,22 @@ Optional properties for child nodes:
- panic-indicator : This property specifies that the LED should be used,
if at all possible, as a panic indicator.
+- trigger-sources : List of devices which should be used as a source triggering
+ this LED activity. Some LEDs can be related to a specific
+ device and should somehow indicate its state. E.g. USB 2.0
+ LED may react to device(s) in a USB 2.0 port(s).
+ Another common example is switch or router with multiple
+ Ethernet ports each of them having its own LED assigned
+ (assuming they are not hardwired). In such cases this
+ property should contain phandle(s) of related source
+ device(s).
+ In many cases LED can be related to more than one device
+ (e.g. one USB LED vs. multiple USB ports). Each source
+ should be represented by a node in the device tree and be
+ referenced by a phandle and a set of phandle arguments. A
+ length of arguments should be specified by the
+ #trigger-source-cells property in the source node.
+
Required properties for flash LED child nodes:
- flash-max-microamp : Maximum flash LED supply current in microamperes.
- flash-max-timeout-us : Maximum timeout in microseconds after which the flash
@@ -59,7 +75,17 @@ property can be omitted.
For controllers that have no configurable timeout the flash-max-timeout-us
property can be omitted.
-Examples:
+* Trigger source providers
+
+Each trigger source should be represented by a device tree node. It may be e.g.
+a USB port or an Ethernet device.
+
+Required properties for trigger source:
+- #trigger-source-cells : Number of cells in a source trigger. Typically 0 for
+ nodes of simple trigger sources (e.g. a specific USB
+ port).
+
+* Examples
gpio-leds {
compatible = "gpio-leds";
@@ -69,6 +95,11 @@ gpio-leds {
linux,default-trigger = "heartbeat";
gpios = <&gpio0 0 GPIO_ACTIVE_HIGH>;
};
+
+ usb {
+ gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>;
+ trigger-sources = <&ohci_port1>, <&ehci_port1>;
+ };
};
max77693-led {

Documentation/devicetree/bindings/phy/bcm-ns-usb3-phy.txt

View file
diff --git a/Documentation/devicetree/bindings/phy/bcm-ns-usb3-phy.txt b/Documentation/devicetree/bindings/phy/bcm-ns-usb3-phy.txt
index 09aeba9..32f0572 100644
--- a/Documentation/devicetree/bindings/phy/bcm-ns-usb3-phy.txt
+++ b/Documentation/devicetree/bindings/phy/bcm-ns-usb3-phy.txt
@@ -3,9 +3,10 @@ Driver for Broadcom Northstar USB 3.0 PHY
Required properties:
- compatible: one of: "brcm,ns-ax-usb3-phy", "brcm,ns-bx-usb3-phy".
-- reg: register mappings for DMP (Device Management Plugin) and ChipCommon B
- MMI.
-- reg-names: "dmp" and "ccb-mii"
+- reg: address of MDIO bus device
+- usb3-dmp-syscon: phandle to syscon with DMP (Device Management Plugin)
+ registers
+- #phy-cells: must be 0
Initialization of USB 3.0 PHY depends on Northstar version. There are currently
three known series: Ax, Bx and Cx.
@@ -15,9 +16,19 @@ Known B1: BCM4707 rev 6
Known C0: BCM47094 rev 0
Example:
- usb3-phy {
- compatible = "brcm,ns-ax-usb3-phy";
- reg = <0x18105000 0x1000>, <0x18003000 0x1000>;
- reg-names = "dmp", "ccb-mii";
- #phy-cells = <0>;
+ mdio: mdio@0 {
+ reg = <0x0>;
+ #size-cells = <1>;
+ #address-cells = <0>;
+
+ usb3-phy@10 {
+ compatible = "brcm,ns-ax-usb3-phy";
+ reg = <0x10>;
+ usb3-dmp-syscon = <&usb3_dmp>;
+ #phy-cells = <0>;
+ };
+ };
+
+ usb3_dmp: syscon@18105000 {
+ reg = <0x18105000 0x1000>;
};

Documentation/devicetree/bindings/phy/brcm,ns2-drd-phy.txt

View file
diff --git a/Documentation/devicetree/bindings/phy/brcm,ns2-drd-phy.txt b/Documentation/devicetree/bindings/phy/brcm,ns2-drd-phy.txt
new file mode 100644
index 0000000..04f063a
--- /dev/null
+++ b/Documentation/devicetree/bindings/phy/brcm,ns2-drd-phy.txt
@@ -0,0 +1,30 @@
+BROADCOM NORTHSTAR2 USB2 (DUAL ROLE DEVICE) PHY
+
+Required properties:
+ - compatible: brcm,ns2-drd-phy
+ - reg: offset and length of the NS2 PHY related registers.
+ - reg-names
+ The below registers must be provided.
+ icfg - for DRD ICFG configurations
+ rst-ctrl - for DRD IDM reset
+ crmu-ctrl - for CRMU core vdd, PHY and PHY PLL reset
+ usb2-strap - for port over current polarity reversal
+ - #phy-cells: Must be 0. No args required.
+ - vbus-gpios: vbus gpio binding
+ - id-gpios: id gpio binding
+
+Refer to phy/phy-bindings.txt for the generic PHY binding properties
+
+Example:
+ usbdrd_phy: phy@66000960 {
+ #phy-cells = <0>;
+ compatible = "brcm,ns2-drd-phy";
+ reg = <0x66000960 0x24>,
+ <0x67012800 0x4>,
+ <0x6501d148 0x4>,
+ <0x664d0700 0x4>;
+ reg-names = "icfg", "rst-ctrl",
+ "crmu-ctrl", "usb2-strap";
+ id-gpios = <&gpio_g 30 0>;
+ vbus-gpios = <&gpio_g 31 0>;
+ };

Documentation/devicetree/bindings/phy/brcm-sata-phy.txt

View file
diff --git a/Documentation/devicetree/bindings/phy/brcm-sata-phy.txt b/Documentation/devicetree/bindings/phy/brcm-sata-phy.txt
index 6ccce09..97977cd 100644
--- a/Documentation/devicetree/bindings/phy/brcm-sata-phy.txt
+++ b/Documentation/devicetree/bindings/phy/brcm-sata-phy.txt
@@ -7,12 +7,13 @@ Required properties:
"brcm,iproc-ns2-sata-phy"
"brcm,iproc-nsp-sata-phy"
"brcm,phy-sata3"
+ "brcm,iproc-sr-sata-phy"
- address-cells: should be 1
- size-cells: should be 0
- reg: register ranges for the PHY PCB interface
- reg-names: should be "phy" and "phy-ctrl"
The "phy-ctrl" registers are only required for
- "brcm,iproc-ns2-sata-phy".
+ "brcm,iproc-ns2-sata-phy" and "brcm,iproc-sr-sata-phy".
Sub-nodes:
Each port's PHY should be represented as a sub-node.
@@ -23,8 +24,8 @@ Sub-nodes required properties:
Sub-nodes optional properties:
- brcm,enable-ssc: use spread spectrum clocking (SSC) on this port
- This property is not applicable for "brcm,iproc-ns2-sata-phy" and
- "brcm,iproc-nsp-sata-phy".
+ This property is not applicable for "brcm,iproc-ns2-sata-phy",
+ "brcm,iproc-nsp-sata-phy" and "brcm,iproc-sr-sata-phy".
Example:
sata-phy@f0458100 {

Documentation/devicetree/bindings/phy/meson-gxl-usb2-phy.txt

View file
diff --git a/Documentation/devicetree/bindings/phy/meson-gxl-usb2-phy.txt b/Documentation/devicetree/bindings/phy/meson-gxl-usb2-phy.txt
new file mode 100644
index 0000000..a105494
--- /dev/null
+++ b/Documentation/devicetree/bindings/phy/meson-gxl-usb2-phy.txt
@@ -0,0 +1,17 @@
+* Amlogic Meson GXL and GXM USB2 PHY binding
+
+Required properties:
+- compatible: Should be "amlogic,meson-gxl-usb2-phy"
+- reg: The base address and length of the registers
+- #phys-cells: must be 0 (see phy-bindings.txt in this directory)
+
+Optional properties:
+- phy-supply: see phy-bindings.txt in this directory
+
+
+Example:
+ usb2_phy0: phy@78000 {
+ compatible = "amlogic,meson-gxl-usb2-phy";
+ #phy-cells = <0>;
+ reg = <0x0 0x78000 0x0 0x20>;
+ };

Documentation/devicetree/bindings/phy/meson8b-usb2-phy.txt

View file
diff --git a/Documentation/devicetree/bindings/phy/meson8b-usb2-phy.txt b/Documentation/devicetree/bindings/phy/meson8b-usb2-phy.txt
index 5fa73b9..d81d73a 100644
--- a/Documentation/devicetree/bindings/phy/meson8b-usb2-phy.txt
+++ b/Documentation/devicetree/bindings/phy/meson8b-usb2-phy.txt
@@ -1,7 +1,8 @@
-* Amlogic Meson8b and GXBB USB2 PHY
+* Amlogic Meson8, Meson8b and GXBB USB2 PHY
Required properties:
- compatible: Depending on the platform this should be one of:
+ "amlogic,meson8-usb2-phy"
"amlogic,meson8b-usb2-phy"
"amlogic,meson-gxbb-usb2-phy"
- reg: The base address and length of the registers

Documentation/devicetree/bindings/phy/phy-cpcap-usb.txt

View file
diff --git a/Documentation/devicetree/bindings/phy/phy-cpcap-usb.txt b/Documentation/devicetree/bindings/phy/phy-cpcap-usb.txt
new file mode 100644
index 0000000..2eb9b2b
--- /dev/null
+++ b/Documentation/devicetree/bindings/phy/phy-cpcap-usb.txt
@@ -0,0 +1,40 @@
+Motorola CPCAP PMIC USB PHY binding
+
+Required properties:
+compatible: Shall be either "motorola,cpcap-usb-phy" or
+ "motorola,mapphone-cpcap-usb-phy"
+#phy-cells: Shall be 0
+interrupts: CPCAP PMIC interrupts used by the USB PHY
+interrupt-names: Interrupt names
+io-channels: IIO ADC channels used by the USB PHY
+io-channel-names: IIO ADC channel names
+vusb-supply: Regulator for the PHY
+
+Optional properties:
+pinctrl: Optional alternate pin modes for the PHY
+pinctrl-names: Names for optional pin modes
+mode-gpios: Optional GPIOs for configuring alternate modes
+
+Example:
+cpcap_usb2_phy: phy {
+ compatible = "motorola,mapphone-cpcap-usb-phy";
+ pinctrl-0 = <&usb_gpio_mux_sel1 &usb_gpio_mux_sel2>;
+ pinctrl-1 = <&usb_ulpi_pins>;
+ pinctrl-2 = <&usb_utmi_pins>;
+ pinctrl-3 = <&uart3_pins>;
+ pinctrl-names = "default", "ulpi", "utmi", "uart";
+ #phy-cells = <0>;
+ interrupts-extended = <
+ &cpcap 15 0 &cpcap 14 0 &cpcap 28 0 &cpcap 19 0
+ &cpcap 18 0 &cpcap 17 0 &cpcap 16 0 &cpcap 49 0
+ &cpcap 48 1
+ >;
+ interrupt-names =
+ "id_ground", "id_float", "se0conn", "vbusvld",
+ "sessvld", "sessend", "se1", "dm", "dp";
+ mode-gpios = <&gpio2 28 GPIO_ACTIVE_HIGH
+ &gpio1 0 GPIO_ACTIVE_HIGH>;
+ io-channels = <&cpcap_adc 2>, <&cpcap_adc 7>;
+ io-channel-names = "vbus", "id";
+ vusb-supply = <&vusb>;
+};

Documentation/devicetree/bindings/phy/phy-rockchip-inno-usb2.txt

View file
diff --git a/Documentation/devicetree/bindings/phy/phy-rockchip-inno-usb2.txt b/Documentation/devicetree/bindings/phy/phy-rockchip-inno-usb2.txt
index e71a8d2..84d59b0 100644
--- a/Documentation/devicetree/bindings/phy/phy-rockchip-inno-usb2.txt
+++ b/Documentation/devicetree/bindings/phy/phy-rockchip-inno-usb2.txt
@@ -2,6 +2,7 @@ ROCKCHIP USB2.0 PHY WITH INNO IP BLOCK
Required properties (phy (parent) node):
- compatible : should be one of the listed compatibles:
+ * "rockchip,rk3228-usb2phy"
* "rockchip,rk3328-usb2phy"
* "rockchip,rk3366-usb2phy"
* "rockchip,rk3399-usb2phy"

Documentation/devicetree/bindings/phy/rcar-gen3-phy-usb3.txt

View file
diff --git a/Documentation/devicetree/bindings/phy/rcar-gen3-phy-usb3.txt b/Documentation/devicetree/bindings/phy/rcar-gen3-phy-usb3.txt
new file mode 100644
index 0000000..f94cea4
--- /dev/null
+++ b/Documentation/devicetree/bindings/phy/rcar-gen3-phy-usb3.txt
@@ -0,0 +1,46 @@
+* Renesas R-Car generation 3 USB 3.0 PHY
+
+This file provides information on what the device node for the R-Car generation
+3 USB 3.0 PHY contains.
+If you want to enable spread spectrum clock (ssc), you should use USB_EXTAL
+instead of USB3_CLK. However, if you don't want to these features, you don't
+need this driver.
+
+Required properties:
+- compatible: "renesas,r8a7795-usb3-phy" if the device is a part of an R8A7795
+ SoC.
+ "renesas,r8a7796-usb3-phy" if the device is a part of an R8A7796
+ SoC.
+ "renesas,rcar-gen3-usb3-phy" for a generic R-Car Gen3 compatible
+ device.
+
+ When compatible with the generic version, nodes must list the
+ SoC-specific version corresponding to the platform first
+ followed by the generic version.
+
+- reg: offset and length of the USB 3.0 PHY register block.
+- clocks: A list of phandles and clock-specifier pairs.
+- clock-names: Name of the clocks.
+ - The funcional clock must be "usb3-if".
+ - The usb3's external clock must be "usb3s_clk".
+ - The usb2's external clock must be "usb_extal". If you want to use the ssc,
+ the clock-frequency must not be 0.
+- #phy-cells: see phy-bindings.txt in the same directory, must be <0>.
+
+Optional properties:
+- renesas,ssc-range: Enable/disable spread spectrum clock (ssc) by using
+ the following values as u32:
+ - 0 (or the property doesn't exist): disable the ssc
+ - 4980: enable the ssc as -4980 ppm
+ - 4492: enable the ssc as -4492 ppm
+ - 4003: enable the ssc as -4003 ppm
+
+Example (R-Car H3):
+
+ usb-phy@e65ee000 {
+ compatible = "renesas,r8a7795-usb3-phy",
+ "renesas,rcar-gen3-usb3-phy";
+ reg = <0 0xe65ee000 0 0x90>;
+ clocks = <&cpg CPG_MOD 328>, <&usb3s0_clk>, <&usb_extal>;
+ clock-names = "usb3-if", "usb3s_clk", "usb_extal";
+ };

Documentation/devicetree/bindings/usb/dwc3.txt

View file
diff --git a/Documentation/devicetree/bindings/usb/dwc3.txt b/Documentation/devicetree/bindings/usb/dwc3.txt
index f658f39..52fb410 100644
--- a/Documentation/devicetree/bindings/usb/dwc3.txt
+++ b/Documentation/devicetree/bindings/usb/dwc3.txt
@@ -45,6 +45,8 @@ Optional properties:
a free-running PHY clock.
- snps,dis-del-phy-power-chg-quirk: when set core will change PHY power
from P0 to P1/P2/P3 without delay.
+ - snps,dis-tx-ipgap-linecheck-quirk: when set, disable u2mac linestate check
+ during HS transmit.
- snps,is-utmi-l1-suspend: true when DWC3 asserts output signal
utmi_l1_suspend_n, false when asserts utmi_sleep_n
- snps,hird-threshold: HIRD threshold

Documentation/devicetree/bindings/usb/iproc-udc.txt

View file
diff --git a/Documentation/devicetree/bindings/usb/iproc-udc.txt b/Documentation/devicetree/bindings/usb/iproc-udc.txt
new file mode 100644
index 0000000..272d7fa
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/iproc-udc.txt
@@ -0,0 +1,21 @@
+Broadcom IPROC USB Device controller.
+
+The device node is used for UDCs integrated into Broadcom's
+iProc family (Northstar2, Cygnus) of SoCs'. The UDC is based
+on Synopsys Designware Cores AHB Subsystem Device Controller
+IP.
+
+Required properties:
+ - compatible: Add the compatibility strings for supported platforms.
+ For Broadcom NS2 platform, add "brcm,ns2-udc","brcm,iproc-udc".
+ For Broadcom Cygnus platform, add "brcm,cygnus-udc", "brcm,iproc-udc".
+ - reg: Offset and length of UDC register set
+ - interrupts: description of interrupt line
+ - phys: phandle to phy node.
+
+Example:
+ udc_dwc: usb@664e0000 {
+ compatible = "brcm,ns2-udc", "brcm,iproc-udc";
+ reg = <0x664e0000 0x2000>;
+ interrupts = <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>;
+ phys = <&usbdrd_phy>;

Documentation/devicetree/bindings/usb/usb-ohci.txt

View file
diff --git a/Documentation/devicetree/bindings/usb/usb-ohci.txt b/Documentation/devicetree/bindings/usb/usb-ohci.txt
index 9df4569..e8766b0 100644
--- a/Documentation/devicetree/bindings/usb/usb-ohci.txt
+++ b/Documentation/devicetree/bindings/usb/usb-ohci.txt
@@ -10,6 +10,7 @@ Optional properties:
- big-endian-desc : boolean, set this for hcds with big-endian descriptors
- big-endian : boolean, for hcds with big-endian-regs + big-endian-desc
- no-big-frame-no : boolean, set if frame_no lives in bits [15:0] of HCCA
+- remote-wakeup-connected: remote wakeup is wired on the platform
- num-ports : u32, to override the detected port count
- clocks : a list of phandle + clock specifier pairs
- phys : phandle + phy specifier pair

Documentation/driver-api/usb/dwc3.rst

View file
diff --git a/Documentation/driver-api/usb/dwc3.rst b/Documentation/driver-api/usb/dwc3.rst
new file mode 100644
index 0000000..c3dc84a
--- /dev/null
+++ b/Documentation/driver-api/usb/dwc3.rst
@@ -0,0 +1,712 @@
+===============================================================
+Synopsys DesignWare Core SuperSpeed USB 3.0 Controller
+===============================================================
+
+:Author: Felipe Balbi <[email protected]>
+:Date: April 2017
+
+Introduction
+============
+
+The *Synopsys DesignWare Core SuperSpeed USB 3.0 Controller*
+(hereinafter referred to as *DWC3*) is a USB SuperSpeed compliant
+controller which can be configured in one of 4 ways:
+
+ 1. Peripheral-only configuration
+ 2. Host-only configuration
+ 3. Dual-Role configuration
+ 4. Hub configuration
+
+Linux currently supports several versions of this controller. In all
+likelyhood, the version in your SoC is already supported. At the time
+of this writing, known tested versions range from 2.02a to 3.10a. As a
+rule of thumb, anything above 2.02a should work reliably well.
+
+Currently, we have many known users for this driver. In alphabetical
+order:
+
+ 1. Cavium
+ 2. Intel Corporation
+ 3. Qualcomm
+ 4. Rockchip
+ 5. ST
+ 6. Samsung
+ 7. Texas Instruments
+ 8. Xilinx
+
+Summary of Features
+======================
+
+For details about features supported by your version of DWC3, consult
+your IP team and/or *Synopsys DesignWare Core SuperSpeed USB 3.0
+Controller Databook*. Following is a list of features supported by the
+driver at the time of this writing:
+
+ 1. Up to 16 bidirectional endpoints (including the control
+ pipe - ep0)
+ 2. Flexible endpoint configuration
+ 3. Simultaneous IN and OUT transfer support
+ 4. Scatter-list support
+ 5. Up to 256 TRBs [#trb]_ per endpoint
+ 6. Support for all transfer types (*Control*, *Bulk*,
+ *Interrupt*, and *Isochronous*)
+ 7. SuperSpeed Bulk Streams
+ 8. Link Power Management
+ 9. Trace Events for debugging
+ 10. DebugFS [#debugfs]_ interface
+
+These features have all been exercised with many of the **in-tree**
+gadget drivers. We have verified both *ConfigFS* [#configfs]_ and
+legacy gadget drivers.
+
+Driver Design
+==============
+
+The DWC3 driver sits on the *drivers/usb/dwc3/* directory. All files
+related to this driver are in this one directory. This makes it easy
+for new-comers to read the code and understand how it behaves.
+
+Because of DWC3's configuration flexibility, the driver is a little
+complex in some places but it should be rather straightforward to
+understand.
+
+The biggest part of the driver refers to the Gadget API.
+
+Known Limitations
+===================
+
+Like any other HW, DWC3 has its own set of limitations. To avoid
+constant questions about such problems, we decided to document them
+here and have a single location to where we could point users.
+
+OUT Transfer Size Requirements
+---------------------------------
+
+According to Synopsys Databook, all OUT transfer TRBs [#trb]_ must
+have their *size* field set to a value which is integer divisible by
+the endpoint's *wMaxPacketSize*. This means that *e.g.* in order to
+receive a Mass Storage *CBW* [#cbw]_, req->length must either be set
+to a value that's divisible by *wMaxPacketSize* (1024 on SuperSpeed,
+512 on HighSpeed, etc), or DWC3 driver must add a Chained TRB pointing
+to a throw-away buffer for the remaining length. Without this, OUT
+transfers will **NOT** start.
+
+Note that as of this writing, this won't be a problem because DWC3 is
+fully capable of appending a chained TRB for the remaining length and
+completely hide this detail from the gadget driver. It's still worth
+mentioning because this seems to be the largest source of queries
+about DWC3 and *non-working transfers*.
+
+TRB Ring Size Limitation
+-------------------------
+
+We, currently, have a hard limit of 256 TRBs [#trb]_ per endpoint,
+with the last TRB being a Link TRB [#link_trb]_ pointing back to the
+first. This limit is arbitrary but it has the benefit of adding up to
+exactly 4096 bytes, or 1 Page.
+
+DWC3 driver will try its best to cope with more than 255 requests and,
+for the most part, it should work normally. However this is not
+something that has been exercised very frequently. If you experience
+any problems, see section **Reporting Bugs** below.
+
+Reporting Bugs
+================
+
+Whenever you encounter a problem with DWC3, first and foremost you
+should make sure that:
+
+ 1. You're running latest tag from `Linus' tree`_
+ 2. You can reproduce the error without any out-of-tree changes

This diff is incomplete. Download the complete patch.

Documentation/driver-api/usb/index.rst

View file

This diff is incomplete. Download the complete patch.

Documentation/driver-api/usb/typec.rst

View file

This diff is incomplete. Download the complete patch.

Documentation/driver-api/usb/usb3-debug-port.rst

View file

This diff is incomplete. Download the complete patch.

Documentation/usb/gadget-testing.txt

View file

This diff is incomplete. Download the complete patch.

MAINTAINERS

View file

This diff is incomplete. Download the complete patch.

arch/arm/mach-omap2/dma.c

View file

This diff is incomplete. Download the complete patch.

drivers/base/core.c

View file

This diff is incomplete. Download the complete patch.

drivers/base/pinctrl.c

View file

This diff is incomplete. Download the complete patch.

drivers/dma/omap-dma.c

View file

This diff is incomplete. Download the complete patch.

drivers/extcon/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/extcon/extcon-arizona.c

View file

This diff is incomplete. Download the complete patch.

drivers/extcon/extcon-intel-int3496.c

View file

This diff is incomplete. Download the complete patch.

drivers/extcon/extcon.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/phy/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/phy/allwinner/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/phy/allwinner/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/phy/allwinner/phy-sun4i-usb.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/allwinner/phy-sun9i-usb.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/amlogic/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/phy/amlogic/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/phy/amlogic/phy-meson-gxl-usb2.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/amlogic/phy-meson8b-usb2.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/broadcom/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/phy/broadcom/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/phy/broadcom/phy-bcm-cygnus-pcie.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/broadcom/phy-bcm-kona-usb2.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/broadcom/phy-bcm-ns-usb2.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/broadcom/phy-bcm-ns-usb3.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/broadcom/phy-bcm-ns2-pcie.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/broadcom/phy-bcm-ns2-usbdrd.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/broadcom/phy-brcm-sata.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/hisilicon/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/phy/hisilicon/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/phy/hisilicon/phy-hi6220-usb.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/hisilicon/phy-hix5hd2-sata.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/marvell/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/phy/marvell/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/phy/marvell/phy-armada375-usb2.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/marvell/phy-berlin-sata.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/marvell/phy-berlin-usb.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/marvell/phy-mvebu-sata.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/marvell/phy-pxa-28nm-hsic.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/marvell/phy-pxa-28nm-usb2.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/motorola/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/phy/motorola/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/phy/motorola/phy-cpcap-usb.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/qualcomm/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/phy/qualcomm/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/phy/qualcomm/phy-qcom-apq8064-sata.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/qualcomm/phy-qcom-ipq806x-sata.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/qualcomm/phy-qcom-qmp.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/qualcomm/phy-qcom-qusb2.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/qualcomm/phy-qcom-ufs-i.h

View file

This diff is incomplete. Download the complete patch.

drivers/phy/qualcomm/phy-qcom-ufs-qmp-14nm.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/qualcomm/phy-qcom-ufs-qmp-14nm.h

View file

This diff is incomplete. Download the complete patch.

drivers/phy/qualcomm/phy-qcom-ufs-qmp-20nm.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/qualcomm/phy-qcom-ufs-qmp-20nm.h

View file

This diff is incomplete. Download the complete patch.

drivers/phy/qualcomm/phy-qcom-ufs.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/qualcomm/phy-qcom-usb-hs.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/qualcomm/phy-qcom-usb-hsic.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/renesas/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/phy/renesas/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/phy/renesas/phy-rcar-gen2.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/renesas/phy-rcar-gen3-usb2.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/renesas/phy-rcar-gen3-usb3.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/rockchip/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/phy/rockchip/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/phy/rockchip/phy-rockchip-dp.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/rockchip/phy-rockchip-emmc.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/rockchip/phy-rockchip-inno-usb2.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/rockchip/phy-rockchip-pcie.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/rockchip/phy-rockchip-typec.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/rockchip/phy-rockchip-usb.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/samsung/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/phy/samsung/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/phy/samsung/phy-exynos-dp-video.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/samsung/phy-exynos-mipi-video.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/samsung/phy-exynos-pcie.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/samsung/phy-exynos4210-usb2.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/samsung/phy-exynos4x12-usb2.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/samsung/phy-exynos5-usbdrd.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/samsung/phy-exynos5250-sata.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/samsung/phy-exynos5250-usb2.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/samsung/phy-s5pv210-usb2.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/samsung/phy-samsung-usb2.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/samsung/phy-samsung-usb2.h

View file

This diff is incomplete. Download the complete patch.

drivers/phy/st/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/phy/st/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/phy/st/phy-miphy28lp.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/st/phy-spear1310-miphy.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/st/phy-spear1340-miphy.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/st/phy-stih407-usb.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/ti/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/phy/ti/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/phy/ti/phy-da8xx-usb.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/ti/phy-dm816x-usb.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/ti/phy-omap-control.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/ti/phy-omap-usb2.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/ti/phy-ti-pipe3.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/ti/phy-tusb1210.c

View file

This diff is incomplete. Download the complete patch.

drivers/phy/ti/phy-twl4030-usb.c

View file

This diff is incomplete. Download the complete patch.

drivers/thermal/max77620_thermal.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/chipidea/core.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/chipidea/otg_fsm.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/class/cdc-wdm.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/core/devio.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/core/hcd.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/core/hub.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/core/ledtrig-usbport.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/core/of.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/core/quirks.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/core/usb-acpi.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/core/usb.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/dwc3/core.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/dwc3/core.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/dwc3/debug.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/dwc3/debugfs.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/dwc3/dwc3-exynos.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/dwc3/dwc3-st.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/dwc3/ep0.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/dwc3/gadget.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/dwc3/gadget.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/dwc3/trace.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/dwc3/ulpi.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/early/xhci-dbc.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/composite.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/configfs.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/function/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/function/f_fs.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/function/f_mass_storage.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/function/f_uac1.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/function/f_uac1_legacy.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/function/f_uac2.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/function/storage_common.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/function/u_audio.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/function/u_audio.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/function/u_fs.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/function/u_uac1.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/function/u_uac1_legacy.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/function/u_uac1_legacy.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/legacy/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/legacy/audio.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/legacy/mass_storage.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/udc/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/udc/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/udc/amd5536udc.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/udc/amd5536udc_pci.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/udc/atmel_usba_udc.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/udc/atmel_usba_udc.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/udc/bdc/bdc_core.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/udc/core.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/udc/dummy_hcd.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/udc/mv_udc_core.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/udc/net2280.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/udc/renesas_usb3.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/udc/snps_udc_core.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/udc/snps_udc_plat.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/udc/udc-xilinx.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/host/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/usb/host/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/usb/host/ehci-exynos.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/host/ehci-sched.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/host/ehci-timer.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/host/fotg210-hcd.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/host/ohci-omap3.c

View before deletion

This diff is incomplete. Download the complete patch.

drivers/usb/host/ohci-platform.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/host/ohci-pxa27x.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/host/uhci-hcd.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/host/uhci-hcd.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/host/uhci-platform.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/host/xhci-mem.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/host/xhci-ring.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/host/xhci.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/host/xhci.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/misc/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/usb/misc/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/usb/misc/iowarrior.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/misc/ucsi.c

View before deletion

This diff is incomplete. Download the complete patch.

drivers/usb/misc/ucsi.h

View before deletion

This diff is incomplete. Download the complete patch.

drivers/usb/misc/usbsevseg.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/mtu3/mtu3.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/mtu3/mtu3_plat.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/musb/musb_core.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/musb/musb_core.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/musb/musb_cppi41.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/musb/musb_host.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/musb/tusb6010.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/musb/tusb6010_omap.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/phy/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/usb/phy/phy-msm-usb.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/phy/phy-qcom-8x16-usb.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/phy/phy.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/serial/cp210x.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/serial/qcserial.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/serial/upd78f0730.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/serial/usb-serial.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/storage/ene_ub6250.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/typec/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/usb/typec/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/usb/typec/typec.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/typec/ucsi/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/usb/typec/ucsi/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/usb/typec/ucsi/debug.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/typec/ucsi/trace.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/typec/ucsi/trace.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/typec/ucsi/ucsi.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/typec/ucsi/ucsi.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/typec/ucsi/ucsi_acpi.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/usbip/stub_main.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/usbip/stub_tx.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/usbip/vhci.h

View file

This diff is incomplete. Download the complete patch.

drivers/usb/usbip/vhci_hcd.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/usbip/vhci_rx.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/usbip/vhci_sysfs.c

View file

This diff is incomplete. Download the complete patch.

drivers/uwb/i1480/dfu/phy.c

View file

This diff is incomplete. Download the complete patch.

include/linux/device.h

View file

This diff is incomplete. Download the complete patch.

include/linux/phy/ulpi_phy.h

View file

This diff is incomplete. Download the complete patch.

include/linux/usb/gadget.h

View file

This diff is incomplete. Download the complete patch.

include/linux/usb/hcd.h

View file

This diff is incomplete. Download the complete patch.

include/linux/usb/phy.h

View file

This diff is incomplete. Download the complete patch.

include/linux/usb/typec.h

View file

This diff is incomplete. Download the complete patch.

include/uapi/linux/usb/functionfs.h

View file

This diff is incomplete. Download the complete patch.

include/uapi/linux/usbdevice_fs.h

View file

This diff is incomplete. Download the complete patch.

tools/usb/testusb.c

View file

This diff is incomplete. Download the complete patch.

tools/usb/usbip/libsrc/vhci_driver.c

View file

This diff is incomplete. Download the complete patch.

tools/usb/usbip/libsrc/vhci_driver.h

View file

This diff is incomplete. Download the complete patch.

tools/usb/usbip/src/usbip_attach.c

View file

This diff is incomplete. Download the complete patch.