nRF52840 only: USB MSC SCSI data structures. More...
Enumerations | |
enum | app_usbd_scsi_cmd_t { APP_USBD_SCSI_CMD_TESTUNITREADY = 0x00, APP_USBD_SCSI_CMD_REQUESTSENSE = 0x03, APP_USBD_SCSI_CMD_FORMAT_UNIT = 0x04, APP_USBD_SCSI_CMD_READ6 = 0x08, APP_USBD_SCSI_CMD_WRITE6 = 0x0a, APP_USBD_SCSI_CMD_INQUIRY = 0x12, APP_USBD_SCSI_CMD_MODESELECT6 = 0x15, APP_USBD_SCSI_CMD_MODESENSE6 = 0x1a, APP_USBD_SCSI_CMD_STARTSTOPUNIT = 0x1b, APP_USBD_SCSI_CMD_SENDDIAGNOSTIC = 0x1d, APP_USBD_SCSI_CMD_PREVENTMEDIAREMOVAL = 0x1e, APP_USBD_SCSI_CMD_READCAPACITY10 = 0x25, APP_USBD_SCSI_CMD_READ10 = 0x28, APP_USBD_SCSI_CMD_WRITE10 = 0x2a, APP_USBD_SCSI_CMD_MODESELECT10 = 0x55, APP_USBD_SCSI_CMD_MODESENSE10 = 0x5a } |
SCSI command set. More... | |
nRF52840 only: USB MSC SCSI data structures.
Reference specifications:
#define APP_USBD_MSC_SCSI_INQ_FLAG1_RMB 0x80 |
Removable Medium
#define APP_USBD_MSC_SCSI_INQ_FLAG2_HISUP 0x10 |
Hierarchal LUN addressing
#define APP_USBD_MSC_SCSI_INQ_FLAG2_NORMACA 0x20 |
Normal ACA Supported
#define APP_USBD_MSC_SCSI_INQ_FLAG2_RSP_SPC2 0x02 |
SPC-2 / SPC-3 response format
#define APP_USBD_MSC_SCSI_INQ_QUAL_CONNECTED 0x00 |
Peripheral connected
#define APP_USBD_MSC_SCSI_INQ_QUAL_NOT_CONN 0x20 |
Peripheral not connected
#define APP_USBD_MSC_SCSI_INQ_QUAL_NOT_SUPP 0x60 |
Peripheral not supported
#define APP_USBD_MSC_SCSI_INQ_TYPE_ARRAY 0x0c |
Storage Array Controller
#define APP_USBD_MSC_SCSI_INQ_TYPE_BCC 0x10 |
Bridge Controller Commands
#define APP_USBD_MSC_SCSI_INQ_TYPE_CD_DVD 0x05 |
CD/DVD device
#define APP_USBD_MSC_SCSI_INQ_TYPE_DIR_ACCESS 0x00 |
Direct Access (SBC)
#define APP_USBD_MSC_SCSI_INQ_TYPE_ENCLOSURE 0x0d |
Enclosure Services
#define APP_USBD_MSC_SCSI_INQ_TYPE_MC 0x08 |
Medium Changer
#define APP_USBD_MSC_SCSI_INQ_TYPE_NONE 0x1f |
No Peripheral
#define APP_USBD_MSC_SCSI_INQ_TYPE_OCRW 0x0f |
Optical card reader/writer
#define APP_USBD_MSC_SCSI_INQ_TYPE_OPTICAL 0x07 |
Optical Memory
#define APP_USBD_MSC_SCSI_INQ_TYPE_OSD 0x11 |
Object-based Storage
#define APP_USBD_MSC_SCSI_INQ_TYPE_PRINTER 0x02 |
Printer
#define APP_USBD_MSC_SCSI_INQ_TYPE_PROCESSOR 0x03 |
Processor device
#define APP_USBD_MSC_SCSI_INQ_TYPE_RBC 0x0e |
Simplified Direct Access
#define APP_USBD_MSC_SCSI_INQ_TYPE_SEQ_ACCESS 0x01 |
Sequential Access
#define APP_USBD_MSC_SCSI_INQ_TYPE_WRITE_ONCE 0x04 |
Write-once device
#define APP_USBD_SCSI_CMD_REQSENSE_CODE_CURRENT 0x70 |
#define APP_USBD_SCSI_CMD_REQSENSE_CODE_CURRENTDESC 0x72 |
#define APP_USBD_SCSI_CMD_REQSENSE_CODE_DEFERRED 0x71 |
#define APP_USBD_SCSI_CMD_REQSENSE_CODE_DEFERREDDESC 0x73 |
#define APP_USBD_SCSI_CMD_REQSENSE_CODE_VALID 0x80 |
#define APP_USBD_SCSI_CMD_REQSENSE_FLAG_ABORTEDCOMMAND 0x0b |
Bits 3...0 app_usbd_scsi_cmd_requestsense_resp_t::flags
#define APP_USBD_SCSI_CMD_REQSENSE_FLAG_BLANKCHECK 0x08 |
Bits 3...0 app_usbd_scsi_cmd_requestsense_resp_t::flags
#define APP_USBD_SCSI_CMD_REQSENSE_FLAG_DATAPROTECT 0x07 |
Bits 3...0 app_usbd_scsi_cmd_requestsense_resp_t::flags
#define APP_USBD_SCSI_CMD_REQSENSE_FLAG_EOM 0x40 |
#define APP_USBD_SCSI_CMD_REQSENSE_FLAG_FILEMARK 0x80 |
#define APP_USBD_SCSI_CMD_REQSENSE_FLAG_HARDWAREERROR 0x04 |
Bits 3...0 app_usbd_scsi_cmd_requestsense_resp_t::flags
#define APP_USBD_SCSI_CMD_REQSENSE_FLAG_ILI 0x20 |
#define APP_USBD_SCSI_CMD_REQSENSE_FLAG_ILLEGALREQUEST 0x05 |
Bits 3...0 app_usbd_scsi_cmd_requestsense_resp_t::flags
#define APP_USBD_SCSI_CMD_REQSENSE_FLAG_MEDIUMERROR 0x03 |
Bits 3...0 app_usbd_scsi_cmd_requestsense_resp_t::flags
#define APP_USBD_SCSI_CMD_REQSENSE_FLAG_NOSENSE 0x00 |
Bits 3...0 app_usbd_scsi_cmd_requestsense_resp_t::flags
#define APP_USBD_SCSI_CMD_REQSENSE_FLAG_NOTREADY 0x02 |
Bits 3...0 app_usbd_scsi_cmd_requestsense_resp_t::flags
#define APP_USBD_SCSI_CMD_REQSENSE_FLAG_RECOVEREDERROR 0x01 |
Bits 3...0 app_usbd_scsi_cmd_requestsense_resp_t::flags
#define APP_USBD_SCSI_CMD_REQSENSE_FLAG_RESERVED 0x10 |
#define APP_USBD_SCSI_CMD_REQSENSE_FLAG_UNITATTENTION 0x06 |
Bits 3...0 app_usbd_scsi_cmd_requestsense_resp_t::flags
#define APP_USBD_SCSI_CMD_REQSENSE_FLAG_VENDORSPECIFIC 0x09 |
Bits 3...0 app_usbd_scsi_cmd_requestsense_resp_t::flags
#define APP_USBD_SCSI_CMD_TESTUNITREADY_LEN 6 |
APP_USBD_SCSI_CMD_TESTUNITREADY command length
#define APP_USBD_SCSI_INQ_VER_NONE 0x00 |
No standards conformance
#define APP_USBD_SCSI_INQ_VER_SPC 0x03 |
SCSI Primary Commands (link to SBC)
#define APP_USBD_SCSI_INQ_VER_SPC2 0x04 |
SCSI Primary Commands - 2 (link to SBC-2)
#define APP_USBD_SCSI_INQ_VER_SPC3 0x05 |
SCSI Primary Commands - 3 (link to SBC-2)
#define APP_USBD_SCSI_INQ_VER_SPC4 0x06 |
SCSI Primary Commands - 4 (link to SBC-3)
enum app_usbd_scsi_cmd_t |
SCSI command set.
Mandatory (and some optional) commands required by SBC-2.