irqreturn_t b1dma_interrupt(int interrupt, void *devptr) { avmcard *card = devptr; b1dma_handle_interrupt(card); return IRQ_HANDLED; }
void b1dma_interrupt(int interrupt, void *devptr, struct pt_regs *regs) { avmcard *card; card = (avmcard *) devptr; if (!card) { printk(KERN_WARNING "b1dma: interrupt: wrong device\n"); return; } if (card->interrupt) { printk(KERN_ERR "%s: reentering interrupt hander\n", card->name); return; } card->interrupt = 1; b1dma_handle_interrupt(card); card->interrupt = 0; }