]> git.baikalelectronics.ru Git - kernel.git/commit
staging: comedi: ni_65xx: support INSN_CONFIG_DIGITAL_TRIG
authorIan Abbott <abbotti@mev.co.uk>
Wed, 23 Jul 2014 09:41:20 +0000 (10:41 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 24 Jul 2014 22:01:24 +0000 (15:01 -0700)
commitf42bd75a25303c69871e06aa0c67f97978f29c96
treeff227777d8e2649092baca1865ad29631931dbef
parent28c913f83aefcfd2c0ef864bd917b10c5ca6dcee
staging: comedi: ni_65xx: support INSN_CONFIG_DIGITAL_TRIG

The "edge detection interrupt" subdevice supports the
`INSN_CONFIG_CHANGE_NOTIFY` comedi instruction which is only supported
by one other driver.  It is limited to the first 32 channels, but boards
supported by this driver support edge detection on all digital I/O,
digital input and digital output channels.  The
`INSN_CONFIG_DIGITAL_TRIG` comedi instruction is more flexible as it
supports more than 32 channels (with multiple instructions).  It can
also support level detection, but the hardware does not support that.

Add partial support for the `INSN_CONFIG_DIGITAL_TRIG` instruction, but
only for edge detection.

Since `INSN_CONFIG_CHANGE_NOTIFY` can only deal with 32 channels, make
it disable edge detection for any remaining channels.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/comedi/drivers/ni_65xx.c