X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=KernelLand%2FModules%2FUSB%2FMSC%2Fscsi.h;h=7bd50a54206e902e7e3b2734effb1bc2ac650a94;hb=cd8146698b87d571d8393336fb013e6406ba7e5a;hp=47959890ebe33372906c6d8e4123bf903973690c;hpb=d0b4559f2936f6d9f06be0f7c3c51527a480ec0d;p=tpg%2Facess2.git diff --git a/KernelLand/Modules/USB/MSC/scsi.h b/KernelLand/Modules/USB/MSC/scsi.h old mode 100644 new mode 100755 index 47959890..7bd50a54 --- a/KernelLand/Modules/USB/MSC/scsi.h +++ b/KernelLand/Modules/USB/MSC/scsi.h @@ -9,6 +9,44 @@ #define _MSC__SCSI_H_ // NOTE: All commands are big-endian +enum eSCSI_Ops +{ + READ_CAPACITY_10 = 0x25, + SERVICE_ACTION_IN_16 = 0x9E +}; + +struct sSCSI_Cmd_RequestSense +{ + Uint8 Op; // 0x03 + Uint8 Desc; + Uint16 _resvd; + Uint8 AllocationLength; + Uint8 Control; +} PACKED; + +struct sSCSI_SenseData +{ + Uint8 ResponseCode; + Uint8 _obselete; + Uint8 Flags; + Uint32 Information; + Uint8 AdditionalSenseLength; + Uint32 CommandSpecInfomation; + Uint8 AdditionalSenseCode; + Uint8 AdditionalSenseCodeQual; + Uint8 FRUC; + //Uint +} PACKED; + +struct sSCSI_Cmd_ReadCapacity10 +{ + Uint8 Op; // 0x25 + Uint8 _resvd1; + Uint32 LBA; + Uint16 _resvd2; + Uint8 Flags; + Uint8 Control; +} PACKED; struct sSCSI_Cmd_ReadCapacity16 { @@ -20,14 +58,39 @@ struct sSCSI_Cmd_ReadCapacity16 Uint8 Control; } PACKED; +struct sSCSI_Ret_ReadCapacity10 +{ + Uint32 LastBlock; + Uint32 BlockSize; +} PACKED; + struct sSCSI_Ret_ReadCapacity16 { - Uint64 BlockCount; + Uint64 LastBlock; Uint32 BlockSize; Uint8 Flags; Uint8 _resvd[32-13]; } PACKED; +struct sSCSI_Cmd_Read6 +{ + Uint8 Op; // 0x08 + Uint8 LBATop; + Uint16 LBALower; + Uint8 Length; + Uint8 Control; +} PACKED; + +struct sSCSI_Cmd_Read10 +{ + Uint8 Op; // 0x28 + Uint8 Flags; + Uint32 LBA; + Uint8 GroupNumber; + Uint16 Length; + Uint8 Control; +} PACKED; + struct sSCSI_Cmd_Read16 { Uint8 Op; // 0x88