ODROID-C1/-C2 USB Detection only triggered by some devices

Martin Blumenstingl martin.blumenstingl at googlemail.com
Tue Jun 29 09:30:08 PDT 2021


Hi Alan,

On Tue, Jun 29, 2021 at 6:18 PM Alan Stern <stern at rowland.harvard.edu> wrote:
[...]
> > >         usbcore.autosuspend=-1
> > wow, this helps indeed
> > my steps are:
> > - power off my Odroid-C1+
> > - unplug all USB devices
> > - boot with usbcore.autosuspend=-1 in the kernel cmdline
> > - plugin my Corsair Voyager USB 3.0 flash drive (which was only
> > detected before if an additional USB 2.0 flash drive was plugged in
> > during boot)
> > -> without any lsusb magic the device was immediately recognized
>
> That does show pretty convincingly that runtime suspend is causing the
> problem.  But I still have no idea why the problem affects some devices
> and not others.  It's a mystery.
Maybe because there's two related problems (I am guessing here):
The first issue is that USB hotplug is not working at all on my
Odroid-C1+ (which means: dwc2 + GL852G USB hub).
The second issue is that the workaround we had before (running lsusb
-vv to make "hot plugged" devices show up) is not working for some USB
devices.

It seems that using a different workaround (usbcore.autosuspend=-1)
makes *all* USB devices show up - even without any "lsusb -vv" call.
So I think we should focus on the first issue as it may also fix the
other problem as well.

[...]
> > after rebooting without usbcore.autosuspend=-1 (and no USB device
> > plugged in during boot):
> > # grep "" /sys/bus/usb/devices/*/power/autosuspend
> > /sys/bus/usb/devices/1-1/power/autosuspend:0
> > /sys/bus/usb/devices/usb1/power/autosuspend:0
> >
> > I think the next step is narrowing down which component is causing this issue.
>
> Maybe Minas can help.  He knows a lot more about dwc2 than I do (which
> is practically nothing).
I'll wait for Minas then

> > Interestingly my PC (running 5.12.13-arch1-2) also has two Genesys
> > Logic USB hubs with the same USB vendor and device IDs as my
> > Odroid-C1+: 05e3:0610.
> > These hubs are connected to my AMD Ryzen 5000 CPU or the B550 chipset:
> > usb1              1d6b:0002 09 1IF  [USB 2.00,   480 Mbps,   0mA]
> > (xhci-hcd 0000:02:00.0) hub
> >  1-3               05e3:0610 09 1IF  [USB 2.10,   480 Mbps, 100mA]
> > (GenesysLogic USB2.0 Hub) hub
> > [...]
> >  1-7               05e3:0610 09 1IF  [USB 2.00,   480 Mbps, 100mA]
> > (Genesys Logic, Inc. Hub) hub
> >
> > So far I have not observed any problems on my PC.
>
> Presumably because it uses xHCI rather than dwc2.
indeed. I think it's good to know that it's not an issue affecting all
Genesys Logic USB 2.0 hubs.
As you mentioned above it's most likely that dwc2 is the culprit here.
Or it might be some interoperability issue between dwc2 and GL852G


Best regards,
Martin



More information about the linux-amlogic mailing list