staging: comedi: pcl730: add support for Diamond Systems PC/104 modules

The Diamond Systems OPMM-1616-XT board is a PC/104 module with 16
optoisolated inputs and 16 relay outputs.

The PEARL-MM-P board is a PC/104 module with 16 relay outputs.

Both of these boards can be supported by the pcl730 driver.

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:
H Hartley Sweeten 2014-05-06 16:08:56 -07:00 committed by Greg Kroah-Hartman
parent af50b31b21
commit 53030b138e
2 changed files with 48 additions and 10 deletions

View File

@ -160,16 +160,18 @@ config COMEDI_PCL730
Enable support for various simple ISA or PC/104 Digital I/O boards.
These boards all use 8-bit I/O ports.
Advantech PCL-730 isolated - 16 in/16 out ttl - 16 in/16 out
ICP ISO-730 isolated - 16 in/16 out ttl - 16 in/16 out
ADlink ACL-7130 isolated - 16 in/16 out ttl - 16 in/16 out
Advantech PCM-3730 isolated - 8 in/8 out ttl - 16 in/16 out
Advantech PCL-725 isolated - 8 in/8 out
ICP P8R8-DIO isolated - 8 in/8 out
ADlink ACL-7225b isolated - 16 in/16 out
ICP P16R16-DIO isolated - 16 in/16 out
Advantech PCL-733 isolated - 32 in
Advantech PCL-734 isolated - 32 out
Advantech PCL-730 iso - 16 in/16 out ttl - 16 in/16 out
ICP ISO-730 iso - 16 in/16 out ttl - 16 in/16 out
ADlink ACL-7130 iso - 16 in/16 out ttl - 16 in/16 out
Advantech PCM-3730 iso - 8 in/8 out ttl - 16 in/16 out
Advantech PCL-725 iso - 8 in/8 out
ICP P8R8-DIO iso - 8 in/8 out
ADlink ACL-7225b iso - 16 in/16 out
ICP P16R16-DIO iso - 16 in/16 out
Advantech PCL-733 iso - 32 in
Advantech PCL-734 iso - 32 out
Diamond Systems OPMM-1616-XT iso - 16 in/16 out
Diamond Systems PEARL-MM-P iso - 16 out
To compile this driver as a module, choose M here: the module will be
called pcl730.

View File

@ -17,6 +17,8 @@
* (ICP) P16R16-DIO [p16r16dio]
* (Advantech) PCL-733 [pcl733]
* (Advantech) PCL-734 [pcl734]
* (Diamond Systems) OPMM-1616-XT [opmm-1616-xt]
* (Diamond Systems) PEARL-MM-P [prearl-mm-p]
* Author: José Luis Sánchez (jsanchezv@teleline.es)
* Status: untested
*
@ -70,6 +72,27 @@
* BASE+1 Isolated outputs 8-15 (write) or inputs 8-15 (read)
* BASE+2 Isolated outputs 16-23 (write) or inputs 16-23 (read)
* BASE+3 Isolated outputs 24-31 (write) or inputs 24-31 (read)
*
* The opmm-1616-xt board has this register mapping:
*
* BASE+0 Isolated outputs 0-7 (write) (read back)
* BASE+1 Isolated outputs 8-15 (write) (read back)
* BASE+2 Isolated inputs 0-7 (read)
* BASE+3 Isolated inputs 8-15 (read)
*
* These registers are not currently supported:
*
* BASE+2 Relay select register (write)
* BASE+3 Board reset control register (write)
* BASE+4 Interrupt control register (write)
* BASE+4 Change detect 7-0 status register (read)
* BASE+5 LED control register (write)
* BASE+5 Change detect 15-8 status register (read)
*
* The pearl-mm-p board has this register mapping:
*
* BASE+0 Isolated outputs 0-7 (write)
* BASE+1 Isolated outputs 8-15 (write)
*/
struct pcl730_board {
@ -158,6 +181,19 @@ static const struct pcl730_board pcl730_boards[] = {
.io_range = 0x04,
.n_subdevs = 1,
.n_iso_out_chan = 32,
}, {
.name = "opmm-1616-xt",
.io_range = 0x10,
.is_acl7225b = 1,
.has_readback = 1,
.n_subdevs = 2,
.n_iso_out_chan = 16,
.n_iso_in_chan = 16,
}, {
.name = "pearl-mm-p",
.io_range = 0x02,
.n_subdevs = 1,
.n_iso_out_chan = 16,
},
};