Merge branch 'staging-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh...
[pandora-kernel.git] / arch / s390 / include / asm / irq.h
1 #ifndef _ASM_IRQ_H
2 #define _ASM_IRQ_H
3
4 #include <linux/hardirq.h>
5 #include <linux/types.h>
6
7 enum interruption_class {
8         EXTERNAL_INTERRUPT,
9         IO_INTERRUPT,
10         EXTINT_CLK,
11         EXTINT_IPI,
12         EXTINT_TMR,
13         EXTINT_TLA,
14         EXTINT_PFL,
15         EXTINT_DSD,
16         EXTINT_VRT,
17         EXTINT_SCP,
18         EXTINT_IUC,
19         EXTINT_CPM,
20         IOINT_QAI,
21         IOINT_QDI,
22         IOINT_DAS,
23         IOINT_C15,
24         IOINT_C70,
25         IOINT_TAP,
26         IOINT_VMR,
27         IOINT_LCS,
28         IOINT_CLW,
29         IOINT_CTC,
30         IOINT_APB,
31         NMI_NMI,
32         NR_IRQS,
33 };
34
35 typedef void (*ext_int_handler_t)(unsigned int, unsigned int, unsigned long);
36
37 int register_external_interrupt(u16 code, ext_int_handler_t handler);
38 int unregister_external_interrupt(u16 code, ext_int_handler_t handler);
39 void service_subclass_irq_register(void);
40 void service_subclass_irq_unregister(void);
41
42 #endif /* _ASM_IRQ_H */