Commit b3b7dab7 authored by H Hartley Sweeten's avatar H Hartley Sweeten Committed by Greg Kroah-Hartman

staging: comedi: addi_apci_2032: move i_APCI2032_ConfigDigitalOutput()

For aesthetic reasons, move this function.

This function has nothing to do with the digital outputs. It's used
to enable the interrupt sources that the board can generate.
Signed-off-by: default avatarH Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 7c7c42cd
......@@ -60,35 +60,6 @@ struct apci2032_private {
unsigned int wdog_ctrl;
};
static int i_APCI2032_ConfigDigitalOutput(struct comedi_device *dev,
struct comedi_subdevice *s,
struct comedi_insn *insn,
unsigned int *data)
{
unsigned int ul_Command = 0;
if ((data[0] != 0) && (data[0] != 1)) {
comedi_error(dev,
"Not a valid Data !!! ,Data should be 1 or 0\n");
return -EINVAL;
}
if (data[1] == 1)
ul_Command |= APCI2032_INT_CTRL_VCC_ENA;
else
ul_Command &= ~APCI2032_INT_CTRL_VCC_ENA;
if (data[2] == 1)
ul_Command |= APCI2032_INT_CTRL_CC_ENA;
else
ul_Command &= ~APCI2032_INT_CTRL_CC_ENA;
outl(ul_Command, dev->iobase + APCI2032_INT_CTRL_REG);
ui_InterruptData = inl(dev->iobase + APCI2032_INT_CTRL_REG);
return insn->n;
}
static int apci2032_do_insn_bits(struct comedi_device *dev,
struct comedi_subdevice *s,
struct comedi_insn *insn,
......@@ -185,6 +156,35 @@ static int apci2032_wdog_insn_read(struct comedi_device *dev,
return insn->n;
}
static int i_APCI2032_ConfigDigitalOutput(struct comedi_device *dev,
struct comedi_subdevice *s,
struct comedi_insn *insn,
unsigned int *data)
{
unsigned int ul_Command = 0;
if ((data[0] != 0) && (data[0] != 1)) {
comedi_error(dev,
"Not a valid Data !!! ,Data should be 1 or 0\n");
return -EINVAL;
}
if (data[1] == 1)
ul_Command |= APCI2032_INT_CTRL_VCC_ENA;
else
ul_Command &= ~APCI2032_INT_CTRL_VCC_ENA;
if (data[2] == 1)
ul_Command |= APCI2032_INT_CTRL_CC_ENA;
else
ul_Command &= ~APCI2032_INT_CTRL_CC_ENA;
outl(ul_Command, dev->iobase + APCI2032_INT_CTRL_REG);
ui_InterruptData = inl(dev->iobase + APCI2032_INT_CTRL_REG);
return insn->n;
}
static int i_APCI2032_ReadInterruptStatus(struct comedi_device *dev,
struct comedi_subdevice *s,
struct comedi_insn *insn,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment