Commit 7fb13b54 authored by H Hartley Sweeten's avatar H Hartley Sweeten Committed by Greg Kroah-Hartman

staging: comedi: usbduxsigma: tidy up usbduxsub_pwm_irq()

Rename the local variables to follow the "norm" for comedi drivers.
The comedi_subdevice is not used in this function. Remove that local
variable.

Use dev->class_dev for any dev_{level} messages.

Remove the extra check of 'pwm_cmd_running' before submitting the urb.
This flag was previously checked.
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 990a049d
...@@ -1481,19 +1481,9 @@ static int usbdux_pwm_cancel(struct comedi_device *dev, ...@@ -1481,19 +1481,9 @@ static int usbdux_pwm_cancel(struct comedi_device *dev,
static void usbduxsub_pwm_irq(struct urb *urb) static void usbduxsub_pwm_irq(struct urb *urb)
{ {
struct comedi_device *dev = urb->context;
struct usbduxsub *devpriv = dev->private;
int ret; int ret;
struct usbduxsub *this_usbduxsub;
struct comedi_device *this_comedidev;
struct comedi_subdevice *s;
/* printk(KERN_DEBUG "PWM: IRQ\n"); */
/* the context variable points to the subdevice */
this_comedidev = urb->context;
/* the private structure of the subdevice is struct usbduxsub */
this_usbduxsub = this_comedidev->private;
s = &this_comedidev->subdevices[SUBDEV_DA];
switch (urb->status) { switch (urb->status) {
case 0: case 0:
...@@ -1504,47 +1494,36 @@ static void usbduxsub_pwm_irq(struct urb *urb) ...@@ -1504,47 +1494,36 @@ static void usbduxsub_pwm_irq(struct urb *urb)
case -ENOENT: case -ENOENT:
case -ESHUTDOWN: case -ESHUTDOWN:
case -ECONNABORTED: case -ECONNABORTED:
/* /* happens after an unlink command */
* after an unlink command, unplug, ... etc if (devpriv->pwm_cmd_running)
* no unlink needed here. Already shutting down. usbdux_pwm_stop(devpriv, 0); /* w/o unlink */
*/
if (this_usbduxsub->pwm_cmd_running)
usbdux_pwm_stop(this_usbduxsub, 0);
return; return;
default: default:
/* a real error */ /* a real error */
if (this_usbduxsub->pwm_cmd_running) { if (devpriv->pwm_cmd_running) {
dev_err(&this_usbduxsub->interface->dev, dev_err(dev->class_dev,
"comedi_: Non-zero urb status received in " "%s: non-zero urb status (%d)\n",
"pwm intr context: %d\n", urb->status); __func__, urb->status);
usbdux_pwm_stop(this_usbduxsub, 0); usbdux_pwm_stop(devpriv, 0); /* w/o unlink */
} }
return; return;
} }
/* are we actually running? */ if (!devpriv->pwm_cmd_running)
if (!(this_usbduxsub->pwm_cmd_running))
return; return;
urb->transfer_buffer_length = this_usbduxsub->sizePwmBuf; urb->transfer_buffer_length = devpriv->sizePwmBuf;
urb->dev = this_usbduxsub->usbdev; urb->dev = devpriv->usbdev;
urb->status = 0; urb->status = 0;
if (this_usbduxsub->pwm_cmd_running) { ret = usb_submit_urb(urb, GFP_ATOMIC);
ret = usb_submit_urb(urb, GFP_ATOMIC); if (ret < 0) {
if (ret < 0) { dev_err(dev->class_dev, "%s: urb resubmit failed (%d)\n",
dev_err(&this_usbduxsub->interface->dev, __func__, ret);
"comedi_: pwm urb resubm failed in int-cont. " if (ret == EL2NSYNC)
"ret=%d", ret); dev_err(dev->class_dev,
if (ret == EL2NSYNC) "buggy USB host controller or bug in IRQ handler\n");
dev_err(&this_usbduxsub->interface->dev, usbdux_pwm_stop(devpriv, 0); /* w/o unlink */
"buggy USB host controller or bug in "
"IRQ handling!\n");
/* don't do an unlink here */
usbdux_pwm_stop(this_usbduxsub, 0);
}
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment