From: Jeff Garzik Date: Mon, 29 Oct 2007 09:18:12 +0000 (-0400) Subject: drivers/net/irda/au1k_ir: fix obvious irq handler bugs X-Git-Tag: v2.6.24-rc2~100^2~10 X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=commitdiff_plain;h=e38c2c651a038b78fd01cf2e3f3a65cacf0e41cc;p=linux.git drivers/net/irda/au1k_ir: fix obvious irq handler bugs interrupt handlers return a return value these days. Also, kill always-true test and unneeded void* cast. Signed-off-by: Jeff Garzik --- diff --git a/drivers/net/irda/au1k_ir.c b/drivers/net/irda/au1k_ir.c index 4dbdfaaf37bf..a1e4508717c8 100644 --- a/drivers/net/irda/au1k_ir.c +++ b/drivers/net/irda/au1k_ir.c @@ -627,19 +627,16 @@ static int au1k_irda_rx(struct net_device *dev) } -void au1k_irda_interrupt(int irq, void *dev_id) +static irqreturn_t au1k_irda_interrupt(int dummy, void *dev_id) { - struct net_device *dev = (struct net_device *) dev_id; - - if (dev == NULL) { - printk(KERN_ERR "%s: isr: null dev ptr\n", dev->name); - return; - } + struct net_device *dev = dev_id; writel(0, IR_INT_CLEAR); /* ack irda interrupts */ au1k_irda_rx(dev); au1k_tx_ack(dev); + + return IRQ_HANDLED; }