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

staging: comedi: adl_pci9118: don't reset digital outputs

Currently this driver resets the digital output channels to a low state
when the driver is attached and detached.

Since the digital output state can be read, initialize the subdevice
state when the driver is attached and don't reset them.
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 8df6166b
......@@ -1706,7 +1706,6 @@ static int pci9118_reset(struct comedi_device *dev)
outl(devpriv->ao_data[0], dev->iobase + PCI9118_AO_REG(0));
outl(devpriv->ao_data[1], dev->iobase + PCI9118_AO_REG(1));
outl(0, dev->iobase + PCI9118_DIO_REG); /* reset digi outs to L */
udelay(10);
inl(dev->iobase + PCI9118_AI_FIFO_REG);
pci9118_ai_reset_fifo(dev);
......@@ -1907,6 +1906,9 @@ static int pci9118_common_attach(struct comedi_device *dev, int disable_irq,
s->range_table = &range_digital;
s->insn_bits = pci9118_do_insn_bits;
/* get the current state of the digital outputs */
s->state = inl(dev->iobase + PCI9118_DIO_REG) >> 4;
devpriv->ai_maskharderr = 0x10a;
/* default measure crash condition */
if (hw_err_mask) /* disable some requested */
......
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