aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide/ide-io.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ide/ide-io.c')
-rw-r--r--drivers/ide/ide-io.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/ide/ide-io.c b/drivers/ide/ide-io.c
index 11b602bb5741..623f6c246cf5 100644
--- a/drivers/ide/ide-io.c
+++ b/drivers/ide/ide-io.c
@@ -383,7 +383,7 @@ static ide_startstop_t ide_ata_error(ide_drive_t *drive, struct request *rq, u8
383 } else if (stat & ATA_ERR) { 383 } else if (stat & ATA_ERR) {
384 /* err has different meaning on cdrom and tape */ 384 /* err has different meaning on cdrom and tape */
385 if (err == ATA_ABORTED) { 385 if (err == ATA_ABORTED) {
386 if (drive->select.b.lba && 386 if ((drive->dev_flags & IDE_DFLAG_LBA) &&
387 /* some newer drives don't support ATA_CMD_INIT_DEV_PARAMS */ 387 /* some newer drives don't support ATA_CMD_INIT_DEV_PARAMS */
388 hwif->tp_ops->read_status(hwif) == ATA_CMD_INIT_DEV_PARAMS) 388 hwif->tp_ops->read_status(hwif) == ATA_CMD_INIT_DEV_PARAMS)
389 return ide_stopped; 389 return ide_stopped;
@@ -513,7 +513,7 @@ static void ide_tf_set_specify_cmd(ide_drive_t *drive, struct ide_taskfile *tf)
513 tf->lbal = drive->sect; 513 tf->lbal = drive->sect;
514 tf->lbam = drive->cyl; 514 tf->lbam = drive->cyl;
515 tf->lbah = drive->cyl >> 8; 515 tf->lbah = drive->cyl >> 8;
516 tf->device = ((drive->head - 1) | drive->select.all) & ~ATA_LBA; 516 tf->device = (drive->head - 1) | drive->select.all;
517 tf->command = ATA_CMD_INIT_DEV_PARAMS; 517 tf->command = ATA_CMD_INIT_DEV_PARAMS;
518} 518}
519 519