| 
| #define  | USBD_DEVICE_DESCR_DEFINE(p)   	static __in_section(usb, descriptor_##p, 0) __used __aligned(1) | 
|   | 
| #define  | USBD_CLASS_DESCR_DEFINE(p,  instance)   	static __in_section(usb, descriptor_##p.1, instance) __used __aligned(1) | 
|   | 
| #define  | USBD_MISC_DESCR_DEFINE(p)   	static __in_section(usb, descriptor_##p, 2) __used __aligned(1) | 
|   | 
| #define  | USBD_USER_DESCR_DEFINE(p)   	static __in_section(usb, descriptor_##p, 3) __used __aligned(1) | 
|   | 
| #define  | USBD_STRING_DESCR_DEFINE(p)   	static __in_section(usb, descriptor_##p, 4) __used __aligned(1) | 
|   | 
| #define  | USBD_STRING_DESCR_USER_DEFINE(p)   	static __in_section(usb, descriptor_##p, 5) __used __aligned(1) | 
|   | 
| #define  | USBD_TERM_DESCR_DEFINE(p)   	static __in_section(usb, descriptor_##p, 6) __used __aligned(1) | 
|   | 
| #define  | USBD_DEFINE_CFG_DATA(name)   	static STRUCT_SECTION_ITERABLE(usb_cfg_data, name) | 
|   | 
| #define  | USBD_CFG_DATA_DEFINE(p,  name) | 
|   | 
| #define  | USB_MAX_CTRL_MPS   64 | 
|   | 
| #define  | USB_MAX_FS_BULK_MPS   64 | 
|   | 
| #define  | USB_MAX_FS_INT_MPS   64 | 
|   | 
| #define  | USB_MAX_FS_ISO_MPS   1023 | 
|   | 
| #define  | USB_TRANS_READ   BIT(0)   /** Read transfer flag */ | 
|   | 
| #define  | USB_TRANS_WRITE   BIT(1)   /** Write transfer flag */ | 
|   | 
| #define  | USB_TRANS_NO_ZLP   BIT(2)   /** No zero-length packet flag */ | 
|   | 
 | 
| int  | usb_set_config (const uint8_t *usb_descriptor) | 
|   | Configure USB controller.  More...
  | 
|   | 
| int  | usb_deconfig (void) | 
|   | Deconfigure USB controller.  More...
  | 
|   | 
| int  | usb_enable (usb_dc_status_callback status_cb) | 
|   | Enable the USB subsystem and associated hardware.  More...
  | 
|   | 
| int  | usb_disable (void) | 
|   | Disable the USB device.  More...
  | 
|   | 
| int  | usb_write (uint8_t ep, const uint8_t *data, uint32_t data_len, uint32_t *bytes_ret) | 
|   | Write data to the specified endpoint.  More...
  | 
|   | 
| int  | usb_read (uint8_t ep, uint8_t *data, uint32_t max_data_len, uint32_t *ret_bytes) | 
|   | Read data from the specified endpoint.  More...
  | 
|   | 
| int  | usb_ep_set_stall (uint8_t ep) | 
|   | Set STALL condition on the specified endpoint.  More...
  | 
|   | 
| int  | usb_ep_clear_stall (uint8_t ep) | 
|   | Clears STALL condition on the specified endpoint.  More...
  | 
|   | 
| int  | usb_ep_read_wait (uint8_t ep, uint8_t *data, uint32_t max_data_len, uint32_t *read_bytes) | 
|   | Read data from the specified endpoint.  More...
  | 
|   | 
| int  | usb_ep_read_continue (uint8_t ep) | 
|   | Continue reading data from the endpoint.  More...
  | 
|   | 
| void  | usb_transfer_ep_callback (uint8_t ep, enum usb_dc_ep_cb_status_code) | 
|   | Transfer management endpoint callback.  More...
  | 
|   | 
| int  | usb_transfer (uint8_t ep, uint8_t *data, size_t dlen, unsigned int flags, usb_transfer_callback cb, void *priv) | 
|   | Start a transfer.  More...
  | 
|   | 
| int  | usb_transfer_sync (uint8_t ep, uint8_t *data, size_t dlen, unsigned int flags) | 
|   | Start a transfer and block-wait for completion.  More...
  | 
|   | 
| void  | usb_cancel_transfer (uint8_t ep) | 
|   | Cancel any ongoing transfer on the specified endpoint.  More...
  | 
|   | 
| void  | usb_cancel_transfers (void) | 
|   | Cancel all ongoing transfers.  More...
  | 
|   | 
| bool  | usb_transfer_is_busy (uint8_t ep) | 
|   | Check that transfer is ongoing for the endpoint.  More...
  | 
|   | 
| int  | usb_wakeup_request (void) | 
|   | Start the USB remote wakeup procedure.  More...
  | 
|   | 
| bool  | usb_get_remote_wakeup_status (void) | 
|   | Get status of the USB remote wakeup feature.  More...
  | 
|   | 
USB device core layer APIs and structures. 
This file contains the USB device core layer APIs and structures.