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

staging: comedi: vmk80xx: tidy up vmk80xx_cnt_insn_config()

Tidy up this (*insn_config) function to follow the normal format in
comedi drivers.

INSN_CONFIG_RESET instructions do not have any extra parameters (insn->n is
always 1) so the for loop used to write the packet doesn't make any sense.
Remove it and just write the single packet.
Signed-off-by: default avatarH Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: default avatarIan Abbott <abbotti@mev.co.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 8518a52c
...@@ -551,41 +551,35 @@ static int vmk80xx_cnt_insn_config(struct comedi_device *dev, ...@@ -551,41 +551,35 @@ static int vmk80xx_cnt_insn_config(struct comedi_device *dev,
unsigned int *data) unsigned int *data)
{ {
struct vmk80xx_private *devpriv = dev->private; struct vmk80xx_private *devpriv = dev->private;
unsigned int insn_cmd; unsigned int chan = CR_CHAN(insn->chanspec);
int chan;
int cmd; int cmd;
int reg; int reg;
int n; int ret;
insn_cmd = data[0];
if (insn_cmd != INSN_CONFIG_RESET)
return -EINVAL;
down(&devpriv->limit_sem); down(&devpriv->limit_sem);
switch (data[0]) {
chan = CR_CHAN(insn->chanspec); case INSN_CONFIG_RESET:
if (devpriv->model == VMK8055_MODEL) {
if (devpriv->model == VMK8055_MODEL) { if (!chan) {
if (!chan) { cmd = VMK8055_CMD_RST_CNT1;
cmd = VMK8055_CMD_RST_CNT1; reg = VMK8055_CNT1_REG;
reg = VMK8055_CNT1_REG; } else {
cmd = VMK8055_CMD_RST_CNT2;
reg = VMK8055_CNT2_REG;
}
devpriv->usb_tx_buf[reg] = 0x00;
} else { } else {
cmd = VMK8055_CMD_RST_CNT2; cmd = VMK8061_CMD_RST_CNT;
reg = VMK8055_CNT2_REG;
} }
ret = vmk80xx_write_packet(dev, cmd);
devpriv->usb_tx_buf[reg] = 0x00; break;
} else { default:
cmd = VMK8061_CMD_RST_CNT; ret = -EINVAL;
break;
} }
for (n = 0; n < insn->n; n++)
if (vmk80xx_write_packet(dev, cmd))
break;
up(&devpriv->limit_sem); up(&devpriv->limit_sem);
return n; return ret ? ret : insn->n;
} }
static int vmk80xx_cnt_insn_write(struct comedi_device *dev, static int vmk80xx_cnt_insn_write(struct comedi_device *dev,
......
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