]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/ide/ide-xfer-mode.c
Merge branch 'master' of /pub/scm/linux/kernel/git/torvalds/linux-2.6
[karo-tx-linux.git] / drivers / ide / ide-xfer-mode.c
index 0b47ca139079d03e39b3800267f4abdddeb2815a..46d203ce60cc4ab879be08a85b2f2a8540ddd88e 100644 (file)
@@ -109,6 +109,12 @@ EXPORT_SYMBOL_GPL(ide_get_best_pio_mode);
 
 int ide_pio_need_iordy(ide_drive_t *drive, const u8 pio)
 {
+       /*
+        * IORDY may lead to controller lock up on certain controllers
+        * if the port is not occupied.
+        */
+       if (pio == 0 && (drive->hwif->port_flags & IDE_PFLAG_PROBING))
+               return 0;
        return ata_id_pio_need_iordy(drive->id, pio);
 }
 EXPORT_SYMBOL_GPL(ide_pio_need_iordy);