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 975ee5fc93dc4db14b7d942cea6cfef2368170b1..6b65ce69c213787722c352ea62251a4710db50a2 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 cb2c48522efd81f9e2c4c29a4dc5fe842e9d5150..83c381357c14efb7beb42d448d0f41b10c4718ba 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 e05f4b5444e16bc32534271370a2f3bb3f25aaf5..075df1ccb8530b4eb0ccc3e4c75723833e133cd2 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 2bac69339202cca98f92b781acc64cee08aabc9b..d0ac49eaab063197b0d6dd5be7b9fa31af6f52d9 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 eef646253bf9e5cafa6f230d187c7847992c5b1a..10886070f48c48504a5d46c471bf27c835591a1d 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 a471c3df12b490f63d81227ee5dfa85c2ac2486a..053eed0474904da28188182fcb782c9fbe0f4a93 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 579e6bce529dcedc5dc06b5bd81e38cc3cf7847d..40f5cd03651d497a1a3e3869ef3754de31449a26 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 70ec2f552dfc97e1c7811c5d425ee679cab899b2..3bc9013006a0b9c39e555a4bedb8a43cf861bbbf 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 7b7698c3ccd2166bf20f6164747c60df8776c833..9ee6e0a785785ca7d6ca18ee106359b537876035 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) {