@@ -404,6 +404,23 @@ extern "C" {
404
404
#define VPD_MODE_PAGE_POLICY 0x87
405
405
#define VPD_SCSI_PORTS 0x88
406
406
407
+ #define SCSI_SENSE_NO_SENSE 0x00
408
+ #define SCSI_SENSE_RECOVERED_ERROR 0x01
409
+ #define SCSI_SENSE_NOT_READY 0x02
410
+ #define SCSI_SENSE_MEDIUM_ERROR 0x03
411
+ #define SCSI_SENSE_HARDWARE_ERROR 0x04
412
+ #define SCSI_SENSE_ILLEGAL_REQUEST 0x05
413
+ #define SCSI_SENSE_UNIT_ATTENTION 0x06
414
+ #define SCSI_SENSE_DATA_PROTECT 0x07
415
+ #define SCSI_SENSE_BLANK_CHECK 0x08
416
+ #define SCSI_SENSE_UNIQUE 0x09
417
+ #define SCSI_SENSE_COPY_ABORTED 0x0A
418
+ #define SCSI_SENSE_ABORTED_COMMAND 0x0B
419
+ #define SCSI_SENSE_EQUAL 0x0C
420
+ #define SCSI_SENSE_VOL_OVERFLOW 0x0D
421
+ #define SCSI_SENSE_MISCOMPARE 0x0E
422
+ #define SCSI_SENSE_RESERVED 0x0F
423
+
407
424
typedef enum _STOR_SYNCHRONIZATION_MODEL
408
425
{
409
426
StorSynchronizeHalfDuplex ,
@@ -1931,6 +1948,26 @@ typedef struct _LUN_LIST
1931
1948
UCHAR Lun [0 ][8 ];
1932
1949
#endif
1933
1950
} LUN_LIST , * PLUN_LIST ;
1951
+
1952
+ typedef struct _SENSE_DATA
1953
+ {
1954
+ UCHAR ErrorCode :7 ;
1955
+ UCHAR Valid :1 ;
1956
+ UCHAR SegmentNumber ;
1957
+ UCHAR SenseKey :4 ;
1958
+ UCHAR Reserved :1 ;
1959
+ UCHAR IncorrectLength :1 ;
1960
+ UCHAR EndOfMedia :1 ;
1961
+ UCHAR FileMark :1 ;
1962
+ UCHAR Information [4 ];
1963
+ UCHAR AdditionalSenseLength ;
1964
+ UCHAR CommandSpecificInformation [4 ];
1965
+ UCHAR AdditionalSenseCode ;
1966
+ UCHAR AdditionalSenseCodeQualifier ;
1967
+ UCHAR FieldReplaceableUnitCode ;
1968
+ UCHAR SenseKeySpecific [3 ];
1969
+ } SENSE_DATA , * PSENSE_DATA ;
1970
+
1934
1971
#include <poppack.h>
1935
1972
1936
1973
typedef PHYSICAL_ADDRESS STOR_PHYSICAL_ADDRESS ;
0 commit comments