bd7b54a3c4
It seems connecting an iPod Video to a Mac triggers the null request check, resulting in a panic. Ignoring the error with a bare return "fixes" it and allows the iPod to connect. This isn't ideal though, because it could silently introduce bugs on other targets. The likely cause of this is the host sending control requests too fast, or a driver problem (the Video uses the ARC driver, which is still on the legacy interface), with multiple requests getting queued at once. Since the USB core expects to deal with only one request at a time, the second response trips the check. Try to handle this situation a bit more gracefully by detecting overlapped requests and returning a STALL to the host when it occurs. At this point the USB stack is able to safely handle a new request. Link: https://forums.rockbox.org/index.php/topic,54414.0.html Change-Id: I9a2b7e35620ff540ebdb39f81671377062a4917d |
||
---|---|---|
.. | ||
usb_charging_only.c | ||
usb_charging_only.h | ||
usb_class_driver.h | ||
usb_core.c | ||
usb_hid.c | ||
usb_hid.h | ||
usb_hid_usage_tables.h | ||
usb_serial.c | ||
usb_serial.h | ||
usb_storage.c | ||
usb_storage.h |