The analog input FIFO is reset at the start of every (*insn_read) and (*do_cmd)
operation. It's also reset for the analog input (*cancel).
There's no reason to reset the FIFO if an (*insn_read) times out or after
all the samples have been acquired.
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>
pci9118_ai_start_conv(dev);
ret = comedi_timeout(dev, s, insn, pci9118_ai_eoc, 0);
- if (ret) {
- pci9118_ai_reset_fifo(dev);
+ if (ret)
return ret;
- }
val = inl(dev->iobase + PCI9118_AI_FIFO_REG);
if (s->maxdata == 0xffff)
data[n] = (val >> 4) & 0xfff;
}
- pci9118_ai_reset_fifo(dev);
return n;
-
}
static void interrupt_pci9118_ai_mode4_switch(struct comedi_device *dev)