|
Zephyr Project API
3.2.0
A Scalable Open Source RTOS
|
USB Mass Storage Class public header. More...
Go to the source code of this file.
Data Structures | |
| struct | CBW |
| struct | CSW |
Macros | |
| #define | SCSI_TRANSPARENT_SUBCLASS 0x06 |
| #define | BULK_ONLY_TRANSPORT_PROTOCOL 0x50 |
| #define | MSC_REQUEST_GET_MAX_LUN 0xFE |
| #define | MSC_REQUEST_RESET 0xFF |
| #define | CBW_Signature 0x43425355 |
| #define | CBW_DIRECTION_DATA_IN 0x80 |
| #define | CSW_Signature 0x53425355 |
| #define | CSW_STATUS_CMD_PASSED 0x00 |
| #define | CSW_STATUS_CMD_FAILED 0x01 |
| #define | CSW_STATUS_PHASE_ERROR 0x02 |
| #define | TEST_UNIT_READY 0x00 |
| #define | REQUEST_SENSE 0x03 |
| #define | FORMAT_UNIT 0x04 |
| #define | INQUIRY 0x12 |
| #define | MODE_SELECT6 0x15 |
| #define | MODE_SENSE6 0x1A |
| #define | START_STOP_UNIT 0x1B |
| #define | MEDIA_REMOVAL 0x1E |
| #define | READ_FORMAT_CAPACITIES 0x23 |
| #define | READ_CAPACITY 0x25 |
| #define | READ10 0x28 |
| #define | WRITE10 0x2A |
| #define | VERIFY10 0x2F |
| #define | READ12 0xA8 |
| #define | WRITE12 0xAA |
| #define | MODE_SELECT10 0x55 |
| #define | MODE_SENSE10 0x5A |
USB Mass Storage Class public header.
Header follows the Mass Storage Class Specification (Mass_Storage_Specification_Overview_v1.4_2-19-2010.pdf) and Mass Storage Class Bulk-Only Transport Specification (usbmassbulk_10.pdf). Header is limited to Bulk-Only Transfer protocol.
| #define BULK_ONLY_TRANSPORT_PROTOCOL 0x50 |
| #define CBW_DIRECTION_DATA_IN 0x80 |
MSC Command Block Wrapper Flags
| #define CBW_Signature 0x43425355 |
MSC Command Block Wrapper (CBW) Signature
| #define CSW_Signature 0x53425355 |
MSC Command Status Wrapper (CBW) Signature
| #define CSW_STATUS_CMD_FAILED 0x01 |
| #define CSW_STATUS_CMD_PASSED 0x00 |
MSC Command Block Status Values
| #define CSW_STATUS_PHASE_ERROR 0x02 |
| #define FORMAT_UNIT 0x04 |
| #define INQUIRY 0x12 |
| #define MEDIA_REMOVAL 0x1E |
| #define MODE_SELECT10 0x55 |
| #define MODE_SELECT6 0x15 |
| #define MODE_SENSE10 0x5A |
| #define MODE_SENSE6 0x1A |
| #define MSC_REQUEST_GET_MAX_LUN 0xFE |
MSC Request Codes for Bulk-Only Transport
| #define MSC_REQUEST_RESET 0xFF |
| #define READ10 0x28 |
| #define READ12 0xA8 |
| #define READ_CAPACITY 0x25 |
| #define READ_FORMAT_CAPACITIES 0x23 |
| #define REQUEST_SENSE 0x03 |
| #define SCSI_TRANSPARENT_SUBCLASS 0x06 |
MSC Subclass and Protocol Codes
| #define START_STOP_UNIT 0x1B |
| #define TEST_UNIT_READY 0x00 |
SCSI transparent command set used by MSC
| #define VERIFY10 0x2F |
| #define WRITE10 0x2A |
| #define WRITE12 0xAA |