aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMikhail Cherkashin <mcherkashin@ru.mvista.com>2008-07-15 15:21:40 -0400
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2008-07-15 15:21:40 -0400
commit5ddee516dae1acc779b36cb7565720a80503196d (patch)
tree64e54f9204b297cb2cbaf9fc8f267fcd300fdc54
parent8c6e46ddb343004e33653f62f0b09c0721cd8c12 (diff)
ide: disable drive interrupts in ide_driveid_update()
Since ide_driveid_update() uses polling to execute the IDENTIFY DEVICE command but clears nIEN bit in the control register and doesn't mask the IDE interrupt, the latter does happen and lead to the corresponding message to appear: ide0: unexpected interrupt, status=0x58, count=1 when e.g. running hdparm with option -X with a non-PCI IDE driver... Signed-off-by: Mikhail Cherkashin <mcherkashin@ru.mvista.com> Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
-rw-r--r--drivers/ide/ide-iops.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/ide/ide-iops.c b/drivers/ide/ide-iops.c
index 0daf923541ff..c2dd20aa15a6 100644
--- a/drivers/ide/ide-iops.c
+++ b/drivers/ide/ide-iops.c
@@ -689,7 +689,7 @@ int ide_driveid_update(ide_drive_t *drive)
689 */ 689 */
690 690
691 SELECT_MASK(drive, 1); 691 SELECT_MASK(drive, 1);
692 ide_set_irq(drive, 1); 692 ide_set_irq(drive, 0);
693 msleep(50); 693 msleep(50);
694 hwif->OUTBSYNC(drive, WIN_IDENTIFY, hwif->io_ports.command_addr); 694 hwif->OUTBSYNC(drive, WIN_IDENTIFY, hwif->io_ports.command_addr);
695 timeout = jiffies + WAIT_WORSTCASE; 695 timeout = jiffies + WAIT_WORSTCASE;