void free_irq(unsigned int irq, void *dev_id) { if (irq >= NR_IRQS) return; if (!irq_list[irq] || irq_list[irq]->dev_id != dev_id) printk(KERN_WARNING "Removing probably wrong IRQ %d from %s\n", irq, irq_list[irq]->devname); disable_irq(irq); h8300_disable_irq_pin(irq); if (((unsigned long)irq_list[irq] & 0x80000000) == 0) { kfree(irq_list[irq]); irq_list[irq] = NULL; } }
static void h8300_shutdown_irq(struct irq_data *data) { if (is_ext_irq(data->irq)) h8300_disable_irq_pin(data->irq); }
static void h8300_shutdown_irq(unsigned int irq) { if (is_ext_irq(irq)) h8300_disable_irq_pin(irq); }