[PATCH 9/9] staging: comedi: ni_usb6501: add counter subdevice
Ian Abbott
abbotti at mev.co.uk
Mon Sep 15 13:24:20 UTC 2014
On 2014-09-15 13:59, Luca Ellero wrote:
> Signed-off-by: Luca Ellero <luca.ellero at brickedbrain.com>
> ---
> drivers/staging/comedi/drivers/ni_usb6501.c | 12 +++++++++++-
> 1 file changed, 11 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/staging/comedi/drivers/ni_usb6501.c b/drivers/staging/comedi/drivers/ni_usb6501.c
> index c33d857..711d349 100644
> --- a/drivers/staging/comedi/drivers/ni_usb6501.c
> +++ b/drivers/staging/comedi/drivers/ni_usb6501.c
> @@ -576,7 +576,7 @@ static int ni6501_auto_attach(struct comedi_device *dev,
> sema_init(&devpriv->sem, 1);
> usb_set_intfdata(intf, devpriv);
>
> - ret = comedi_alloc_subdevices(dev, 1);
> + ret = comedi_alloc_subdevices(dev, 2);
> if (ret)
> return ret;
>
> @@ -590,6 +590,16 @@ static int ni6501_auto_attach(struct comedi_device *dev,
> s->insn_bits = ni6501_dio_insn_bits;
> s->insn_config = ni6501_dio_insn_config;
>
> + /* Counter subdevice */
> + s = &dev->subdevices[1];
> + s->type = COMEDI_SUBD_COUNTER;
> + s->subdev_flags = SDF_READABLE | SDF_WRITEABLE;
You could OR in the SDF_LSAMPL flag to indicate that the subdevice uses
the larger (32-bit) comedi sample size. The flag is only really
relevant for comedi asynchronous command support, so is not that
important here.
> + s->n_chan = 1;
> + s->maxdata = 0xffffffff;
> + s->insn_read = ni6501_cnt_insn_read;
> + s->insn_write = ni6501_cnt_insn_write;
> + s->insn_config = ni6501_cnt_insn_config;
> +
> return 0;
> }
>
>
--
-=( Ian Abbott @ MEV Ltd. E-mail: <abbotti at mev.co.uk> )=-
-=( Tel: +44 (0)161 477 1898 FAX: +44 (0)161 718 3587 )=-
More information about the devel
mailing list