diff options
author | Heiko Carstens | 2013-09-04 13:35:45 +0200 |
---|---|---|
committer | Heiko Carstens | 2013-09-04 17:19:13 +0200 |
commit | 82003c3e606905ca20c78a0ceca9f412e6f71474 (patch) | |
tree | 846dc04eec40aaa7e25915cb8131ed52da97e334 /arch/s390/include | |
parent | s390/irq: use hlists for external interrupt handler array (diff) | |
download | kernel-qcow2-linux-82003c3e606905ca20c78a0ceca9f412e6f71474.tar.gz kernel-qcow2-linux-82003c3e606905ca20c78a0ceca9f412e6f71474.tar.xz kernel-qcow2-linux-82003c3e606905ca20c78a0ceca9f412e6f71474.zip |
s390/irq: rework irq subclass handling
Let's not add a function for every external interrupt subclass for
which we need reference counting. Just have two register/unregister
functions which have a subclass parameter:
void irq_subclass_register(enum irq_subclass subclass);
void irq_subclass_unregister(enum irq_subclass subclass);
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Diffstat (limited to 'arch/s390/include')
-rw-r--r-- | arch/s390/include/asm/irq.h | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/arch/s390/include/asm/irq.h b/arch/s390/include/asm/irq.h index 1eaa3625803c..5f8bcc5fe423 100644 --- a/arch/s390/include/asm/irq.h +++ b/arch/s390/include/asm/irq.h @@ -78,10 +78,14 @@ typedef void (*ext_int_handler_t)(struct ext_code, unsigned int, unsigned long); int register_external_interrupt(u16 code, ext_int_handler_t handler); int unregister_external_interrupt(u16 code, ext_int_handler_t handler); -void service_subclass_irq_register(void); -void service_subclass_irq_unregister(void); -void measurement_alert_subclass_register(void); -void measurement_alert_subclass_unregister(void); + +enum irq_subclass { + IRQ_SUBCLASS_MEASUREMENT_ALERT = 5, + IRQ_SUBCLASS_SERVICE_SIGNAL = 9, +}; + +void irq_subclass_register(enum irq_subclass subclass); +void irq_subclass_unregister(enum irq_subclass subclass); #define irq_canonicalize(irq) (irq) |