The maximum chanlist that this hardware can handle is 16 (the number of input channels). Remove this incorrect data from the boardinfo and just initialize the subdevice 'len_chanlist' to subdevice 'n_chan'. Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx> Cc: Ian Abbott <abbotti@xxxxxxxxx> Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- drivers/staging/comedi/drivers/pcl816.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/drivers/staging/comedi/drivers/pcl816.c b/drivers/staging/comedi/drivers/pcl816.c index 70f5c78..a62e8e4 100644 --- a/drivers/staging/comedi/drivers/pcl816.c +++ b/drivers/staging/comedi/drivers/pcl816.c @@ -98,7 +98,6 @@ struct pcl816_board { unsigned int IRQbits; int ai_maxdata; int ao_maxdata; - int ai_chanlist; }; static const struct pcl816_board boardtypes[] = { @@ -110,7 +109,6 @@ static const struct pcl816_board boardtypes[] = { .IRQbits = 0x00fc, .ai_maxdata = 0xffff, .ao_maxdata = 0xffff, - .ai_chanlist = 1024, }, { .name = "pcl814b", .ai_ns_min = 10000, @@ -119,7 +117,6 @@ static const struct pcl816_board boardtypes[] = { .IRQbits = 0x00fc, .ai_maxdata = 0x3fff, .ao_maxdata = 0x3fff, - .ai_chanlist = 1024, }, }; @@ -927,7 +924,7 @@ static int pcl816_attach(struct comedi_device *dev, struct comedi_devconfig *it) if (dev->irq) { dev->read_subdev = s; s->subdev_flags |= SDF_CMD_READ; - s->len_chanlist = board->ai_chanlist; + s->len_chanlist = s->n_chan; s->do_cmdtest = pcl816_ai_cmdtest; s->do_cmd = pcl816_ai_cmd; s->poll = pcl816_ai_poll; -- 1.8.5.2 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel