/** * ext irq15_10 * * External interrupt handler for irqs 15 through 10. * */ static void ext_irq15_10(void) { int index; ++ext_irq_counts.irq15_10; for (index = 10; index <= 15; ++index) { ext_irq_handler(index); } }
/** * ext irq9_5 * * External interrupt handler for irqs 9 through 5. * */ static void ext_irq9_5(void) { int index; ++ext_irq_counts.irq9_5; for (index = 5; index <= 9; ++index) { ext_irq_handler(index); } }
static irqreturn_t str8100_ext_irq_handler(int this_irq, void *dev_id/*, struct pt_regs *regs*/) { if(debug) printk("%s: this_irq=%d\n",__FUNCTION__,this_irq); HAL_INTC_DISABLE_INTERRUPT_SOURCE(this_irq); if(ext_irq_handler){ ext_irq_handler(this_irq,dev_id,NULL/*regs*/); } HAL_INTC_CLEAR_EDGE_TRIGGER_INTERRUPT(this_irq); HAL_INTC_ENABLE_INTERRUPT_SOURCE(this_irq); return IRQ_HANDLED; }
/** * ext irq4 * * External interrupt handler for external interrupt 4. * */ static void ext_irq4(void) { ++ext_irq_counts.irq4; ext_irq_handler(4); }
/* External interrupt 3 */ static void ext_irq3(void) { ++ext_irq_counts.irq3; ext_irq_handler(3); }
/* External interrupt 2 */ static void ext_irq2(void) { ++ext_irq_counts.irq2; ext_irq_handler(2); }
/* External interrupt 1 */ static void ext_irq1(void) { ++ext_irq_counts.irq1; ext_irq_handler(1); }
/* External interrupt 0 */ static void ext_irq0(void) { ++ext_irq_counts.irq0; ext_irq_handler(0); }