staging: comedi: drivers do not need to reset the async->cur_chan
authorH Hartley Sweeten <hsweeten@visionengravers.com>
Thu, 30 Oct 2014 18:21:54 +0000 (11:21 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 4 Nov 2014 00:30:04 +0000 (16:30 -0800)
The comedi core calls comedi_buf_reset() before starting an async command
(*do_cmd) and after returning a subdevice to an idle state (*cancel).

The drivers do not need to reset the async->cur_chan in those functions.

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/addi-data/hwdrv_apci3120.c
drivers/staging/comedi/drivers/adl_pci9118.c
drivers/staging/comedi/drivers/adv_pci1710.c
drivers/staging/comedi/drivers/ni_atmio16d.c
drivers/staging/comedi/drivers/pcl812.c
drivers/staging/comedi/drivers/pcl816.c
drivers/staging/comedi/drivers/usbdux.c
drivers/staging/comedi/drivers/usbduxfast.c
drivers/staging/comedi/drivers/usbduxsigma.c

index 975ee5f..6b65ce6 100644 (file)
@@ -629,7 +629,6 @@ static int apci3120_cancel(struct comedi_device *dev,
        inb(dev->iobase + APCI3120_RESET_FIFO);
        inw(dev->iobase + APCI3120_RD_STATUS);
        devpriv->ui_AiActualScan = 0;
-       s->async->cur_chan = 0;
        devpriv->ui_DmaActualBuffer = 0;
 
        devpriv->ai_running = 0;
@@ -758,7 +757,6 @@ static int apci3120_cyclic_ai(int mode,
        /* END JK 07.05.04: Comparison between WIN32 and Linux driver */
 
        devpriv->ui_AiActualScan = 0;
-       s->async->cur_chan = 0;
        devpriv->ui_DmaActualBuffer = 0;
 
        /* value for timer2  minus -2 has to be done */
index cb2c485..83c3813 100644 (file)
@@ -575,7 +575,6 @@ static int pci9118_ai_cancel(struct comedi_device *dev,
 
        devpriv->ai_act_scan = 0;
        devpriv->ai_act_dmapos = 0;
-       s->async->cur_chan = 0;
        s->async->inttrig = NULL;
        devpriv->ai_neverending = 0;
        devpriv->dma_actbuf = 0;
@@ -1120,7 +1119,6 @@ static int pci9118_ai_cmd(struct comedi_device *dev, struct comedi_subdevice *s)
 
        devpriv->ai_act_scan = 0;
        devpriv->ai_act_dmapos = 0;
-       s->async->cur_chan = 0;
 
        if (devpriv->usedma) {
                Compute_and_setup_dma(dev, s);
index e05f4b5..075df1c 100644 (file)
@@ -731,7 +731,6 @@ static int pci171x_ai_cancel(struct comedi_device *dev,
        }
 
        devpriv->ai_act_scan = 0;
-       s->async->cur_chan = 0;
 
        return 0;
 }
@@ -931,7 +930,6 @@ static int pci171x_ai_cmd(struct comedi_device *dev, struct comedi_subdevice *s)
        outb(0, dev->iobase + PCI171x_CLRINT);
 
        devpriv->ai_act_scan = 0;
-       s->async->cur_chan = 0;
 
        devpriv->CntrlReg &= Control_CNT0;
        if ((cmd->flags & CMDF_WAKE_EOS) == 0)
index 2bac693..d0ac49e 100644 (file)
@@ -300,7 +300,6 @@ static int atmio16d_ai_cmd(struct comedi_device *dev,
         * It is still uber-experimental */
 
        reset_counters(dev);
-       s->async->cur_chan = 0;
 
        /* check if scanning multiple channels */
        if (cmd->chanlist_len < 2) {
index eef6462..1088607 100644 (file)
@@ -809,7 +809,6 @@ static int pcl812_ai_cmd(struct comedi_device *dev, struct comedi_subdevice *s)
 
        devpriv->ai_act_scan = 0;
        devpriv->ai_poll_ptr = 0;
-       s->async->cur_chan = 0;
 
        /*  don't we want wake up every scan? */
        if (cmd->flags & CMDF_WAKE_EOS) {
index a471c3d..053eed0 100644 (file)
@@ -509,7 +509,6 @@ static int pcl816_ai_cmd(struct comedi_device *dev, struct comedi_subdevice *s)
        udelay(1);
 
        devpriv->ai_act_scan = 0;
-       s->async->cur_chan = 0;
        devpriv->ai_cmd_running = 1;
        devpriv->ai_poll_ptr = 0;
        devpriv->ai_cmd_canceled = 0;
index 579e6bc..40f5cd0 100644 (file)
@@ -698,9 +698,6 @@ static int usbdux_ai_cmd(struct comedi_device *dev, struct comedi_subdevice *s)
        if (devpriv->ai_cmd_running)
                goto ai_cmd_exit;
 
-       /* set current channel of the running acquisition to zero */
-       s->async->cur_chan = 0;
-
        devpriv->dux_commands[1] = len;
        for (i = 0; i < len; ++i) {
                unsigned int chan = CR_CHAN(cmd->chanlist[i]);
@@ -996,9 +993,6 @@ static int usbdux_ao_cmd(struct comedi_device *dev, struct comedi_subdevice *s)
        if (devpriv->ao_cmd_running)
                goto ao_cmd_exit;
 
-       /* set current channel of the running acquisition to zero */
-       s->async->cur_chan = 0;
-
        /* we count in steps of 1ms (125us) */
        /* 125us mode not used yet */
        if (0) {                /* (devpriv->high_speed) */
index 70ec2f5..3bc9013 100644 (file)
@@ -479,8 +479,6 @@ static int usbduxfast_ai_cmd(struct comedi_device *dev,
                up(&devpriv->sem);
                return -EBUSY;
        }
-       /* set current channel of the running acquisition to zero */
-       s->async->cur_chan = 0;
 
        /*
         * ignore the first buffers from the device if there
index 7b7698c..9ee6e0a 100644 (file)
@@ -689,8 +689,6 @@ static int usbduxsigma_ai_cmd(struct comedi_device *dev,
 
        down(&devpriv->sem);
 
-       /* set current channel of the running acquisition to zero */
-       s->async->cur_chan = 0;
        for (i = 0; i < len; i++) {
                unsigned int chan  = CR_CHAN(cmd->chanlist[i]);
 
@@ -988,9 +986,6 @@ static int usbduxsigma_ao_cmd(struct comedi_device *dev,
 
        down(&devpriv->sem);
 
-       /* set current channel of the running acquisition to zero */
-       s->async->cur_chan = 0;
-
        devpriv->ao_counter = devpriv->ao_timer;
 
        if (cmd->start_src == TRIG_NOW) {