[PATCH 42/51 v2] staging: comedi: ni_labpc: allow board to attach without interrupt

H Hartley Sweeten hsweeten at visionengravers.com
Fri Mar 22 16:55:08 UTC 2013


If the interrupt is not available this driver will still work
with command support disabled for the analog input subdevice.

Signed-off-by: H Hartley Sweeten <hsweeten at visionengravers.com>
Cc: Ian Abbott <abbotti at mev.co.uk>
Cc: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
---
 drivers/staging/comedi/drivers/ni_labpc.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/drivers/staging/comedi/drivers/ni_labpc.c b/drivers/staging/comedi/drivers/ni_labpc.c
index 350ba04..a52647a 100644
--- a/drivers/staging/comedi/drivers/ni_labpc.c
+++ b/drivers/staging/comedi/drivers/ni_labpc.c
@@ -1661,20 +1661,16 @@ int labpc_common_attach(struct comedi_device *dev, unsigned long iobase,
 		devpriv->write_byte(devpriv->cmd6, dev->iobase + CMD6_REG);
 	}
 
-	/* grab our IRQ */
 	if (irq) {
 		isr_flags = 0;
 		if (board->bustype == pci_bustype ||
 		    board->bustype == pcmcia_bustype)
 			isr_flags |= IRQF_SHARED;
-		if (request_irq(irq, labpc_interrupt, isr_flags,
-				dev->board_name, dev)) {
-			dev_err(dev->class_dev, "unable to allocate irq %u\n",
-				irq);
-			return -EINVAL;
-		}
+		ret = request_irq(irq, labpc_interrupt, isr_flags,
+				  dev->board_name, dev);
+		if (ret == 0)
+			dev->irq = irq;
 	}
-	dev->irq = irq;
 
 #ifdef CONFIG_ISA_DMA_API
 	/* grab dma channel */
-- 
1.8.1.4




More information about the devel mailing list