doc: usb: add UDC driver API reference

Add UDC driver API reference.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
This commit is contained in:
Johann Fischer 2022-03-23 13:38:13 +01:00 committed by Carles Cufí
commit 9fb62f6f0d
2 changed files with 43 additions and 0 deletions

View file

@ -11,3 +11,11 @@ USB device support
uds_testing.rst
hid.rst
uds_cdc_acm.rst
New USB device support
######################
.. toctree::
:maxdepth: 1
uds_next.rst

View file

@ -0,0 +1,35 @@
.. _uds_next:
USB device core support
#######################
The new USB device support is experimental and under development. It consists
of low level USB device controller (UDC) driver API, USB device stack (core)
and different functions implementing specific classes. The device stack and
driver API bring multiple device support for the (rare) case that a board has
multiple USB device controllers. Device stack has support for multiple
configurations and a class instance can be added or removed at runtime to a
configuration. The stack provides a specific API for implementing the
functions (classes). This takes over the configuration of the class interfaces
and endpoints, and also the communication with the stack and driver API.
The stack can be enabled by the :kconfig:option:`CONFIG_USB_DEVICE_STACK_NEXT`.
The first time there will be only one sample for the new USB support,
:ref:`usb_shell-app`, with all available USB support shell commands.
The sample is mainly to help test the capabilities of the stack and correct
implementation of the USB controller drivers.
USB device stack core API reference
***********************************
.. doxygengroup:: usbd_api
UDC driver API reference
************************
The new USB device controller (UDC) driver API implements the low level layer
to interface with USB device controller.
UDC driver API is experimental and is subject to change without notice, it
is described in :zephyr_file:`include/drivers/usb/udc.h`.
.. doxygengroup:: udc_api