aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/comedi/drivers/addi_apci_3120.c
diff options
context:
space:
mode:
authorH Hartley Sweeten <hsweeten@visionengravers.com>2014-11-04 10:54:55 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-11-07 09:34:03 -0800
commit1022f64e7548a3bede7c671c6d52592f05954bd5 (patch)
tree5f7f6b9df53ff8db485e589200ce8c1406c1f267 /drivers/staging/comedi/drivers/addi_apci_3120.c
parentstaging: comedi: addi_apci_3120: reset fifo after programming chanlist (diff)
downloadlinux-dev-1022f64e7548a3bede7c671c6d52592f05954bd5.tar.xz
linux-dev-1022f64e7548a3bede7c671c6d52592f05954bd5.zip
staging: comedi: addi_apci_3120: set scan length/start after programming chanlist
The APCI-3120 documentation says that the PR/PA bits should be set after the chanlist sequence is programmed. 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>
Diffstat (limited to 'drivers/staging/comedi/drivers/addi_apci_3120.c')
-rw-r--r--drivers/staging/comedi/drivers/addi_apci_3120.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/staging/comedi/drivers/addi_apci_3120.c b/drivers/staging/comedi/drivers/addi_apci_3120.c
index 77499b473bb4..f258ceb144fb 100644
--- a/drivers/staging/comedi/drivers/addi_apci_3120.c
+++ b/drivers/staging/comedi/drivers/addi_apci_3120.c
@@ -286,10 +286,6 @@ static void apci3120_set_chanlist(struct comedi_device *dev,
struct apci3120_private *devpriv = dev->private;
int i;
- /* set scan length (PR) and scan start (PA) */
- devpriv->ctrl = APCI3120_CTRL_PR(n_chan - 1) | APCI3120_CTRL_PA(0);
- outw(devpriv->ctrl, dev->iobase + APCI3120_CTRL_REG);
-
/* set chanlist for scan */
for (i = 0; i < n_chan; i++) {
unsigned int chan = CR_CHAN(chanlist[i]);
@@ -307,6 +303,10 @@ static void apci3120_set_chanlist(struct comedi_device *dev,
}
apci3120_ai_reset_fifo(dev);
+
+ /* set scan length (PR) and scan start (PA) */
+ devpriv->ctrl = APCI3120_CTRL_PR(n_chan - 1) | APCI3120_CTRL_PA(0);
+ outw(devpriv->ctrl, dev->iobase + APCI3120_CTRL_REG);
}
#include "addi-data/hwdrv_apci3120.c"