summaryrefslogtreecommitdiffstats
path: root/drivers/media/video/gspca/ov534.c
diff options
context:
space:
mode:
authorAntonio Ospite2008-12-03 18:01:54 +0100
committerMauro Carvalho Chehab2008-12-30 12:38:53 +0100
commit3adba442246a81aad29cf99ef55500379b7a3669 (patch)
tree821635d442e4af3c5ca1e81024f3d1f95852b58e /drivers/media/video/gspca/ov534.c
parentV4L/DVB (9854): gspca: Add the webcam 0c45:60fe in the gspca documentation. (diff)
downloadkernel-qcow2-linux-3adba442246a81aad29cf99ef55500379b7a3669.tar.gz
kernel-qcow2-linux-3adba442246a81aad29cf99ef55500379b7a3669.tar.xz
kernel-qcow2-linux-3adba442246a81aad29cf99ef55500379b7a3669.zip
V4L/DVB (9855): gspca: Simplify frame rate setting and debug in ov534.
Signed-off-by: Antonio Ospite <ospite@studenti.unina.it> Signed-off-by: Jean-Francois Moine <moinejf@free.fr> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/gspca/ov534.c')
-rw-r--r--drivers/media/video/gspca/ov534.c26
1 files changed, 9 insertions, 17 deletions
diff --git a/drivers/media/video/gspca/ov534.c b/drivers/media/video/gspca/ov534.c
index a574be09bd41..b26faae8d759 100644
--- a/drivers/media/video/gspca/ov534.c
+++ b/drivers/media/video/gspca/ov534.c
@@ -48,7 +48,6 @@ static int frame_rate;
/* specific webcam descriptor */
struct sd {
struct gspca_dev gspca_dev; /* !! must be the first item */
- __u8 frame_rate;
};
/* V4L2 controls supported by the driver */
@@ -358,45 +357,38 @@ static int sd_config(struct gspca_dev *gspca_dev,
/* 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;
- ov534_setup(gspca_dev->dev);
+ int fr;
- if (frame_rate > 0)
- sd->frame_rate = frame_rate;
+ ov534_setup(gspca_dev->dev);
- PDEBUG(D_PROBE, "frame_rate = %d", sd->frame_rate);
+ fr = frame_rate;
- switch (sd->frame_rate) {
+ switch (fr) {
case 50:
sccb_reg_write(gspca_dev->dev, 0x11, 0x01);
- sccb_check_status(gspca_dev->dev);
sccb_reg_write(gspca_dev->dev, 0x0d, 0x41);
- sccb_check_status(gspca_dev->dev);
ov534_reg_verify_write(gspca_dev->dev, 0xe5, 0x02);
break;
case 40:
sccb_reg_write(gspca_dev->dev, 0x11, 0x02);
- sccb_check_status(gspca_dev->dev);
sccb_reg_write(gspca_dev->dev, 0x0d, 0xc1);
- sccb_check_status(gspca_dev->dev);
ov534_reg_verify_write(gspca_dev->dev, 0xe5, 0x04);
break;
- case 30:
+/* case 30: */
default:
+ fr = 30;
sccb_reg_write(gspca_dev->dev, 0x11, 0x04);
- sccb_check_status(gspca_dev->dev);
sccb_reg_write(gspca_dev->dev, 0x0d, 0x81);
- sccb_check_status(gspca_dev->dev);
ov534_reg_verify_write(gspca_dev->dev, 0xe5, 0x02);
break;
case 15:
sccb_reg_write(gspca_dev->dev, 0x11, 0x03);
- sccb_check_status(gspca_dev->dev);
sccb_reg_write(gspca_dev->dev, 0x0d, 0x41);
- sccb_check_status(gspca_dev->dev);
ov534_reg_verify_write(gspca_dev->dev, 0xe5, 0x04);
break;
- };
+ }
+
+ PDEBUG(D_PROBE, "frame_rate: %d", fr);
return 0;
}