255#define IDE_LBA_MODE (1 << 6)
257#define IDE_COMMAND_NOP 0x00
258#define IDE_COMMAND_DATA_SET_MANAGEMENT 0x06
259#define IDE_COMMAND_ATAPI_RESET 0x08
260#define IDE_COMMAND_READ 0x20
261#define IDE_COMMAND_READ_EXT 0x24
262#define IDE_COMMAND_READ_DMA_EXT 0x25
263#define IDE_COMMAND_READ_DMA_QUEUED_EXT 0x26
264#define IDE_COMMAND_READ_MULTIPLE_EXT 0x29
265#define IDE_COMMAND_WRITE 0x30
266#define IDE_COMMAND_WRITE_EXT 0x34
267#define IDE_COMMAND_WRITE_DMA_EXT 0x35
268#define IDE_COMMAND_WRITE_DMA_QUEUED_EXT 0x36
269#define IDE_COMMAND_WRITE_MULTIPLE_EXT 0x39
270#define IDE_COMMAND_WRITE_DMA_FUA_EXT 0x3D
271#define IDE_COMMAND_WRITE_DMA_QUEUED_FUA_EXT 0x3E
272#define IDE_COMMAND_VERIFY 0x40
273#define IDE_COMMAND_VERIFY_EXT 0x42
274#define IDE_COMMAND_EXECUTE_DEVICE_DIAGNOSTIC 0x90
275#define IDE_COMMAND_SET_DRIVE_PARAMETERS 0x91
276#define IDE_COMMAND_ATAPI_PACKET 0xA0
277#define IDE_COMMAND_ATAPI_IDENTIFY 0xA1
278#define IDE_COMMAND_SMART 0xB0
279#define IDE_COMMAND_READ_MULTIPLE 0xC4
280#define IDE_COMMAND_WRITE_MULTIPLE 0xC5
281#define IDE_COMMAND_SET_MULTIPLE 0xC6
282#define IDE_COMMAND_READ_DMA 0xC8
283#define IDE_COMMAND_WRITE_DMA 0xCA
284#define IDE_COMMAND_WRITE_DMA_QUEUED 0xCC
285#define IDE_COMMAND_WRITE_MULTIPLE_FUA_EXT 0xCE
286#define IDE_COMMAND_GET_MEDIA_STATUS 0xDA
287#define IDE_COMMAND_DOOR_LOCK 0xDE
288#define IDE_COMMAND_DOOR_UNLOCK 0xDF
289#define IDE_COMMAND_STANDBY_IMMEDIATE 0xE0
290#define IDE_COMMAND_IDLE_IMMEDIATE 0xE1
291#define IDE_COMMAND_CHECK_POWER 0xE5
292#define IDE_COMMAND_SLEEP 0xE6
293#define IDE_COMMAND_FLUSH_CACHE 0xE7
294#define IDE_COMMAND_FLUSH_CACHE_EXT 0xEA
295#define IDE_COMMAND_IDENTIFY 0xEC
296#define IDE_COMMAND_MEDIA_EJECT 0xED
297#define IDE_COMMAND_SET_FEATURE 0xEF
298#define IDE_COMMAND_SECURITY_FREEZE_LOCK 0xF5
299#define IDE_COMMAND_NOT_VALID 0xFF
struct _IDENTIFY_DEVICE_DATA * PIDENTIFY_DEVICE_DATA
struct _IDENTIFY_DEVICE_DATA IDENTIFY_DEVICE_DATA
USHORT RecommendedMWXferCycleTime
UCHAR FirmwareRevision[8]
struct _IDENTIFY_DEVICE_DATA::@1900 GeneralConfiguration
USHORT RecommendedAcousticValue
USHORT SecurityCountExpired
struct _IDENTIFY_DEVICE_DATA::@1904 PhysicalLogicalSectorSize
USHORT WordsPerLogicalSector[2]
UCHAR StandybyTimerSupport
USHORT MediaCardPassThrough
USHORT WriteReadVerifySectorCountMode2Only[2]
struct _IDENTIFY_DEVICE_DATA::@1912 NVCacheOptions
ULONG CurrentSectorCapacity
USHORT NVCacheFeatureSetVersion
USHORT LogicalSectorsPerPhysicalSector
USHORT ReservedWord207[2]
struct _IDENTIFY_DEVICE_DATA::@1901 Capabilities
USHORT AlignmentOfLogicalWithinPhysical
USHORT MultiWordDMASupport
USHORT ReservedForDrqTechnicalReport
USHORT CurrentAcousticValue
USHORT MultiWordDMAActive
USHORT ReservedWords69[6]
USHORT ReservedForWorldWideName128[4]
USHORT RemovableMediaFeature
USHORT StreamingTransferTime
UCHAR CurrentMultiSectorSetting
USHORT NumberOfCurrentCylinders
USHORT NumSectorsPerTrack
USHORT ReservedForTechReport
struct _IDENTIFY_DEVICE_DATA::@1903 CommandSetActive
USHORT ReservedForTlcTechnicalReport
USHORT NominalMediaRotationRate
USHORT ReservedWords76[4]
USHORT ObsoleteWords51[2]
USHORT MultipleLogicalSectorsPerPhysicalSector
struct _IDENTIFY_DEVICE_DATA::@1905 CommandSetSupportExt
USHORT ReservedForCfaWord170[6]
struct _IDENTIFY_DEVICE_DATA::@1906 CommandSetActiveExt
USHORT CurrentSectorsPerTrack
USHORT WriteReadVerifyEnabled
USHORT ReservedWord129[31]
UCHAR MultiSectorSettingValid
struct _IDENTIFY_DEVICE_DATA::@1908 CfaPowerModel
UCHAR NVCacheEstimatedTimeToSpinUpInSeconds
USHORT CfaPowerMode1Required
USHORT NumberOfCurrentHeads
USHORT ReservedForCfaWord161[8]
USHORT LogicalSectorLongerThan256Words
USHORT EnhancedSecurityEraseSupported
UCHAR MaximumBlockTransfer
USHORT CfaPowerMode1Disabled
USHORT MinimumMWXferCycleTime
USHORT TranslationFieldsValid
struct _IDENTIFY_DEVICE_DATA::@1911 NVCacheCapabilities
struct _IDENTIFY_DEVICE_DATA::@1910 BlockAlignment
USHORT CurrentMediaSerialNumber[30]
USHORT NVCacheFeatureSetEnabled
USHORT IdleWithUnloadFeature
USHORT ReservedForExpandedSupportandActive[6]
USHORT NVCachePowerModeVersion
USHORT ReservedWord220[35]
USHORT MinimumPIOCycleTime
struct _IDENTIFY_DEVICE_DATA::@1902 CommandSetSupport
USHORT NVCachePowerModeEnabled
USHORT DeviceConfigOverlay
USHORT ResponseIncomplete
USHORT WriteReadVerifySectorCountMode3Only[2]
ULONG UserAddressableSectors
USHORT MaximumCurrentInMA2
struct _IDENTIFY_DEVICE_DATA::@1907 SecurityStatus
USHORT HardwareResetResult
USHORT WriteReadVerifySupported
USHORT MinimumPIOCycleTimeIORDY
struct _IDENTIFY_DEVICE_DATA::@1909 DataSetManagementFeature