Browse Source

staging: comedi: usbduxfast: tidy up usbduxfast_ai_stop()

Remove the devpriv sanity check, all the callers have previously
verified that its valid.

Absorb usbduxfast_unlink_urbs() into this function since it's the
only caller and the only thing it does is call usb_kill_urb().

This function will always succeed so just return 0 and remove the
local variable 'ret'.

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>
H Hartley Sweeten 12 years ago
parent
commit
32fa46b9e9
1 changed files with 7 additions and 33 deletions
  1. 7 33
      drivers/staging/comedi/drivers/usbduxfast.c

+ 7 - 33
drivers/staging/comedi/drivers/usbduxfast.c

@@ -185,45 +185,19 @@ static int usbduxfast_send_cmd(struct comedi_device *dev, int cmd_type)
 	return ret;
 }
 
-/*
- * Stops the data acquision.
- * It should be safe to call this function from any context.
- */
-static int usbduxfast_unlink_urbs(struct comedi_device *dev)
+static int usbduxfast_ai_stop(struct comedi_device *dev, int do_unlink)
 {
 	struct usbduxfast_private *devpriv = dev->private;
 
-	if (devpriv && devpriv->urb) {
-		devpriv->ai_cmd_running = 0;
-		/* waits until a running transfer is over */
-		usb_kill_urb(devpriv->urb);
-	}
-	return 0;
-}
-
-/*
- * This will stop a running acquisition operation.
- * Is called from within this driver from both the
- * interrupt context and from comedi.
- */
-static int usbduxfast_ai_stop(struct comedi_device *dev,
-			      int do_unlink)
-{
-	struct usbduxfast_private *devpriv = dev->private;
-	int ret = 0;
-
-	if (!devpriv) {
-		pr_err("%s: devpriv=NULL!\n", __func__);
-		return -EFAULT;
-	}
-
+	/* stop aquistion */
 	devpriv->ai_cmd_running = 0;
 
-	if (do_unlink)
-		/* stop aquistion */
-		ret = usbduxfast_unlink_urbs(dev);
+	if (do_unlink && devpriv->urb) {
+		/* kill the running transfer */
+		usb_kill_urb(devpriv->urb);
+	}
 
-	return ret;
+	return 0;
 }
 
 /*