SCSICommandDefinitions.h [plain text]
#ifndef _IOKIT_SCSI_COMMAND_DEFINITIONS_H_
#define _IOKIT_SCSI_COMMAND_DEFINITIONS_H_
#if KERNEL
#include <IOKit/IOTypes.h>
#else
#include <CoreFoundation/CoreFoundation.h>
#endif
#pragma mark About this file
#pragma mark Field Type Definitions
typedef UInt8 SCSICmdField1Bit;
typedef UInt8 SCSICmdField2Bit;
typedef UInt8 SCSICmdField3Bit;
typedef UInt8 SCSICmdField4Bit;
typedef UInt8 SCSICmdField5Bit;
typedef UInt8 SCSICmdField6Bit;
typedef UInt8 SCSICmdField7Bit;
typedef UInt8 SCSICmdField1Byte;
typedef UInt16 SCSICmdField9Bit;
typedef UInt16 SCSICmdField10Bit;
typedef UInt16 SCSICmdField11Bit;
typedef UInt16 SCSICmdField12Bit;
typedef UInt16 SCSICmdField13Bit;
typedef UInt16 SCSICmdField14Bit;
typedef UInt16 SCSICmdField15Bit;
typedef UInt16 SCSICmdField2Byte;
typedef UInt32 SCSICmdField17Bit;
typedef UInt32 SCSICmdField18Bit;
typedef UInt32 SCSICmdField19Bit;
typedef UInt32 SCSICmdField20Bit;
typedef UInt32 SCSICmdField21Bit;
typedef UInt32 SCSICmdField22Bit;
typedef UInt32 SCSICmdField23Bit;
typedef UInt32 SCSICmdField3Byte;
typedef UInt32 SCSICmdField25Bit;
typedef UInt32 SCSICmdField26Bit;
typedef UInt32 SCSICmdField27Bit;
typedef UInt32 SCSICmdField28Bit;
typedef UInt32 SCSICmdField29Bit;
typedef UInt32 SCSICmdField30Bit;
typedef UInt32 SCSICmdField31Bit;
typedef UInt32 SCSICmdField4Byte;
#pragma mark Field Mask Definitions
enum
{
kSCSICmdFieldMask1Bit = 0x01,
kSCSICmdFieldMask2Bit = 0x03,
kSCSICmdFieldMask3Bit = 0x07,
kSCSICmdFieldMask4Bit = 0x0F,
kSCSICmdFieldMask5Bit = 0x1F,
kSCSICmdFieldMask6Bit = 0x3F,
kSCSICmdFieldMask7Bit = 0x7F,
kSCSICmdFieldMask1Byte = 0xFF
};
enum
{
kSCSICmdFieldMask9Bit = 0x01FF,
kSCSICmdFieldMask10Bit = 0x03FF,
kSCSICmdFieldMask11Bit = 0x07FF,
kSCSICmdFieldMask12Bit = 0x0FFF,
kSCSICmdFieldMask13Bit = 0x1FFF,
kSCSICmdFieldMask14Bit = 0x3FFF,
kSCSICmdFieldMask15Bit = 0x7FFF,
kSCSICmdFieldMask2Byte = 0xFFFF
};
enum
{
kSCSICmdFieldMask17Bit = 0x01FFFF,
kSCSICmdFieldMask18Bit = 0x03FFFF,
kSCSICmdFieldMask19Bit = 0x07FFFF,
kSCSICmdFieldMask20Bit = 0x0FFFFF,
kSCSICmdFieldMask21Bit = 0x1FFFFF,
kSCSICmdFieldMask22Bit = 0x3FFFFF,
kSCSICmdFieldMask23Bit = 0x7FFFFF,
kSCSICmdFieldMask3Byte = 0xFFFFFF
};
enum
{
kSCSICmdFieldMask25Bit = 0x01FFFFFF,
kSCSICmdFieldMask26Bit = 0x03FFFFFF,
kSCSICmdFieldMask27Bit = 0x07FFFFFF,
kSCSICmdFieldMask28Bit = 0x0FFFFFFF,
kSCSICmdFieldMask29Bit = 0x1FFFFFFF,
kSCSICmdFieldMask30Bit = 0x3FFFFFFF,
kSCSICmdFieldMask31Bit = 0x7FFFFFFF,
kSCSICmdFieldMask4Byte = 0xFFFFFFFF
};
#endif