Re: [PATCH v2 1/2] arm64: dts: qcom: sc7180: Disable SuperSpeed instances in park mode

From: Dmitry Baryshkov
Date: Tue Jun 04 2024 - 05:47:18 EST


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@xxxxxxxxxx>
> > > Cc: <stable@xxxxxxxxxxxxxxx>
> > > Fixes: 0b766e7fe5a2 ("arm64: dts: qcom: sc7180: Add USB related nodes")
> > > Signed-off-by: Krishna Kurapati <quic_kriskura@xxxxxxxxxxx>
> > > ---
> > > 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
> > >
> >

--
With best wishes
Dmitry