Message ID | 20240604060659.1449278-2-quic_kriskura@quicinc.com |
---|---|
State | Accepted |
Commit | 5b8baed4b88132c12010ce6ca1b56f00d122e376 |
Headers | show |
Series | Disable SS instances in park mode for SC7180/ SC7280 | expand |
On Tue, Jun 04, 2024 at 11:36:58AM +0530, Krishna Kurapati wrote: > On SC7180, in host mode, it is observed that stressing out controller > results in HC died error: > > xhci-hcd.12.auto: xHCI host not responding to stop endpoint command > xhci-hcd.12.auto: xHCI host controller not responding, assume dead > xhci-hcd.12.auto: HC died; cleaning up > > And at this instant only restarting the host mode fixes it. Disable > SuperSpeed instances in park mode for SC7180 to mitigate this issue. Let me please repeat the question from v1: Just out of curiosity, what is the park mode? > > Reported-by: Doug Anderson <dianders@google.com> > Cc: <stable@vger.kernel.org> > Fixes: 0b766e7fe5a2 ("arm64: dts: qcom: sc7180: Add USB related nodes") > Signed-off-by: Krishna Kurapati <quic_kriskura@quicinc.com> > --- > Removed RB/TB tag from Doug as commit text was updated. > > arch/arm64/boot/dts/qcom/sc7180.dtsi | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi > index 2b481e20ae38..cc93b5675d5d 100644 > --- a/arch/arm64/boot/dts/qcom/sc7180.dtsi > +++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi > @@ -3063,6 +3063,7 @@ usb_1_dwc3: usb@a600000 { > iommus = <&apps_smmu 0x540 0>; > snps,dis_u2_susphy_quirk; > snps,dis_enblslpm_quirk; > + snps,parkmode-disable-ss-quirk; > phys = <&usb_1_hsphy>, <&usb_1_qmpphy QMP_USB43DP_USB3_PHY>; > phy-names = "usb2-phy", "usb3-phy"; > maximum-speed = "super-speed"; > -- > 2.34.1 >
On Tue, Jun 04, 2024 at 01:34:44PM +0530, Krishna Kurapati PSSNV wrote: > > > On 6/4/2024 1:16 PM, Dmitry Baryshkov wrote: > > On Tue, Jun 04, 2024 at 11:36:58AM +0530, Krishna Kurapati wrote: > > > On SC7180, in host mode, it is observed that stressing out controller > > > results in HC died error: > > > > > > xhci-hcd.12.auto: xHCI host not responding to stop endpoint command > > > xhci-hcd.12.auto: xHCI host controller not responding, assume dead > > > xhci-hcd.12.auto: HC died; cleaning up > > > > > > And at this instant only restarting the host mode fixes it. Disable > > > SuperSpeed instances in park mode for SC7180 to mitigate this issue. > > > > Let me please repeat the question from v1: > > > > Just out of curiosity, what is the park mode? > > > > Sorry, Missed the mail in v1. > > Databook doesn't give much info on this bit (SS case, commit 7ba6b09fda5e0) > but it does in HS case (commit d21a797a3eeb2). > > From the mail we received from Synopsys, they described it as follows: > > "Park mode feature allows better throughput on the USB in cases where a > single EP is active. It increases the degree of pipelining within the > controller as long as a single EP is active." Thank you! > > Even in the current debug for this test case, Synopsys suggested us to set > this bit to avoid the controller being dead and we are waiting for further > answers from them. Should these quirks be enabled for other Qualcomm platforms? If so, which platforms should get it? > I can update thread with more info once we get some data from Synopsys. > > Regards, > Krishna, > > > > > > > Reported-by: Doug Anderson <dianders@google.com> > > > Cc: <stable@vger.kernel.org> > > > Fixes: 0b766e7fe5a2 ("arm64: dts: qcom: sc7180: Add USB related nodes") > > > Signed-off-by: Krishna Kurapati <quic_kriskura@quicinc.com> > > > --- > > > Removed RB/TB tag from Doug as commit text was updated. > > > > > > arch/arm64/boot/dts/qcom/sc7180.dtsi | 1 + > > > 1 file changed, 1 insertion(+) > > > > > > diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi > > > index 2b481e20ae38..cc93b5675d5d 100644 > > > --- a/arch/arm64/boot/dts/qcom/sc7180.dtsi > > > +++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi > > > @@ -3063,6 +3063,7 @@ usb_1_dwc3: usb@a600000 { > > > iommus = <&apps_smmu 0x540 0>; > > > snps,dis_u2_susphy_quirk; > > > snps,dis_enblslpm_quirk; > > > + snps,parkmode-disable-ss-quirk; > > > phys = <&usb_1_hsphy>, <&usb_1_qmpphy QMP_USB43DP_USB3_PHY>; > > > phy-names = "usb2-phy", "usb3-phy"; > > > maximum-speed = "super-speed"; > > > -- > > > 2.34.1 > > > > >
On 6/4/2024 3:16 PM, Dmitry Baryshkov wrote: > On Tue, Jun 04, 2024 at 01:34:44PM +0530, Krishna Kurapati PSSNV wrote: >> >> >> On 6/4/2024 1:16 PM, Dmitry Baryshkov wrote: >>> On Tue, Jun 04, 2024 at 11:36:58AM +0530, Krishna Kurapati wrote: >>>> On SC7180, in host mode, it is observed that stressing out controller >>>> results in HC died error: >>>> >>>> xhci-hcd.12.auto: xHCI host not responding to stop endpoint command >>>> xhci-hcd.12.auto: xHCI host controller not responding, assume dead >>>> xhci-hcd.12.auto: HC died; cleaning up >>>> >>>> And at this instant only restarting the host mode fixes it. Disable >>>> SuperSpeed instances in park mode for SC7180 to mitigate this issue. >>> >>> Let me please repeat the question from v1: >>> >>> Just out of curiosity, what is the park mode? >>> >> >> Sorry, Missed the mail in v1. >> >> Databook doesn't give much info on this bit (SS case, commit 7ba6b09fda5e0) >> but it does in HS case (commit d21a797a3eeb2). >> >> From the mail we received from Synopsys, they described it as follows: >> >> "Park mode feature allows better throughput on the USB in cases where a >> single EP is active. It increases the degree of pipelining within the >> controller as long as a single EP is active." > > Thank you! > >> >> Even in the current debug for this test case, Synopsys suggested us to set >> this bit to avoid the controller being dead and we are waiting for further >> answers from them. > > Should these quirks be enabled for other Qualcomm platforms? If so, > which platforms should get it? In downstream we enable this for Gen-1 platforms. On v1 discussion thread, I agreed to send another series for other platforms. I could've included it for others as well in this v2, but there are around 30 QC SoCs (or more) on upstream and many are very old. I need to go through all of them and figure out which ones are Gen-1. To not delay this for SC7280 and SC7180 (as chrome platforms need it right away), I sent v2 only for these two targets. Regards, Krishna, > >> I can update thread with more info once we get some data from Synopsys. >> >> Regards, >> Krishna, >> >>>> >>>> Reported-by: Doug Anderson <dianders@google.com> >>>> Cc: <stable@vger.kernel.org> >>>> Fixes: 0b766e7fe5a2 ("arm64: dts: qcom: sc7180: Add USB related nodes") >>>> Signed-off-by: Krishna Kurapati <quic_kriskura@quicinc.com> >>>> --- >>>> Removed RB/TB tag from Doug as commit text was updated. >>>> >>>> arch/arm64/boot/dts/qcom/sc7180.dtsi | 1 + >>>> 1 file changed, 1 insertion(+) >>>> >>>> diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi >>>> index 2b481e20ae38..cc93b5675d5d 100644 >>>> --- a/arch/arm64/boot/dts/qcom/sc7180.dtsi >>>> +++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi >>>> @@ -3063,6 +3063,7 @@ usb_1_dwc3: usb@a600000 { >>>> iommus = <&apps_smmu 0x540 0>; >>>> snps,dis_u2_susphy_quirk; >>>> snps,dis_enblslpm_quirk; >>>> + snps,parkmode-disable-ss-quirk; >>>> phys = <&usb_1_hsphy>, <&usb_1_qmpphy QMP_USB43DP_USB3_PHY>; >>>> phy-names = "usb2-phy", "usb3-phy"; >>>> maximum-speed = "super-speed"; >>>> -- >>>> 2.34.1 >>>> >>> >
diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi index 2b481e20ae38..cc93b5675d5d 100644 --- a/arch/arm64/boot/dts/qcom/sc7180.dtsi +++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi @@ -3063,6 +3063,7 @@ usb_1_dwc3: usb@a600000 { iommus = <&apps_smmu 0x540 0>; snps,dis_u2_susphy_quirk; snps,dis_enblslpm_quirk; + snps,parkmode-disable-ss-quirk; phys = <&usb_1_hsphy>, <&usb_1_qmpphy QMP_USB43DP_USB3_PHY>; phy-names = "usb2-phy", "usb3-phy"; maximum-speed = "super-speed";
On SC7180, in host mode, it is observed that stressing out controller results in HC died error: xhci-hcd.12.auto: xHCI host not responding to stop endpoint command xhci-hcd.12.auto: xHCI host controller not responding, assume dead xhci-hcd.12.auto: HC died; cleaning up And at this instant only restarting the host mode fixes it. Disable SuperSpeed instances in park mode for SC7180 to mitigate this issue. Reported-by: Doug Anderson <dianders@google.com> Cc: <stable@vger.kernel.org> Fixes: 0b766e7fe5a2 ("arm64: dts: qcom: sc7180: Add USB related nodes") Signed-off-by: Krishna Kurapati <quic_kriskura@quicinc.com> --- Removed RB/TB tag from Doug as commit text was updated. arch/arm64/boot/dts/qcom/sc7180.dtsi | 1 + 1 file changed, 1 insertion(+)