* [PATCH 00/15] usb: dwc3: Add new updates for DWC_usb31
@ 2018-01-05 20:13 Thinh Nguyen
[not found] ` <cover.1515182391.git.thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
0 siblings, 1 reply; 8+ messages in thread
From: Thinh Nguyen @ 2018-01-05 20:13 UTC (permalink / raw)
To: Felipe Balbi, Thinh Nguyen, linux-usb-u79uwXL29TY76Z2rM5mHXA,
devicetree-u79uwXL29TY76Z2rM5mHXA, Rob Herring,
Vamsi Krishna Samavedam, Mark Rutland, Gustavo A. R. Silva,
Takashi Iwai
Cc: John Youn
This patch series adds new updates and some fixes for DWC_usb31.
Thinh Nguyen (15):
usb: dwc3: Device 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 RX/TX threshold configurable
usb: dwc3: Check for ESS TX/RX threshold config
usb: dwc3: gadget: Set maxpacket size for ep0 IN
usb: dwc3: ep0: Reset TRB counter for ep0 IN
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
Documentation/devicetree/bindings/usb/dwc3.txt | 9 ++
drivers/usb/core/urb.c | 8 +
drivers/usb/dwc3/core.c | 74 ++++++++-
drivers/usb/dwc3/core.h | 57 +++++++
drivers/usb/dwc3/debugfs.c | 5 +
drivers/usb/dwc3/ep0.c | 7 +-
drivers/usb/dwc3/gadget.c | 202 ++++++++++++++++++++++++-
7 files changed, 353 insertions(+), 9 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] 8+ messages in thread
* [PATCH 08/15] usb: dwc3: Make RX/TX threshold configurable
[not found] ` <cover.1515182391.git.thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
@ 2018-01-05 20:14 ` Thinh Nguyen
[not found] ` <8446dc260efb993507a219ae11815607b8e58027.1515182391.git.thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
2018-01-05 20:16 ` [PATCH 14/15] usb: dwc3: Add disabling of start_transfer failure quirk Thinh Nguyen
1 sibling, 1 reply; 8+ messages in thread
From: Thinh Nguyen @ 2018-01-05 20:14 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.
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 | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/Documentation/devicetree/bindings/usb/dwc3.txt b/Documentation/devicetree/bindings/usb/dwc3.txt
index 52fb41046b34..02dde83d02fa 100644
--- a/Documentation/devicetree/bindings/usb/dwc3.txt
+++ b/Documentation/devicetree/bindings/usb/dwc3.txt
@@ -55,6 +55,12 @@ 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_sel_prd: set to enable periodic ESS RX packet threshold.
+ - snps,rx_thr_num_pkt_prd: periodic ESS RX packet threshold count.
+ - snps,rx_max_burst_prd: Max periodic ESS RX burst size.
+ - snps,tx_thr_sel_prd: set to enable periodic ESS TX packet threshold.
+ - snps,tx_thr_num_pkt_prd: periodic ESS TX packet threshold count.
+ - snps,tx_max_burst_prd: Max periodic ESS TX burst size.
- <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] 8+ messages in thread
* [PATCH 14/15] usb: dwc3: Add disabling of start_transfer failure quirk
[not found] ` <cover.1515182391.git.thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
2018-01-05 20:14 ` [PATCH 08/15] usb: dwc3: Make RX/TX threshold configurable Thinh Nguyen
@ 2018-01-05 20:16 ` Thinh Nguyen
[not found] ` <3c63b5f97343d276049e1d59ef2371160004b137.1515182391.git.thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
1 sibling, 1 reply; 8+ messages in thread
From: Thinh Nguyen @ 2018-01-05 20:16 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 02dde83d02fa..c03a3b363cde 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] 8+ messages in thread
* Re: [PATCH 08/15] usb: dwc3: Make RX/TX threshold configurable
[not found] ` <8446dc260efb993507a219ae11815607b8e58027.1515182391.git.thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
@ 2018-01-09 4:12 ` Rob Herring
2018-01-09 23:54 ` Thinh Nguyen
0 siblings, 1 reply; 8+ messages in thread
From: Rob Herring @ 2018-01-09 4:12 UTC (permalink / raw)
To: Thinh Nguyen
Cc: Felipe Balbi, linux-usb-u79uwXL29TY76Z2rM5mHXA,
devicetree-u79uwXL29TY76Z2rM5mHXA, Mark Rutland, John Youn
On Fri, Jan 05, 2018 at 12:14:48PM -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.
I tend to think these should all be implied by the SoC specific
compatible string if they need to be tuned.
>
> 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 | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/usb/dwc3.txt b/Documentation/devicetree/bindings/usb/dwc3.txt
> index 52fb41046b34..02dde83d02fa 100644
> --- a/Documentation/devicetree/bindings/usb/dwc3.txt
> +++ b/Documentation/devicetree/bindings/usb/dwc3.txt
> @@ -55,6 +55,12 @@ 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_sel_prd: set to enable periodic ESS RX packet threshold.
Isn't the next property being present sufficient to enable this or not?
> + - snps,rx_thr_num_pkt_prd: periodic ESS RX packet threshold count.
> + - snps,rx_max_burst_prd: Max periodic ESS RX burst size.
> + - snps,tx_thr_sel_prd: set to enable periodic ESS TX packet threshold.
ditto
> + - snps,tx_thr_num_pkt_prd: periodic ESS TX packet threshold count.
> + - snps,tx_max_burst_prd: Max periodic ESS TX burst size.
Don't use '_' in property names.
>
> - <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 [flat|nested] 8+ messages in thread
* Re: [PATCH 14/15] usb: dwc3: Add disabling of start_transfer failure quirk
[not found] ` <3c63b5f97343d276049e1d59ef2371160004b137.1515182391.git.thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
@ 2018-01-09 4:16 ` Rob Herring
2018-01-09 8:45 ` Felipe Balbi
0 siblings, 1 reply; 8+ messages in thread
From: Rob Herring @ 2018-01-09 4:16 UTC (permalink / raw)
To: Thinh Nguyen
Cc: Felipe Balbi, linux-usb-u79uwXL29TY76Z2rM5mHXA,
devicetree-u79uwXL29TY76Z2rM5mHXA, Mark Rutland, John Youn
On Fri, Jan 05, 2018 at 12:16:02PM -0800, Thinh Nguyen wrote:
> 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.
I really think this one should be implied by compatible strings.
> 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 02dde83d02fa..c03a3b363cde 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 [flat|nested] 8+ messages in thread
* Re: [PATCH 14/15] usb: dwc3: Add disabling of start_transfer failure quirk
2018-01-09 4:16 ` Rob Herring
@ 2018-01-09 8:45 ` Felipe Balbi
[not found] ` <87incbzaia.fsf-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
0 siblings, 1 reply; 8+ messages in thread
From: Felipe Balbi @ 2018-01-09 8:45 UTC (permalink / raw)
To: Rob Herring, Thinh Nguyen
Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA,
devicetree-u79uwXL29TY76Z2rM5mHXA, Mark Rutland, John Youn
[-- Attachment #1: Type: text/plain, Size: 629 bytes --]
Hi,
Rob Herring <robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> writes:
> On Fri, Jan 05, 2018 at 12:16:02PM -0800, Thinh Nguyen wrote:
>> 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.
>
> I really think this one should be implied by compatible strings.
won't work for dwc3. Core driver has a single compatible string, also
this wouldn't work for PCI-based implementations.
--
balbi
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 08/15] usb: dwc3: Make RX/TX threshold configurable
2018-01-09 4:12 ` Rob Herring
@ 2018-01-09 23:54 ` Thinh Nguyen
0 siblings, 0 replies; 8+ messages in thread
From: Thinh Nguyen @ 2018-01-09 23:54 UTC (permalink / raw)
To: Rob Herring, Thinh Nguyen
Cc: Felipe Balbi, linux-usb-u79uwXL29TY76Z2rM5mHXA,
devicetree-u79uwXL29TY76Z2rM5mHXA, Mark Rutland, John Youn
Hi,
On 1/8/2018 8:12 PM, Rob Herring wrote:
> On Fri, Jan 05, 2018 at 12:14:48PM -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.
>
> I tend to think these should all be implied by the SoC specific
> compatible string if they need to be tuned.
>
>>
>> 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 | 6 ++++++
>> 1 file changed, 6 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/usb/dwc3.txt b/Documentation/devicetree/bindings/usb/dwc3.txt
>> index 52fb41046b34..02dde83d02fa 100644
>> --- a/Documentation/devicetree/bindings/usb/dwc3.txt
>> +++ b/Documentation/devicetree/bindings/usb/dwc3.txt
>> @@ -55,6 +55,12 @@ 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_sel_prd: set to enable periodic ESS RX packet threshold.
>
> Isn't the next property being present sufficient to enable this or not?
Yes, we can do that. Actually, both settings must be set to enable the
periodic TX/RX threshold.
>
>> + - snps,rx_thr_num_pkt_prd: periodic ESS RX packet threshold count.
>> + - snps,rx_max_burst_prd: Max periodic ESS RX burst size.
>> + - snps,tx_thr_sel_prd: set to enable periodic ESS TX packet threshold.
>
> ditto
>
>> + - snps,tx_thr_num_pkt_prd: periodic ESS TX packet threshold count.
>> + - snps,tx_max_burst_prd: Max periodic ESS TX burst size.
>
> Don't use '_' in property names.
I'll make the change.
>
>>
>> - <DEPRECATED> tx-fifo-resize: determines if the FIFO *has* to be reallocated.
>>
>> --
>> 2.11.0
>>
>
Thanks,
Thinh
--
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] 8+ messages in thread
* Re: [PATCH 14/15] usb: dwc3: Add disabling of start_transfer failure quirk
[not found] ` <87incbzaia.fsf-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
@ 2018-01-11 14:35 ` Rob Herring
0 siblings, 0 replies; 8+ messages in thread
From: Rob Herring @ 2018-01-11 14:35 UTC (permalink / raw)
To: Felipe Balbi
Cc: Thinh Nguyen, Linux USB List,
open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
Mark Rutland, John Youn
On Tue, Jan 9, 2018 at 2:45 AM, Felipe Balbi <balbi-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> wrote:
>
> Hi,
>
> Rob Herring <robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> writes:
>> On Fri, Jan 05, 2018 at 12:16:02PM -0800, Thinh Nguyen wrote:
>>> 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.
>>
>> I really think this one should be implied by compatible strings.
>
> won't work for dwc3. Core driver has a single compatible string, also
> this wouldn't work for PCI-based implementations.
Then you will have to look at the parent node (this is why the way
DWC3 was split is wrong) or make the compatible strings more specific.
That is the purpose of compatible strings.
For PCI, don't you have different VID/PIDs? If not how would quirks
work for non-DT systems.
Rob
--
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] 8+ messages in thread
end of thread, other threads:[~2018-01-11 14:35 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-01-05 20:13 [PATCH 00/15] usb: dwc3: Add new updates for DWC_usb31 Thinh Nguyen
[not found] ` <cover.1515182391.git.thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
2018-01-05 20:14 ` [PATCH 08/15] usb: dwc3: Make RX/TX threshold configurable Thinh Nguyen
[not found] ` <8446dc260efb993507a219ae11815607b8e58027.1515182391.git.thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
2018-01-09 4:12 ` Rob Herring
2018-01-09 23:54 ` Thinh Nguyen
2018-01-05 20:16 ` [PATCH 14/15] usb: dwc3: Add disabling of start_transfer failure quirk Thinh Nguyen
[not found] ` <3c63b5f97343d276049e1d59ef2371160004b137.1515182391.git.thinhn-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
2018-01-09 4:16 ` Rob Herring
2018-01-09 8:45 ` Felipe Balbi
[not found] ` <87incbzaia.fsf-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2018-01-11 14:35 ` Rob Herring
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).