summaryrefslogtreecommitdiffstats
path: root/drivers/ide/ide-xfer-mode.c
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2009-06-15 18:52:53 +0200
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2009-06-15 18:52:53 +0200
commitc9ef59ff01b6bd1c7360a64fcc8556a1193c2ed0 (patch)
tree5bd24f0d0f720ab29f9a5b5a2156a620e2ff2113 /drivers/ide/ide-xfer-mode.c
parentata: add ata_id_pio_need_iordy() helper (v2) (diff)
downloadlinux-c9ef59ff01b6bd1c7360a64fcc8556a1193c2ed0.tar.xz
linux-c9ef59ff01b6bd1c7360a64fcc8556a1193c2ed0.zip
ide: IORDY handling fixes
Add ide_pio_need_iordy() helper and convert host drivers to use it. This fixes it8172, it8213, pdc202xx_old, piix, slc90e66 and siimage host drivers to handle IORDY correctly. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/ide-xfer-mode.c')
-rw-r--r--drivers/ide/ide-xfer-mode.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/ide/ide-xfer-mode.c b/drivers/ide/ide-xfer-mode.c
index af44be9d546c..0b47ca139079 100644
--- a/drivers/ide/ide-xfer-mode.c
+++ b/drivers/ide/ide-xfer-mode.c
@@ -107,6 +107,12 @@ u8 ide_get_best_pio_mode(ide_drive_t *drive, u8 mode_wanted, u8 max_mode)
}
EXPORT_SYMBOL_GPL(ide_get_best_pio_mode);
+int ide_pio_need_iordy(ide_drive_t *drive, const u8 pio)
+{
+ return ata_id_pio_need_iordy(drive->id, pio);
+}
+EXPORT_SYMBOL_GPL(ide_pio_need_iordy);
+
int ide_set_pio_mode(ide_drive_t *drive, const u8 mode)
{
ide_hwif_t *hwif = drive->hwif;