V4L/DVB (11969): gspca - spca505: Reinitialize the webcam at resume time.
authorJean-Francois Moine <moinejf@free.fr>
Fri, 29 May 2009 07:46:12 +0000 (04:46 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Tue, 16 Jun 2009 22:07:42 +0000 (19:07 -0300)
Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/gspca/spca505.c

index 2acec58..ea8c9fe 100644 (file)
@@ -637,19 +637,19 @@ static int sd_config(struct gspca_dev *gspca_dev,
                cam->nmodes = ARRAY_SIZE(vga_mode) - 1;
        sd->brightness = BRIGHTNESS_DEF;
 
-       if (sd->subtype == Nxultra) {
-               if (write_vector(gspca_dev, spca505b_init_data))
-                       return -EIO;
-       } else {
-               if (write_vector(gspca_dev, spca505_init_data))
-                       return -EIO;
-       }
        return 0;
 }
 
 /* this function is called at probe and resume time */
 static int sd_init(struct gspca_dev *gspca_dev)
 {
+       struct sd *sd = (struct sd *) gspca_dev;
+
+       if (write_vector(gspca_dev,
+                        sd->subtype == Nxultra
+                               ? spca505b_init_data
+                               : spca505_init_data))
+               return -EIO;
        return 0;
 }