aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide/ide-probe.c
diff options
context:
space:
mode:
authorSergei Shtylyov <sshtylyov@ru.mvista.com>2009-03-31 14:15:30 -0400
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2009-03-31 14:15:30 -0400
commitecf3a31d2a08a419bdf919456f1724f5b72bde2c (patch)
tree11a5b4685425541fa4bb267ac6f897cb1c38ba41 /drivers/ide/ide-probe.c
parent4d74c3fcf2b90487eacec511bc8c07177711c81c (diff)
ide: turn set_irq() method into write_devctl() method
Turn set_irq() method with its software reset hack into write_devctl() method (for just writing a value into the device control register) at last... Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/ide-probe.c')
-rw-r--r--drivers/ide/ide-probe.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/ide/ide-probe.c b/drivers/ide/ide-probe.c
index 7c1f1bf81836..d240f76b0da6 100644
--- a/drivers/ide/ide-probe.c
+++ b/drivers/ide/ide-probe.c
@@ -260,7 +260,7 @@ int ide_dev_read_id(ide_drive_t *drive, u8 cmd, u16 *id)
260 * during the identify phase that the IRQ handler isn't expecting. 260 * during the identify phase that the IRQ handler isn't expecting.
261 */ 261 */
262 if (io_ports->ctl_addr) 262 if (io_ports->ctl_addr)
263 tp_ops->set_irq(hwif, 0); 263 tp_ops->write_devctl(hwif, ATA_NIEN | ATA_DEVCTL_OBS);
264 264
265 /* take a deep breath */ 265 /* take a deep breath */
266 msleep(50); 266 msleep(50);
@@ -628,7 +628,7 @@ static int ide_port_wait_ready(ide_hwif_t *hwif)
628 if ((drive->dev_flags & IDE_DFLAG_NOPROBE) == 0 || 628 if ((drive->dev_flags & IDE_DFLAG_NOPROBE) == 0 ||
629 (drive->dev_flags & IDE_DFLAG_PRESENT)) { 629 (drive->dev_flags & IDE_DFLAG_PRESENT)) {
630 SELECT_DRIVE(drive); 630 SELECT_DRIVE(drive);
631 hwif->tp_ops->set_irq(hwif, 1); 631 hwif->tp_ops->write_devctl(hwif, ATA_DEVCTL_OBS);
632 mdelay(2); 632 mdelay(2);
633 rc = ide_wait_not_busy(hwif, 35000); 633 rc = ide_wait_not_busy(hwif, 35000);
634 if (rc) 634 if (rc)
@@ -845,7 +845,7 @@ static int init_irq (ide_hwif_t *hwif)
845 irq_handler = ide_intr; 845 irq_handler = ide_intr;
846 846
847 if (io_ports->ctl_addr) 847 if (io_ports->ctl_addr)
848 hwif->tp_ops->set_irq(hwif, 1); 848 hwif->tp_ops->write_devctl(hwif, ATA_DEVCTL_OBS);
849 849
850 if (request_irq(hwif->irq, irq_handler, sa, hwif->name, hwif)) 850 if (request_irq(hwif->irq, irq_handler, sa, hwif->name, hwif))
851 goto out_up; 851 goto out_up;