ide: fix final status check in drive_cmd_intr()
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Sat, 26 Jan 2008 19:13:12 +0000 (20:13 +0100)
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Sat, 26 Jan 2008 19:13:12 +0000 (20:13 +0100)
Don't check for READY_STAT bit being set for PIO-in protocol (makes the
final status check in drive_cmd_intr() match the one in task_in_intr()).

Also fix function name reported by ide_error() call while at it.

Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
drivers/ide/ide-io.c

index ce8ab1085936cabeed5ea5237376cfe25a5f016c..cad057d25a29761db257f24c1d53368b96989bf0 100644 (file)
@@ -659,8 +659,8 @@ static ide_startstop_t drive_cmd_intr (ide_drive_t *drive)
                stat = hwif->INB(IDE_STATUS_REG);
        }
 
-       if (!OK_STAT(stat, READY_STAT, BAD_STAT))
-               return ide_error(drive, "drive_cmd", stat);
+       if (!OK_STAT(stat, (pio_in ? 0 : READY_STAT), BAD_STAT))
+               return ide_error(drive, __FUNCTION__, stat);
                /* calls ide_end_drive_cmd */
        ide_end_drive_cmd(drive, stat, hwif->INB(IDE_ERROR_REG));
        return ide_stopped;