devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 00/15] usb: dwc3: Add new updates for DWC_usb31
@ 2018-01-31 21:14 Thinh Nguyen
       [not found] ` <cover.1517428812.git.thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
  0 siblings, 1 reply; 4+ messages in thread
From: Thinh Nguyen @ 2018-01-31 21:14 UTC (permalink / raw)
  To: Felipe Balbi, Thinh Nguyen, linux-usb-u79uwXL29TY76Z2rM5mHXA,
	devicetree-u79uwXL29TY76Z2rM5mHXA, Rob Herring, Laurent Pinchart,
	Alan Stern, Vamsi Krishna Samavedam, Mark Rutland, Li Jun,
	Gustavo A. R. Silva, Takashi Iwai
  Cc: John Youn

This patch series adds new updates and some fixes for DWC_usb31.

Changes in v4:
 - Correctly refer "databook" as "programming guide"
 - Document more detail about enabling of ESS periodic tx/rx threshold

Changes in v3:
 - Add "usb: dwc3: Check controller type before setting speed" to series

Changes in v2:
 - Add another patch to the series to increase mass_storage max_speed
 - Separate "usb: dwc3: ep0: Reset TRB counter for ep0 IN" from series
 - Separate "usb: dwc3: gadget: Set maxpacket size for ep0 IN" from series
 - Use msleep() instead of mdelay() for SoftReset PHY sync delay
 - Rename new USB31 macros from DWC3_USB31_* to DWC31_*
 - Rename device properties and replace '_' with '-'
 - Minor fixes in the commit messages


Thinh Nguyen (15):
  usb: dwc3: Add SoftReset PHY synchonization delay
  usb: core: urb: Check SSP isoc ep comp descriptor
  usb: dwc3: Update DWC_usb31 GTXFIFOSIZ reg fields
  usb: dwc3: Check IP revision for GTXFIFOSIZ
  usb: dwc3: Add DWC_usb31 GRXTHRCFG bit fields
  usb: dwc3: gadget: Check IP revision for GRXTHRCFG
  usb: dwc3: Add DWC_usb31 GTXTHRCFG reg fields
  usb: dwc3: Make TX/RX threshold configurable
  usb: dwc3: Check for ESS TX/RX threshold config
  usb: dwc3: Dump LSP and BMU debug info
  usb: dwc3: Track DWC_usb31 VERSIONTYPE
  usb: dwc3: Add disabling of start_transfer failure quirk
  usb: dwc3: Add workaround for isoc start transfer failure
  usb: dwc3: Check controller type before setting speed
  usb: gadget: mass_storage: Set max_speed to SSP

 Documentation/devicetree/bindings/usb/dwc3.txt |  19 +++
 drivers/usb/core/urb.c                         |   8 +
 drivers/usb/dwc3/core.c                        |  72 ++++++++-
 drivers/usb/dwc3/core.h                        |  53 +++++++
 drivers/usb/dwc3/debugfs.c                     |   5 +
 drivers/usb/dwc3/gadget.c                      | 205 ++++++++++++++++++++++++-
 drivers/usb/gadget/legacy/mass_storage.c       |   2 +-
 7 files changed, 354 insertions(+), 10 deletions(-)

-- 
2.11.0

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH v4 08/15] usb: dwc3: Make TX/RX threshold configurable
       [not found] ` <cover.1517428812.git.thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
@ 2018-01-31 21:16   ` Thinh Nguyen
       [not found]     ` <c42923b000093b7fc77a27e64d51b60fb28d3312.1517428812.git.thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
  2018-01-31 21:18   ` [PATCH v4 12/15] usb: dwc3: Add disabling of start_transfer failure quirk Thinh Nguyen
  1 sibling, 1 reply; 4+ messages in thread
From: Thinh Nguyen @ 2018-01-31 21:16 UTC (permalink / raw)
  To: Felipe Balbi, Thinh Nguyen, linux-usb-u79uwXL29TY76Z2rM5mHXA,
	devicetree-u79uwXL29TY76Z2rM5mHXA, Rob Herring, Mark Rutland
  Cc: John Youn

DWC_usb31 periodic transfer at 48K+ bytes per interval may need
modification to the TX/RX packet threshold to achieve optimal result.
Add properties to make it configurable.

By default, periodic ESS TX and RX threshold are not enabled. To enable
TX or RX threshold (host mode only), both packet threshold count and max
burst size properties must be set to a valid non-zero value 1-16.

DWC_usb31 programming guide section 1.2.3 and 1.2.4.

Cc: John Youn <johnyoun-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
Signed-off-by: Thinh Nguyen <thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
---
 Documentation/devicetree/bindings/usb/dwc3.txt | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/Documentation/devicetree/bindings/usb/dwc3.txt b/Documentation/devicetree/bindings/usb/dwc3.txt
index 52fb41046b34..e2c1edcd83dd 100644
--- a/Documentation/devicetree/bindings/usb/dwc3.txt
+++ b/Documentation/devicetree/bindings/usb/dwc3.txt
@@ -55,6 +55,22 @@ Optional properties:
  - snps,quirk-frame-length-adjustment: Value for GFLADJ_30MHZ field of GFLADJ
 	register for post-silicon frame length adjustment when the
 	fladj_30mhz_sdbnd signal is invalid or incorrect.
+ - snps,rx-thr-num-pkt-prd: periodic ESS RX packet threshold count - host mode
+			only. Set this and rx-max-burst-prd to a valid,
+			non-zero value 1-16 (DWC_usb31 programming guide
+			section 1.2.4) to enable periodic ESS RX threshold.
+ - snps,rx-max-burst-prd: max periodic ESS RX burst size - host mode only. Set
+			this and rx-thr-num-pkt-prd to a valid, non-zero value
+			1-16 (DWC_usb31 programming guide section 1.2.4) to
+			enable periodic ESS RX threshold.
+ - snps,tx-thr-num-pkt-prd: periodic ESS TX packet threshold count - host mode
+			only. Set this and tx-max-burst-prd to a valid,
+			non-zero value 1-16 (DWC_usb31 programming guide
+			section 1.2.3) to enable periodic ESS TX threshold.
+ - snps,tx-max-burst-prd: max periodic ESS TX burst size - host mode only. Set
+			this and tx-thr-num-pkt-prd to a valid, non-zero value
+			1-16 (DWC_usb31 programming guide section 1.2.3) to
+			enable periodic ESS TX threshold.
 
  - <DEPRECATED> tx-fifo-resize: determines if the FIFO *has* to be reallocated.
 
-- 
2.11.0

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH v4 12/15] usb: dwc3: Add disabling of start_transfer failure quirk
       [not found] ` <cover.1517428812.git.thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
  2018-01-31 21:16   ` [PATCH v4 08/15] usb: dwc3: Make TX/RX threshold configurable Thinh Nguyen
@ 2018-01-31 21:18   ` Thinh Nguyen
  1 sibling, 0 replies; 4+ messages in thread
From: Thinh Nguyen @ 2018-01-31 21:18 UTC (permalink / raw)
  To: Felipe Balbi, Thinh Nguyen, linux-usb-u79uwXL29TY76Z2rM5mHXA,
	devicetree-u79uwXL29TY76Z2rM5mHXA, Rob Herring, Mark Rutland
  Cc: John Youn

In DWC_usb31 version 1.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.

Cc: John Youn <johnyoun-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
Signed-off-by: Thinh Nguyen <thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
---
 Documentation/devicetree/bindings/usb/dwc3.txt | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/Documentation/devicetree/bindings/usb/dwc3.txt b/Documentation/devicetree/bindings/usb/dwc3.txt
index e2c1edcd83dd..98b4da23c595 100644
--- a/Documentation/devicetree/bindings/usb/dwc3.txt
+++ b/Documentation/devicetree/bindings/usb/dwc3.txt
@@ -15,6 +15,9 @@ Optional properties:
  - phys: from the *Generic PHY* bindings
  - phy-names: from the *Generic PHY* bindings; supported names are "usb2-phy"
 	or "usb3-phy".
+ - 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.
-- 
2.11.0

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH v4 08/15] usb: dwc3: Make TX/RX threshold configurable
       [not found]     ` <c42923b000093b7fc77a27e64d51b60fb28d3312.1517428812.git.thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
@ 2018-02-05  6:08       ` Rob Herring
  0 siblings, 0 replies; 4+ messages in thread
From: Rob Herring @ 2018-02-05  6:08 UTC (permalink / raw)
  To: Thinh Nguyen
  Cc: Felipe Balbi, linux-usb-u79uwXL29TY76Z2rM5mHXA,
	devicetree-u79uwXL29TY76Z2rM5mHXA, Mark Rutland, John Youn

On Wed, Jan 31, 2018 at 01:16:38PM -0800, Thinh Nguyen wrote:
> DWC_usb31 periodic transfer at 48K+ bytes per interval may need
> modification to the TX/RX packet threshold to achieve optimal result.
> Add properties to make it configurable.
> 
> By default, periodic ESS TX and RX threshold are not enabled. To enable
> TX or RX threshold (host mode only), both packet threshold count and max
> burst size properties must be set to a valid non-zero value 1-16.
> 
> DWC_usb31 programming guide section 1.2.3 and 1.2.4.
> 
> Cc: John Youn <johnyoun-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
> Signed-off-by: Thinh Nguyen <thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
> ---
>  Documentation/devicetree/bindings/usb/dwc3.txt | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)

Reviewed-by: Rob Herring <robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2018-02-05  6:08 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-01-31 21:14 [PATCH v4 00/15] usb: dwc3: Add new updates for DWC_usb31 Thinh Nguyen
     [not found] ` <cover.1517428812.git.thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
2018-01-31 21:16   ` [PATCH v4 08/15] usb: dwc3: Make TX/RX threshold configurable Thinh Nguyen
     [not found]     ` <c42923b000093b7fc77a27e64d51b60fb28d3312.1517428812.git.thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
2018-02-05  6:08       ` Rob Herring
2018-01-31 21:18   ` [PATCH v4 12/15] usb: dwc3: Add disabling of start_transfer failure quirk Thinh Nguyen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).