Rename the local variable used for the private data pointer to the
comedi "norm".

Use memset() to initialize the urb transfer_buffer.

Set the pwm_cmd_running after submitting the pwm urbs so we don't have
to clear it if the submit fails.

Signed-off-by: H Hartley Sweeten <hswee...@visionengravers.com>
Cc: Ian Abbott <abbo...@mev.co.uk>
Cc: Greg Kroah-Hartman <gre...@linuxfondation.org>
---
 drivers/staging/comedi/drivers/usbdux.c | 21 ++++++++-------------
 1 file changed, 8 insertions(+), 13 deletions(-)

diff --git a/drivers/staging/comedi/drivers/usbdux.c 
b/drivers/staging/comedi/drivers/usbdux.c
index 2bfb1b4..7181bc3 100644
--- a/drivers/staging/comedi/drivers/usbdux.c
+++ b/drivers/staging/comedi/drivers/usbdux.c
@@ -1538,33 +1538,28 @@ static int usbdux_pwm_period(struct comedi_device *dev,
        return 0;
 }
 
-/* is called from insn so there's no need to do all the sanity checks */
 static int usbdux_pwm_start(struct comedi_device *dev,
                            struct comedi_subdevice *s)
 {
-       int ret, i;
-       struct usbdux_private *this_usbduxsub = dev->private;
+       struct usbdux_private *devpriv = dev->private;
+       int ret;
 
-       if (this_usbduxsub->pwm_cmd_running) {
-               /* already running */
+       if (devpriv->pwm_cmd_running)
                return 0;
-       }
 
-       this_usbduxsub->dux_commands[1] = ((int8_t) this_usbduxsub->pwn_delay);
+       devpriv->dux_commands[1] = devpriv->pwn_delay;
        ret = send_dux_commands(dev, SENDPWMON);
        if (ret < 0)
                return ret;
 
        /* initialise the buffer */
-       for (i = 0; i < this_usbduxsub->size_pwm_buf; i++)
-               ((char *)(this_usbduxsub->urb_pwm->transfer_buffer))[i] = 0;
+       memset(devpriv->urb_pwm->transfer_buffer, 0, devpriv->size_pwm_buf);
 
-       this_usbduxsub->pwm_cmd_running = 1;
        ret = usbduxsub_submit_pwm_urbs(dev);
-       if (ret < 0) {
-               this_usbduxsub->pwm_cmd_running = 0;
+       if (ret < 0)
                return ret;
-       }
+       devpriv->pwm_cmd_running = 1;
+
        return 0;
 }
 
-- 
1.8.3.2

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to