> I'm trying to set up a Raspberry Pi 3B (or a 3B+) to run an Elgato Stream Deck (if you've never heard of that it's basically a fancy macro keyboard). I've had no problems using the Stream Deck on my x86_64 desktop (Fedora 32) and on a Raspberry Pi 3B or 3B+ running Raspbian (kernel 5.4.51-v7+). > > However all of my attempts trying to run my code on Fedora (tried using both 32 and 33 alpha 64-bit) result in the USB bus on the Raspberry Pi locking up after a minute or so. It appears to be the whole bus as unplugging the Stream Deck and plugging it back in have no effect. Only a full reboot appears to restore functionality. The following messages appear in the kernel: > > dwc2 3f980000.usb: dwc2_hc_halt() Channel can't be halted > > So it would seem to me that Raspbian still has some secret sauce for the USB bus on the Raspberry Pi that hasn't been upstreamed yet. Googling around appears to confirm this. Raspbian uses dwc_otg_hcd, a highly optimized driver for host-only mode (despite the name). The upstream kernel offers dwc2 which can switch between host mode and OTG mode and is also apparently buggy as well. > > This isn't really a call for help or action as there's probably not much the Fedora community can do. Really it's more of an opportunity to vent my frustration at the Raspberry Pi Foundation developers that haven't worked harder at upstreaming all of their changes. The USB on the RPi 0-3 devices is somewhat broken, and there's issues that make it extremely slow which the RPi foundation hacks around with their completely different driver. It was clear from the outset that the hacks for that driver would never go upstream and as a result the upstream driver on the RPi basically runs at half speed and has issues with devices that need high bandwidth. I've seen some devices that also manage to hit USB in such a way on the RPi to cause issues too, we had a wifi adapter that did this, and it's also sometimes a bug in the device driver that just happens to trigger on the RPi due to the issues. You can see one example in the following two links, I wonder if the Stream Deck driver has similar issues: https://marc.info/?t=154971423200001&r=1&w=2 https://patchwork.kernel.org/cover/10807911/ _______________________________________________ arm mailing list -- arm@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to arm-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/arm@xxxxxxxxxxxxxxxxxxxxxxx