diff options
author | Albert Lee <albertcc@tw.ibm.com> | 2005-11-01 06:33:20 -0500 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2005-11-09 01:22:19 -0500 |
commit | 07f6f7d074e68d56d82e7cc5c65096033ac8dc56 (patch) | |
tree | d420722be7721691e5c56dc5a0ff326e926a58e6 /include/linux | |
parent | fbcdd80b0d5bde06f3483b9a13f9599a0452431c (diff) |
[PATCH] libata irq-pio: add read/write multiple support
- add is_multi_taskfile() to ata.h
- initialize ata_device->multi_count with device identify data
- use ata_pio_sectors() to support r/w multiple commands
Signed-off-by: Albert Lee <albertcc@tw.ibm.com>
========
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/ata.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/include/linux/ata.h b/include/linux/ata.h index d54da3306d2c..f512104a1a3f 100644 --- a/include/linux/ata.h +++ b/include/linux/ata.h | |||
@@ -293,6 +293,14 @@ static inline int is_atapi_taskfile(const struct ata_taskfile *tf) | |||
293 | (tf->protocol == ATA_PROT_ATAPI_DMA); | 293 | (tf->protocol == ATA_PROT_ATAPI_DMA); |
294 | } | 294 | } |
295 | 295 | ||
296 | static inline int is_multi_taskfile(struct ata_taskfile *tf) | ||
297 | { | ||
298 | return (tf->command == ATA_CMD_READ_MULTI) || | ||
299 | (tf->command == ATA_CMD_WRITE_MULTI) || | ||
300 | (tf->command == ATA_CMD_READ_MULTI_EXT) || | ||
301 | (tf->command == ATA_CMD_WRITE_MULTI_EXT); | ||
302 | } | ||
303 | |||
296 | static inline int ata_ok(u8 status) | 304 | static inline int ata_ok(u8 status) |
297 | { | 305 | { |
298 | return ((status & (ATA_BUSY | ATA_DRDY | ATA_DF | ATA_DRQ | ATA_ERR)) | 306 | return ((status & (ATA_BUSY | ATA_DRDY | ATA_DF | ATA_DRQ | ATA_ERR)) |