diff options
author | Albert Lee <albertcc@tw.ibm.com> | 2005-10-12 03:06:27 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2005-10-18 17:16:13 -0400 |
commit | 8cbd6df1f0ce977ab7b61feffa59879bb5e0ed8f (patch) | |
tree | c460778581293ad479ec4983690ccc46bcb4df56 /include | |
parent | 07506697d1c615924298406f2357810709c09bcd (diff) |
[PATCH] libata CHS: calculate read/write commands and protocol on the fly (revise #6)
- merge ata_prot_to_cmd() and ata_dev_set_protocol() as
ata_rwcmd_protocol()
- pave road for read/write multiple support
- remove usage of pre-cached command and protocol values and call
ata_rwcmd_protocol() instead
Signed-off-by: Albert Lee <albertcc@tw.ibm.com>
==============
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/ata.h | 4 | ||||
-rw-r--r-- | include/linux/libata.h | 6 |
2 files changed, 6 insertions, 4 deletions
diff --git a/include/linux/ata.h b/include/linux/ata.h index ecb7346d0c16..630908c9378b 100644 --- a/include/linux/ata.h +++ b/include/linux/ata.h | |||
@@ -128,6 +128,10 @@ enum { | |||
128 | ATA_CMD_PIO_READ_EXT = 0x24, | 128 | ATA_CMD_PIO_READ_EXT = 0x24, |
129 | ATA_CMD_PIO_WRITE = 0x30, | 129 | ATA_CMD_PIO_WRITE = 0x30, |
130 | ATA_CMD_PIO_WRITE_EXT = 0x34, | 130 | ATA_CMD_PIO_WRITE_EXT = 0x34, |
131 | ATA_CMD_READ_MULTI = 0xC4, | ||
132 | ATA_CMD_READ_MULTI_EXT = 0x29, | ||
133 | ATA_CMD_WRITE_MULTI = 0xC5, | ||
134 | ATA_CMD_WRITE_MULTI_EXT = 0x39, | ||
131 | ATA_CMD_SET_FEATURES = 0xEF, | 135 | ATA_CMD_SET_FEATURES = 0xEF, |
132 | ATA_CMD_PACKET = 0xA0, | 136 | ATA_CMD_PACKET = 0xA0, |
133 | ATA_CMD_VERIFY = 0x40, | 137 | ATA_CMD_VERIFY = 0x40, |
diff --git a/include/linux/libata.h b/include/linux/libata.h index 7929cfc9318d..0261c55f3483 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h | |||
@@ -283,10 +283,8 @@ struct ata_device { | |||
283 | u8 xfer_mode; | 283 | u8 xfer_mode; |
284 | unsigned int xfer_shift; /* ATA_SHIFT_xxx */ | 284 | unsigned int xfer_shift; /* ATA_SHIFT_xxx */ |
285 | 285 | ||
286 | /* cache info about current transfer mode */ | 286 | unsigned int multi_count; /* sectors count for |
287 | u8 xfer_protocol; /* taskfile xfer protocol */ | 287 | READ/WRITE MULTIPLE */ |
288 | u8 read_cmd; /* opcode to use on read */ | ||
289 | u8 write_cmd; /* opcode to use on write */ | ||
290 | 288 | ||
291 | /* for CHS addressing */ | 289 | /* for CHS addressing */ |
292 | u16 cylinders; /* Number of cylinders */ | 290 | u16 cylinders; /* Number of cylinders */ |