diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/ata.h | 36 | ||||
-rw-r--r-- | include/linux/dmi.h | 13 | ||||
-rw-r--r-- | include/linux/libata.h | 3 | ||||
-rw-r--r-- | include/linux/pci_ids.h | 4 |
4 files changed, 52 insertions, 4 deletions
diff --git a/include/linux/ata.h b/include/linux/ata.h index 9c75921f0c16..6299a259ed19 100644 --- a/include/linux/ata.h +++ b/include/linux/ata.h | |||
@@ -210,15 +210,25 @@ enum { | |||
210 | ATA_CMD_STANDBY = 0xE2, /* place in standby power mode */ | 210 | ATA_CMD_STANDBY = 0xE2, /* place in standby power mode */ |
211 | ATA_CMD_IDLE = 0xE3, /* place in idle power mode */ | 211 | ATA_CMD_IDLE = 0xE3, /* place in idle power mode */ |
212 | ATA_CMD_EDD = 0x90, /* execute device diagnostic */ | 212 | ATA_CMD_EDD = 0x90, /* execute device diagnostic */ |
213 | ATA_CMD_DOWNLOAD_MICRO = 0x92, | ||
214 | ATA_CMD_NOP = 0x00, | ||
213 | ATA_CMD_FLUSH = 0xE7, | 215 | ATA_CMD_FLUSH = 0xE7, |
214 | ATA_CMD_FLUSH_EXT = 0xEA, | 216 | ATA_CMD_FLUSH_EXT = 0xEA, |
215 | ATA_CMD_ID_ATA = 0xEC, | 217 | ATA_CMD_ID_ATA = 0xEC, |
216 | ATA_CMD_ID_ATAPI = 0xA1, | 218 | ATA_CMD_ID_ATAPI = 0xA1, |
219 | ATA_CMD_SERVICE = 0xA2, | ||
217 | ATA_CMD_READ = 0xC8, | 220 | ATA_CMD_READ = 0xC8, |
218 | ATA_CMD_READ_EXT = 0x25, | 221 | ATA_CMD_READ_EXT = 0x25, |
222 | ATA_CMD_READ_QUEUED = 0x26, | ||
223 | ATA_CMD_READ_STREAM_EXT = 0x2B, | ||
224 | ATA_CMD_READ_STREAM_DMA_EXT = 0x2A, | ||
219 | ATA_CMD_WRITE = 0xCA, | 225 | ATA_CMD_WRITE = 0xCA, |
220 | ATA_CMD_WRITE_EXT = 0x35, | 226 | ATA_CMD_WRITE_EXT = 0x35, |
227 | ATA_CMD_WRITE_QUEUED = 0x36, | ||
228 | ATA_CMD_WRITE_STREAM_EXT = 0x3B, | ||
229 | ATA_CMD_WRITE_STREAM_DMA_EXT = 0x3A, | ||
221 | ATA_CMD_WRITE_FUA_EXT = 0x3D, | 230 | ATA_CMD_WRITE_FUA_EXT = 0x3D, |
231 | ATA_CMD_WRITE_QUEUED_FUA_EXT = 0x3E, | ||
222 | ATA_CMD_FPDMA_READ = 0x60, | 232 | ATA_CMD_FPDMA_READ = 0x60, |
223 | ATA_CMD_FPDMA_WRITE = 0x61, | 233 | ATA_CMD_FPDMA_WRITE = 0x61, |
224 | ATA_CMD_PIO_READ = 0x20, | 234 | ATA_CMD_PIO_READ = 0x20, |
@@ -235,6 +245,7 @@ enum { | |||
235 | ATA_CMD_PACKET = 0xA0, | 245 | ATA_CMD_PACKET = 0xA0, |
236 | ATA_CMD_VERIFY = 0x40, | 246 | ATA_CMD_VERIFY = 0x40, |
237 | ATA_CMD_VERIFY_EXT = 0x42, | 247 | ATA_CMD_VERIFY_EXT = 0x42, |
248 | ATA_CMD_WRITE_UNCORR_EXT = 0x45, | ||
238 | ATA_CMD_STANDBYNOW1 = 0xE0, | 249 | ATA_CMD_STANDBYNOW1 = 0xE0, |
239 | ATA_CMD_IDLEIMMEDIATE = 0xE1, | 250 | ATA_CMD_IDLEIMMEDIATE = 0xE1, |
240 | ATA_CMD_SLEEP = 0xE6, | 251 | ATA_CMD_SLEEP = 0xE6, |
@@ -243,15 +254,34 @@ enum { | |||
243 | ATA_CMD_READ_NATIVE_MAX_EXT = 0x27, | 254 | ATA_CMD_READ_NATIVE_MAX_EXT = 0x27, |
244 | ATA_CMD_SET_MAX = 0xF9, | 255 | ATA_CMD_SET_MAX = 0xF9, |
245 | ATA_CMD_SET_MAX_EXT = 0x37, | 256 | ATA_CMD_SET_MAX_EXT = 0x37, |
246 | ATA_CMD_READ_LOG_EXT = 0x2f, | 257 | ATA_CMD_READ_LOG_EXT = 0x2F, |
258 | ATA_CMD_WRITE_LOG_EXT = 0x3F, | ||
259 | ATA_CMD_READ_LOG_DMA_EXT = 0x47, | ||
260 | ATA_CMD_WRITE_LOG_DMA_EXT = 0x57, | ||
261 | ATA_CMD_TRUSTED_RCV = 0x5C, | ||
262 | ATA_CMD_TRUSTED_RCV_DMA = 0x5D, | ||
263 | ATA_CMD_TRUSTED_SND = 0x5E, | ||
264 | ATA_CMD_TRUSTED_SND_DMA = 0x5F, | ||
247 | ATA_CMD_PMP_READ = 0xE4, | 265 | ATA_CMD_PMP_READ = 0xE4, |
248 | ATA_CMD_PMP_WRITE = 0xE8, | 266 | ATA_CMD_PMP_WRITE = 0xE8, |
249 | ATA_CMD_CONF_OVERLAY = 0xB1, | 267 | ATA_CMD_CONF_OVERLAY = 0xB1, |
268 | ATA_CMD_SEC_SET_PASS = 0xF1, | ||
269 | ATA_CMD_SEC_UNLOCK = 0xF2, | ||
270 | ATA_CMD_SEC_ERASE_PREP = 0xF3, | ||
271 | ATA_CMD_SEC_ERASE_UNIT = 0xF4, | ||
250 | ATA_CMD_SEC_FREEZE_LOCK = 0xF5, | 272 | ATA_CMD_SEC_FREEZE_LOCK = 0xF5, |
273 | ATA_CMD_SEC_DISABLE_PASS = 0xF6, | ||
274 | ATA_CMD_CONFIG_STREAM = 0x51, | ||
251 | ATA_CMD_SMART = 0xB0, | 275 | ATA_CMD_SMART = 0xB0, |
252 | ATA_CMD_MEDIA_LOCK = 0xDE, | 276 | ATA_CMD_MEDIA_LOCK = 0xDE, |
253 | ATA_CMD_MEDIA_UNLOCK = 0xDF, | 277 | ATA_CMD_MEDIA_UNLOCK = 0xDF, |
254 | ATA_CMD_DSM = 0x06, | 278 | ATA_CMD_DSM = 0x06, |
279 | ATA_CMD_CHK_MED_CRD_TYP = 0xD1, | ||
280 | ATA_CMD_CFA_REQ_EXT_ERR = 0x03, | ||
281 | ATA_CMD_CFA_WRITE_NE = 0x38, | ||
282 | ATA_CMD_CFA_TRANS_SECT = 0x87, | ||
283 | ATA_CMD_CFA_ERASE = 0xC0, | ||
284 | ATA_CMD_CFA_WRITE_MULT_NE = 0xCD, | ||
255 | /* marked obsolete in the ATA/ATAPI-7 spec */ | 285 | /* marked obsolete in the ATA/ATAPI-7 spec */ |
256 | ATA_CMD_RESTORE = 0x10, | 286 | ATA_CMD_RESTORE = 0x10, |
257 | 287 | ||
@@ -306,6 +336,7 @@ enum { | |||
306 | /* SETFEATURE Sector counts for SATA features */ | 336 | /* SETFEATURE Sector counts for SATA features */ |
307 | SATA_AN = 0x05, /* Asynchronous Notification */ | 337 | SATA_AN = 0x05, /* Asynchronous Notification */ |
308 | SATA_DIPM = 0x03, /* Device Initiated Power Management */ | 338 | SATA_DIPM = 0x03, /* Device Initiated Power Management */ |
339 | SATA_FPDMA_AA = 0x02, /* DMA Setup FIS Auto-Activate */ | ||
309 | 340 | ||
310 | /* feature values for SET_MAX */ | 341 | /* feature values for SET_MAX */ |
311 | ATA_SET_MAX_ADDR = 0x00, | 342 | ATA_SET_MAX_ADDR = 0x00, |
@@ -525,6 +556,9 @@ static inline int ata_is_data(u8 prot) | |||
525 | #define ata_id_has_atapi_AN(id) \ | 556 | #define ata_id_has_atapi_AN(id) \ |
526 | ( (((id)[76] != 0x0000) && ((id)[76] != 0xffff)) && \ | 557 | ( (((id)[76] != 0x0000) && ((id)[76] != 0xffff)) && \ |
527 | ((id)[78] & (1 << 5)) ) | 558 | ((id)[78] & (1 << 5)) ) |
559 | #define ata_id_has_fpdma_aa(id) \ | ||
560 | ( (((id)[76] != 0x0000) && ((id)[76] != 0xffff)) && \ | ||
561 | ((id)[78] & (1 << 2)) ) | ||
528 | #define ata_id_iordy_disable(id) ((id)[ATA_ID_CAPABILITY] & (1 << 10)) | 562 | #define ata_id_iordy_disable(id) ((id)[ATA_ID_CAPABILITY] & (1 << 10)) |
529 | #define ata_id_has_iordy(id) ((id)[ATA_ID_CAPABILITY] & (1 << 11)) | 563 | #define ata_id_has_iordy(id) ((id)[ATA_ID_CAPABILITY] & (1 << 11)) |
530 | #define ata_id_u32(id,n) \ | 564 | #define ata_id_u32(id,n) \ |
diff --git a/include/linux/dmi.h b/include/linux/dmi.h index bb5489c82c99..a8a3e1ac281d 100644 --- a/include/linux/dmi.h +++ b/include/linux/dmi.h | |||
@@ -43,7 +43,7 @@ extern const char * dmi_get_system_info(int field); | |||
43 | extern const struct dmi_device * dmi_find_device(int type, const char *name, | 43 | extern const struct dmi_device * dmi_find_device(int type, const char *name, |
44 | const struct dmi_device *from); | 44 | const struct dmi_device *from); |
45 | extern void dmi_scan_machine(void); | 45 | extern void dmi_scan_machine(void); |
46 | extern int dmi_get_year(int field); | 46 | extern bool dmi_get_date(int field, int *yearp, int *monthp, int *dayp); |
47 | extern int dmi_name_in_vendors(const char *str); | 47 | extern int dmi_name_in_vendors(const char *str); |
48 | extern int dmi_name_in_serial(const char *str); | 48 | extern int dmi_name_in_serial(const char *str); |
49 | extern int dmi_available; | 49 | extern int dmi_available; |
@@ -58,7 +58,16 @@ static inline const char * dmi_get_system_info(int field) { return NULL; } | |||
58 | static inline const struct dmi_device * dmi_find_device(int type, const char *name, | 58 | static inline const struct dmi_device * dmi_find_device(int type, const char *name, |
59 | const struct dmi_device *from) { return NULL; } | 59 | const struct dmi_device *from) { return NULL; } |
60 | static inline void dmi_scan_machine(void) { return; } | 60 | static inline void dmi_scan_machine(void) { return; } |
61 | static inline int dmi_get_year(int year) { return 0; } | 61 | static inline bool dmi_get_date(int field, int *yearp, int *monthp, int *dayp) |
62 | { | ||
63 | if (yearp) | ||
64 | *yearp = 0; | ||
65 | if (monthp) | ||
66 | *monthp = 0; | ||
67 | if (dayp) | ||
68 | *dayp = 0; | ||
69 | return false; | ||
70 | } | ||
62 | static inline int dmi_name_in_vendors(const char *s) { return 0; } | 71 | static inline int dmi_name_in_vendors(const char *s) { return 0; } |
63 | static inline int dmi_name_in_serial(const char *s) { return 0; } | 72 | static inline int dmi_name_in_serial(const char *s) { return 0; } |
64 | #define dmi_available 0 | 73 | #define dmi_available 0 |
diff --git a/include/linux/libata.h b/include/linux/libata.h index e5b6e33c6571..76319bf03e37 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h | |||
@@ -143,7 +143,6 @@ enum { | |||
143 | 143 | ||
144 | ATA_DFLAG_PIO = (1 << 12), /* device limited to PIO mode */ | 144 | ATA_DFLAG_PIO = (1 << 12), /* device limited to PIO mode */ |
145 | ATA_DFLAG_NCQ_OFF = (1 << 13), /* device limited to non-NCQ mode */ | 145 | ATA_DFLAG_NCQ_OFF = (1 << 13), /* device limited to non-NCQ mode */ |
146 | ATA_DFLAG_SPUNDOWN = (1 << 14), /* XXX: for spindown_compat */ | ||
147 | ATA_DFLAG_SLEEPING = (1 << 15), /* device is sleeping */ | 146 | ATA_DFLAG_SLEEPING = (1 << 15), /* device is sleeping */ |
148 | ATA_DFLAG_DUBIOUS_XFER = (1 << 16), /* data transfer not verified */ | 147 | ATA_DFLAG_DUBIOUS_XFER = (1 << 16), /* data transfer not verified */ |
149 | ATA_DFLAG_NO_UNLOAD = (1 << 17), /* device doesn't support unload */ | 148 | ATA_DFLAG_NO_UNLOAD = (1 << 17), /* device doesn't support unload */ |
@@ -190,6 +189,7 @@ enum { | |||
190 | ATA_FLAG_NO_POWEROFF_SPINDOWN = (1 << 11), /* don't spindown before poweroff */ | 189 | ATA_FLAG_NO_POWEROFF_SPINDOWN = (1 << 11), /* don't spindown before poweroff */ |
191 | ATA_FLAG_NO_HIBERNATE_SPINDOWN = (1 << 12), /* don't spindown before hibernation */ | 190 | ATA_FLAG_NO_HIBERNATE_SPINDOWN = (1 << 12), /* don't spindown before hibernation */ |
192 | ATA_FLAG_DEBUGMSG = (1 << 13), | 191 | ATA_FLAG_DEBUGMSG = (1 << 13), |
192 | ATA_FLAG_FPDMA_AA = (1 << 14), /* driver supports Auto-Activate */ | ||
193 | ATA_FLAG_IGN_SIMPLEX = (1 << 15), /* ignore SIMPLEX */ | 193 | ATA_FLAG_IGN_SIMPLEX = (1 << 15), /* ignore SIMPLEX */ |
194 | ATA_FLAG_NO_IORDY = (1 << 16), /* controller lacks iordy */ | 194 | ATA_FLAG_NO_IORDY = (1 << 16), /* controller lacks iordy */ |
195 | ATA_FLAG_ACPI_SATA = (1 << 17), /* need native SATA ACPI layout */ | 195 | ATA_FLAG_ACPI_SATA = (1 << 17), /* need native SATA ACPI layout */ |
@@ -386,6 +386,7 @@ enum { | |||
386 | ATA_HORKAGE_FIRMWARE_WARN = (1 << 12), /* firmware update warning */ | 386 | ATA_HORKAGE_FIRMWARE_WARN = (1 << 12), /* firmware update warning */ |
387 | ATA_HORKAGE_1_5_GBPS = (1 << 13), /* force 1.5 Gbps */ | 387 | ATA_HORKAGE_1_5_GBPS = (1 << 13), /* force 1.5 Gbps */ |
388 | ATA_HORKAGE_NOSETXFER = (1 << 14), /* skip SETXFER, SATA only */ | 388 | ATA_HORKAGE_NOSETXFER = (1 << 14), /* skip SETXFER, SATA only */ |
389 | ATA_HORKAGE_BROKEN_FPDMA_AA = (1 << 15), /* skip AA */ | ||
389 | 390 | ||
390 | /* DMA mask for user DMA control: User visible values; DO NOT | 391 | /* DMA mask for user DMA control: User visible values; DO NOT |
391 | renumber */ | 392 | renumber */ |
diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index 73b46b6b904f..c8fdcadce437 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h | |||
@@ -376,6 +376,9 @@ | |||
376 | #define PCI_DEVICE_ID_ATI_IXP600_IDE 0x438c | 376 | #define PCI_DEVICE_ID_ATI_IXP600_IDE 0x438c |
377 | #define PCI_DEVICE_ID_ATI_IXP700_SATA 0x4390 | 377 | #define PCI_DEVICE_ID_ATI_IXP700_SATA 0x4390 |
378 | #define PCI_DEVICE_ID_ATI_IXP700_IDE 0x439c | 378 | #define PCI_DEVICE_ID_ATI_IXP700_IDE 0x439c |
379 | /* AMD SB Chipset */ | ||
380 | #define PCI_DEVICE_ID_AMD_SB900_IDE 0x780c | ||
381 | #define PCI_DEVICE_ID_AMD_SB900_SATA_IDE 0x7800 | ||
379 | 382 | ||
380 | #define PCI_VENDOR_ID_VLSI 0x1004 | 383 | #define PCI_VENDOR_ID_VLSI 0x1004 |
381 | #define PCI_DEVICE_ID_VLSI_82C592 0x0005 | 384 | #define PCI_DEVICE_ID_VLSI_82C592 0x0005 |
@@ -537,6 +540,7 @@ | |||
537 | #define PCI_DEVICE_ID_AMD_8131_BRIDGE 0x7450 | 540 | #define PCI_DEVICE_ID_AMD_8131_BRIDGE 0x7450 |
538 | #define PCI_DEVICE_ID_AMD_8131_APIC 0x7451 | 541 | #define PCI_DEVICE_ID_AMD_8131_APIC 0x7451 |
539 | #define PCI_DEVICE_ID_AMD_8132_BRIDGE 0x7458 | 542 | #define PCI_DEVICE_ID_AMD_8132_BRIDGE 0x7458 |
543 | #define PCI_DEVICE_ID_AMD_CS5535_IDE 0x208F | ||
540 | #define PCI_DEVICE_ID_AMD_CS5536_ISA 0x2090 | 544 | #define PCI_DEVICE_ID_AMD_CS5536_ISA 0x2090 |
541 | #define PCI_DEVICE_ID_AMD_CS5536_FLASH 0x2091 | 545 | #define PCI_DEVICE_ID_AMD_CS5536_FLASH 0x2091 |
542 | #define PCI_DEVICE_ID_AMD_CS5536_AUDIO 0x2093 | 546 | #define PCI_DEVICE_ID_AMD_CS5536_AUDIO 0x2093 |