summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2007-11-05 21:42:27 +0100
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2007-11-05 21:42:27 +0100
commit1c11d241115a352a4468a7a4884c22cf68a5c6fd (patch)
tree51c441ad114e749de3995b8a835311ca48a9e00c /drivers
parent320112bd28d3c477f6990bfe8762ccb978106a08 (diff)
downloadlinux-3.10-1c11d241115a352a4468a7a4884c22cf68a5c6fd.tar.gz
linux-3.10-1c11d241115a352a4468a7a4884c22cf68a5c6fd.tar.bz2
linux-3.10-1c11d241115a352a4468a7a4884c22cf68a5c6fd.zip
ide: clear HOB bit for REQ_TYPE_ATA_TASK requests in ide_end_drive_cmd()
ide_dump_ata_status() may set HOB bit before ide_end_drive_cmd() is called. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/ide/ide-io.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/ide/ide-io.c b/drivers/ide/ide-io.c
index e04967ac25b..755011827af 100644
--- a/drivers/ide/ide-io.c
+++ b/drivers/ide/ide-io.c
@@ -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);