diff options
-rw-r--r-- | drivers/ide/ide-io.c | 9 | ||||
-rw-r--r-- | drivers/ide/ide.c | 1 | ||||
-rw-r--r-- | drivers/ide/pci/hpt366.c | 10 | ||||
-rw-r--r-- | drivers/ide/pci/sgiioc4.c | 1 | ||||
-rw-r--r-- | include/linux/ide.h | 2 |
5 files changed, 5 insertions, 18 deletions
diff --git a/drivers/ide/ide-io.c b/drivers/ide/ide-io.c index 6b70ab9566d9..6ee7458d34ed 100644 --- a/drivers/ide/ide-io.c +++ b/drivers/ide/ide-io.c | |||
@@ -1200,10 +1200,11 @@ static void ide_do_request (ide_hwgroup_t *hwgroup, int masked_irq) | |||
1200 | if (hwgroup->hwif->sharing_irq && | 1200 | if (hwgroup->hwif->sharing_irq && |
1201 | hwif != hwgroup->hwif && | 1201 | hwif != hwgroup->hwif && |
1202 | hwif->io_ports[IDE_CONTROL_OFFSET]) { | 1202 | hwif->io_ports[IDE_CONTROL_OFFSET]) { |
1203 | /* set nIEN for previous hwif */ | 1203 | /* |
1204 | if (hwif->intrproc) | 1204 | * set nIEN for previous hwif, drives in the |
1205 | hwif->intrproc(drive); | 1205 | * quirk_list may not like intr setups/cleanups |
1206 | else | 1206 | */ |
1207 | if (drive->quirk_list != 1) | ||
1207 | hwif->OUTB(drive->ctl | 2, IDE_CONTROL_REG); | 1208 | hwif->OUTB(drive->ctl | 2, IDE_CONTROL_REG); |
1208 | } | 1209 | } |
1209 | hwgroup->hwif = hwif; | 1210 | hwgroup->hwif = hwif; |
diff --git a/drivers/ide/ide.c b/drivers/ide/ide.c index 9ab5458fe950..4acd87e92cca 100644 --- a/drivers/ide/ide.c +++ b/drivers/ide/ide.c | |||
@@ -424,7 +424,6 @@ static void ide_hwif_restore(ide_hwif_t *hwif, ide_hwif_t *tmp_hwif) | |||
424 | hwif->reset_poll = tmp_hwif->reset_poll; | 424 | hwif->reset_poll = tmp_hwif->reset_poll; |
425 | hwif->pre_reset = tmp_hwif->pre_reset; | 425 | hwif->pre_reset = tmp_hwif->pre_reset; |
426 | hwif->resetproc = tmp_hwif->resetproc; | 426 | hwif->resetproc = tmp_hwif->resetproc; |
427 | hwif->intrproc = tmp_hwif->intrproc; | ||
428 | hwif->maskproc = tmp_hwif->maskproc; | 427 | hwif->maskproc = tmp_hwif->maskproc; |
429 | hwif->quirkproc = tmp_hwif->quirkproc; | 428 | hwif->quirkproc = tmp_hwif->quirkproc; |
430 | hwif->busproc = tmp_hwif->busproc; | 429 | hwif->busproc = tmp_hwif->busproc; |
diff --git a/drivers/ide/pci/hpt366.c b/drivers/ide/pci/hpt366.c index d3826a66834d..24d645751e0f 100644 --- a/drivers/ide/pci/hpt366.c +++ b/drivers/ide/pci/hpt366.c | |||
@@ -736,15 +736,6 @@ static int hpt3xx_quirkproc(ide_drive_t *drive) | |||
736 | return 0; | 736 | return 0; |
737 | } | 737 | } |
738 | 738 | ||
739 | static void hpt3xx_intrproc(ide_drive_t *drive) | ||
740 | { | ||
741 | if (drive->quirk_list) | ||
742 | return; | ||
743 | |||
744 | /* drives in the quirk_list may not like intr setups/cleanups */ | ||
745 | outb(drive->ctl | 2, IDE_CONTROL_REG); | ||
746 | } | ||
747 | |||
748 | static void hpt3xx_maskproc(ide_drive_t *drive, int mask) | 739 | static void hpt3xx_maskproc(ide_drive_t *drive, int mask) |
749 | { | 740 | { |
750 | ide_hwif_t *hwif = HWIF(drive); | 741 | ide_hwif_t *hwif = HWIF(drive); |
@@ -1298,7 +1289,6 @@ static void __devinit init_hwif_hpt366(ide_hwif_t *hwif) | |||
1298 | hwif->set_dma_mode = &hpt3xx_set_mode; | 1289 | hwif->set_dma_mode = &hpt3xx_set_mode; |
1299 | 1290 | ||
1300 | hwif->quirkproc = &hpt3xx_quirkproc; | 1291 | hwif->quirkproc = &hpt3xx_quirkproc; |
1301 | hwif->intrproc = &hpt3xx_intrproc; | ||
1302 | hwif->maskproc = &hpt3xx_maskproc; | 1292 | hwif->maskproc = &hpt3xx_maskproc; |
1303 | hwif->busproc = &hpt3xx_busproc; | 1293 | hwif->busproc = &hpt3xx_busproc; |
1304 | 1294 | ||
diff --git a/drivers/ide/pci/sgiioc4.c b/drivers/ide/pci/sgiioc4.c index de820aa58cd0..7e9dade5648d 100644 --- a/drivers/ide/pci/sgiioc4.c +++ b/drivers/ide/pci/sgiioc4.c | |||
@@ -582,7 +582,6 @@ ide_init_sgiioc4(ide_hwif_t * hwif) | |||
582 | hwif->pre_reset = NULL; /* No HBA specific pre_set needed */ | 582 | hwif->pre_reset = NULL; /* No HBA specific pre_set needed */ |
583 | hwif->resetproc = &sgiioc4_resetproc;/* Reset DMA engine, | 583 | hwif->resetproc = &sgiioc4_resetproc;/* Reset DMA engine, |
584 | clear interrupts */ | 584 | clear interrupts */ |
585 | hwif->intrproc = NULL; /* Enable or Disable interrupt from drive */ | ||
586 | hwif->maskproc = &sgiioc4_maskproc; /* Mask on/off NIEN register */ | 585 | hwif->maskproc = &sgiioc4_maskproc; /* Mask on/off NIEN register */ |
587 | hwif->quirkproc = NULL; | 586 | hwif->quirkproc = NULL; |
588 | hwif->busproc = NULL; | 587 | hwif->busproc = NULL; |
diff --git a/include/linux/ide.h b/include/linux/ide.h index e80351878b8b..90f83b65eb8f 100644 --- a/include/linux/ide.h +++ b/include/linux/ide.h | |||
@@ -524,8 +524,6 @@ typedef struct hwif_s { | |||
524 | void (*pre_reset)(ide_drive_t *); | 524 | void (*pre_reset)(ide_drive_t *); |
525 | /* routine to reset controller after a disk reset */ | 525 | /* routine to reset controller after a disk reset */ |
526 | void (*resetproc)(ide_drive_t *); | 526 | void (*resetproc)(ide_drive_t *); |
527 | /* special interrupt handling for shared pci interrupts */ | ||
528 | void (*intrproc)(ide_drive_t *); | ||
529 | /* special host masking for drive selection */ | 527 | /* special host masking for drive selection */ |
530 | void (*maskproc)(ide_drive_t *, int); | 528 | void (*maskproc)(ide_drive_t *, int); |
531 | /* check host's drive quirk list */ | 529 | /* check host's drive quirk list */ |