staging: comedi: dt282x: fix the ao cmd->start_arg use for TRIG_INT
authorH Hartley Sweeten <hsweeten@visionengravers.com>
Thu, 17 Apr 2014 17:07:59 +0000 (10:07 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 22 Apr 2014 17:21:31 +0000 (10:21 -0700)
This driver only supports a cmd->start_src of TRIG_INT for ao commands. The
cmd->start_arg is trivially validated to be 0. For TRIG_INT source, the
cmd->start_arg is actually the valid trig_num that is passed to the async
(*inttrig) callback.

Refactor the (*inttrig) function so that the cmd->start_arg is used to check
the trig_num instead of the open coded value.

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

index b1154f0641d2054437b8735d8b44050375f236ce..474f52dac15de990fe59cbe8a5fed3986b9ce68d 100644 (file)
@@ -878,12 +878,14 @@ static int dt282x_ao_cmdtest(struct comedi_device *dev,
 }
 
 static int dt282x_ao_inttrig(struct comedi_device *dev,
-                            struct comedi_subdevice *s, unsigned int x)
+                            struct comedi_subdevice *s,
+                            unsigned int trig_num)
 {
        struct dt282x_private *devpriv = dev->private;
+       struct comedi_cmd *cmd = &s->async->cmd;
        int size;
 
-       if (x != 0)
+       if (trig_num != cmd->start_src)
                return -EINVAL;
 
        size = cfc_read_array_from_buffer(s, devpriv->dma[0].buf,