From 21f1801fcbb970ed46ad4cd90585cec3b69e23cc Mon Sep 17 00:00:00 2001 From: H Hartley Sweeten Date: Wed, 7 Jan 2015 17:19:30 -0700 Subject: [PATCH] staging: comedi: aio_iiro_16: read intial state of the digital outputs The relay registers are readable. Read them during the attach to get the initial state of the digital outputs. Signed-off-by: H Hartley Sweeten Reviewed-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman --- drivers/staging/comedi/drivers/aio_iiro_16.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/staging/comedi/drivers/aio_iiro_16.c b/drivers/staging/comedi/drivers/aio_iiro_16.c index 96ea174..8cd5f11 100644 --- a/drivers/staging/comedi/drivers/aio_iiro_16.c +++ b/drivers/staging/comedi/drivers/aio_iiro_16.c @@ -85,6 +85,10 @@ static int aio_iiro_16_attach(struct comedi_device *dev, s->range_table = &range_digital; s->insn_bits = aio_iiro_16_do_insn_bits; + /* get the initial state of the relays */ + s->state = inb(dev->iobase + AIO_IIRO_16_RELAY_0_7) | + (inb(dev->iobase + AIO_IIRO_16_RELAY_8_15) << 8); + /* Digital Input subdevice */ s = &dev->subdevices[1]; s->type = COMEDI_SUBD_DI; -- 2.7.4