aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/staging/comedi/drivers/addi_apci_3xxx.c23
1 files changed, 11 insertions, 12 deletions
diff --git a/drivers/staging/comedi/drivers/addi_apci_3xxx.c b/drivers/staging/comedi/drivers/addi_apci_3xxx.c
index 1a7b136704e0..394d4105a4b2 100644
--- a/drivers/staging/comedi/drivers/addi_apci_3xxx.c
+++ b/drivers/staging/comedi/drivers/addi_apci_3xxx.c
@@ -596,20 +596,19 @@ static int apci3xxx_auto_attach(struct comedi_device *dev,
s = &dev->subdevices[4];
s->type = COMEDI_SUBD_UNUSED;
- /* Allocate and Initialise TTL */
+ /* TTL Digital I/O subdevice */
s = &dev->subdevices[5];
if (board->has_ttl_io) {
- s->type = COMEDI_SUBD_DIO;
- s->subdev_flags =
- SDF_WRITEABLE | SDF_READABLE | SDF_GROUND | SDF_COMMON;
- s->n_chan = 24;
- s->maxdata = 1;
- s->io_bits = 0; /* all bits input */
- s->range_table = &range_digital;
- s->insn_config = i_APCI3XXX_InsnConfigInitTTLIO;
- s->insn_bits = i_APCI3XXX_InsnBitsTTLIO;
- s->insn_read = i_APCI3XXX_InsnReadTTLIO;
- s->insn_write = i_APCI3XXX_InsnWriteTTLIO;
+ s->type = COMEDI_SUBD_DIO;
+ s->subdev_flags = SDF_READABLE | SDF_WRITEABLE;
+ s->n_chan = 24;
+ s->maxdata = 1;
+ s->io_bits = 0xff; /* channels 0-7 are always outputs */
+ s->range_table = &range_digital;
+ s->insn_config = i_APCI3XXX_InsnConfigInitTTLIO;
+ s->insn_bits = i_APCI3XXX_InsnBitsTTLIO;
+ s->insn_read = i_APCI3XXX_InsnReadTTLIO;
+ s->insn_write = i_APCI3XXX_InsnWriteTTLIO;
} else {
s->type = COMEDI_SUBD_UNUSED;
}