zephyr/subsys/usb/class
Peter Bigot 611263921a usb: add optional work queue
The USB infrastructure currently uses the system work queue for
offloading transfers, CDC-ACM UART transmission/reception, and device
firmware activities.  This causes problems when the system work queue
is also used to initiate some activities (such as UART) that normally
complete without requiring an external thread: in that case the USB
infrastructure is prevented from making progress because the system
work queue is blocked waiting for the USB infrastructure to provide
data.

Break the dependency by allowing the USB infrastructure to use a
dedicated work queue which doesn't depend on availability of the
system work queue.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2020-09-16 13:32:22 -05:00
..
audio device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
hid usb: hid: All hid_ops callbacks get device pointer. 2020-09-04 12:27:44 +02:00
netusb device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
bluetooth.c device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
bt_h4.c device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
cdc_acm.c usb: add optional work queue 2020-09-16 13:32:22 -05:00
CMakeLists.txt usb: Add Audio class related files 2020-05-08 15:12:27 +02:00
Kconfig soc: sam0: add support for the BOSSA bootloader 2020-07-22 13:24:37 +02:00
Kconfig.template.composite_device_number kconfig: Clean up header comments and make them consistent 2019-11-04 17:31:27 -05:00
loopback.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
mass_storage.c device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
usb_dfu.c usb: add optional work queue 2020-09-16 13:32:22 -05:00