mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-12 18:35:35 -04:00
staging: comedi: addi_apci_3120: move apci3120_set_chanlist() to driver source
Move this function from the included hwdrv_apci31210.c source file to the main driver source file. 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>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
0a3e518102
commit
169f35e82c
@@ -96,34 +96,6 @@ This program is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||
|
||||
#define APCI3120_COUNTER 3
|
||||
|
||||
static void apci3120_set_chanlist(struct comedi_device *dev,
|
||||
struct comedi_subdevice *s,
|
||||
int n_chan, unsigned int *chanlist)
|
||||
{
|
||||
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]);
|
||||
unsigned int range = CR_RANGE(chanlist[i]);
|
||||
unsigned int val;
|
||||
|
||||
val = APCI3120_CHANLIST_MUX(chan) |
|
||||
APCI3120_CHANLIST_GAIN(range) |
|
||||
APCI3120_CHANLIST_INDEX(i);
|
||||
|
||||
if (comedi_range_is_unipolar(s, range))
|
||||
val |= APCI3120_CHANLIST_UNIPOLAR;
|
||||
|
||||
outw(val, dev->iobase + APCI3120_CHANLIST_REG);
|
||||
}
|
||||
}
|
||||
|
||||
static int apci3120_reset(struct comedi_device *dev)
|
||||
{
|
||||
struct apci3120_private *devpriv = dev->private;
|
||||
|
||||
@@ -279,6 +279,34 @@ static void apci3120_ai_reset_fifo(struct comedi_device *dev)
|
||||
inw(dev->iobase + APCI3120_TIMER_MODE_REG);
|
||||
}
|
||||
|
||||
static void apci3120_set_chanlist(struct comedi_device *dev,
|
||||
struct comedi_subdevice *s,
|
||||
int n_chan, unsigned int *chanlist)
|
||||
{
|
||||
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]);
|
||||
unsigned int range = CR_RANGE(chanlist[i]);
|
||||
unsigned int val;
|
||||
|
||||
val = APCI3120_CHANLIST_MUX(chan) |
|
||||
APCI3120_CHANLIST_GAIN(range) |
|
||||
APCI3120_CHANLIST_INDEX(i);
|
||||
|
||||
if (comedi_range_is_unipolar(s, range))
|
||||
val |= APCI3120_CHANLIST_UNIPOLAR;
|
||||
|
||||
outw(val, dev->iobase + APCI3120_CHANLIST_REG);
|
||||
}
|
||||
}
|
||||
|
||||
#include "addi-data/hwdrv_apci3120.c"
|
||||
|
||||
static int apci3120_ai_eoc(struct comedi_device *dev,
|
||||
|
||||
Reference in New Issue
Block a user