]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
staging: comedi: usbdux: tidy up usbduxsub_submit_pwm_urbs()
authorH Hartley Sweeten <hsweeten@visionengravers.com>
Wed, 24 Jul 2013 21:13:34 +0000 (14:13 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 25 Jul 2013 20:15:36 +0000 (13:15 -0700)
Pass the comedi_device pointer (the urb context) to this function
instead of the private data pointer.

Use a local variable for the urb pointer that is setup and submitted.

Remove the sanity check of the private data. This function can only
get called if the allocation was successful during the attach.

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/usbdux.c

index 7304ef0e2dedf34a847cb5a5e75857602b5e5b91..ad537ed5fc40184b163cc3d35373fb7b9b974e41 100644 (file)
@@ -1546,25 +1546,20 @@ static void usbduxsub_pwm_irq(struct urb *urb)
        }
 }
 
-static int usbduxsub_submit_pwm_urbs(struct usbdux_private *usbduxsub)
+static int usbduxsub_submit_pwm_urbs(struct comedi_device *dev)
 {
-       int err_flag;
-
-       if (!usbduxsub)
-               return -EFAULT;
+       struct usbdux_private *devpriv = dev->private;
+       struct urb *urb = devpriv->urb_pwm;
 
        /* in case of a resubmission after an unlink... */
-       usb_fill_bulk_urb(usbduxsub->urb_pwm,
-                         usbduxsub->usbdev,
-                         usb_sndbulkpipe(usbduxsub->usbdev, PWM_EP),
-                         usbduxsub->urb_pwm->transfer_buffer,
-                         usbduxsub->size_pwm_buf, usbduxsub_pwm_irq,
-                         usbduxsub->comedidev);
-
-       err_flag = usb_submit_urb(usbduxsub->urb_pwm, GFP_ATOMIC);
-       if (err_flag)
-               return err_flag;
-       return 0;
+       usb_fill_bulk_urb(urb, devpriv->usbdev,
+                         usb_sndbulkpipe(devpriv->usbdev, PWM_EP),
+                         urb->transfer_buffer,
+                         devpriv->size_pwm_buf,
+                         usbduxsub_pwm_irq,
+                         dev);
+
+       return usb_submit_urb(urb, GFP_ATOMIC);
 }
 
 static int usbdux_pwm_period(struct comedi_device *dev,
@@ -1608,7 +1603,7 @@ static int usbdux_pwm_start(struct comedi_device *dev,
                ((char *)(this_usbduxsub->urb_pwm->transfer_buffer))[i] = 0;
 
        this_usbduxsub->pwm_cmd_running = 1;
-       ret = usbduxsub_submit_pwm_urbs(this_usbduxsub);
+       ret = usbduxsub_submit_pwm_urbs(dev);
        if (ret < 0) {
                this_usbduxsub->pwm_cmd_running = 0;
                return ret;