RE: [PATCH 0/4] USB host support for TQMa8MPxL + MBa8MPxL

From: Jun Li
Date: Thu Sep 08 2022 - 05:07:16 EST


Hi,

> -----Original Message-----
> From: Alexander Stein <alexander.stein@xxxxxxxxxxxxxxx>
> Sent: Thursday, September 8, 2022 1:50 PM
> To: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>; Rob Herring
> <robh+dt@xxxxxxxxxx>; Krzysztof Kozlowski
> <krzysztof.kozlowski+dt@xxxxxxxxxx>; Shawn Guo <shawnguo@xxxxxxxxxx>;
> Sascha Hauer <s.hauer@xxxxxxxxxxxxxx>; Pengutronix Kernel Team
> <kernel@xxxxxxxxxxxxxx>; Fabio Estevam <festevam@xxxxxxxxx>; dl-linux-imx
> <linux-imx@xxxxxxx>; Jun Li <jun.li@xxxxxxx>
> Cc: linux-usb@xxxxxxxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx;
> linux-kernel@xxxxxxxxxxxxxxx
> Subject: RE: [PATCH 0/4] USB host support for TQMa8MPxL + MBa8MPxL
>
> Hi,
>
> Am Mittwoch, 7. September 2022, 18:08:25 CEST schrieb Jun Li:
> > Hi
> >
> > > -----Original Message-----
> > > From: Alexander Stein <alexander.stein@xxxxxxxxxxxxxxx>
> > > Sent: Wednesday, September 7, 2022 10:46 PM
> > > To: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>; Rob Herring
> > > <robh+dt@xxxxxxxxxx>; Krzysztof Kozlowski
> > > <krzysztof.kozlowski+dt@xxxxxxxxxx>; Shawn Guo
> > > <shawnguo@xxxxxxxxxx>; Sascha Hauer <s.hauer@xxxxxxxxxxxxxx>;
> > > Pengutronix Kernel Team <kernel@xxxxxxxxxxxxxx>; Fabio Estevam
> > > <festevam@xxxxxxxxx>; dl-linux-imx <linux-imx@xxxxxxx>; Jun Li
> > > <jun.li@xxxxxxx>
> > > Cc: Alexander Stein <alexander.stein@xxxxxxxxxxxxxxx>;
> > > linux-usb@xxxxxxxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx;
> > > linux-kernel@xxxxxxxxxxxxxxx
> > > Subject: [PATCH 0/4] USB host support for TQMa8MPxL + MBa8MPxL
> > >
> > > Hi everybody,
> > >
> > > this is a series based on the RFC at [1] for USB host support on
> > > TQMa8MPxL
> > > + MBa8MPxL. The main difference is that USB DR support has already
> > > + been
> > > added and has been removed from this series.
> > >
> > > The DT configuration itself (patch 4) is rather straight forward,
> > > but leads
> > >
> > > to the following dmesg errors regarding superspeed ports:
> > > > [ 8.549243] hub 2-1:1.0: hub_ext_port_status failed (err = -110)
> > > > [ 22.885263] usb 2-1: Failed to suspend device, error -110
> > >
> > > This hardware works fine using the downstream kernel, because for
> > > imx8mp this ITP sync feature is enabled conditionally [2] & [3].
> > > Hacking this into mainline resulted in a working superspeed setup as
> well.
> > > I also noticed that on some android kernel [4] depending in IP core
> > > version either GCTL.SOFTITPSYNC or GFLADJ.GFLADJ_REFCLK_LPM_SEL is
> > > enabled unconditionally.
> > > So I opted for the latter one using some quirk (patch 1-3).
> > >
> > > I have to admit I do not know what this is actually about, nor why
> > > my setup does not work without this change or why this fixed my
> > > problem. So maybe someone with more knowledge can say if this is the
> > > way to go or what this is about.
> >
> > This can be updated:)
> >
> > > I also added snps,dis_u3_susphy_quirk to the board level as for some
> > > reason USB Superspeed U3 does not work. Detecting the onboard hub
> > > takes much longer and once all devices are diconnected from the hub
> > > it is put into runtime suspend (U3) and new attached devices are not
> > > detected at all.
> > > Until the cause is known and fixed runtime suspend has to be disabled.
> >
> > For this issue you are reporting, I am not sure if this is caused by a
> > USB clock change merged on v5.19, if you use latest kernel, can you
> > try with below patches applied to see if U3 can work for you?
>
> Awesome, This does the trick!
> I was already running with patches [1] & [2], but was missing patch [3].
> With all of them applied, USB detects a newly attached superspeed device
> when the HUB is in runtime suspend (U3).

Yes, patch[3] needs to apply with patches [1]&[2], I am applying the
same tag to make sure the 3 patches land on the same target release
as they will go through diff maintainer's trees.

>
> I forgot: thanks for checking with synopsis regarding soft ITP sync feature.
>

Welcome.

Li Jun