From: H Hartley Sweeten Date: Tue, 30 Jul 2013 00:47:06 +0000 (-0700) Subject: staging: comedi: usbduxsigma: init 'pwm_buf_sz' in usbduxsigma_auto_attach() X-Git-Tag: v3.12-rc1~183^2~397 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1c379e94b38d5e575643212e6890de6a3380e6fe;p=profile%2Fivi%2Fkernel-x86-ivi.git staging: comedi: usbduxsigma: init 'pwm_buf_sz' in usbduxsigma_auto_attach() Initialize this variable with then_ai_urbs and n_ao_urbs in the attach. Then usbduxsigma_alloc_usb_buffers() can just check the variable to determine if the urb needs to be allocated. Signed-off-by: H Hartley Sweeten Reviewed-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/comedi/drivers/usbduxsigma.c b/drivers/staging/comedi/drivers/usbduxsigma.c index df56395..68a3cd2 100644 --- a/drivers/staging/comedi/drivers/usbduxsigma.c +++ b/drivers/staging/comedi/drivers/usbduxsigma.c @@ -1600,19 +1600,16 @@ static int usbduxsigma_alloc_usb_buffers(struct comedi_device *dev) urb->interval = 1; /* frames */ } - if (devpriv->high_speed) { - /* max bulk ep size in high speed */ - devpriv->pwm_buf_sz = 512; + if (devpriv->pwm_buf_sz) { urb = usb_alloc_urb(0, GFP_KERNEL); if (!urb) return -ENOMEM; devpriv->pwm_urb = urb; - urb->transfer_buffer = kzalloc(devpriv->pwm_buf_sz, GFP_KERNEL); + + urb->transfer_buffer = kzalloc(devpriv->pwm_buf_sz, + GFP_KERNEL); if (!urb->transfer_buffer) return -ENOMEM; - } else { - devpriv->pwm_urb = NULL; - devpriv->pwm_buf_sz = 0; } return 0; @@ -1687,9 +1684,11 @@ static int usbduxsigma_auto_attach(struct comedi_device *dev, if (devpriv->high_speed) { devpriv->n_ai_urbs = NUMOFINBUFFERSHIGH; devpriv->n_ao_urbs = NUMOFOUTBUFFERSHIGH; + devpriv->pwm_buf_sz = 512; } else { devpriv->n_ai_urbs = NUMOFINBUFFERSFULL; devpriv->n_ao_urbs = NUMOFOUTBUFFERSFULL; + devpriv->pwm_buf_sz = 0; } ret = usbduxsigma_alloc_usb_buffers(dev);