From: H Hartley Sweeten Date: Tue, 26 Mar 2013 22:45:04 +0000 (-0700) Subject: staging: comedi: s626: async commands require an interrupt X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=2281befd94082e788353fc8b094b4297d72181ba;p=deliverable%2Flinux.git staging: comedi: s626: async commands require an interrupt Only hook up the analog input command support if the interrupt is available. Signed-off-by: H Hartley Sweeten Reviewed-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/comedi/drivers/s626.c b/drivers/staging/comedi/drivers/s626.c index 528a40b072ae..4cb2b2d66fb5 100644 --- a/drivers/staging/comedi/drivers/s626.c +++ b/drivers/staging/comedi/drivers/s626.c @@ -2641,7 +2641,6 @@ static int s626_auto_attach(struct comedi_device *dev, s = &dev->subdevices[0]; /* analog input subdevice */ - dev->read_subdev = s; s->type = COMEDI_SUBD_AI; s->subdev_flags = SDF_READABLE | SDF_DIFF | SDF_CMD_READ; s->n_chan = S626_ADC_CHANNELS; @@ -2649,9 +2648,12 @@ static int s626_auto_attach(struct comedi_device *dev, s->range_table = &s626_range_table; s->len_chanlist = S626_ADC_CHANNELS; s->insn_read = s626_ai_insn_read; - s->do_cmd = s626_ai_cmd; - s->do_cmdtest = s626_ai_cmdtest; - s->cancel = s626_ai_cancel; + if (dev->irq) { + dev->read_subdev = s; + s->do_cmd = s626_ai_cmd; + s->do_cmdtest = s626_ai_cmdtest; + s->cancel = s626_ai_cancel; + } s = &dev->subdevices[1]; /* analog output subdevice */