1
0
Fork 0
forked from len0rd/rockbox
foxbox/firmware/usbstack
Aidan MacDonald f8810be6de usb_core: More legacy control API fixes
In the old API, usb_core_transfer_complete() would ignore
any completions on EP0. The legacy control API will also
ignore most completions on EP0, but it only did so after
filling in the completion event.

If the driver submits a spurious completion on EP0, then
this could clobber a previously queued completion event.

Fix this by deciding whether to ignore the completion
*before* modifying the event data.

Change-Id: I68526898a96efa594ada4e94bb6851aaaf12e92a
2021-11-13 18:37:33 +00:00
..
usb_charging_only.c usb PACK_DATA: use a static inline to enable type checking 2011-12-29 21:58:34 +00:00
usb_charging_only.h USB retweaking: Take out the USB_REQUEST/RELEASE_DISK scheme and simply ask the USB core whether or not any drivers require exclusive access at the moment of connect. Doing anthing else just produces nasty effects on Windows because it expects some communication just for enabling the PHY and not allowing it to mount volumes if a thread doesn't ack causes annoying error message boxes. Make behavior of each USB type identical from the system perspective. Some miscellaneous changes (simplify, ata->storage naming, define only used USB_* enums values were possible). 2009-01-13 16:27:35 +00:00
usb_class_driver.h usb: add request data argument to all control request handlers 2021-10-16 21:14:42 +01:00
usb_core.c usb_core: More legacy control API fixes 2021-11-13 18:37:33 +00:00
usb_hid.c usb: ensure RX buffers are a multiple of the packet size 2021-10-16 21:14:42 +01:00
usb_hid.h usb: add request data argument to all control request handlers 2021-10-16 21:14:42 +01:00
usb_hid_usage_tables.h usb_hid: add support for Battery Strength 2021-03-06 04:15:02 +00:00
usb_serial.c usb: ensure RX buffers are a multiple of the packet size 2021-10-16 21:14:42 +01:00
usb_serial.h usb: add request data argument to all control request handlers 2021-10-16 21:14:42 +01:00
usb_storage.c usb: ensure RX buffers are a multiple of the packet size 2021-10-16 21:14:42 +01:00
usb_storage.h usb: add request data argument to all control request handlers 2021-10-16 21:14:42 +01:00