staging: comedi: adv_pci1710: only init async command members when needed
The 'len_chanlist' and 'cancel' members of the comedi_subdevice are only used with async command support. Only initialize them if the irq was sucessfully requested. Also, only init the dev->read_subdev if we have the irq. 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
19cf54dd39
commit
67fb892cc1
1 changed files with 3 additions and 3 deletions
|
@ -1264,21 +1264,21 @@ static int pci1710_auto_attach(struct comedi_device *dev,
|
|||
|
||||
if (this_board->n_aichan) {
|
||||
s = &dev->subdevices[subdev];
|
||||
dev->read_subdev = s;
|
||||
s->type = COMEDI_SUBD_AI;
|
||||
s->subdev_flags = SDF_READABLE | SDF_COMMON | SDF_GROUND;
|
||||
if (this_board->n_aichand)
|
||||
s->subdev_flags |= SDF_DIFF;
|
||||
s->n_chan = this_board->n_aichan;
|
||||
s->maxdata = this_board->ai_maxdata;
|
||||
s->len_chanlist = this_board->n_aichan;
|
||||
s->range_table = this_board->rangelist_ai;
|
||||
s->cancel = pci171x_ai_cancel;
|
||||
s->insn_read = pci171x_insn_read_ai;
|
||||
if (dev->irq) {
|
||||
dev->read_subdev = s;
|
||||
s->subdev_flags |= SDF_CMD_READ;
|
||||
s->len_chanlist = s->n_chan;
|
||||
s->do_cmdtest = pci171x_ai_cmdtest;
|
||||
s->do_cmd = pci171x_ai_cmd;
|
||||
s->cancel = pci171x_ai_cancel;
|
||||
}
|
||||
devpriv->i8254_osc_base = I8254_OSC_BASE_10MHZ;
|
||||
subdev++;
|
||||
|
|
Loading…
Add table
Reference in a new issue