V4L/DVB (10517): em28xx: remove bad check (changeset a31c595188af)
authorDouglas Schilling Landgraf <dougsland@redhat.com>
Sun, 8 Feb 2009 13:45:34 +0000 (10:45 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Mon, 30 Mar 2009 15:42:44 +0000 (12:42 -0300)
Removed bad check. Thanks to Robert Krakora <rob.krakora@messagenetsystems.com>
to report that.

Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/em28xx/em28xx-audio.c

index 43e8d7d91a961381ac2842349b7d38fcd760a780..7a62c77b84858776e41199ba9b7f37de8f63fcf6 100644 (file)
@@ -61,7 +61,7 @@ static int em28xx_isoc_audio_deinit(struct em28xx *dev)
        int i;
 
        dprintk("Stopping isoc\n");
-       for (i = 0; i < dev->isoc_ctl.num_bufs; i++) {
+       for (i = 0; i < EM28XX_AUDIO_BUFS; i++) {
                if (!irqs_disabled())
                        usb_kill_urb(dev->adev.urb[i]);
                else
@@ -73,7 +73,6 @@ static int em28xx_isoc_audio_deinit(struct em28xx *dev)
                dev->adev.transfer_buffer[i] = NULL;
        }
 
-       dev->isoc_ctl.num_bufs = 0;
        return 0;
 }
 
@@ -157,8 +156,6 @@ static int em28xx_init_audio_isoc(struct em28xx *dev)
 
        dprintk("Starting isoc transfers\n");
 
-       dev->isoc_ctl.num_bufs = 0;
-
        for (i = 0; i < EM28XX_AUDIO_BUFS; i++) {
                struct urb *urb;
                int j, k;
@@ -200,19 +197,10 @@ static int em28xx_init_audio_isoc(struct em28xx *dev)
        for (i = 0; i < EM28XX_AUDIO_BUFS; i++) {
                errCode = usb_submit_urb(dev->adev.urb[i], GFP_ATOMIC);
                if (errCode) {
-                       if (dev->isoc_ctl.num_bufs == 0) {
-                               usb_free_urb(dev->adev.urb[i]);
-                               dev->adev.urb[i] = NULL;
-                               kfree(dev->adev.transfer_buffer[i]);
-                               dev->adev.transfer_buffer[i] = NULL;
-                       } else
-                               em28xx_isoc_audio_deinit(dev);
+                       em28xx_isoc_audio_deinit(dev);
 
                        return errCode;
                }
-               mutex_lock(&dev->lock);
-               dev->isoc_ctl.num_bufs++;
-               mutex_unlock(&dev->lock);
        }
 
        return 0;