aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/ide.h
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2008-07-23 13:55:52 -0400
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2008-07-23 13:55:52 -0400
commit6e6afb3b7401f0181da74a1add57f126946b43e6 (patch)
tree2ca80a7fa25a387b5f3d479d9e94b1339ee440ac /include/linux/ide.h
parent1f6d8a0fd8f6cc5ee2219a8cf9b2da16dfd67397 (diff)
ide: add ->set_irq method
Add ->set_irq method for setting nIEN bit of ATA Device Control register and use it instead of ide_set_irq(). While at it: * Use ->set_irq in init_irq() and do_reset1(). * Don't use HWIF() macro in ide_check_pm_state(). There should be no functional changes caused by this patch. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'include/linux/ide.h')
-rw-r--r--include/linux/ide.h10
1 files changed, 2 insertions, 8 deletions
diff --git a/include/linux/ide.h b/include/linux/ide.h
index e5fa5e868d67..ae93f89e4448 100644
--- a/include/linux/ide.h
+++ b/include/linux/ide.h
@@ -494,6 +494,8 @@ typedef struct hwif_s {
494 u8 (*read_altstatus)(struct hwif_s *); 494 u8 (*read_altstatus)(struct hwif_s *);
495 u8 (*read_sff_dma_status)(struct hwif_s *); 495 u8 (*read_sff_dma_status)(struct hwif_s *);
496 496
497 void (*set_irq)(struct hwif_s *, int);
498
497 void (*tf_load)(ide_drive_t *, struct ide_task_s *); 499 void (*tf_load)(ide_drive_t *, struct ide_task_s *);
498 void (*tf_read)(ide_drive_t *, struct ide_task_s *); 500 void (*tf_read)(ide_drive_t *, struct ide_task_s *);
499 501
@@ -1356,14 +1358,6 @@ static inline ide_drive_t *ide_get_paired_drive(ide_drive_t *drive)
1356 return &hwif->drives[(drive->dn ^ 1) & 1]; 1358 return &hwif->drives[(drive->dn ^ 1) & 1];
1357} 1359}
1358 1360
1359static inline void ide_set_irq(ide_drive_t *drive, int on)
1360{
1361 ide_hwif_t *hwif = drive->hwif;
1362
1363 hwif->OUTBSYNC(hwif, ATA_DEVCTL_OBS | (on ? 0 : 2),
1364 hwif->io_ports.ctl_addr);
1365}
1366
1367static inline u8 ide_read_error(ide_drive_t *drive) 1361static inline u8 ide_read_error(ide_drive_t *drive)
1368{ 1362{
1369 ide_hwif_t *hwif = drive->hwif; 1363 ide_hwif_t *hwif = drive->hwif;