| #include <linux/hardirq.h> |
| #include <linux/percpu.h> |
| enum interruption_main_class { |
| enum interruption_class { |
| unsigned int irqs[NR_ARCH_IRQS]; |
| DECLARE_PER_CPU_SHARED_ALIGNED(struct irq_stat, irq_stat); |
| static __always_inline void inc_irq_stat(enum interruption_class irq) |
| __get_cpu_var(irq_stat).irqs[irq]++; |
| 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); |
| # define disable_irq_nosync_lockdep(irq) disable_irq_nosync(irq) |
| # define disable_irq_nosync_lockdep_irqsave(irq, flags) \ |
| # define disable_irq_lockdep(irq) disable_irq(irq) |
| # define enable_irq_lockdep(irq) enable_irq(irq) |
| # define enable_irq_lockdep_irqrestore(irq, flags) \ |