ide: clear HOB bit for REQ_TYPE_ATA_TASK requests in ide_end_drive_cmd()
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Mon, 5 Nov 2007 20:42:27 +0000 (21:42 +0100)
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Mon, 5 Nov 2007 20:42:27 +0000 (21:42 +0100)
ide_dump_ata_status() may set HOB bit before ide_end_drive_cmd() is called.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
drivers/ide/ide-io.c

index e04967ac25b6aea5fd94160a8e5cf4f7e85628bc..755011827afacf8d67fcf174662779b2c0ddfe3b 100644 (file)
@@ -340,6 +340,8 @@ void ide_end_drive_cmd (ide_drive_t *drive, u8 stat, u8 err)
                if (args) {
                        args[0] = stat;
                        args[1] = err;
+                       /* be sure we're looking at the low order bits */
+                       hwif->OUTB(drive->ctl & ~0x80, IDE_CONTROL_REG);
                        args[2] = hwif->INB(IDE_NSECTOR_REG);
                        args[3] = hwif->INB(IDE_SECTOR_REG);
                        args[4] = hwif->INB(IDE_LCYL_REG);