From cdae28e1a28f26c765c5882a48b9fd4a5b9ce91c Mon Sep 17 00:00:00 2001 From: Andreas Mohr Date: Tue, 2 Jun 2009 18:15:12 +0200 Subject: mISDN: Free hfcpci IRQ if init was not successful If we get no interrupts for after 3 resets we need to unregister the interrupt function, which is already done outside the loop. Signed-off-by: Andreas Mohr Signed-off-by: Karsten Keil --- drivers/isdn/hardware/mISDN/hfcpci.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'drivers/isdn/hardware') diff --git a/drivers/isdn/hardware/mISDN/hfcpci.c b/drivers/isdn/hardware/mISDN/hfcpci.c index 776afc8..228ffbe 100644 --- a/drivers/isdn/hardware/mISDN/hfcpci.c +++ b/drivers/isdn/hardware/mISDN/hfcpci.c @@ -1806,10 +1806,9 @@ init_card(struct hfc_pci *hc) printk(KERN_WARNING "HFC PCI: IRQ(%d) getting no interrupts " "during init %d\n", hc->irq, 4 - cnt); - if (cnt == 1) { - spin_unlock_irqrestore(&hc->lock, flags); - return -EIO; - } else { + if (cnt == 1) + break; + else { reset_hfcpci(hc); cnt--; } -- cgit v1.1