2 #ifndef __USB_MSC_DEF_H 3 #define __USB_MSC_DEF_H 14 typedef __PACKED_STRUCT _USB_MSC_CBW
26 typedef __PACKED_STRUCT _USB_MSC_CSW
30 uint32_t dDataResidue;
37 #define MSC_SUBCLASS_SCSI 0x06 40 #define MSC_PROTOCOL_BULK_ONLY 0x50 43 #define MSC_REQUEST_MASS_STORAGE_RESET 0xFF 44 #define MSC_REQUEST_GET_MAX_LUN 0xFE 47 #define MSC_CBW_SIGNATURE 0x43425355 48 #define MSC_CSW_SIGNATURE 0x53425355 51 #define CSW_CMD_PASSED 0x00 52 #define CSW_CMD_FAILED 0x01 53 #define CSW_PHASE_ERROR 0x02 58 #define SCSI_TEST_UNIT_READY 0x00 59 #define SCSI_REQUEST_SENSE 0x03 60 #define SCSI_FORMAT_UNIT 0x04 61 #define SCSI_INQUIRY 0x12 62 #define SCSI_MODE_SELECT6 0x15 63 #define SCSI_MODE_SENSE6 0x1A 64 #define SCSI_START_STOP_UNIT 0x1B 65 #define SCSI_SEND_DIAGNOSTIC 0x1D 66 #define SCSI_PREVENT_ALLOW_MEDIUM_REMOVAL 0x1E 67 #define SCSI_READ_FORMAT_CAPACITIES 0x23 68 #define SCSI_READ_CAPACITY10 0x25 69 #define SCSI_READ_CAPACITY 0x25 70 #define SCSI_READ10 0x28 71 #define SCSI_WRITE10 0x2A 72 #define SCSI_VERIFY10 0x2F 73 #define SCSI_SYNCHRONIZE_CACHE10 0x35 74 #define SCSI_READ12 0xA8 75 #define SCSI_WRITE12 0xAA 76 #define SCSI_MODE_SELECT10 0x55 77 #define SCSI_MODE_SENSE10 0x5A 78 #define SCSI_SYNCHRONIZE_CACHE16 0x91 79 #define SCSI_ATA_COMMAND_PASS_THROUGH12 0xA1 80 #define SCSI_ATA_COMMAND_PASS_THROUGH16 0x85 81 #define SCSI_SERVICE_ACTION_IN12 0xAB 82 #define SCSI_SERVICE_ACTION_IN16 0x9E 83 #define SCSI_SERVICE_ACTION_OUT12 0xA9 84 #define SCSI_SERVICE_ACTION_OUT16 0x9F 87 #define SCSI_SENSE_KEY_NO_SENSE 0x00 88 #define SCSI_SENSE_KEY_RECOVERED_ERROR 0x01 89 #define SCSI_SENSE_KEY_NOT_READY 0x02 90 #define SCSI_SENSE_KEY_MEDIUM_ERROR 0x03 91 #define SCSI_SENSE_KEY_HARDWARE_ERROR 0x04 92 #define SCSI_SENSE_KEY_ILLEGAL_REQUEST 0x05 93 #define SCSI_SENSE_KEY_UNIT_ATTENTION 0x06 94 #define SCSI_SENSE_KEY_DATA_PROTECT 0x07 95 #define SCSI_SENSE_KEY_BLANK_CHECK 0x08 96 #define SCSI_SENSE_KEY_VENDOR_SPECIFIC 0x09 97 #define SCSI_SENSE_KEY_COPY_ABORTED 0x0A 98 #define SCSI_SENSE_KEY_ABORTED_COMMAND 0x0B 99 #define SCSI_SENSE_KEY_VOLUME_OVERFLOW 0x0D 100 #define SCSI_SENSE_KEY_MISCOMPARE 0x0E 102 #define SCSI_ASC_NO_ADDITIONAL_SENSE_INFO 0x00 103 #define SCSI_ASC_INVALID_FIELD_IN_CDB 0x24