diff options
Diffstat (limited to 'drivers/ide/ide-io.c')
| -rw-r--r-- | drivers/ide/ide-io.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/ide/ide-io.c b/drivers/ide/ide-io.c index 04705878fea6..3cf32f23bea2 100644 --- a/drivers/ide/ide-io.c +++ b/drivers/ide/ide-io.c @@ -238,9 +238,10 @@ u64 ide_get_error_location(ide_drive_t *drive, char *args) high = ide_read_24(drive); } else { u8 cur = HWIF(drive)->INB(IDE_SELECT_REG); - if (cur & 0x40) + if (cur & 0x40) { + high = cur & 0xf; low = (hcyl << 16) | (lcyl << 8) | sect; - else { + } else { low = hcyl * drive->head * drive->sect; low += lcyl * drive->sect; low += sect - 1; |
