Commit 32fa46b9 authored by H Hartley Sweeten's avatar H Hartley Sweeten Committed by Greg Kroah-Hartman
Browse files

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: default avatarH Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent cb8c0034
Loading
Loading
Loading
Loading
+7 −33
Original line number Diff line number Diff line
@@ -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) {
	/* stop aquistion */
	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;
	if (do_unlink && devpriv->urb) {
		/* kill the running transfer */
		usb_kill_urb(devpriv->urb);
	}

	devpriv->ai_cmd_running = 0;

	if (do_unlink)
		/* stop aquistion */
		ret = usbduxfast_unlink_urbs(dev);

	return ret;
	return 0;
}

/*