提交 58cd9b91 编写于 作者: H H Hartley Sweeten 提交者: Greg Kroah-Hartman

staging: comedi: ni_labpc: cleanup trigger setting in labpc_ai_cmd()

The (*do_cmdtest) already validated the cmd sources so the default
cases in the switch() statements can never happen.

Preclear to trigger bits and change the switch() statements to simple
if() tests to set the bits.
Signed-off-by: NH Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
上级 83d75eff
...@@ -1054,38 +1054,21 @@ static int labpc_ai_cmd(struct comedi_device *dev, struct comedi_subdevice *s) ...@@ -1054,38 +1054,21 @@ static int labpc_ai_cmd(struct comedi_device *dev, struct comedi_subdevice *s)
/* startup acquisition */ /* startup acquisition */
/* cmd2 reg */
/* use 2 cascaded counters for pacing */
spin_lock_irqsave(&dev->spinlock, flags); spin_lock_irqsave(&dev->spinlock, flags);
/* use 2 cascaded counters for pacing */
devpriv->cmd2 |= CMD2_TBSEL; devpriv->cmd2 |= CMD2_TBSEL;
switch (cmd->start_src) {
case TRIG_EXT: devpriv->cmd2 &= ~(CMD2_SWTRIG | CMD2_HWTRIG | CMD2_PRETRIG);
if (cmd->start_src == TRIG_EXT)
devpriv->cmd2 |= CMD2_HWTRIG; devpriv->cmd2 |= CMD2_HWTRIG;
devpriv->cmd2 &= ~(CMD2_PRETRIG | CMD2_SWTRIG); else
break;
case TRIG_NOW:
devpriv->cmd2 |= CMD2_SWTRIG; devpriv->cmd2 |= CMD2_SWTRIG;
devpriv->cmd2 &= ~(CMD2_PRETRIG | CMD2_HWTRIG); if (cmd->stop_src == TRIG_EXT)
break;
default:
comedi_error(dev, "bug with start_src");
spin_unlock_irqrestore(&dev->spinlock, flags);
return -1;
break;
}
switch (cmd->stop_src) {
case TRIG_EXT:
devpriv->cmd2 |= (CMD2_HWTRIG | CMD2_PRETRIG); devpriv->cmd2 |= (CMD2_HWTRIG | CMD2_PRETRIG);
break;
case TRIG_COUNT:
case TRIG_NONE:
break;
default:
comedi_error(dev, "bug with stop_src");
spin_unlock_irqrestore(&dev->spinlock, flags);
return -1;
}
devpriv->write_byte(devpriv->cmd2, dev->iobase + CMD2_REG); devpriv->write_byte(devpriv->cmd2, dev->iobase + CMD2_REG);
spin_unlock_irqrestore(&dev->spinlock, flags); spin_unlock_irqrestore(&dev->spinlock, flags);
return 0; return 0;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册