diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2009-03-27 07:46:27 -0400 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2009-03-27 07:46:27 -0400 |
commit | 255115fb35f80735c21a1cbe9809e9795a3af26e (patch) | |
tree | 55952820ef05e6f11c80c828b83a6cfdac366a84 /include/linux/ide.h | |
parent | c7db966bbbf216b336da921e5d7ba5b9c8467ac1 (diff) |
ide: allow host drivers to specify IRQ flags
* Add ->irq_flags field to struct ide_port_info and struct ide_host.
* Update host drivers and IDE PCI code to use ->irq_flags field.
* Convert init_irq() and ide_intr() to use host->irq_flags.
This fixes handling of shared IRQs for non-PCI hosts
and removes ugly ifdeffery from core IDE code.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'include/linux/ide.h')
-rw-r--r-- | include/linux/ide.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/linux/ide.h b/include/linux/ide.h index ab8ee4f32f52..901d323c7bbe 100644 --- a/include/linux/ide.h +++ b/include/linux/ide.h | |||
@@ -839,6 +839,9 @@ struct ide_host { | |||
839 | irq_handler_t irq_handler; | 839 | irq_handler_t irq_handler; |
840 | 840 | ||
841 | unsigned long host_flags; | 841 | unsigned long host_flags; |
842 | |||
843 | int irq_flags; | ||
844 | |||
842 | void *host_priv; | 845 | void *host_priv; |
843 | ide_hwif_t *cur_port; /* for hosts requiring serialization */ | 846 | ide_hwif_t *cur_port; /* for hosts requiring serialization */ |
844 | 847 | ||
@@ -1371,6 +1374,9 @@ struct ide_port_info { | |||
1371 | u16 max_sectors; /* if < than the default one */ | 1374 | u16 max_sectors; /* if < than the default one */ |
1372 | 1375 | ||
1373 | u32 host_flags; | 1376 | u32 host_flags; |
1377 | |||
1378 | int irq_flags; | ||
1379 | |||
1374 | u8 pio_mask; | 1380 | u8 pio_mask; |
1375 | u8 swdma_mask; | 1381 | u8 swdma_mask; |
1376 | u8 mwdma_mask; | 1382 | u8 mwdma_mask; |