staging: comedi: adl_pci9111: use cfc_handle_events()
authorH Hartley Sweeten <hsweeten@visionengravers.com>
Sat, 8 Mar 2014 00:31:28 +0000 (17:31 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 17 Mar 2014 20:55:54 +0000 (13:55 -0700)
Use the comedi_fc helper function to automatically call the subdevice
(*cancel) function when needed and call comedi_event().

In the Kconfig, COMEDI_ADL_PCI9111 already selects COMEDI_FC.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/comedi/drivers/adl_pci9111.c

index 80a0560fa6a87e964817120989f06d38cac43c14..a29ceacb966ddb0796ded16bbf33c607b9c248c0 100644 (file)
@@ -592,9 +592,8 @@ static irqreturn_t pci9111_interrupt(int irq, void *p_device)
                        spin_unlock_irqrestore(&dev->spinlock, irq_flags);
                        comedi_error(dev, PCI9111_DRIVER_NAME " fifo overflow");
                        outb(0, dev->iobase + PCI9111_INT_CLR_REG);
-                       pci9111_ai_cancel(dev, s);
                        async->events |= COMEDI_CB_ERROR | COMEDI_CB_EOA;
-                       comedi_event(dev, s);
+                       cfc_handle_events(dev, s);
 
                        return IRQ_HANDLED;
                }
@@ -672,16 +671,14 @@ static irqreturn_t pci9111_interrupt(int irq, void *p_device)
                }
        }
 
-       if ((dev_private->stop_counter == 0) && (!dev_private->stop_is_none)) {
+       if (dev_private->stop_counter == 0 && !dev_private->stop_is_none)
                async->events |= COMEDI_CB_EOA;
-               pci9111_ai_cancel(dev, s);
-       }
 
        outb(0, dev->iobase + PCI9111_INT_CLR_REG);
 
        spin_unlock_irqrestore(&dev->spinlock, irq_flags);
 
-       comedi_event(dev, s);
+       cfc_handle_events(dev, s);
 
        return IRQ_HANDLED;
 }