/* startup acquisition */
- /* cmd2 reg */
- /* use 2 cascaded counters for pacing */
spin_lock_irqsave(&dev->spinlock, flags);
+
+ /* use 2 cascaded counters for pacing */
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_PRETRIG | CMD2_SWTRIG);
- break;
- case TRIG_NOW:
+ else
devpriv->cmd2 |= CMD2_SWTRIG;
- devpriv->cmd2 &= ~(CMD2_PRETRIG | CMD2_HWTRIG);
- 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:
+ if (cmd->stop_src == TRIG_EXT)
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);
+
spin_unlock_irqrestore(&dev->spinlock, flags);
return 0;