mirror of https://gitee.com/openkylin/linux.git
staging: comedi: aio_iiro_16: introduce aio_iiro_enable_irq()
This board supports interrupts on change of state of the digital inputs. Introduce a helper function to enable/disable the interrupt. Use the new helper function to ensure that interrupts are initially disabled during the driver (*attach). 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>
This commit is contained in:
parent
21f1801fcb
commit
ffe1cb9a3e
|
@ -34,6 +34,14 @@
|
|||
#define AIO_IIRO_16_RELAY_8_15 0x04
|
||||
#define AIO_IIRO_16_INPUT_8_15 0x05
|
||||
|
||||
static void aio_iiro_enable_irq(struct comedi_device *dev, bool enable)
|
||||
{
|
||||
if (enable)
|
||||
inb(dev->iobase + AIO_IIRO_16_IRQ);
|
||||
else
|
||||
outb(0, dev->iobase + AIO_IIRO_16_IRQ);
|
||||
}
|
||||
|
||||
static int aio_iiro_16_do_insn_bits(struct comedi_device *dev,
|
||||
struct comedi_subdevice *s,
|
||||
struct comedi_insn *insn,
|
||||
|
@ -72,6 +80,8 @@ static int aio_iiro_16_attach(struct comedi_device *dev,
|
|||
if (ret)
|
||||
return ret;
|
||||
|
||||
aio_iiro_enable_irq(dev, false);
|
||||
|
||||
ret = comedi_alloc_subdevices(dev, 2);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
|
Loading…
Reference in New Issue