mirror of
https://github.com/reactos/reactos.git
synced 2025-08-02 04:35:53 +00:00
Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys.
This commit is contained in:
parent
b94e2d8ca0
commit
c2c66aff7d
24198 changed files with 0 additions and 37285 deletions
301
sdk/include/ddk/ata.h
Normal file
301
sdk/include/ddk/ata.h
Normal file
|
@ -0,0 +1,301 @@
|
|||
#ifndef _NTATA_
|
||||
#define _NTATA_
|
||||
|
||||
#include <pshpack1.h>
|
||||
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 ReservedWord2;
|
||||
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;
|
||||
USHORT ReservedWord48;
|
||||
struct {
|
||||
UCHAR ReservedByte49;
|
||||
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 :13;
|
||||
USHORT NumberOfCurrentCylinders;
|
||||
USHORT NumberOfCurrentHeads;
|
||||
USHORT CurrentSectorsPerTrack;
|
||||
ULONG CurrentSectorCapacity;
|
||||
UCHAR CurrentMultiSectorSetting;
|
||||
UCHAR MultiSectorSettingValid :1;
|
||||
UCHAR ReservedByte59 :7;
|
||||
ULONG UserAddressableSectors;
|
||||
USHORT ObsoleteWord62;
|
||||
USHORT MultiWordDMASupport :8;
|
||||
USHORT MultiWordDMAActive :8;
|
||||
USHORT AdvancedPIOModes :8;
|
||||
USHORT ReservedByte64 :8;
|
||||
USHORT MinimumMWXferCycleTime;
|
||||
USHORT RecommendedMWXferCycleTime;
|
||||
USHORT MinimumPIOCycleTime;
|
||||
USHORT MinimumPIOCycleTimeIORDY;
|
||||
USHORT ReservedWords69[6];
|
||||
USHORT QueueDepth :5;
|
||||
USHORT ReservedWord75 :11;
|
||||
USHORT ReservedWords76[4];
|
||||
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 Resrved3 :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 Reserved4 :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 :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 Reserved4 :2;
|
||||
} CommandSetActive;
|
||||
USHORT UltraDMASupport :8;
|
||||
USHORT UltraDMAActive :8;
|
||||
USHORT ReservedWord89[4];
|
||||
USHORT HardwareResetResult;
|
||||
USHORT CurrentAcousticValue :8;
|
||||
USHORT RecommendedAcousticValue :8;
|
||||
USHORT ReservedWord95[5];
|
||||
ULONG Max48BitLBA[2];
|
||||
USHORT StreamingTransferTime;
|
||||
USHORT ReservedWord105;
|
||||
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 WriteReadVerifySupported :1;
|
||||
USHORT Reserved01 :11;
|
||||
USHORT Reserved1 :2;
|
||||
} CommandSetSupportExt;
|
||||
struct {
|
||||
USHORT ReservedForDrqTechnicalReport :1;
|
||||
USHORT WriteReadVerifyEnabled :1;
|
||||
USHORT Reserved01 :11;
|
||||
USHORT Reserved1 :2;
|
||||
} CommandSetActiveExt;
|
||||
USHORT ReservedForExpandedSupportandActive[6];
|
||||
USHORT MsnSupport :2;
|
||||
USHORT ReservedWord1274 :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 MaximumCurrentInMA2 :12;
|
||||
USHORT CfaPowerMode1Disabled :1;
|
||||
USHORT CfaPowerMode1Required :1;
|
||||
USHORT Reserved0 :1;
|
||||
USHORT Word160Supported :1;
|
||||
} CfaPowerModel;
|
||||
USHORT ReservedForCfaWord161[8];
|
||||
struct {
|
||||
USHORT SupportsTrim :1;
|
||||
USHORT Reserved0 :15;
|
||||
} DataSetManagementFeature;
|
||||
USHORT ReservedForCfaWord170[6];
|
||||
USHORT CurrentMediaSerialNumber[30];
|
||||
USHORT ReservedWord206;
|
||||
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 ReservedWord220[35];
|
||||
USHORT Signature :8;
|
||||
USHORT CheckSum :8;
|
||||
} IDENTIFY_DEVICE_DATA, *PIDENTIFY_DEVICE_DATA;
|
||||
#include <poppack.h>
|
||||
|
||||
#define IDE_LBA_MODE (1 << 6)
|
||||
|
||||
#define IDE_COMMAND_NOP 0x00
|
||||
#define IDE_COMMAND_DATA_SET_MANAGEMENT 0x06
|
||||
#define IDE_COMMAND_ATAPI_RESET 0x08
|
||||
#define IDE_COMMAND_READ 0x20
|
||||
#define IDE_COMMAND_READ_EXT 0x24
|
||||
#define IDE_COMMAND_READ_DMA_EXT 0x25
|
||||
#define IDE_COMMAND_READ_DMA_QUEUED_EXT 0x26
|
||||
#define IDE_COMMAND_READ_MULTIPLE_EXT 0x29
|
||||
#define IDE_COMMAND_WRITE 0x30
|
||||
#define IDE_COMMAND_WRITE_EXT 0x34
|
||||
#define IDE_COMMAND_WRITE_DMA_EXT 0x35
|
||||
#define IDE_COMMAND_WRITE_DMA_QUEUED_EXT 0x36
|
||||
#define IDE_COMMAND_WRITE_MULTIPLE_EXT 0x39
|
||||
#define IDE_COMMAND_WRITE_DMA_FUA_EXT 0x3D
|
||||
#define IDE_COMMAND_WRITE_DMA_QUEUED_FUA_EXT 0x3E
|
||||
#define IDE_COMMAND_VERIFY 0x40
|
||||
#define IDE_COMMAND_VERIFY_EXT 0x42
|
||||
#define IDE_COMMAND_EXECUTE_DEVICE_DIAGNOSTIC 0x90
|
||||
#define IDE_COMMAND_SET_DRIVE_PARAMETERS 0x91
|
||||
#define IDE_COMMAND_ATAPI_PACKET 0xA0
|
||||
#define IDE_COMMAND_ATAPI_IDENTIFY 0xA1
|
||||
#define IDE_COMMAND_SMART 0xB0
|
||||
#define IDE_COMMAND_READ_MULTIPLE 0xC4
|
||||
#define IDE_COMMAND_WRITE_MULTIPLE 0xC5
|
||||
#define IDE_COMMAND_SET_MULTIPLE 0xC6
|
||||
#define IDE_COMMAND_READ_DMA 0xC8
|
||||
#define IDE_COMMAND_WRITE_DMA 0xCA
|
||||
#define IDE_COMMAND_WRITE_DMA_QUEUED 0xCC
|
||||
#define IDE_COMMAND_WRITE_MULTIPLE_FUA_EXT 0xCE
|
||||
#define IDE_COMMAND_GET_MEDIA_STATUS 0xDA
|
||||
#define IDE_COMMAND_DOOR_LOCK 0xDE
|
||||
#define IDE_COMMAND_DOOR_UNLOCK 0xDF
|
||||
#define IDE_COMMAND_STANDBY_IMMEDIATE 0xE0
|
||||
#define IDE_COMMAND_IDLE_IMMEDIATE 0xE1
|
||||
#define IDE_COMMAND_CHECK_POWER 0xE5
|
||||
#define IDE_COMMAND_SLEEP 0xE6
|
||||
#define IDE_COMMAND_FLUSH_CACHE 0xE7
|
||||
#define IDE_COMMAND_FLUSH_CACHE_EXT 0xEA
|
||||
#define IDE_COMMAND_IDENTIFY 0xEC
|
||||
#define IDE_COMMAND_MEDIA_EJECT 0xED
|
||||
#define IDE_COMMAND_SET_FEATURE 0xEF
|
||||
#define IDE_COMMAND_SECURITY_FREEZE_LOCK 0xF5
|
||||
#define IDE_COMMAND_NOT_VALID 0xFF
|
||||
|
||||
#endif
|
Loading…
Add table
Add a link
Reference in a new issue