USB MSC types

nRF5 SDK v17.1.0

nRF52840 only: Types used in the USB MSC class. More...

Data Structures

struct app_usbd_msc_cbw_t
Command Block Wrapper (CBW). More...
struct app_usbd_msc_csw_t
Command Status Wrapper (CSW). More...

Macros

#define APP_USBD_MSC_CLASS 0x08
MSC class definition in interface descriptor. More...
#define APP_USBD_MSC_CBW_SIGNATURE {'U', 'S', 'B', 'C'}
#define APP_USBD_MSC_CBW_DIRECTION_IN (1u << 7)
#define APP_USBD_MSC_CSW_SIGNATURE {'U', 'S', 'B', 'S'}
#define APP_USBD_MSC_CSW_STATUS_PASS 0x00
#define APP_USBD_MSC_CSW_STATUS_FAIL 0x01
#define APP_USBD_MSC_CSW_STATUS_PE 0x02

Detailed Description

nRF52840 only: Types used in the USB MSC class.

Macro Definition Documentation

#define APP_USBD_MSC_CBW_DIRECTION_IN   (1u << 7)

CBW direction flag

#define APP_USBD_MSC_CBW_SIGNATURE   {'U', 'S', 'B', 'C'}

CBW signature

#define APP_USBD_MSC_CLASS   0x08

MSC class definition in interface descriptor.

app_usbd_descriptor_iface_t::bInterfaceClass

#define APP_USBD_MSC_CSW_SIGNATURE   {'U', 'S', 'B', 'S'}

CSW signature

#define APP_USBD_MSC_CSW_STATUS_FAIL   0x01

CSW status: Command Failed

#define APP_USBD_MSC_CSW_STATUS_PASS   0x00

CSW status: Command Passed

#define APP_USBD_MSC_CSW_STATUS_PE   0x02

CSW status: Phase Error

Enumeration Type Documentation

MSC protocol possible value.

Note
The USB Mass Storage Class Control/Bulk/Interrupt (CBI) Transport specification is approved for use only with full-speed floppy disk drives. CBI shall not be used in high-speed capable devices.
Enumerator
APP_USBD_MSC_PROTOCOL_CBI

Command/Bulk/Interrupt

APP_USBD_MSC_PROTOCOL_CBI_ALT

W/o command completion

APP_USBD_MSC_PROTOCOL_BULK

Bulk-only

APP_USBD_MSC_PROTOCOL_UAS

UAS

APP_USBD_MSC_PROTOCOL_VENDOR

Vendor specific

MSC USB requests nrf_drv_usbd_setup_t::bmRequestType .

Enumerator
APP_USBD_MSC_REQ_ADSC

Accept Device-Specific Command

APP_USBD_MSC_REQ_GET_REQS

Get Requests

APP_USBD_MSC_REQ_PUT_REQS

Put Requests

APP_USBD_MSC_REQ_GET_MAX_LUN

Get Max LUN

APP_USBD_MSC_REQ_BULK_RESET

Mass Storage Reset

MSC subclass possible value.

Enumerator
APP_USBD_MSC_SUBCLASS_NOT_REPORTED

Command set not reported

APP_USBD_MSC_SUBCLASS_RBC

Reduced Block Commands

APP_USBD_MSC_SUBCLASS_ATAPI

CD/DVD devices

APP_USBD_MSC_SUBCLASS_QIC_157

Tape devices

APP_USBD_MSC_SUBCLASS_UFI

Floppy disk drives

APP_USBD_MSC_SUBCLASS_SFF_8070I

Floppy disk drives

APP_USBD_MSC_SUBCLASS_TRANSPARENT

Determined by INQUIRY

APP_USBD_MSC_SUBCLASS_LSD_FS

LSD FS specified negitiation

APP_USBD_MSC_SUBCLASS_IEEE_1667

IEEE 1607

APP_USBD_MSC_SUBCLASS_VENDOR

Vendor specific