IDENTIFY_DEVICE_DATA structure (ata.h)

The IDENTIFY_DEVICE_DATA structure contains the data retrieved by an ATA identify device data command (0xEC).

Note

The ATA port driver and ATA miniport driver models may be altered or unavailable in the future. Instead, we recommend using the Storport driver and Storport miniport driver models.

Syntax

typedef struct _IDENTIFY_DEVICE_DATA {
  struct {
    USHORT Reserved1 : 1;
    USHORT Retired3 : 1;
    USHORT ResponseIncomplete : 1;
    USHORT Retired2 : 3;
    USHORT FixedDevice : 1;
    USHORT RemovableMedia : 1;
    USHORT Retired1 : 7;
    USHORT DeviceType : 1;
  } GeneralConfiguration;
  USHORT NumCylinders;
  USHORT SpecificConfiguration;
  USHORT NumHeads;
  USHORT Retired1[2];
  USHORT NumSectorsPerTrack;
  USHORT VendorUnique1[3];
  UCHAR  SerialNumber[20];
  USHORT Retired2[2];
  USHORT Obsolete1;
  UCHAR  FirmwareRevision[8];
  UCHAR  ModelNumber[40];
  UCHAR  MaximumBlockTransfer;
  UCHAR  VendorUnique2;
  struct {
    USHORT FeatureSupported : 1;
    USHORT Reserved : 15;
  } TrustedComputing;
  struct {
    UCHAR  CurrentLongPhysicalSectorAlignment : 2;
    UCHAR  ReservedByte49 : 6;
    UCHAR  DmaSupported : 1;
    UCHAR  LbaSupported : 1;
    UCHAR  IordyDisable : 1;
    UCHAR  IordySupported : 1;
    UCHAR  Reserved1 : 1;
    UCHAR  StandybyTimerSupport : 1;
    UCHAR  Reserved2 : 2;
    USHORT ReservedWord50;
  } Capabilities;
  USHORT ObsoleteWords51[2];
  USHORT TranslationFieldsValid : 3;
  USHORT Reserved3 : 5;
  USHORT FreeFallControlSensitivity : 8;
  USHORT NumberOfCurrentCylinders;
  USHORT NumberOfCurrentHeads;
  USHORT CurrentSectorsPerTrack;
  ULONG  CurrentSectorCapacity;
  UCHAR  CurrentMultiSectorSetting;
  UCHAR  MultiSectorSettingValid : 1;
  UCHAR  ReservedByte59 : 3;
  UCHAR  SanitizeFeatureSupported : 1;
  UCHAR  CryptoScrambleExtCommandSupported : 1;
  UCHAR  OverwriteExtCommandSupported : 1;
  UCHAR  BlockEraseExtCommandSupported : 1;
  ULONG  UserAddressableSectors;
  USHORT ObsoleteWord62;
  USHORT MultiWordDMASupport : 8;
  USHORT MultiWordDMAActive : 8;
  USHORT AdvancedPIOModes : 8;
  USHORT ReservedByte64 : 8;
  USHORT MinimumMWXferCycleTime;
  USHORT RecommendedMWXferCycleTime;
  USHORT MinimumPIOCycleTime;
  USHORT MinimumPIOCycleTimeIORDY;
  struct {
    USHORT ZonedCapabilities : 2;
    USHORT NonVolatileWriteCache : 1;
    USHORT ExtendedUserAddressableSectorsSupported : 1;
    USHORT DeviceEncryptsAllUserData : 1;
    USHORT ReadZeroAfterTrimSupported : 1;
    USHORT Optional28BitCommandsSupported : 1;
    USHORT IEEE1667 : 1;
    USHORT DownloadMicrocodeDmaSupported : 1;
    USHORT SetMaxSetPasswordUnlockDmaSupported : 1;
    USHORT WriteBufferDmaSupported : 1;
    USHORT ReadBufferDmaSupported : 1;
    USHORT DeviceConfigIdentifySetDmaSupported : 1;
    USHORT LPSAERCSupported : 1;
    USHORT DeterministicReadAfterTrimSupported : 1;
    USHORT CFastSpecSupported : 1;
  } AdditionalSupported;
  USHORT ReservedWords70[5];
  USHORT QueueDepth : 5;
  USHORT ReservedWord75 : 11;
  struct {
    USHORT Reserved0 : 1;
    USHORT SataGen1 : 1;
    USHORT SataGen2 : 1;
    USHORT SataGen3 : 1;
    USHORT Reserved1 : 4;
    USHORT NCQ : 1;
    USHORT HIPM : 1;
    USHORT PhyEvents : 1;
    USHORT NcqUnload : 1;
    USHORT NcqPriority : 1;
    USHORT HostAutoPS : 1;
    USHORT DeviceAutoPS : 1;
    USHORT ReadLogDMA : 1;
    USHORT Reserved2 : 1;
    USHORT CurrentSpeed : 3;
    USHORT NcqStreaming : 1;
    USHORT NcqQueueMgmt : 1;
    USHORT NcqReceiveSend : 1;
    USHORT DEVSLPtoReducedPwrState : 1;
    USHORT Reserved3 : 8;
  } SerialAtaCapabilities;
  struct {
    USHORT Reserved0 : 1;
    USHORT NonZeroOffsets : 1;
    USHORT DmaSetupAutoActivate : 1;
    USHORT DIPM : 1;
    USHORT InOrderData : 1;
    USHORT HardwareFeatureControl : 1;
    USHORT SoftwareSettingsPreservation : 1;
    USHORT NCQAutosense : 1;
    USHORT DEVSLP : 1;
    USHORT HybridInformation : 1;
    USHORT Reserved1 : 6;
  } SerialAtaFeaturesSupported;
  struct {
    USHORT Reserved0 : 1;
    USHORT NonZeroOffsets : 1;
    USHORT DmaSetupAutoActivate : 1;
    USHORT DIPM : 1;
    USHORT InOrderData : 1;
    USHORT HardwareFeatureControl : 1;
    USHORT SoftwareSettingsPreservation : 1;
    USHORT DeviceAutoPS : 1;
    USHORT DEVSLP : 1;
    USHORT HybridInformation : 1;
    USHORT Reserved1 : 6;
  } SerialAtaFeaturesEnabled;
  USHORT MajorRevision;
  USHORT MinorRevision;
  struct {
    USHORT SmartCommands : 1;
    USHORT SecurityMode : 1;
    USHORT RemovableMediaFeature : 1;
    USHORT PowerManagement : 1;
    USHORT Reserved1 : 1;
    USHORT WriteCache : 1;
    USHORT LookAhead : 1;
    USHORT ReleaseInterrupt : 1;
    USHORT ServiceInterrupt : 1;
    USHORT DeviceReset : 1;
    USHORT HostProtectedArea : 1;
    USHORT Obsolete1 : 1;
    USHORT WriteBuffer : 1;
    USHORT ReadBuffer : 1;
    USHORT Nop : 1;
    USHORT Obsolete2 : 1;
    USHORT DownloadMicrocode : 1;
    USHORT DmaQueued : 1;
    USHORT Cfa : 1;
    USHORT AdvancedPm : 1;
    USHORT Msn : 1;
    USHORT PowerUpInStandby : 1;
    USHORT ManualPowerUp : 1;
    USHORT Reserved2 : 1;
    USHORT SetMax : 1;
    USHORT Acoustics : 1;
    USHORT BigLba : 1;
    USHORT DeviceConfigOverlay : 1;
    USHORT FlushCache : 1;
    USHORT FlushCacheExt : 1;
    USHORT WordValid83 : 2;
    USHORT SmartErrorLog : 1;
    USHORT SmartSelfTest : 1;
    USHORT MediaSerialNumber : 1;
    USHORT MediaCardPassThrough : 1;
    USHORT StreamingFeature : 1;
    USHORT GpLogging : 1;
    USHORT WriteFua : 1;
    USHORT WriteQueuedFua : 1;
    USHORT WWN64Bit : 1;
    USHORT URGReadStream : 1;
    USHORT URGWriteStream : 1;
    USHORT ReservedForTechReport : 2;
    USHORT IdleWithUnloadFeature : 1;
    USHORT WordValid : 2;
  } CommandSetSupport;
  struct {
    USHORT SmartCommands : 1;
    USHORT SecurityMode : 1;
    USHORT RemovableMediaFeature : 1;
    USHORT PowerManagement : 1;
    USHORT Reserved1 : 1;
    USHORT WriteCache : 1;
    USHORT LookAhead : 1;
    USHORT ReleaseInterrupt : 1;
    USHORT ServiceInterrupt : 1;
    USHORT DeviceReset : 1;
    USHORT HostProtectedArea : 1;
    USHORT Obsolete1 : 1;
    USHORT WriteBuffer : 1;
    USHORT ReadBuffer : 1;
    USHORT Nop : 1;
    USHORT Obsolete2 : 1;
    USHORT DownloadMicrocode : 1;
    USHORT DmaQueued : 1;
    USHORT Cfa : 1;
    USHORT AdvancedPm : 1;
    USHORT Msn : 1;
    USHORT PowerUpInStandby : 1;
    USHORT ManualPowerUp : 1;
    USHORT Reserved2 : 1;
    USHORT SetMax : 1;
    USHORT Acoustics : 1;
    USHORT BigLba : 1;
    USHORT DeviceConfigOverlay : 1;
    USHORT FlushCache : 1;
    USHORT FlushCacheExt : 1;
    USHORT Resrved3 : 1;
    USHORT Words119_120Valid : 1;
    USHORT SmartErrorLog : 1;
    USHORT SmartSelfTest : 1;
    USHORT MediaSerialNumber : 1;
    USHORT MediaCardPassThrough : 1;
    USHORT StreamingFeature : 1;
    USHORT GpLogging : 1;
    USHORT WriteFua : 1;
    USHORT WriteQueuedFua : 1;
    USHORT WWN64Bit : 1;
    USHORT URGReadStream : 1;
    USHORT URGWriteStream : 1;
    USHORT ReservedForTechReport : 2;
    USHORT IdleWithUnloadFeature : 1;
    USHORT Reserved4 : 2;
  } CommandSetActive;
  USHORT UltraDMASupport : 8;
  USHORT UltraDMAActive : 8;
  struct {
    USHORT TimeRequired : 15;
    USHORT ExtendedTimeReported : 1;
  } NormalSecurityEraseUnit;
  struct {
    USHORT TimeRequired : 15;
    USHORT ExtendedTimeReported : 1;
  } EnhancedSecurityEraseUnit;
  USHORT CurrentAPMLevel : 8;
  USHORT ReservedWord91 : 8;
  USHORT MasterPasswordID;
  USHORT HardwareResetResult;
  USHORT CurrentAcousticValue : 8;
  USHORT RecommendedAcousticValue : 8;
  USHORT StreamMinRequestSize;
  USHORT StreamingTransferTimeDMA;
  USHORT StreamingAccessLatencyDMAPIO;
  ULONG  StreamingPerfGranularity;
  ULONG  Max48BitLBA[2];
  USHORT StreamingTransferTime;
  USHORT DsmCap;
  struct {
    USHORT LogicalSectorsPerPhysicalSector : 4;
    USHORT Reserved0 : 8;
    USHORT LogicalSectorLongerThan256Words : 1;
    USHORT MultipleLogicalSectorsPerPhysicalSector : 1;
    USHORT Reserved1 : 2;
  } PhysicalLogicalSectorSize;
  USHORT InterSeekDelay;
  USHORT WorldWideName[4];
  USHORT ReservedForWorldWideName128[4];
  USHORT ReservedForTlcTechnicalReport;
  USHORT WordsPerLogicalSector[2];
  struct {
    USHORT ReservedForDrqTechnicalReport : 1;
    USHORT WriteReadVerify : 1;
    USHORT WriteUncorrectableExt : 1;
    USHORT ReadWriteLogDmaExt : 1;
    USHORT DownloadMicrocodeMode3 : 1;
    USHORT FreefallControl : 1;
    USHORT SenseDataReporting : 1;
    USHORT ExtendedPowerConditions : 1;
    USHORT Reserved0 : 6;
    USHORT WordValid : 2;
  } CommandSetSupportExt;
  struct {
    USHORT ReservedForDrqTechnicalReport : 1;
    USHORT WriteReadVerify : 1;
    USHORT WriteUncorrectableExt : 1;
    USHORT ReadWriteLogDmaExt : 1;
    USHORT DownloadMicrocodeMode3 : 1;
    USHORT FreefallControl : 1;
    USHORT SenseDataReporting : 1;
    USHORT ExtendedPowerConditions : 1;
    USHORT Reserved0 : 6;
    USHORT Reserved1 : 2;
  } CommandSetActiveExt;
  USHORT ReservedForExpandedSupportandActive[6];
  USHORT MsnSupport : 2;
  USHORT ReservedWord127 : 14;
  struct {
    USHORT SecuritySupported : 1;
    USHORT SecurityEnabled : 1;
    USHORT SecurityLocked : 1;
    USHORT SecurityFrozen : 1;
    USHORT SecurityCountExpired : 1;
    USHORT EnhancedSecurityEraseSupported : 1;
    USHORT Reserved0 : 2;
    USHORT SecurityLevel : 1;
    USHORT Reserved1 : 7;
  } SecurityStatus;
  USHORT ReservedWord129[31];
  struct {
    USHORT MaximumCurrentInMA : 12;
    USHORT CfaPowerMode1Disabled : 1;
    USHORT CfaPowerMode1Required : 1;
    USHORT Reserved0 : 1;
    USHORT Word160Supported : 1;
  } CfaPowerMode1;
  USHORT ReservedForCfaWord161[7];
  USHORT NominalFormFactor : 4;
  USHORT ReservedWord168 : 12;
  struct {
    USHORT SupportsTrim : 1;
    USHORT Reserved0 : 15;
  } DataSetManagementFeature;
  USHORT AdditionalProductID[4];
  USHORT ReservedForCfaWord174[2];
  USHORT CurrentMediaSerialNumber[30];
  struct {
    USHORT Supported : 1;
    USHORT Reserved0 : 1;
    USHORT WriteSameSuported : 1;
    USHORT ErrorRecoveryControlSupported : 1;
    USHORT FeatureControlSuported : 1;
    USHORT DataTablesSuported : 1;
    USHORT Reserved1 : 6;
    USHORT VendorSpecific : 4;
  } SCTCommandTransport;
  USHORT ReservedWord207[2];
  struct {
    USHORT AlignmentOfLogicalWithinPhysical : 14;
    USHORT Word209Supported : 1;
    USHORT Reserved0 : 1;
  } BlockAlignment;
  USHORT WriteReadVerifySectorCountMode3Only[2];
  USHORT WriteReadVerifySectorCountMode2Only[2];
  struct {
    USHORT NVCachePowerModeEnabled : 1;
    USHORT Reserved0 : 3;
    USHORT NVCacheFeatureSetEnabled : 1;
    USHORT Reserved1 : 3;
    USHORT NVCachePowerModeVersion : 4;
    USHORT NVCacheFeatureSetVersion : 4;
  } NVCacheCapabilities;
  USHORT NVCacheSizeLSW;
  USHORT NVCacheSizeMSW;
  USHORT NominalMediaRotationRate;
  USHORT ReservedWord218;
  struct {
    UCHAR NVCacheEstimatedTimeToSpinUpInSeconds;
    UCHAR Reserved;
  } NVCacheOptions;
  USHORT WriteReadVerifySectorCountMode : 8;
  USHORT ReservedWord220 : 8;
  USHORT ReservedWord221;
  struct {
    USHORT MajorVersion : 12;
    USHORT TransportType : 4;
  } TransportMajorVersion;
  USHORT TransportMinorVersion;
  USHORT ReservedWord224[6];
  ULONG  ExtendedNumberOfUserAddressableSectors[2];
  USHORT MinBlocksPerDownloadMicrocodeMode03;
  USHORT MaxBlocksPerDownloadMicrocodeMode03;
  USHORT ReservedWord236[19];
  USHORT Signature : 8;
  USHORT CheckSum : 8;
} IDENTIFY_DEVICE_DATA, *PIDENTIFY_DEVICE_DATA;

Members

GeneralConfiguration

Contains general configuration information.

GeneralConfiguration.Reserved1

Reserved.

GeneralConfiguration.Retired3

This member is no longer used.

GeneralConfiguration.ResponseIncomplete

Indicates that the response was incomplete.

GeneralConfiguration.Retired2

This member is no longer used.

GeneralConfiguration.FixedDevice

Indicates when set to 1 that the device is fixed.

GeneralConfiguration.RemovableMedia

Indicates when set to 1 that the media is removable.

GeneralConfiguration.Retired1

This member is no longer used.

GeneralConfiguration.DeviceType

Indicates when set to 1 that the device is an ATA device.

NumCylinders

Indicates the number of cylinders on the device.

SpecificConfiguration

Specific configuration.

NumHeads

Number of logical heads on the device.

Retired1[2]

This member is no longer used.

NumSectorsPerTrack

Indicates the number of sectors per track.

VendorUnique1[3]

Contains the first ID of the device's vendor.

SerialNumber[20]

Contains the serial number of the device.

Retired2[2]

This member is no longer used.

Obsolete1

This member is obsolete. Do not use.

FirmwareRevision[8]

Contains the revision number of the device's firmware.

ModelNumber[40]

Contains the device's model number.

MaximumBlockTransfer

Contains the maximum number of blocks allowed in a single transfer.

VendorUnique2

Contains the second ID of the device's vendor.

TrustedComputing

Trusted computing.

TrustedComputing.FeatureSupported

Indicates whether the device supports trusted computing.

TrustedComputing.Reserved

Reserved.

Capabilities

Capabilities.

Capabilities.CurrentLongPhysicalSectorAlignment

Current long physical sector alignment.

Capabilities.ReservedByte49

Reserved.

Capabilities.DmaSupported

Indicates that the device supports DMA operations.

Capabilities.LbaSupported

Indicates that the device supports logical block addressing.

Capabilities.IordyDisable

Indicates when set to 1 that I/O channel ready is disabled for the device.

Capabilities.IordySupported

Indicates when set to 1 that I/O channel ready is supported by the device.

Capabilities.Reserved1

Reserved.

Capabilities.StandybyTimerSupport

Indicates when set to 1 that the device supports standby timers.

Capabilities.Reserved2

Reserved.

Capabilities.ReservedWord50

Reserved.

ObsoleteWords51[2]

This member is obsolete. Do not use.

TranslationFieldsValid

Contains a bitfield whose bits indicate which of the bytes in the identify data package contain valid address translation information. For more information about how this bitfield is defined, see the ATA/ATAPI specification.

Reserved3

Reserved.

FreeFallControlSensitivity

Free fall control sensitivity.

NumberOfCurrentCylinders

Indicates the number of cylinders on the device.

NumberOfCurrentHeads

Indicates the number of heads on the device.

CurrentSectorsPerTrack

Indicates the number of sectors per track.

CurrentSectorCapacity

Indicates the number of sectors on the device.

CurrentMultiSectorSetting

Indicates the multisector setting.

MultiSectorSettingValid

Indicates when TRUE that the multisector setting is valid.

ReservedByte59

Reserved.

SanitizeFeatureSupported

Indicates whether the device supports sanitize.

CryptoScrambleExtCommandSupported

Indicates whether the device supports the crypto scramble command.

OverwriteExtCommandSupported

Indicates whether the device supports the overwrite command.

BlockEraseExtCommandSupported

Indicates whether the device supports block erase.

UserAddressableSectors

Indicates the total number of user-addressable sectors.

ObsoleteWord62

This member is obsolete. Do not use.

MultiWordDMASupport

Indicates which DMA modes the device supports.

MultiWordDMAActive

Indicates which DMA modes are currently selected.

AdvancedPIOModes

Indicates PIO mode support.

ReservedByte64

Reserved.

MinimumMWXferCycleTime

Indicates the minimum multiword DMA transfer cycle time per word.

RecommendedMWXferCycleTime

Indicates the recommended multiword DMA transfer cycle time per word.

MinimumPIOCycleTime

Indicates the minimum PIO transfer cycle time without flow control.

MinimumPIOCycleTimeIORDY

Indicates the minimum PIO transfer cycle time with IORDY flow control.

AdditionalSupported

AdditionalSupported.ZonedCapabilities

AdditionalSupported.NonVolatileWriteCache

AdditionalSupported.ExtendedUserAddressableSectorsSupported

AdditionalSupported.DeviceEncryptsAllUserData

AdditionalSupported.ReadZeroAfterTrimSupported

AdditionalSupported.Optional28BitCommandsSupported

AdditionalSupported.IEEE1667

AdditionalSupported.DownloadMicrocodeDmaSupported

AdditionalSupported.SetMaxSetPasswordUnlockDmaSupported

AdditionalSupported.WriteBufferDmaSupported

AdditionalSupported.ReadBufferDmaSupported

AdditionalSupported.DeviceConfigIdentifySetDmaSupported

AdditionalSupported.LPSAERCSupported

AdditionalSupported.DeterministicReadAfterTrimSupported

AdditionalSupported.CFastSpecSupported

ReservedWords70[5]

QueueDepth

Indicates the maximum queue depth.

ReservedWord75

Reserved.

SerialAtaCapabilities

SerialAtaCapabilities.Reserved0

SerialAtaCapabilities.SataGen1

SerialAtaCapabilities.SataGen2

SerialAtaCapabilities.SataGen3

SerialAtaCapabilities.Reserved1

SerialAtaCapabilities.NCQ

SerialAtaCapabilities.HIPM

SerialAtaCapabilities.PhyEvents

SerialAtaCapabilities.NcqUnload

SerialAtaCapabilities.NcqPriority

SerialAtaCapabilities.HostAutoPS

SerialAtaCapabilities.DeviceAutoPS

SerialAtaCapabilities.ReadLogDMA

SerialAtaCapabilities.Reserved2

SerialAtaCapabilities.CurrentSpeed

SerialAtaCapabilities.NcqStreaming

SerialAtaCapabilities.NcqQueueMgmt

SerialAtaCapabilities.NcqReceiveSend

SerialAtaCapabilities.DEVSLPtoReducedPwrState

SerialAtaCapabilities.Reserved3

SerialAtaFeaturesSupported

SerialAtaFeaturesSupported.Reserved0

SerialAtaFeaturesSupported.NonZeroOffsets

SerialAtaFeaturesSupported.DmaSetupAutoActivate

SerialAtaFeaturesSupported.DIPM

SerialAtaFeaturesSupported.InOrderData

SerialAtaFeaturesSupported.HardwareFeatureControl

SerialAtaFeaturesSupported.SoftwareSettingsPreservation

SerialAtaFeaturesSupported.NCQAutosense

SerialAtaFeaturesSupported.DEVSLP

SerialAtaFeaturesSupported.HybridInformation

SerialAtaFeaturesSupported.Reserved1

SerialAtaFeaturesEnabled

SerialAtaFeaturesEnabled.Reserved0

SerialAtaFeaturesEnabled.NonZeroOffsets

SerialAtaFeaturesEnabled.DmaSetupAutoActivate

SerialAtaFeaturesEnabled.DIPM

SerialAtaFeaturesEnabled.InOrderData

SerialAtaFeaturesEnabled.HardwareFeatureControl

SerialAtaFeaturesEnabled.SoftwareSettingsPreservation

SerialAtaFeaturesEnabled.DeviceAutoPS

SerialAtaFeaturesEnabled.DEVSLP

SerialAtaFeaturesEnabled.HybridInformation

SerialAtaFeaturesEnabled.Reserved1

MajorRevision

Indicates the device's major revision number.

MinorRevision

Indicates the device's minor revision number.

CommandSetSupport

Resrved3

Reserved.

CommandSetSupport.SmartCommands

Indicates when TRUE that the device supports the SMART feature set.

CommandSetSupport.SecurityMode

Indicates when TRUE that the device supports the security mode feature set.

CommandSetSupport.RemovableMediaFeature

CommandSetSupport.PowerManagement

Indicates when TRUE that the device supports the mandatory power management feature set.

CommandSetSupport.Reserved1

Reserved.

CommandSetSupport.WriteCache

Indicates when TRUE that the device supports a write cache.

CommandSetSupport.LookAhead

Indicates when TRUE that the device supports lookahead.

CommandSetSupport.ReleaseInterrupt

Indicates when TRUE that the device supports release interrupt.

CommandSetSupport.ServiceInterrupt

Indicates when TRUE that the device supports service interrupt.

CommandSetSupport.DeviceReset

Indicates when TRUE that the device supports the device reset command.

CommandSetSupport.HostProtectedArea

Indicates when TRUE that the device supports the host protected area feature set.

CommandSetSupport.Obsolete1

This member is obsolete. Do not use.

CommandSetSupport.WriteBuffer

Indicates when TRUE that the device supports the write buffer command.

CommandSetSupport.ReadBuffer

Indicates when TRUE that the device supports the read buffer command.

CommandSetSupport.Nop

Indicates when TRUE that the device supports the NOP command.

CommandSetSupport.Obsolete2

Obsolete. Do not use.

CommandSetSupport.DownloadMicrocode

Indicates when TRUE that the device supports the DOWNLOAD MICROCODE command.

CommandSetSupport.DmaQueued

Indicates when TRUE that the device supports READ/WRITE DMA QUEUED command.

CommandSetSupport.Cfa

Indicates when TRUE that the device supports the CFA feature set.

CommandSetSupport.AdvancedPm

Indicates when TRUE that the device supports the advanced power management feature set.

CommandSetSupport.Msn

Indicates when TRUE that the device supports the media status notification feature set.

CommandSetSupport.PowerUpInStandby

Indicates when TRUE that the device supports power-up in standby feature set.

CommandSetSupport.ManualPowerUp

Indicates when TRUE that the device supports the SET FEATURES subcommand required to spin up the device after power-up.

CommandSetSupport.Reserved2

Reserved.

CommandSetSupport.SetMax

Indicates when TRUE that the device supports the SET MAX security extension command.

CommandSetSupport.Acoustics

Indicates when TRUE that the device supports the automatic acoustic management feature set.

CommandSetSupport.BigLba

Indicates when TRUE that the device supports the 48-bit address feature set.

CommandSetSupport.DeviceConfigOverlay

CommandSetSupport.FlushCache

CommandSetSupport.FlushCacheExt

CommandSetSupport.WordValid83

CommandSetSupport.SmartErrorLog

CommandSetSupport.SmartSelfTest

CommandSetSupport.MediaSerialNumber

CommandSetSupport.MediaCardPassThrough

CommandSetSupport.StreamingFeature

CommandSetSupport.GpLogging

CommandSetSupport.WriteFua

CommandSetSupport.WriteQueuedFua

CommandSetSupport.WWN64Bit

CommandSetSupport.URGReadStream

CommandSetSupport.URGWriteStream

CommandSetSupport.ReservedForTechReport

CommandSetSupport.IdleWithUnloadFeature

CommandSetSupport.WordValid

CommandSetActive

CommandSetActive.SmartCommands

Indicates when TRUE that the device supports the SMART feature set.

CommandSetActive.SecurityMode

Indicates when TRUE that the device supports the security mode feature set.

CommandSetActive.RemovableMediaFeature

CommandSetActive.PowerManagement

Indicates when TRUE that the device supports the mandatory power management feature set.

CommandSetActive.Reserved1

Reserved.

CommandSetActive.WriteCache

Indicates when TRUE that the device supports a write cache.

CommandSetActive.LookAhead

Indicates when TRUE that the device supports lookahead.

CommandSetActive.ReleaseInterrupt

Indicates when TRUE that the device supports release interrupt.

CommandSetActive.ServiceInterrupt

Indicates when TRUE that the device supports service interrupt.

CommandSetActive.DeviceReset

Indicates when TRUE that the device supports the device reset command.

CommandSetActive.HostProtectedArea

Indicates when TRUE that the device supports the host protected area feature set.

CommandSetActive.Obsolete1

This member is obsolete. Do not use.

CommandSetActive.WriteBuffer

Indicates when TRUE that the device supports the write buffer command.

CommandSetActive.ReadBuffer

Indicates when TRUE that the device supports the read buffer command.

CommandSetActive.Nop

Indicates when TRUE that the device supports the NOP command.

CommandSetActive.Obsolete2

Obsolete. Do not use.

CommandSetActive.DownloadMicrocode

Indicates when TRUE that the device supports the DOWNLOAD MICROCODE command.

CommandSetActive.DmaQueued

Indicates when TRUE that the device supports READ/WRITE DMA QUEUED command.

CommandSetActive.Cfa

Indicates when TRUE that the device supports the CFA feature set.

CommandSetActive.AdvancedPm

Indicates when TRUE that the device supports the advanced power management feature set.

CommandSetActive.Msn

Indicates when TRUE that the device supports the media status notification feature set.

CommandSetActive.PowerUpInStandby

Indicates when TRUE that the device supports power-up in standby feature set.

CommandSetActive.ManualPowerUp

Indicates when TRUE that the device supports the SET FEATURES subcommand required to spin up the device after power-up.

CommandSetActive.Reserved2

Reserved.

CommandSetActive.SetMax

Indicates when TRUE that the device supports the SET MAX security extension command.

CommandSetActive.Acoustics

Indicates when TRUE that the device supports the automatic acoustic management feature set.

CommandSetActive.BigLba

Indicates when TRUE that the device supports the 48-bit address feature set.

CommandSetActive.DeviceConfigOverlay

CommandSetActive.FlushCache

CommandSetActive.FlushCacheExt

CommandSetActive.Resrved3

Reserved.

CommandSetActive.Words119_120Valid

CommandSetActive.SmartErrorLog

CommandSetActive.SmartSelfTest

CommandSetActive.MediaSerialNumber

CommandSetActive.MediaCardPassThrough

CommandSetActive.StreamingFeature

CommandSetActive.GpLogging

CommandSetActive.WriteFua

CommandSetActive.WriteQueuedFua

CommandSetActive.WWN64Bit

CommandSetActive.URGReadStream

CommandSetActive.URGWriteStream

CommandSetActive.ReservedForTechReport

CommandSetActive.IdleWithUnloadFeature

CommandSetActive.Reserved4

UltraDMASupport

Contains a bitmap indicating which ultraDMA modes the device supports.

UltraDMAActive

Contains a bitmap indicating which ultraDMA modes are selected.

NormalSecurityEraseUnit

NormalSecurityEraseUnit.TimeRequired

NormalSecurityEraseUnit.ExtendedTimeReported

EnhancedSecurityEraseUnit

EnhancedSecurityEraseUnit.TimeRequired

EnhancedSecurityEraseUnit.ExtendedTimeReported

CurrentAPMLevel

ReservedWord91

MasterPasswordID

HardwareResetResult

Indicates the result of a hardware reset. For more information about the values assigned to this member, see the ATA/ATAP specification.

CurrentAcousticValue

Indicates the current acoustic management value.

RecommendedAcousticValue

Contain the device vendor's recommended acoustic management value.

StreamMinRequestSize

StreamingTransferTimeDMA

StreamingAccessLatencyDMAPIO

StreamingPerfGranularity

Max48BitLBA[2]

Contains the maximum user LBA for the 48-bit address feature set.

StreamingTransferTime

DsmCap

PhysicalLogicalSectorSize

PhysicalLogicalSectorSize.LogicalSectorsPerPhysicalSector

PhysicalLogicalSectorSize.Reserved0

PhysicalLogicalSectorSize.LogicalSectorLongerThan256Words

PhysicalLogicalSectorSize.MultipleLogicalSectorsPerPhysicalSector

PhysicalLogicalSectorSize.Reserved1

Reserved.

InterSeekDelay

WorldWideName[4]

ReservedForWorldWideName128[4]

ReservedForTlcTechnicalReport

WordsPerLogicalSector[2]

CommandSetSupportExt

Reserved1

Reserved.

CommandSetSupportExt.ReservedForDrqTechnicalReport

CommandSetSupportExt.WriteReadVerify

CommandSetSupportExt.WriteUncorrectableExt

CommandSetSupportExt.ReadWriteLogDmaExt

CommandSetSupportExt.DownloadMicrocodeMode3

CommandSetSupportExt.FreefallControl

CommandSetSupportExt.SenseDataReporting

CommandSetSupportExt.ExtendedPowerConditions

CommandSetSupportExt.Reserved0

CommandSetSupportExt.WordValid

CommandSetActiveExt

CommandSetActiveExt.ReservedForDrqTechnicalReport

CommandSetActiveExt.WriteReadVerify

CommandSetActiveExt.WriteUncorrectableExt

CommandSetActiveExt.ReadWriteLogDmaExt

CommandSetActiveExt.DownloadMicrocodeMode3

CommandSetActiveExt.FreefallControl

CommandSetActiveExt.SenseDataReporting

CommandSetActiveExt.ExtendedPowerConditions

CommandSetActiveExt.Reserved0

CommandSetActiveExt.Reserved1

Reserved.

ReservedForExpandedSupportandActive[6]

MsnSupport

Indicates when TRUE that the device supports media status notification.

ReservedWord127

SecurityStatus

Contains a bitmap that indicates the security status. For more information about the meaning of each individual bit, see the ATA/ATAPI specification.

SecurityStatus.SecuritySupported

SecurityStatus.SecurityEnabled

SecurityStatus.SecurityLocked

SecurityStatus.SecurityFrozen

SecurityStatus.SecurityCountExpired

SecurityStatus.EnhancedSecurityEraseSupported

SecurityStatus.Reserved0

SecurityStatus.SecurityLevel

SecurityStatus.Reserved1

Reserved.

ReservedWord129[31]

Reserved.

CfaPowerMode1

CfaPowerMode1.MaximumCurrentInMA

CfaPowerMode1.CfaPowerMode1Disabled

CfaPowerMode1.CfaPowerMode1Required

CfaPowerMode1.Reserved0

CfaPowerMode1.Word160Supported

ReservedForCfaWord161[7]

Words 161-168

NominalFormFactor

ReservedWord168

DataSetManagementFeature

DataSetManagementFeature.SupportsTrim

DataSetManagementFeature.Reserved0

AdditionalProductID[4]

ReservedForCfaWord174[2]

CurrentMediaSerialNumber[30]

Words 176-205

SCTCommandTransport

SCTCommandTransport.Supported

SCTCommandTransport.Reserved0

SCTCommandTransport.WriteSameSuported

SCTCommandTransport.ErrorRecoveryControlSupported

SCTCommandTransport.FeatureControlSuported

SCTCommandTransport.DataTablesSuported

SCTCommandTransport.Reserved1

SCTCommandTransport.VendorSpecific

ReservedWord207[2]

Words 207-208

BlockAlignment

BlockAlignment.AlignmentOfLogicalWithinPhysical

BlockAlignment.Word209Supported

BlockAlignment.Reserved0

WriteReadVerifySectorCountMode3Only[2]

Words 210-211

WriteReadVerifySectorCountMode2Only[2]

Words 212-213

NVCacheCapabilities

NVCacheCapabilities.NVCachePowerModeEnabled

NVCacheCapabilities.Reserved0

NVCacheCapabilities.NVCacheFeatureSetEnabled

NVCacheCapabilities.Reserved1

Reserved.

NVCacheCapabilities.NVCachePowerModeVersion

NVCacheCapabilities.NVCacheFeatureSetVersion

NVCacheSizeLSW

NVCacheSizeMSW

NominalMediaRotationRate

ReservedWord218

NVCacheOptions

NVCacheOptions.NVCacheEstimatedTimeToSpinUpInSeconds

NVCacheOptions.Reserved

WriteReadVerifySectorCountMode

ReservedWord220

Words 220-254

ReservedWord221

TransportMajorVersion

TransportMajorVersion.MajorVersion

TransportMajorVersion.TransportType

TransportMinorVersion

ReservedWord224[6]

ExtendedNumberOfUserAddressableSectors[2]

MinBlocksPerDownloadMicrocodeMode03

MaxBlocksPerDownloadMicrocodeMode03

ReservedWord236[19]

Signature

Indicates the disk signature.

CheckSum

Indicates the checksum.

Requirements

Requirement Value
Header ata.h (include Irb.h)