Add handling of inquiry version descriptors

This commit is contained in:
Ronnie Sahlberg
2013-04-21 14:04:30 -07:00
parent b3ca40efbe
commit 91a98d6b92
5 changed files with 132 additions and 0 deletions

View File

@@ -375,6 +375,43 @@ enum scsi_version {
EXTERN const char *scsi_version_to_str(enum scsi_version version);
enum scsi_version_descriptor {
SCSI_VERSION_DESCRIPTOR_ISCSI = 0x0960,
SCSI_VERSION_DESCRIPTOR_SBC = 0x0180,
SCSI_VERSION_DESCRIPTOR_SBC_ANSI_INCITS_306_1998 = 0x019C,
SCSI_VERSION_DESCRIPTOR_SBC_T10_0996_D_R08C = 0x019B,
SCSI_VERSION_DESCRIPTOR_SBC_2 = 0x0320,
SCSI_VERSION_DESCRIPTOR_SBC_2_ISO_IEC_14776_322 = 0x033E,
SCSI_VERSION_DESCRIPTOR_SBC_2_ANSI_INCITS_405_2005 = 0x033D,
SCSI_VERSION_DESCRIPTOR_SBC_2_T10_1417_D_R16 = 0x033B,
SCSI_VERSION_DESCRIPTOR_SBC_2_T10_1417_D_R5A = 0x0322,
SCSI_VERSION_DESCRIPTOR_SBC_2_T10_1417_D_R15 = 0x0324,
SCSI_VERSION_DESCRIPTOR_SBC_3 = 0x04C0,
SCSI_VERSION_DESCRIPTOR_SPC = 0x0120,
SCSI_VERSION_DESCRIPTOR_SPC_ANSI_INCITS_301_1997 = 0x013C,
SCSI_VERSION_DESCRIPTOR_SPC_T10_0995_D_R11A = 0x013B,
SCSI_VERSION_DESCRIPTOR_SPC_2 = 0x0260,
SCSI_VERSION_DESCRIPTOR_SPC_2_ISO_IEC_14776_452 = 0x0278,
SCSI_VERSION_DESCRIPTOR_SPC_2_ANSI_INCITS_351_2001 = 0x0277,
SCSI_VERSION_DESCRIPTOR_SPC_2_T10_1236_D_R20 = 0x0276,
SCSI_VERSION_DESCRIPTOR_SPC_2_T10_1236_D_R12 = 0x0267,
SCSI_VERSION_DESCRIPTOR_SPC_2_T10_1236_D_R18 = 0x0269,
SCSI_VERSION_DESCRIPTOR_SPC_2_T10_1236_D_R19 = 0x0275,
SCSI_VERSION_DESCRIPTOR_SPC_3 = 0x0300,
SCSI_VERSION_DESCRIPTOR_SPC_3_ISO_IEC_14776_453 = 0x0316,
SCSI_VERSION_DESCRIPTOR_SPC_3_ANSI_INCITS_408_2005 = 0x0314,
SCSI_VERSION_DESCRIPTOR_SPC_3_T10_1416_D_R7 = 0x0301,
SCSI_VERSION_DESCRIPTOR_SPC_3_T10_1416_D_R21 = 0x0307,
SCSI_VERSION_DESCRIPTOR_SPC_3_T10_1416_D_R22 = 0x030F,
SCSI_VERSION_DESCRIPTOR_SPC_3_T10_1416_D_R23 = 0x0312,
SCSI_VERSION_DESCRIPTOR_SPC_4 = 0x0460,
SCSI_VERSION_DESCRIPTOR_SPC_4_T10_1731_D_R16 = 0x0461,
SCSI_VERSION_DESCRIPTOR_SPC_4_T10_1731_D_R18 = 0x0462,
SCSI_VERSION_DESCRIPTOR_SPC_4_T10_1731_D_R23 = 0x0463
};
EXTERN const char *scsi_version_descriptor_to_str(enum scsi_version_descriptor version_descriptor);
enum scsi_inquiry_tpgs {
SCSI_INQUIRY_TPGS_NO_SUPPORT = 0x00,
SCSI_INQUIRY_TPGS_IMPLICIT = 0x01,
@@ -417,6 +454,8 @@ struct scsi_inquiry_standard {
char vendor_identification[8+1];
char product_identification[16+1];
char product_revision_level[4+1];
uint16_t version_descriptor[8];
};
enum scsi_inquiry_pagecode {