staging: comedi: addi_apci_1516: fix i_APCI1516_ReadWatchdog()
authorH Hartley Sweeten <hartleys@visionengravers.com>
Tue, 13 Nov 2012 20:46:52 +0000 (13:46 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 13 Nov 2012 23:12:55 +0000 (15:12 -0800)
This function is used by the watchdog subdevice to read the status of
the watchdog. Rename the CamelCase function to apci1516_wdog_insn_read
and fix the function to return the status value insn->n times like
the comedi core expects.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/comedi/drivers/addi_apci_1516.c

index 66207a197a4854c361f0eb547dcecc03a045b37a..49b2f5c996cf3d02cd91a821b9fd4c6babc15c68 100644 (file)
@@ -169,14 +169,17 @@ static int i_APCI1516_StartStopWriteWatchdog(struct comedi_device *dev,
        return insn->n;
 }
 
-static int i_APCI1516_ReadWatchdog(struct comedi_device *dev,
+static int apci1516_wdog_insn_read(struct comedi_device *dev,
                                   struct comedi_subdevice *s,
                                   struct comedi_insn *insn,
                                   unsigned int *data)
 {
        struct apci1516_private *devpriv = dev->private;
+       int i;
+
+       for (i = 0; i < insn->n; i++)
+               data[i] = inw(devpriv->wdog_iobase + APCI1516_WDOG_STATUS_REG);
 
-       data[0] = inw(devpriv->wdog_iobase + APCI1516_WDOG_STATUS_REG) & 0x1;
        return insn->n;
 }
 
@@ -275,7 +278,7 @@ static int __devinit apci1516_auto_attach(struct comedi_device *dev,
                s->maxdata      = 0;
                s->range_table  = &range_digital;
                s->insn_write   = i_APCI1516_StartStopWriteWatchdog;
-               s->insn_read    = i_APCI1516_ReadWatchdog;
+               s->insn_read    = apci1516_wdog_insn_read;
                s->insn_config  = i_APCI1516_ConfigWatchdog;
        } else {
                s->type         = COMEDI_SUBD_UNUSED;