On Tue, Jun 29, 2021 at 06:30:08PM +0200, Martin Blumenstingl wrote: > Hi Alan, > > On Tue, Jun 29, 2021 at 6:18 PM Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> 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. Those two issues could well be related; they could both be a result of improper handling of USB bus suspend. Fixing that might fix both issues. Alan Stern > [...] > > > 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