rockbox/firmware/usbstack
Amaury Pouly 775ab07d5e usb: add support for hardware handled SET ADDR/CONFIG
Some USB controllers like the one of the Rockchip 27xx handle some
requests in pure hardware. This is especially a problem for two
of them:
- SET ADDR which is used by our core to track the DEFAULT/ADDRESS
  state and is required for the drivers to work properly
- SET CONFIG which is used by our core to initialise the drivers
  by calling init_connection()
In these cases we need a way to notify the core that such requests
happened.
We do this by exporting two functions which directly notify the
core about these requests and perform the necessary init steps
required without doing the actual USB transfers. Special care is
needed because these functions could be called from an interrupt
handler. For this reason we still use the usb_queue and introduce
new IDs so that they are processed in order and safely.

No functional change is intended, both in the usbstack and on
targets without such quirks.

Change-Id: Ie42feffd4584e88bf37cff018b627f333dca1140
2012-12-07 13:37:26 +01: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 PACK_DATA: use a static inline to enable type checking 2011-12-29 21:58:34 +00:00
usb_core.c usb: add support for hardware handled SET ADDR/CONFIG 2012-12-07 13:37:26 +01:00
usb_hid.c usb PACK_DATA: use a static inline to enable type checking 2011-12-29 21:58:34 +00:00
usb_hid.h Flyspray: FS#10326 2009-07-18 12:58:29 +00:00
usb_hid_usage_tables.h Commit "FS#10468 - USB HID: Show keypad mode on screen" 2009-09-30 10:06:04 +00:00
usb_serial.c usb PACK_DATA: use a static inline to enable type checking 2011-12-29 21:58:34 +00:00
usb_serial.h Add const to usb_serial_send() buffer. 2009-08-19 05:30:40 +00:00
usb_storage.c fix a mistake of 803408f18 spotted by n1s 2012-05-07 12:54:11 -04:00
usb_storage.h Allow class drivers to reuse the core data buffer for control transfers. This doesn't make much difference right now, but it should keep HID memory usage lower (once HID is ready) (FS#10146 by Tomer Shalev) 2009-04-18 20:40:50 +00:00