diff mbox series

[3/3] ARM: dts: imx6: rdu2: Limit USBH1 to Full Speed

Message ID 20190522071227.31488-3-andrew.smirnov@gmail.com (mailing list archive)
State New, archived
Headers show
Series [1/3] ARM: dts: imx6: rdu2: Add node for UCS1002 USB charger chip | expand

Commit Message

Andrey Smirnov May 22, 2019, 7:12 a.m. UTC
Cabling used to connect devices to USBH1 on RDU2 does not meet USB
spec cable quality and cable length requirements to operate at High
Speed, so limit the port to Full Speed only.

Reported-by: Chris Healy <cphealy@gmail.com>
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@gmail.com>
Cc: Lucas Stach <l.stach@pengutronix.de>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
---
 arch/arm/boot/dts/imx6qdl-zii-rdu2.dtsi | 1 +
 1 file changed, 1 insertion(+)

Comments

Lucas Stach May 22, 2019, 9:33 a.m. UTC | #1
Hi Andrey,

Am Mittwoch, den 22.05.2019, 00:12 -0700 schrieb Andrey Smirnov:
> Cabling used to connect devices to USBH1 on RDU2 does not meet USB
> spec cable quality and cable length requirements to operate at High
> Speed, so limit the port to Full Speed only.

Really? I thought this issue is specific to the RDU1, but you've been
looking at this USB stuff for a lot longer than me.

Regards,
Lucas

> Reported-by: Chris Healy <cphealy@gmail.com>
> Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
> Cc: Shawn Guo <shawnguo@kernel.org>
> Cc: Fabio Estevam <festevam@gmail.com>
> Cc: Lucas Stach <l.stach@pengutronix.de>
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: linux-kernel@vger.kernel.org
> ---
>  arch/arm/boot/dts/imx6qdl-zii-rdu2.dtsi | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/arch/arm/boot/dts/imx6qdl-zii-rdu2.dtsi
> b/arch/arm/boot/dts/imx6qdl-zii-rdu2.dtsi
> index 5484e4b87975..3b37fe68d373 100644
> --- a/arch/arm/boot/dts/imx6qdl-zii-rdu2.dtsi
> +++ b/arch/arm/boot/dts/imx6qdl-zii-rdu2.dtsi
> @@ -772,6 +772,7 @@
>  &usbh1 {
>  	vbus-supply = <&reg_5p0v_main>;
>  	disable-over-current;
> +	maximum-speed = "full-speed";
>  	status = "okay";
>  };
>
Andrey Smirnov May 22, 2019, 5:56 p.m. UTC | #2
On Wed, May 22, 2019 at 2:33 AM Lucas Stach <l.stach@pengutronix.de> wrote:
>
> Hi Andrey,
>
> Am Mittwoch, den 22.05.2019, 00:12 -0700 schrieb Andrey Smirnov:
> > Cabling used to connect devices to USBH1 on RDU2 does not meet USB
> > spec cable quality and cable length requirements to operate at High
> > Speed, so limit the port to Full Speed only.
>
> Really? I thought this issue is specific to the RDU1, but you've been
> looking at this USB stuff for a lot longer than me.
>

I am merely a messenger here. I didn't personally verify this to be
the case, so your knowledge is probably as good as mine. Chris
reported this based on feedback from their EE team, so he should know
all of the details better.

Thanks,
Andrey Smirnov
Chris Healy May 22, 2019, 6:10 p.m. UTC | #3
> > Am Mittwoch, den 22.05.2019, 00:12 -0700 schrieb Andrey Smirnov:
> > > Cabling used to connect devices to USBH1 on RDU2 does not meet USB
> > > spec cable quality and cable length requirements to operate at High
> > > Speed, so limit the port to Full Speed only.
> >
> > Really? I thought this issue is specific to the RDU1, but you've been
> > looking at this USB stuff for a lot longer than me.
> >
>
> I am merely a messenger here. I didn't personally verify this to be
> the case, so your knowledge is probably as good as mine. Chris
> reported this based on feedback from their EE team, so he should know
> all of the details better.

The issue is less about the internals of the device and more about the
cabling that the device is connected to.  In the target application of
this device, the USB cables are almost always longer than the spec
limit of the USB standard for high speed.  Given our use cases, we
don't have need for high speed so limiting the max speed to full speed
is the way we work around cables that are too long for stable high
speed operation.

We have validated that running with full speed does mitigate the
problems experienced when attempting to run with high speed on the
target application installations.

Reviewed-by: Chris Healy <cphealy@gmail.com>
diff mbox series

Patch

diff --git a/arch/arm/boot/dts/imx6qdl-zii-rdu2.dtsi b/arch/arm/boot/dts/imx6qdl-zii-rdu2.dtsi
index 5484e4b87975..3b37fe68d373 100644
--- a/arch/arm/boot/dts/imx6qdl-zii-rdu2.dtsi
+++ b/arch/arm/boot/dts/imx6qdl-zii-rdu2.dtsi
@@ -772,6 +772,7 @@ 
 &usbh1 {
 	vbus-supply = <&reg_5p0v_main>;
 	disable-over-current;
+	maximum-speed = "full-speed";
 	status = "okay";
 };