staging: comedi: das16m1: remove unnecessary ai 'cancel' operations
authorH Hartley Sweeten <hsweeten@visionengravers.com>
Tue, 3 May 2016 19:29:48 +0000 (12:29 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 18 Jun 2016 03:42:21 +0000 (20:42 -0700)
The comedi core will only call the (*insn_read) and (*do_cmd) functions
if the subdevice is not "busy". All async commands are terminated by
a (*cancel) operation which clears the INTE and PACER_MASK bits in the
interrupt control register. These bits are also cleared when the driver
first attaches. There is no need for the (*insn_read) or (*do_cmd) to
duplicate the cancel.

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/das16m1.c

index dcec4e2..ce788ae 100644 (file)
@@ -226,10 +226,6 @@ static int das16m1_cmd_exec(struct comedi_device *dev,
        struct comedi_cmd *cmd = &async->cmd;
        unsigned int byte, i;
 
-       /* disable interrupts and internal pacer */
-       devpriv->control_state &= ~INTE & ~PACER_MASK;
-       outb(devpriv->control_state, dev->iobase + DAS16M1_INTR_CONTROL);
-
        /*  set software count */
        devpriv->adc_count = 0;
 
@@ -313,15 +309,10 @@ static int das16m1_ai_rinsn(struct comedi_device *dev,
                            struct comedi_subdevice *s,
                            struct comedi_insn *insn, unsigned int *data)
 {
-       struct das16m1_private_struct *devpriv = dev->private;
        int ret;
        int n;
        int byte;
 
-       /* disable interrupts and internal pacer */
-       devpriv->control_state &= ~INTE & ~PACER_MASK;
-       outb(devpriv->control_state, dev->iobase + DAS16M1_INTR_CONTROL);
-
        /* setup channel/gain queue */
        outb(0, dev->iobase + DAS16M1_QUEUE_ADDR);
        byte =