* [PATCH 0/3] arm64: g12-common: parkmode_disable_ss_quirk on DWC3 controller @ 2019-10-14 14:17 Neil Armstrong 2019-10-14 14:17 ` [PATCH 1/3] doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode Neil Armstrong ` (2 more replies) 0 siblings, 3 replies; 15+ messages in thread From: Neil Armstrong @ 2019-10-14 14:17 UTC (permalink / raw) To: balbi, khilman Cc: linux-amlogic, linux-usb, linux-kernel, linux-arm-kernel, Neil Armstrong In certain circumstances, the XHCI SuperSpeed instance in park mode can fail to recover, thus on Amlogic G12A/G12B/SM1 SoCs when there is high load on the single XHCI SuperSpeed instance, the controller can crash like: xhci-hcd xhci-hcd.0.auto: xHCI host not responding to stop endpoint command. xhci-hcd xhci-hcd.0.auto: Host halt failed, -110 xhci-hcd xhci-hcd.0.auto: xHCI host controller not responding, assume dead xhci-hcd xhci-hcd.0.auto: xHCI host not responding to stop endpoint command. hub 2-1.1:1.0: hub_ext_port_status failed (err = -22) xhci-hcd xhci-hcd.0.auto: HC died; cleaning up usb 2-1.1-port1: cannot reset (err = -22) Setting the PARKMODE_DISABLE_SS bit in the DWC3_USB3_GUCTL1 mitigates the issue. The bit is described as : "When this bit is set to '1' all SS bus instances in park mode are disabled" Neil Armstrong (3): doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode usb: dwc3: gadget: Add support for disabling SS instances in park mode arm64: dts: g12-common: add parkmode_disable_ss_quirk on DWC3 controller Documentation/devicetree/bindings/usb/dwc3.txt | 2 ++ arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi | 1 + drivers/usb/dwc3/core.c | 5 +++++ drivers/usb/dwc3/core.h | 4 ++++ 4 files changed, 12 insertions(+) -- 2.22.0 _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic ^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH 1/3] doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode 2019-10-14 14:17 [PATCH 0/3] arm64: g12-common: parkmode_disable_ss_quirk on DWC3 controller Neil Armstrong @ 2019-10-14 14:17 ` Neil Armstrong 2019-10-23 20:11 ` Rob Herring 2019-10-14 14:17 ` [PATCH 2/3] usb: dwc3: gadget: Add support " Neil Armstrong 2019-10-14 14:17 ` [PATCH 3/3] arm64: dts: g12-common: add parkmode_disable_ss_quirk on DWC3 controller Neil Armstrong 2 siblings, 1 reply; 15+ messages in thread From: Neil Armstrong @ 2019-10-14 14:17 UTC (permalink / raw) To: balbi, khilman, devicetree Cc: Jianxin Pan, Neil Armstrong, linux-usb, linux-kernel, Tim, Dongjin Kim, linux-amlogic, linux-arm-kernel This patch updates the documentation with the information related to the quirks that needs to be added for disabling all SuperSpeed XHCi instances in park mode. CC: Dongjin Kim <tobetter@gmail.com> Cc: Jianxin Pan <jianxin.pan@amlogic.com> Reported-by: Tim <elatllat@gmail.com> Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> --- Documentation/devicetree/bindings/usb/dwc3.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Documentation/devicetree/bindings/usb/dwc3.txt b/Documentation/devicetree/bindings/usb/dwc3.txt index 66780a47ad85..c977a3ba2f35 100644 --- a/Documentation/devicetree/bindings/usb/dwc3.txt +++ b/Documentation/devicetree/bindings/usb/dwc3.txt @@ -75,6 +75,8 @@ Optional properties: from P0 to P1/P2/P3 without delay. - snps,dis-tx-ipgap-linecheck-quirk: when set, disable u2mac linestate check during HS transmit. + - snps,parkmode-disable-ss-quirk: when set, all SuperSpeed bus instances in + park mode are disabled. - snps,dis_metastability_quirk: when set, disable metastability workaround. CAUTION: use only if you are absolutely sure of it. - snps,is-utmi-l1-suspend: true when DWC3 asserts output signal -- 2.22.0 _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic ^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [PATCH 1/3] doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode 2019-10-14 14:17 ` [PATCH 1/3] doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode Neil Armstrong @ 2019-10-23 20:11 ` Rob Herring 2019-11-11 0:38 ` Tim 0 siblings, 1 reply; 15+ messages in thread From: Rob Herring @ 2019-10-23 20:11 UTC (permalink / raw) To: Neil Armstrong Cc: balbi, Jianxin Pan, devicetree, khilman, linux-usb, linux-kernel, Tim, Dongjin Kim, linux-amlogic, linux-arm-kernel On Mon, Oct 14, 2019 at 04:17:16PM +0200, Neil Armstrong wrote: > This patch updates the documentation with the information related > to the quirks that needs to be added for disabling all SuperSpeed XHCi > instances in park mode. > > CC: Dongjin Kim <tobetter@gmail.com> > Cc: Jianxin Pan <jianxin.pan@amlogic.com> > Reported-by: Tim <elatllat@gmail.com> > Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> > --- > Documentation/devicetree/bindings/usb/dwc3.txt | 2 ++ > 1 file changed, 2 insertions(+) Sigh, what's one more to the never ending list of quirks... Acked-by: Rob Herring <robh@kernel.org> _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/3] doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode 2019-10-23 20:11 ` Rob Herring @ 2019-11-11 0:38 ` Tim 2019-11-11 1:58 ` Jun Li 0 siblings, 1 reply; 15+ messages in thread From: Tim @ 2019-11-11 0:38 UTC (permalink / raw) To: Neil Armstrong Cc: balbi, Jianxin Pan, devicetree, khilman, linux-usb, linux-kernel, Dongjin Kim, linux-amlogic, Rob Herring, linux-arm-kernel Thanks for working on this Neil, Is there something that needs doing for this patch to make it into 5.3 or 5.4? As previously mentioned the patch set fixes the issue on affected hardware; https://patchwork.kernel.org/patch/11164515/ On Wed, Oct 23, 2019 at 4:11 PM Rob Herring <robh@kernel.org> wrote: > > On Mon, Oct 14, 2019 at 04:17:16PM +0200, Neil Armstrong wrote: > > This patch updates the documentation with the information related > > to the quirks that needs to be added for disabling all SuperSpeed XHCi > > instances in park mode. > > > > CC: Dongjin Kim <tobetter@gmail.com> > > Cc: Jianxin Pan <jianxin.pan@amlogic.com> > > Reported-by: Tim <elatllat@gmail.com> > > Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> > > --- > > Documentation/devicetree/bindings/usb/dwc3.txt | 2 ++ > > 1 file changed, 2 insertions(+) > > Sigh, what's one more to the never ending list of quirks... > > Acked-by: Rob Herring <robh@kernel.org> _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/3] doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode 2019-11-11 0:38 ` Tim @ 2019-11-11 1:58 ` Jun Li 2019-11-11 14:05 ` Tim 2019-11-12 9:00 ` Neil Armstrong 0 siblings, 2 replies; 15+ messages in thread From: Jun Li @ 2019-11-11 1:58 UTC (permalink / raw) To: Tim Cc: Felipe Balbi, Jianxin Pan, devicetree, khilman, linux-usb, linux-kernel, Neil Armstrong, Dongjin Kim, linux-amlogic, Rob Herring, linux-arm-kernel Hi Neil As I got the information from Synopsys, this bug exists on current IP versions, and per my tests with external USB3 hub + 2 Super speed udisks on data read by dd, I can reproduce this issue with different kernel versions, also I didn't see obvious performance drop by dd tests after disable park mode for super speed, so should we just disable it by default so no need a quirk? Li Jun Tim <elatllat@gmail.com> 于2019年11月11日周一 上午8:42写道: > > Thanks for working on this Neil, > Is there something that needs doing for this patch to make it into 5.3 or 5.4? > As previously mentioned the patch set fixes the issue on affected hardware; > https://patchwork.kernel.org/patch/11164515/ > > > > On Wed, Oct 23, 2019 at 4:11 PM Rob Herring <robh@kernel.org> wrote: > > > > On Mon, Oct 14, 2019 at 04:17:16PM +0200, Neil Armstrong wrote: > > > This patch updates the documentation with the information related > > > to the quirks that needs to be added for disabling all SuperSpeed XHCi > > > instances in park mode. > > > > > > CC: Dongjin Kim <tobetter@gmail.com> > > > Cc: Jianxin Pan <jianxin.pan@amlogic.com> > > > Reported-by: Tim <elatllat@gmail.com> > > > Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> > > > --- > > > Documentation/devicetree/bindings/usb/dwc3.txt | 2 ++ > > > 1 file changed, 2 insertions(+) > > > > Sigh, what's one more to the never ending list of quirks... > > > > Acked-by: Rob Herring <robh@kernel.org> _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/3] doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode 2019-11-11 1:58 ` Jun Li @ 2019-11-11 14:05 ` Tim 2019-11-12 1:48 ` Jun Li 2019-11-12 9:00 ` Neil Armstrong 1 sibling, 1 reply; 15+ messages in thread From: Tim @ 2019-11-11 14:05 UTC (permalink / raw) To: Jun Li Cc: Felipe Balbi, Jianxin Pan, devicetree, khilman, linux-usb, linux-kernel, Neil Armstrong, Dongjin Kim, linux-amlogic, Rob Herring, linux-arm-kernel Speculation; Maybe the kernel maintainers prefer to optimistically permit future products to easily remove workarounds via quirk flags. Even if data from testing were shown, and it did not impact performance, code reduction and clarity are desirable. On Sun, Nov 10, 2019 at 8:58 PM Jun Li <lijun.kernel@gmail.com> wrote: > > Hi Neil > > As I got the information from Synopsys, this bug exists on current IP versions, > and per my tests with external USB3 hub + 2 Super speed udisks on data > read by dd, I can reproduce this issue with different kernel versions, also I > didn't see obvious performance drop by dd tests after disable park mode for > super speed, so should we just disable it by default so no need a quirk? > > Li Jun > > Tim <elatllat@gmail.com> 于2019年11月11日周一 上午8:42写道: > > > > Thanks for working on this Neil, > > Is there something that needs doing for this patch to make it into 5.3 or 5.4? > > As previously mentioned the patch set fixes the issue on affected hardware; > > https://patchwork.kernel.org/patch/11164515/ > > > > > > > > On Wed, Oct 23, 2019 at 4:11 PM Rob Herring <robh@kernel.org> wrote: > > > > > > On Mon, Oct 14, 2019 at 04:17:16PM +0200, Neil Armstrong wrote: > > > > This patch updates the documentation with the information related > > > > to the quirks that needs to be added for disabling all SuperSpeed XHCi > > > > instances in park mode. > > > > > > > > CC: Dongjin Kim <tobetter@gmail.com> > > > > Cc: Jianxin Pan <jianxin.pan@amlogic.com> > > > > Reported-by: Tim <elatllat@gmail.com> > > > > Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> > > > > --- > > > > Documentation/devicetree/bindings/usb/dwc3.txt | 2 ++ > > > > 1 file changed, 2 insertions(+) > > > > > > Sigh, what's one more to the never ending list of quirks... > > > > > > Acked-by: Rob Herring <robh@kernel.org> _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/3] doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode 2019-11-11 14:05 ` Tim @ 2019-11-12 1:48 ` Jun Li 0 siblings, 0 replies; 15+ messages in thread From: Jun Li @ 2019-11-12 1:48 UTC (permalink / raw) To: Tim Cc: Felipe Balbi, Jianxin Pan, devicetree, khilman, linux-usb, linux-kernel, Neil Armstrong, Dongjin Kim, linux-amlogic, Rob Herring, linux-arm-kernel by a quirk, those platforms without this quirk can't benefit this fix. if later this bug is fixed by some reversion of dwc3 IP, we can easily remove the workaround by a IP version check: if (dwc->revision < DWC3_REVISION_PARK_MODE_FIXED) { disable park mode for ss; } Li Jun Tim <elatllat@gmail.com> 于2019年11月11日周一 下午10:05写道: > > Speculation; > > Maybe the kernel maintainers prefer to optimistically permit future > products to easily remove workarounds via quirk flags. > Even if data from testing were shown, and it did not impact > performance, code reduction and clarity are desirable. > > On Sun, Nov 10, 2019 at 8:58 PM Jun Li <lijun.kernel@gmail.com> wrote: > > > > Hi Neil > > > > As I got the information from Synopsys, this bug exists on current IP versions, > > and per my tests with external USB3 hub + 2 Super speed udisks on data > > read by dd, I can reproduce this issue with different kernel versions, also I > > didn't see obvious performance drop by dd tests after disable park mode for > > super speed, so should we just disable it by default so no need a quirk? > > > > Li Jun > > > > Tim <elatllat@gmail.com> 于2019年11月11日周一 上午8:42写道: > > > > > > Thanks for working on this Neil, > > > Is there something that needs doing for this patch to make it into 5.3 or 5.4? > > > As previously mentioned the patch set fixes the issue on affected hardware; > > > https://patchwork.kernel.org/patch/11164515/ > > > > > > > > > > > > On Wed, Oct 23, 2019 at 4:11 PM Rob Herring <robh@kernel.org> wrote: > > > > > > > > On Mon, Oct 14, 2019 at 04:17:16PM +0200, Neil Armstrong wrote: > > > > > This patch updates the documentation with the information related > > > > > to the quirks that needs to be added for disabling all SuperSpeed XHCi > > > > > instances in park mode. > > > > > > > > > > CC: Dongjin Kim <tobetter@gmail.com> > > > > > Cc: Jianxin Pan <jianxin.pan@amlogic.com> > > > > > Reported-by: Tim <elatllat@gmail.com> > > > > > Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> > > > > > --- > > > > > Documentation/devicetree/bindings/usb/dwc3.txt | 2 ++ > > > > > 1 file changed, 2 insertions(+) > > > > > > > > Sigh, what's one more to the never ending list of quirks... > > > > > > > > Acked-by: Rob Herring <robh@kernel.org> _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/3] doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode 2019-11-11 1:58 ` Jun Li 2019-11-11 14:05 ` Tim @ 2019-11-12 9:00 ` Neil Armstrong 2019-11-12 10:51 ` Jun Li 1 sibling, 1 reply; 15+ messages in thread From: Neil Armstrong @ 2019-11-12 9:00 UTC (permalink / raw) To: Jun Li, Tim Cc: Felipe Balbi, Jianxin Pan, devicetree, khilman, linux-usb, linux-kernel, Dongjin Kim, linux-amlogic, Rob Herring, linux-arm-kernel Hi Li, On 11/11/2019 02:58, Jun Li wrote: > Hi Neil > > As I got the information from Synopsys, this bug exists on current IP versions, > and per my tests with external USB3 hub + 2 Super speed udisks on data > read by dd, I can reproduce this issue with different kernel versions, also I > didn't see obvious performance drop by dd tests after disable park mode for > super speed, so should we just disable it by default so no need a quirk? I don't have any opinion on this, I think the USB & DWC3 maintainers should decide how to handle this. Did Synopsys specified a range of affected IP version ? Neil > > Li Jun > > Tim <elatllat@gmail.com> 于2019年11月11日周一 上午8:42写道: >> >> Thanks for working on this Neil, >> Is there something that needs doing for this patch to make it into 5.3 or 5.4? >> As previously mentioned the patch set fixes the issue on affected hardware; >> https://patchwork.kernel.org/patch/11164515/ >> >> >> >> On Wed, Oct 23, 2019 at 4:11 PM Rob Herring <robh@kernel.org> wrote: >>> >>> On Mon, Oct 14, 2019 at 04:17:16PM +0200, Neil Armstrong wrote: >>>> This patch updates the documentation with the information related >>>> to the quirks that needs to be added for disabling all SuperSpeed XHCi >>>> instances in park mode. >>>> >>>> CC: Dongjin Kim <tobetter@gmail.com> >>>> Cc: Jianxin Pan <jianxin.pan@amlogic.com> >>>> Reported-by: Tim <elatllat@gmail.com> >>>> Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> >>>> --- >>>> Documentation/devicetree/bindings/usb/dwc3.txt | 2 ++ >>>> 1 file changed, 2 insertions(+) >>> >>> Sigh, what's one more to the never ending list of quirks... >>> >>> Acked-by: Rob Herring <robh@kernel.org> _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/3] doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode 2019-11-12 9:00 ` Neil Armstrong @ 2019-11-12 10:51 ` Jun Li 2019-11-12 20:03 ` Thinh Nguyen 0 siblings, 1 reply; 15+ messages in thread From: Jun Li @ 2019-11-12 10:51 UTC (permalink / raw) To: Neil Armstrong, Thinh Nguyen Cc: Felipe Balbi, Jianxin Pan, devicetree, khilman, linux-usb, linux-kernel, Tim, Dongjin Kim, linux-amlogic, Rob Herring, linux-arm-kernel This bug exists on all current versions per information I got from Synopsys. + Thinh Nguyen <thinhn@synopsys.com>. Li Jun Neil Armstrong <narmstrong@baylibre.com> 于2019年11月12日周二 下午5:00写道: > > Hi Li, > > On 11/11/2019 02:58, Jun Li wrote: > > Hi Neil > > > > As I got the information from Synopsys, this bug exists on current IP versions, > > and per my tests with external USB3 hub + 2 Super speed udisks on data > > read by dd, I can reproduce this issue with different kernel versions, also I > > didn't see obvious performance drop by dd tests after disable park mode for > > super speed, so should we just disable it by default so no need a quirk? > > I don't have any opinion on this, I think the USB & DWC3 maintainers should decide > how to handle this. > > Did Synopsys specified a range of affected IP version ? > > Neil > > > > > Li Jun > > > > Tim <elatllat@gmail.com> 于2019年11月11日周一 上午8:42写道: > >> > >> Thanks for working on this Neil, > >> Is there something that needs doing for this patch to make it into 5.3 or 5.4? > >> As previously mentioned the patch set fixes the issue on affected hardware; > >> https://patchwork.kernel.org/patch/11164515/ > >> > >> > >> > >> On Wed, Oct 23, 2019 at 4:11 PM Rob Herring <robh@kernel.org> wrote: > >>> > >>> On Mon, Oct 14, 2019 at 04:17:16PM +0200, Neil Armstrong wrote: > >>>> This patch updates the documentation with the information related > >>>> to the quirks that needs to be added for disabling all SuperSpeed XHCi > >>>> instances in park mode. > >>>> > >>>> CC: Dongjin Kim <tobetter@gmail.com> > >>>> Cc: Jianxin Pan <jianxin.pan@amlogic.com> > >>>> Reported-by: Tim <elatllat@gmail.com> > >>>> Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> > >>>> --- > >>>> Documentation/devicetree/bindings/usb/dwc3.txt | 2 ++ > >>>> 1 file changed, 2 insertions(+) > >>> > >>> Sigh, what's one more to the never ending list of quirks... > >>> > >>> Acked-by: Rob Herring <robh@kernel.org> > _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/3] doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode 2019-11-12 10:51 ` Jun Li @ 2019-11-12 20:03 ` Thinh Nguyen 2019-12-10 8:55 ` Neil Armstrong 0 siblings, 1 reply; 15+ messages in thread From: Thinh Nguyen @ 2019-11-12 20:03 UTC (permalink / raw) To: Jun Li, Neil Armstrong, Thinh Nguyen Cc: Felipe Balbi, Jianxin Pan, devicetree, khilman, linux-usb, linux-kernel, Tim, Dongjin Kim, linux-amlogic, Rob Herring, linux-arm-kernel Hi, Jun Li wrote: > This bug exists on all current versions per information I got from Synopsys. > + Thinh Nguyen <thinhn@synopsys.com>. > > Li Jun The GUCTL1.PARKMODE_DISABLE_SS is only available in dwc_usb3 controller running in host mode. This should not be set for other IPs. This can be disabled by default based on IP, but I recommend to have a property to enable this feature for devices that need this. > > Neil Armstrong <narmstrong@baylibre.com> 于2019年11月12日周二 下午5:00写道: >> Hi Li, >> >> On 11/11/2019 02:58, Jun Li wrote: >>> Hi Neil >>> >>> As I got the information from Synopsys, this bug exists on current IP versions, >>> and per my tests with external USB3 hub + 2 Super speed udisks on data >>> read by dd, I can reproduce this issue with different kernel versions, also I >>> didn't see obvious performance drop by dd tests after disable park mode for >>> super speed, so should we just disable it by default so no need a quirk? >> I don't have any opinion on this, I think the USB & DWC3 maintainers should decide >> how to handle this. >> >> Did Synopsys specified a range of affected IP version ? >> >> Neil >> >>> Li Jun >>> >>> Tim <elatllat@gmail.com> 于2019年11月11日周一 上午8:42写道: >>>> Thanks for working on this Neil, >>>> Is there something that needs doing for this patch to make it into 5.3 or 5.4? >>>> As previously mentioned the patch set fixes the issue on affected hardware; >>>> https://urldefense.proofpoint.com/v2/url?u=https-3A__patchwork.kernel.org_patch_11164515_&d=DwIFaQ&c=DPL6_X_6JkXFx7AXWqB0tg&r=u9FYoxKtyhjrGFcyixFYqTjw1ZX0VsG2d8FCmzkTY-w&m=BCfRHM9e86039Su0-QvK_yUjNnYrnl_BcvxTtViypT8&s=aV5u7uxNX6oTLB3_-qNuzrNvyiqx_rPC6P9TMqG-LNE&e= >>>> >>>> >>>> >>>> On Wed, Oct 23, 2019 at 4:11 PM Rob Herring <robh@kernel.org> wrote: >>>>> On Mon, Oct 14, 2019 at 04:17:16PM +0200, Neil Armstrong wrote: >>>>>> This patch updates the documentation with the information related >>>>>> to the quirks that needs to be added for disabling all SuperSpeed XHCi >>>>>> instances in park mode. >>>>>> >>>>>> CC: Dongjin Kim <tobetter@gmail.com> >>>>>> Cc: Jianxin Pan <jianxin.pan@amlogic.com> >>>>>> Reported-by: Tim <elatllat@gmail.com> >>>>>> Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> >>>>>> --- >>>>>> Documentation/devicetree/bindings/usb/dwc3.txt | 2 ++ >>>>>> 1 file changed, 2 insertions(+) >>>>> Sigh, what's one more to the never ending list of quirks... >>>>> >>>>> Acked-by: Rob Herring <robh@kernel.org> BR, Thinh _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/3] doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode 2019-11-12 20:03 ` Thinh Nguyen @ 2019-12-10 8:55 ` Neil Armstrong 2019-12-11 0:45 ` Tim 0 siblings, 1 reply; 15+ messages in thread From: Neil Armstrong @ 2019-12-10 8:55 UTC (permalink / raw) To: Thinh Nguyen, Jun Li Cc: Felipe Balbi, Jianxin Pan, devicetree, khilman, linux-usb, linux-kernel, Tim, Dongjin Kim, linux-amlogic, Rob Herring, linux-arm-kernel Hi, On 12/11/2019 21:03, Thinh Nguyen wrote: > Hi, > > Jun Li wrote: >> This bug exists on all current versions per information I got from Synopsys. >> + Thinh Nguyen <thinhn@synopsys.com>. >> >> Li Jun > > The GUCTL1.PARKMODE_DISABLE_SS is only available in dwc_usb3 controller > running in host mode. This should not be set for other IPs. > > This can be disabled by default based on IP, but I recommend to have a > property to enable this feature for devices that need this. Thanks, so this patchset is the right way to solve this. Felipe, would it be possible to have it merged for next release ? Should I resend it ? Thanks, Neil > > >> >> Neil Armstrong <narmstrong@baylibre.com> 于2019年11月12日周二 下午5:00写道: >>> Hi Li, >>> >>> On 11/11/2019 02:58, Jun Li wrote: >>>> Hi Neil >>>> >>>> As I got the information from Synopsys, this bug exists on current IP versions, >>>> and per my tests with external USB3 hub + 2 Super speed udisks on data >>>> read by dd, I can reproduce this issue with different kernel versions, also I >>>> didn't see obvious performance drop by dd tests after disable park mode for >>>> super speed, so should we just disable it by default so no need a quirk? >>> I don't have any opinion on this, I think the USB & DWC3 maintainers should decide >>> how to handle this. >>> >>> Did Synopsys specified a range of affected IP version ? >>> >>> Neil >>> >>>> Li Jun >>>> >>>> Tim <elatllat@gmail.com> 于2019年11月11日周一 上午8:42写道: >>>>> Thanks for working on this Neil, >>>>> Is there something that needs doing for this patch to make it into 5.3 or 5.4? >>>>> As previously mentioned the patch set fixes the issue on affected hardware; >>>>> https://urldefense.proofpoint.com/v2/url?u=https-3A__patchwork.kernel.org_patch_11164515_&d=DwIFaQ&c=DPL6_X_6JkXFx7AXWqB0tg&r=u9FYoxKtyhjrGFcyixFYqTjw1ZX0VsG2d8FCmzkTY-w&m=BCfRHM9e86039Su0-QvK_yUjNnYrnl_BcvxTtViypT8&s=aV5u7uxNX6oTLB3_-qNuzrNvyiqx_rPC6P9TMqG-LNE&e= >>>>> >>>>> >>>>> >>>>> On Wed, Oct 23, 2019 at 4:11 PM Rob Herring <robh@kernel.org> wrote: >>>>>> On Mon, Oct 14, 2019 at 04:17:16PM +0200, Neil Armstrong wrote: >>>>>>> This patch updates the documentation with the information related >>>>>>> to the quirks that needs to be added for disabling all SuperSpeed XHCi >>>>>>> instances in park mode. >>>>>>> >>>>>>> CC: Dongjin Kim <tobetter@gmail.com> >>>>>>> Cc: Jianxin Pan <jianxin.pan@amlogic.com> >>>>>>> Reported-by: Tim <elatllat@gmail.com> >>>>>>> Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> >>>>>>> --- >>>>>>> Documentation/devicetree/bindings/usb/dwc3.txt | 2 ++ >>>>>>> 1 file changed, 2 insertions(+) >>>>>> Sigh, what's one more to the never ending list of quirks... >>>>>> >>>>>> Acked-by: Rob Herring <robh@kernel.org> > > BR, > Thinh > _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/3] doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode 2019-12-10 8:55 ` Neil Armstrong @ 2019-12-11 0:45 ` Tim 2019-12-20 9:58 ` Tim 0 siblings, 1 reply; 15+ messages in thread From: Tim @ 2019-12-11 0:45 UTC (permalink / raw) To: Neil Armstrong Cc: devicetree, Jianxin Pan, Felipe Balbi, Thinh Nguyen, linux-usb, linux-kernel, Jun Li, khilman, Dongjin Kim, linux-amlogic, Rob Herring, linux-arm-kernel Just writing to say; this patch is still performing well on 5.5.0-rc1, and there is no speed improvement by adding DWC3_GUCTL_NAK_PER_ENH_HS BIT(17) I get up to 3890 ms second lag with "ping -s 5120 $IP" when copying between USB HDDs either way, but at least this patch stops the crashing. On Tue, Dec 10, 2019 at 3:55 AM Neil Armstrong <narmstrong@baylibre.com> wrote: > > Hi, > > On 12/11/2019 21:03, Thinh Nguyen wrote: > > Hi, > > > > Jun Li wrote: > >> This bug exists on all current versions per information I got from Synopsys. > >> + Thinh Nguyen <thinhn@synopsys.com>. > >> > >> Li Jun > > > > The GUCTL1.PARKMODE_DISABLE_SS is only available in dwc_usb3 controller > > running in host mode. This should not be set for other IPs. > > > > This can be disabled by default based on IP, but I recommend to have a > > property to enable this feature for devices that need this. > > Thanks, so this patchset is the right way to solve this. > > Felipe, would it be possible to have it merged for next release ? > Should I resend it ? > > Thanks, > Neil > > > > > > >> > >> Neil Armstrong <narmstrong@baylibre.com> 于2019年11月12日周二 下午5:00写道: > >>> Hi Li, > >>> > >>> On 11/11/2019 02:58, Jun Li wrote: > >>>> Hi Neil > >>>> > >>>> As I got the information from Synopsys, this bug exists on current IP versions, > >>>> and per my tests with external USB3 hub + 2 Super speed udisks on data > >>>> read by dd, I can reproduce this issue with different kernel versions, also I > >>>> didn't see obvious performance drop by dd tests after disable park mode for > >>>> super speed, so should we just disable it by default so no need a quirk? > >>> I don't have any opinion on this, I think the USB & DWC3 maintainers should decide > >>> how to handle this. > >>> > >>> Did Synopsys specified a range of affected IP version ? > >>> > >>> Neil > >>> > >>>> Li Jun > >>>> > >>>> Tim <elatllat@gmail.com> 于2019年11月11日周一 上午8:42写道: > >>>>> Thanks for working on this Neil, > >>>>> Is there something that needs doing for this patch to make it into 5.3 or 5.4? > >>>>> As previously mentioned the patch set fixes the issue on affected hardware; > >>>>> https://urldefense.proofpoint.com/v2/url?u=https-3A__patchwork.kernel.org_patch_11164515_&d=DwIFaQ&c=DPL6_X_6JkXFx7AXWqB0tg&r=u9FYoxKtyhjrGFcyixFYqTjw1ZX0VsG2d8FCmzkTY-w&m=BCfRHM9e86039Su0-QvK_yUjNnYrnl_BcvxTtViypT8&s=aV5u7uxNX6oTLB3_-qNuzrNvyiqx_rPC6P9TMqG-LNE&e= > >>>>> > >>>>> > >>>>> > >>>>> On Wed, Oct 23, 2019 at 4:11 PM Rob Herring <robh@kernel.org> wrote: > >>>>>> On Mon, Oct 14, 2019 at 04:17:16PM +0200, Neil Armstrong wrote: > >>>>>>> This patch updates the documentation with the information related > >>>>>>> to the quirks that needs to be added for disabling all SuperSpeed XHCi > >>>>>>> instances in park mode. > >>>>>>> > >>>>>>> CC: Dongjin Kim <tobetter@gmail.com> > >>>>>>> Cc: Jianxin Pan <jianxin.pan@amlogic.com> > >>>>>>> Reported-by: Tim <elatllat@gmail.com> > >>>>>>> Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> > >>>>>>> --- > >>>>>>> Documentation/devicetree/bindings/usb/dwc3.txt | 2 ++ > >>>>>>> 1 file changed, 2 insertions(+) > >>>>>> Sigh, what's one more to the never ending list of quirks... > >>>>>> > >>>>>> Acked-by: Rob Herring <robh@kernel.org> > > > > BR, > > Thinh > > > _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/3] doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode 2019-12-11 0:45 ` Tim @ 2019-12-20 9:58 ` Tim 0 siblings, 0 replies; 15+ messages in thread From: Tim @ 2019-12-20 9:58 UTC (permalink / raw) To: Neil Armstrong Cc: devicetree, Jianxin Pan, Felipe Balbi, Thinh Nguyen, linux-usb, linux-kernel, Jun Li, khilman, Dongjin Kim, linux-amlogic, Rob Herring, linux-arm-kernel This patch is still good on 5.4 and 5.5, and the following network lag was solved by separating the USB and NIC smp_affinity_list. On Tue, Dec 10, 2019, 7:45 PM Tim <elatllat@gmail.com> wrote: > > Just writing to say; > this patch is still performing well on 5.5.0-rc1, and > there is no speed improvement by adding DWC3_GUCTL_NAK_PER_ENH_HS BIT(17) > I get up to 3890 ms second lag with "ping -s 5120 $IP" when > copying between USB HDDs either way, but at least this patch stops the > crashing. _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic ^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH 2/3] usb: dwc3: gadget: Add support for disabling SS instances in park mode 2019-10-14 14:17 [PATCH 0/3] arm64: g12-common: parkmode_disable_ss_quirk on DWC3 controller Neil Armstrong 2019-10-14 14:17 ` [PATCH 1/3] doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode Neil Armstrong @ 2019-10-14 14:17 ` Neil Armstrong 2019-10-14 14:17 ` [PATCH 3/3] arm64: dts: g12-common: add parkmode_disable_ss_quirk on DWC3 controller Neil Armstrong 2 siblings, 0 replies; 15+ messages in thread From: Neil Armstrong @ 2019-10-14 14:17 UTC (permalink / raw) To: balbi, khilman Cc: Jianxin Pan, Neil Armstrong, linux-usb, linux-kernel, Tim, Dongjin Kim, linux-amlogic, linux-arm-kernel In certain circumstances, the XHCI SuperSpeed instance in park mode can fail to recover, thus on Amlogic G12A/G12B/SM1 SoCs when there is high load on the single XHCI SuperSpeed instance, the controller can crash like: xhci-hcd xhci-hcd.0.auto: xHCI host not responding to stop endpoint command. xhci-hcd xhci-hcd.0.auto: Host halt failed, -110 xhci-hcd xhci-hcd.0.auto: xHCI host controller not responding, assume dead xhci-hcd xhci-hcd.0.auto: xHCI host not responding to stop endpoint command. hub 2-1.1:1.0: hub_ext_port_status failed (err = -22) xhci-hcd xhci-hcd.0.auto: HC died; cleaning up usb 2-1.1-port1: cannot reset (err = -22) Setting the PARKMODE_DISABLE_SS bit in the DWC3_USB3_GUCTL1 mitigates the issue. The bit is described as : "When this bit is set to '1' all SS bus instances in park mode are disabled" CC: Dongjin Kim <tobetter@gmail.com> Cc: Jianxin Pan <jianxin.pan@amlogic.com> Reported-by: Tim <elatllat@gmail.com> Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> --- drivers/usb/dwc3/core.c | 5 +++++ drivers/usb/dwc3/core.h | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c index 999ce5e84d3c..a36cf33330fb 100644 --- a/drivers/usb/dwc3/core.c +++ b/drivers/usb/dwc3/core.c @@ -993,6 +993,9 @@ static int dwc3_core_init(struct dwc3 *dwc) if (dwc->dis_tx_ipgap_linecheck_quirk) reg |= DWC3_GUCTL1_TX_IPGAP_LINECHECK_DIS; + if (dwc->parkmode_disable_ss_quirk) + reg |= DWC3_GUCTL1_PARKMODE_DISABLE_SS; + dwc3_writel(dwc->regs, DWC3_GUCTL1, reg); } @@ -1303,6 +1306,8 @@ static void dwc3_get_properties(struct dwc3 *dwc) "snps,dis-del-phy-power-chg-quirk"); dwc->dis_tx_ipgap_linecheck_quirk = device_property_read_bool(dev, "snps,dis-tx-ipgap-linecheck-quirk"); + dwc->parkmode_disable_ss_quirk = device_property_read_bool(dev, + "snps,parkmode-disable-ss-quirk"); dwc->tx_de_emphasis_quirk = device_property_read_bool(dev, "snps,tx_de_emphasis_quirk"); diff --git a/drivers/usb/dwc3/core.h b/drivers/usb/dwc3/core.h index 1c8b349379af..5fb557f24d38 100644 --- a/drivers/usb/dwc3/core.h +++ b/drivers/usb/dwc3/core.h @@ -249,6 +249,7 @@ #define DWC3_GUCTL_HSTINAUTORETRY BIT(14) /* Global User Control 1 Register */ +#define DWC3_GUCTL1_PARKMODE_DISABLE_SS BIT(17) #define DWC3_GUCTL1_TX_IPGAP_LINECHECK_DIS BIT(28) #define DWC3_GUCTL1_DEV_L1_EXIT_BY_HW BIT(24) @@ -1022,6 +1023,8 @@ struct dwc3_scratchpad_array { * change quirk. * @dis_tx_ipgap_linecheck_quirk: set if we disable u2mac linestate * check during HS transmit. + * @parkmode_disable_ss_quirk: set if we need to disable all SuperSpeed + * instances in park mode. * @tx_de_emphasis_quirk: set if we enable Tx de-emphasis quirk * @tx_de_emphasis: Tx de-emphasis value * 0 - -6dB de-emphasis @@ -1213,6 +1216,7 @@ struct dwc3 { unsigned dis_u2_freeclk_exists_quirk:1; unsigned dis_del_phy_power_chg_quirk:1; unsigned dis_tx_ipgap_linecheck_quirk:1; + unsigned parkmode_disable_ss_quirk:1; unsigned tx_de_emphasis_quirk:1; unsigned tx_de_emphasis:2; -- 2.22.0 _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic ^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 3/3] arm64: dts: g12-common: add parkmode_disable_ss_quirk on DWC3 controller 2019-10-14 14:17 [PATCH 0/3] arm64: g12-common: parkmode_disable_ss_quirk on DWC3 controller Neil Armstrong 2019-10-14 14:17 ` [PATCH 1/3] doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode Neil Armstrong 2019-10-14 14:17 ` [PATCH 2/3] usb: dwc3: gadget: Add support " Neil Armstrong @ 2019-10-14 14:17 ` Neil Armstrong 2 siblings, 0 replies; 15+ messages in thread From: Neil Armstrong @ 2019-10-14 14:17 UTC (permalink / raw) To: balbi, khilman Cc: Jianxin Pan, Neil Armstrong, linux-usb, linux-kernel, Tim, Dongjin Kim, linux-amlogic, linux-arm-kernel When high load on the DWC3 SuperSpee port, the controller crashed as: [ 221.141621] xhci-hcd xhci-hcd.0.auto: xHCI host not responding to stop endpoint command. [ 221.157631] xhci-hcd xhci-hcd.0.auto: Host halt failed, -110 [ 221.157635] xhci-hcd xhci-hcd.0.auto: xHCI host controller not responding, assume dead [ 221.159901] xhci-hcd xhci-hcd.0.auto: xHCI host not responding to stop endpoint command. [ 221.159961] hub 2-1.1:1.0: hub_ext_port_status failed (err = -22) [ 221.160076] xhci-hcd xhci-hcd.0.auto: HC died; cleaning up [ 221.165946] usb 2-1.1-port1: cannot reset (err = -22) Setting the parkmode_disable_ss_quirk quirk fixes the issue. CC: Dongjin Kim <tobetter@gmail.com> Cc: Jianxin Pan <jianxin.pan@amlogic.com> Reported-by: Tim <elatllat@gmail.com> Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> --- arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi index 3f39e020f74e..4b002e799e5c 100644 --- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi +++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi @@ -2381,6 +2381,7 @@ dr_mode = "host"; snps,dis_u2_susphy_quirk; snps,quirk-frame-length-adjustment; + snps,parkmode-disable-ss-quirk; }; }; -- 2.22.0 _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic ^ permalink raw reply related [flat|nested] 15+ messages in thread
end of thread, other threads:[~2019-12-20 9:58 UTC | newest] Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2019-10-14 14:17 [PATCH 0/3] arm64: g12-common: parkmode_disable_ss_quirk on DWC3 controller Neil Armstrong 2019-10-14 14:17 ` [PATCH 1/3] doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode Neil Armstrong 2019-10-23 20:11 ` Rob Herring 2019-11-11 0:38 ` Tim 2019-11-11 1:58 ` Jun Li 2019-11-11 14:05 ` Tim 2019-11-12 1:48 ` Jun Li 2019-11-12 9:00 ` Neil Armstrong 2019-11-12 10:51 ` Jun Li 2019-11-12 20:03 ` Thinh Nguyen 2019-12-10 8:55 ` Neil Armstrong 2019-12-11 0:45 ` Tim 2019-12-20 9:58 ` Tim 2019-10-14 14:17 ` [PATCH 2/3] usb: dwc3: gadget: Add support " Neil Armstrong 2019-10-14 14:17 ` [PATCH 3/3] arm64: dts: g12-common: add parkmode_disable_ss_quirk on DWC3 controller Neil Armstrong
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).