16bb01f71SMichael Lotz /* 2*efc757f9SAdrien Destugues - PulkoMandy * Copyright 2012, Adrien Destugues, pulkomandy@pulkomandy.tk. 36bb01f71SMichael Lotz * Copyright 2009, Michael Lotz, mmlr@mlotz.ch. 46bb01f71SMichael Lotz * Copyright 2002-2003, Thomas Kurschel. 56bb01f71SMichael Lotz * 66bb01f71SMichael Lotz * Distributed under the terms of the MIT License. 76bb01f71SMichael Lotz */ 8bf9a3835SMichael Lotz #ifndef ATA_COMMANDS_H 9bf9a3835SMichael Lotz #define ATA_COMMANDS_H 10bf9a3835SMichael Lotz 11bf9a3835SMichael Lotz #define ATA_COMMAND_WRITE_DMA 0xca 12bf9a3835SMichael Lotz #define ATA_COMMAND_WRITE_DMA_QUEUED 0xcc 13bf9a3835SMichael Lotz #define ATA_COMMAND_WRITE_MULTIPLE 0xc5 14bf9a3835SMichael Lotz #define ATA_COMMAND_WRITE_SECTORS 0x30 15bf9a3835SMichael Lotz 16bf9a3835SMichael Lotz #define ATA_COMMAND_READ_DMA 0xc8 17bf9a3835SMichael Lotz #define ATA_COMMAND_READ_DMA_QUEUED 0xc7 18bf9a3835SMichael Lotz #define ATA_COMMAND_READ_MULTIPLE 0xc4 19bf9a3835SMichael Lotz #define ATA_COMMAND_READ_SECTORS 0x20 20bf9a3835SMichael Lotz 21bf9a3835SMichael Lotz #define ATA_COMMAND_WRITE_DMA_EXT 0x35 22bf9a3835SMichael Lotz #define ATA_COMMAND_WRITE_DMA_QUEUED_EXT 0x36 23bf9a3835SMichael Lotz #define ATA_COMMAND_WRITE_MULTIPLE_EXT 0x39 24bf9a3835SMichael Lotz #define ATA_COMMAND_WRITE_SECTORS_EXT 0x34 25bf9a3835SMichael Lotz 26bf9a3835SMichael Lotz #define ATA_COMMAND_READ_DMA_EXT 0x25 27bf9a3835SMichael Lotz #define ATA_COMMAND_READ_DMA_QUEUED_EXT 0x26 28bf9a3835SMichael Lotz #define ATA_COMMAND_READ_MULTIPLE_EXT 0x29 29bf9a3835SMichael Lotz #define ATA_COMMAND_READ_SECTORS_EXT 0x24 30bf9a3835SMichael Lotz 31bf9a3835SMichael Lotz #define ATA_COMMAND_PACKET 0xa0 32bf9a3835SMichael Lotz #define ATA_COMMAND_DEVICE_RESET 0x08 33bf9a3835SMichael Lotz 34bf9a3835SMichael Lotz #define ATA_COMMAND_SERVICE 0xa2 35bf9a3835SMichael Lotz #define ATA_COMMAND_NOP 0 36bf9a3835SMichael Lotz 37bf9a3835SMichael Lotz #define ATA_COMMAND_NOP_NOP 0 38bf9a3835SMichael Lotz #define ATA_COMMAND_NOP_NOP_AUTOPOLL 1 39bf9a3835SMichael Lotz 40bf9a3835SMichael Lotz 41bf9a3835SMichael Lotz #define ATA_COMMAND_GET_MEDIA_STATUS 0xda 42bf9a3835SMichael Lotz 43bf9a3835SMichael Lotz #define ATA_COMMAND_FLUSH_CACHE 0xe7 44bf9a3835SMichael Lotz #define ATA_COMMAND_FLUSH_CACHE_EXT 0xea 45bf9a3835SMichael Lotz 46*efc757f9SAdrien Destugues - PulkoMandy #define ATA_COMMAND_DATA_SET_MANAGEMENT 0x06 47*efc757f9SAdrien Destugues - PulkoMandy 48bf9a3835SMichael Lotz #define ATA_COMMAND_MEDIA_EJECT 0xed 49bf9a3835SMichael Lotz 50bf9a3835SMichael Lotz #define ATA_COMMAND_IDENTIFY_PACKET_DEVICE 0xa1 51bf9a3835SMichael Lotz #define ATA_COMMAND_IDENTIFY_DEVICE 0xec 52bf9a3835SMichael Lotz 53bf9a3835SMichael Lotz #define ATA_COMMAND_SET_FEATURES 0xef 54bf9a3835SMichael Lotz #define ATA_COMMAND_SET_FEATURES_ENABLE_RELELEASE_INT 0x5d 55bf9a3835SMichael Lotz #define ATA_COMMAND_SET_FEATURES_ENABLE_SERVICE_INT 0x5e 56bf9a3835SMichael Lotz #define ATA_COMMAND_SET_FEATURES_DISABLE_RELEASE_INT 0xdd 57bf9a3835SMichael Lotz #define ATA_COMMAND_SET_FEATURES_DISABLE_SERVICE_INT 0xde 58bf9a3835SMichael Lotz 59bf9a3835SMichael Lotz #endif // ATA_COMMANDS_H 60