diff options
author | Jeff Garzik <jgarzik@pobox.com> | 2004-08-13 23:39:52 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2004-08-13 23:39:52 -0400 |
commit | c79dd2877a045f479a9e9a4371ab966b6520801c (patch) | |
tree | 91c516ed6f8825aa9397370d03f21d122c7bf3c8 /include | |
parent | e4babc07a978f0384da961fc1fea72b518614dba (diff) | |
download | history-c79dd2877a045f479a9e9a4371ab966b6520801c.tar.gz |
[libata] support commands SYNCHRONIZE CACHE, VERIFY, VERIFY(16)
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/ata.h | 2 | ||||
-rw-r--r-- | include/linux/libata.h | 7 | ||||
-rw-r--r-- | include/scsi/scsi.h | 1 |
3 files changed, 10 insertions, 0 deletions
diff --git a/include/linux/ata.h b/include/linux/ata.h index f5d5ae987711e1..61af2605817541 100644 --- a/include/linux/ata.h +++ b/include/linux/ata.h @@ -215,6 +215,8 @@ struct ata_taskfile { #define ata_id_is_ata(dev) (((dev)->id[0] & (1 << 15)) == 0) #define ata_id_rahead_enabled(dev) ((dev)->id[85] & (1 << 6)) #define ata_id_wcache_enabled(dev) ((dev)->id[85] & (1 << 5)) +#define ata_id_has_flush(dev) ((dev)->id[83] & (1 << 12)) +#define ata_id_has_flush_ext(dev) ((dev)->id[83] & (1 << 13)) #define ata_id_has_lba48(dev) ((dev)->id[83] & (1 << 10)) #define ata_id_has_wcache(dev) ((dev)->id[82] & (1 << 5)) #define ata_id_has_pm(dev) ((dev)->id[82] & (1 << 3)) diff --git a/include/linux/libata.h b/include/linux/libata.h index 8443cce6971f63..e702e96f7d98f4 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h @@ -607,4 +607,11 @@ static inline u8 ata_bmdma_status(struct ata_port *ap) return host_stat; } +static inline int ata_try_flush_cache(struct ata_device *dev) +{ + return ata_id_wcache_enabled(dev) || + ata_id_has_flush(dev) || + ata_id_has_flush_ext(dev); +} + #endif /* __LINUX_LIBATA_H__ */ diff --git a/include/scsi/scsi.h b/include/scsi/scsi.h index 1c6d293846f069..23643d45f6320a 100644 --- a/include/scsi/scsi.h +++ b/include/scsi/scsi.h @@ -108,6 +108,7 @@ extern const char *const scsi_device_types[MAX_SCSI_DEVICE_CODE]; #define WRITE_LONG_2 0xea #define READ_16 0x88 #define WRITE_16 0x8a +#define VERIFY_16 0x8f #define SERVICE_ACTION_IN 0x9e /* values for service action in */ #define SAI_READ_CAPACITY_16 0x10 |