[PATCH 47/53] staging: comedi: usbdux: tidy up usbdux_pwm_start()

H Hartley Sweeten hsweeten at visionengravers.com
Wed Jul 24 21:24:54 UTC 2013


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 <hsweeten at visionengravers.com>
Cc: Ian Abbott <abbotti at mev.co.uk>
Cc: Greg Kroah-Hartman <gregkh at 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



More information about the devel mailing list