aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2007-10-13 11:47:49 -0400
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2007-10-13 11:47:49 -0400
commit218ee5f364ed006403f1bbe3c1da5af51b1bdb2a (patch)
treebf8c780d22dfa9f26545896b2cc59e588676e75c
parent74af21cf4d0ab67df53608753a443dc7904ec12e (diff)
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>
-rw-r--r--drivers/ide/ppc/pmac.c12
1 files changed, 1 insertions, 11 deletions
diff --git a/drivers/ide/ppc/pmac.c b/drivers/ide/ppc/pmac.c
index ad58c7ecf858..512452b379bd 100644
--- a/drivers/ide/ppc/pmac.c
+++ b/drivers/ide/ppc/pmac.c
@@ -548,16 +548,6 @@ pmac_ide_do_setfeature(ide_drive_t *drive, u8 command)
548 SELECT_DRIVE(drive); 548 SELECT_DRIVE(drive);
549 SELECT_MASK(drive, 0); 549 SELECT_MASK(drive, 0);
550 udelay(1); 550 udelay(1);
551 /* Get rid of pending error state */
552 (void) hwif->INB(IDE_STATUS_REG);
553 /* Timeout bumped for some powerbooks */
554 if (wait_for_ready(drive, 2000)) {
555 /* Timeout bumped for some powerbooks */
556 printk(KERN_ERR "%s: pmac_ide_do_setfeature disk not ready "
557 "before SET_FEATURE!\n", drive->name);
558 goto out;
559 }
560 udelay(10);
561 hwif->OUTB(drive->ctl | 2, IDE_CONTROL_REG); 551 hwif->OUTB(drive->ctl | 2, IDE_CONTROL_REG);
562 hwif->OUTB(command, IDE_NSECTOR_REG); 552 hwif->OUTB(command, IDE_NSECTOR_REG);
563 hwif->OUTB(SETFEATURES_XFER, IDE_FEATURE_REG); 553 hwif->OUTB(SETFEATURES_XFER, IDE_FEATURE_REG);
@@ -569,7 +559,7 @@ pmac_ide_do_setfeature(ide_drive_t *drive, u8 command)
569 if (result) 559 if (result)
570 printk(KERN_ERR "%s: pmac_ide_do_setfeature disk not ready " 560 printk(KERN_ERR "%s: pmac_ide_do_setfeature disk not ready "
571 "after SET_FEATURE !\n", drive->name); 561 "after SET_FEATURE !\n", drive->name);
572out: 562
573 SELECT_MASK(drive, 0); 563 SELECT_MASK(drive, 0);
574 if (result == 0) { 564 if (result == 0) {
575 drive->id->dma_ultra &= ~0xFF00; 565 drive->id->dma_ultra &= ~0xFF00;