|
@@ -340,6 +340,8 @@ void ide_end_drive_cmd (ide_drive_t *drive, u8 stat, u8 err)
|
|
if (args) {
|
|
if (args) {
|
|
args[0] = stat;
|
|
args[0] = stat;
|
|
args[1] = err;
|
|
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[2] = hwif->INB(IDE_NSECTOR_REG);
|
|
args[3] = hwif->INB(IDE_SECTOR_REG);
|
|
args[3] = hwif->INB(IDE_SECTOR_REG);
|
|
args[4] = hwif->INB(IDE_LCYL_REG);
|
|
args[4] = hwif->INB(IDE_LCYL_REG);
|