nRF52840 only: Module with types, definitions, and API used by the USB MSC class. More...
Modules | |
USB MSC descriptors | |
nRF52840 only: Descriptors for the USB MSC class. | |
USB MSC class configuration | |
USB MSC internals | |
nRF52840 only: Internals of the USB MSC class. | |
USB MSC SCSI data structures | |
nRF52840 only: USB MSC SCSI data structures. | |
USB MSC types | |
nRF52840 only: Types used in the USB MSC class. | |
Data Structures | |
struct | app_usbd_msc_t |
Mass storage class instance type. More... | |
Macros | |
#define | APP_USBD_MSC_ENDPOINT_LIST(in_number, out_number) |
Helper macro for defining MSC endpoints. More... | |
#define | APP_USBD_MSC_GLOBAL_DEF(instance_name,interface_number,user_ev_handler,endpoint_list,blockdev_list,workbuffer_size) |
Global definition of app_usbd_msc_t class. More... | |
Typedefs | |
typedef enum app_usbd_msc_user_event_e | app_usbd_msc_user_event_t |
Events passed to user event handler. More... | |
Enumerations | |
enum | app_usbd_msc_user_event_e { APP_USBD_MSC_USER_EVT_SUSPEND = 0, APP_USBD_MSC_USER_EVT_RESUME, APP_USBD_MSC_USER_EVT_START, APP_USBD_MSC_USER_EVT_STOP } |
Events passed to user event handler. More... | |
Functions | |
static app_usbd_class_inst_t const * | app_usbd_msc_class_inst_get (app_usbd_msc_t const *p_msc) |
static app_usbd_msc_t const * | app_usbd_msc_class_get (app_usbd_class_inst_t const *p_inst) |
Helper function to get MSC from base class instance. More... | |
nRF52840 only: Module with types, definitions, and API used by the USB MSC class.
References:
#define APP_USBD_MSC_ENDPOINT_LIST | ( | in_number, | |
out_number | |||
) |
Helper macro for defining MSC endpoints.
in_number | Input endpoint number |
out_number | Output endpoint number |
#define APP_USBD_MSC_GLOBAL_DEF | ( | instance_name, | |
interface_number, | |||
user_ev_handler, | |||
endpoint_list, | |||
blockdev_list, | |||
workbuffer_size | |||
) |
Global definition of app_usbd_msc_t class.
instance_name | Name of global instance |
interface_number | Unique interface number |
user_ev_handler | User event handler (optional) |
endpoint_list | Input endpoint list (nrf_drv_usbd_ep_t) |
blockdev_list | Block device list |
workbuffer_size | Work buffer size (need to fit into all block devices from block device list) |
typedef enum app_usbd_msc_user_event_e app_usbd_msc_user_event_t |
Events passed to user event handler.
void msc_user_ev_handler(app_usbd_class_inst_t const * p_inst, app_usbd_msc_user_event_t event);
Events passed to user event handler.
void msc_user_ev_handler(app_usbd_class_inst_t const * p_inst, app_usbd_msc_user_event_t event);
|
inlinestatic |
Helper function to get MSC from base class instance.
[in] | p_inst | Base class instance |
|
inlinestatic |
@brief Helper function to get class instance from MSC
[in] | p_msc | MSC instance (declared by APP_USBD_MSC_GLOBAL_DEF) |