Skip to contentSkip to conversation

usb: dwc3: Workaround isoc start_transfer failure

PATCH Superseded Thinh Nguyen 1 participant 2 messages Nov 8, 2018

Subsystems (2)

v5 of 7 Superseded Latest is v7 →

lore
Share & tools
lore
#0 lore raw

v5 cover usb: dwc3: Workaround isoc start_transfer failure

DWC_usb31 peripheral v1.70a-ea06 and prior needs a SW workaround for isoc START TRANSFER command failure. This patch series implements that workaround

Change in v5:
- Splited and resent from an old patch series
- Cleanup and fixed review issues
Change in v4:
- None
Change in v3:
- None
Change in v2:
- None

Thinh Nguyen (3):
usb: dwc3: Track DWC_usb31 VERSIONTYPE
usb: dwc3: Add disabling of start_transfer failure quirk
usb: dwc3: Add workaround for isoc start transfer failure

 Documentation/devicetree/bindings/usb/dwc3.txt |   3 +
 drivers/usb/dwc3/core.c                        |   3 +
 drivers/usb/dwc3/core.h                        |  19 ++++
 drivers/usb/dwc3/gadget.c                      | 132 +++++++++++++++++++++++++
 4 files changed, 157 insertions(+)
Signature · 1 line
2.11.0
#1 lore raw

PATCH v5 2/3 usb: dwc3: Add disabling of start_transfer failure quirk

DWC_usb31 peripheral v1.70a-ea06 and prior needs a SW workaround for isoc START TRANSFER command failure. However, some affected versions may have RTL patches to fix this without a SW workaround. Add this quirk to disable the SW workaround when it is not needed.

Synopsys STAR 9001202023: Wrong microframe number for isochronous IN endpoints.

---
 Documentation/devicetree/bindings/usb/dwc3.txt | 3 +++
 1 file changed, 3 insertions(+)
Documentation/devicetree/bindings/usb/dwc3.txt +3 -0
index 636630fb92d7..fc64db0a7a0a 100644
@@ -37,6 +37,9 @@ Optional properties:
  - phy-names: from the *Generic PHY* bindings; supported names are "usb2-phy"
 	or "usb3-phy".
  - resets: a single pair of phandle and reset specifier
+ - snps,dis-start-transfer-quirk: when set, disable isoc START TRANSFER command
+			failure SW work-around for DWC_usb31 version 1.70a-ea06
+			and prior.
  - snps,usb3_lpm_capable: determines if platform is USB3 LPM capable
  - snps,disable_scramble_quirk: true when SW should disable data scrambling.
 	Only really useful for FPGA builds.
Signature · 1 line
2.11.0