From: H Hartley Sweeten Date: Sat, 8 Mar 2014 00:31:28 +0000 (-0700) Subject: staging: comedi: adl_pci9111: use cfc_handle_events() X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=0056f548138cf863704f675ddd42aa2a01d56b1b;p=deliverable%2Flinux.git staging: comedi: adl_pci9111: use cfc_handle_events() 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 Reviewed-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/comedi/drivers/adl_pci9111.c b/drivers/staging/comedi/drivers/adl_pci9111.c index 80a0560fa6a8..a29ceacb966d 100644 --- a/drivers/staging/comedi/drivers/adl_pci9111.c +++ b/drivers/staging/comedi/drivers/adl_pci9111.c @@ -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; }