Skip to content

Commit

Permalink
V4L/DVB: gspca - vc032x: Move the first VC0321 settings to sd_init()
Browse files Browse the repository at this point in the history
The first VC0321 settings were done at webcam connection only. They must also
be done on resume after suspend.

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
  • Loading branch information
Jean-François Moine authored and Mauro Carvalho Chehab committed Aug 2, 2010
1 parent 19697b5 commit 76ed0fe
Showing 1 changed file with 12 additions and 13 deletions.
25 changes: 12 additions & 13 deletions drivers/media/video/gspca/vc032x.c
Original file line number Diff line number Diff line change
Expand Up @@ -3415,13 +3415,6 @@ static int sd_config(struct gspca_dev *gspca_dev,
if (sd->sensor == SENSOR_OV7670)
sd->flags |= FL_HFLIP | FL_VFLIP;

if (sd->bridge == BRIDGE_VC0321) {
reg_r(gspca_dev, 0x8a, 0, 3);
reg_w(gspca_dev, 0x87, 0x00, 0x0f0f);

reg_r(gspca_dev, 0x8b, 0, 3);
reg_w(gspca_dev, 0x88, 0x00, 0x0202);
}
return 0;
}

Expand All @@ -3430,12 +3423,18 @@ static int sd_init(struct gspca_dev *gspca_dev)
{
struct sd *sd = (struct sd *) gspca_dev;

if (sd->sensor == SENSOR_POxxxx) {
reg_r(gspca_dev, 0xa1, 0xb300, 1);
if (gspca_dev->usb_buf[0] != 0) {
reg_w(gspca_dev, 0xa0, 0x26, 0xb300);
reg_w(gspca_dev, 0xa0, 0x04, 0xb300);
reg_w(gspca_dev, 0xa0, 0x00, 0xb300);
if (sd->bridge == BRIDGE_VC0321) {
reg_r(gspca_dev, 0x8a, 0, 3);
reg_w(gspca_dev, 0x87, 0x00, 0x0f0f);
reg_r(gspca_dev, 0x8b, 0, 3);
reg_w(gspca_dev, 0x88, 0x00, 0x0202);
if (sd->sensor == SENSOR_POxxxx) {
reg_r(gspca_dev, 0xa1, 0xb300, 1);
if (gspca_dev->usb_buf[0] != 0) {
reg_w(gspca_dev, 0xa0, 0x26, 0xb300);
reg_w(gspca_dev, 0xa0, 0x04, 0xb300);
reg_w(gspca_dev, 0xa0, 0x00, 0xb300);
}
}
}
return gspca_dev->usb_err;
Expand Down

0 comments on commit 76ed0fe

Please sign in to comment.