ide-pmac: remove extra good status wait from pmac_ide_do_setfeature()

Don't check for good device status before executing the command in
pmac_ide_do_setfeature() (ide_config_drive_speed() doesn't do this).

It is a job of upper layers to guarantee that the device is ready to
accept new command before we get here.

Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
This commit is contained in:
Bartlomiej Zolnierkiewicz 2007-10-13 17:47:49 +02:00
parent 74af21cf4d
commit 218ee5f364

View File

@ -548,16 +548,6 @@ pmac_ide_do_setfeature(ide_drive_t *drive, u8 command)
SELECT_DRIVE(drive); SELECT_DRIVE(drive);
SELECT_MASK(drive, 0); SELECT_MASK(drive, 0);
udelay(1); udelay(1);
/* Get rid of pending error state */
(void) hwif->INB(IDE_STATUS_REG);
/* Timeout bumped for some powerbooks */
if (wait_for_ready(drive, 2000)) {
/* Timeout bumped for some powerbooks */
printk(KERN_ERR "%s: pmac_ide_do_setfeature disk not ready "
"before SET_FEATURE!\n", drive->name);
goto out;
}
udelay(10);
hwif->OUTB(drive->ctl | 2, IDE_CONTROL_REG); hwif->OUTB(drive->ctl | 2, IDE_CONTROL_REG);
hwif->OUTB(command, IDE_NSECTOR_REG); hwif->OUTB(command, IDE_NSECTOR_REG);
hwif->OUTB(SETFEATURES_XFER, IDE_FEATURE_REG); hwif->OUTB(SETFEATURES_XFER, IDE_FEATURE_REG);
@ -569,7 +559,7 @@ pmac_ide_do_setfeature(ide_drive_t *drive, u8 command)
if (result) if (result)
printk(KERN_ERR "%s: pmac_ide_do_setfeature disk not ready " printk(KERN_ERR "%s: pmac_ide_do_setfeature disk not ready "
"after SET_FEATURE !\n", drive->name); "after SET_FEATURE !\n", drive->name);
out:
SELECT_MASK(drive, 0); SELECT_MASK(drive, 0);
if (result == 0) { if (result == 0) {
drive->id->dma_ultra &= ~0xFF00; drive->id->dma_ultra &= ~0xFF00;