[media] gspca-stv06xx: Simplify stv_init struct and vv6410 bridge init
authorErik Andrén <erik.andren@gmail.com>
Wed, 27 Jul 2011 20:19:58 +0000 (17:19 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Sun, 31 Jul 2011 03:50:20 +0000 (00:50 -0300)
Signed-off-by: Erik Andrén <erik.andren@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/gspca/stv06xx/stv06xx_vv6410.c
drivers/media/video/gspca/stv06xx/stv06xx_vv6410.h

index f8398434c328c3659a30b73c1ae1bb80a0620435..51b66590c7fa200118a9240f62d167d87ab50bfc 100644 (file)
@@ -138,18 +138,7 @@ static int vv6410_init(struct sd *sd)
        s32 *sensor_settings = sd->sensor_priv;
 
        for (i = 0; i < ARRAY_SIZE(stv_bridge_init); i++) {
-               /* if NULL then len contains single value */
-               if (stv_bridge_init[i].data == NULL) {
-                       err = stv06xx_write_bridge(sd,
-                               stv_bridge_init[i].start,
-                               stv_bridge_init[i].len);
-               } else {
-                       int j;
-                       for (j = 0; j < stv_bridge_init[i].len; j++)
-                               err = stv06xx_write_bridge(sd,
-                                       stv_bridge_init[i].start + j,
-                                       stv_bridge_init[i].data[j]);
-               }
+               stv06xx_write_bridge(sd, stv_bridge_init[i].addr, stv_bridge_init[i].data);
        }
 
        if (err < 0)
index c7615c218c31d1534bcd32225fea3797bef388be..f75c3364a376adbed35d26f62aa2bada4566c967 100644 (file)
@@ -211,28 +211,27 @@ const struct stv06xx_sensor stv06xx_sensor_vv6410 = {
 
 /* If NULL, only single value to write, stored in len */
 struct stv_init {
-       const u8 *data;
-       u16 start;
-       u8 len;
+       u16 addr;
+       u8 data;
 };
 
 static const struct stv_init stv_bridge_init[] = {
        /* This reg is written twice. Some kind of reset? */
-       {NULL, STV_RESET, 0x80},
-       {NULL, STV_RESET, 0x00},
-       {NULL, STV_SCAN_RATE, 0x00},
-       {NULL, STV_I2C_FLUSH, 0x04},
-       {NULL, STV_REG00, 0x0b},
-       {NULL, STV_REG01, 0xa7},
-       {NULL, STV_REG02, 0xb7},
-       {NULL, STV_REG03, 0x00},
-       {NULL, STV_REG04, 0x00},
-       {NULL, 0x1536, 0x02},
-       {NULL, 0x1537, 0x00},
-       {NULL, 0x1538, 0x60},
-       {NULL, 0x1539, 0x01},
-       {NULL, 0x153a, 0x20},
-       {NULL, 0x153b, 0x01},
+       {STV_RESET, 0x80},
+       {STV_RESET, 0x00},
+       {STV_SCAN_RATE, 0x00},
+       {STV_I2C_FLUSH, 0x04},
+       {STV_REG00, 0x0b},
+       {STV_REG01, 0xa7},
+       {STV_REG02, 0xb7},
+       {STV_REG03, 0x00},
+       {STV_REG04, 0x00},
+       {0x1536, 0x02},
+       {0x1537, 0x00},
+       {0x1538, 0x60},
+       {0x1539, 0x01},
+       {0x153a, 0x20},
+       {0x153b, 0x01},
 };
 
 static const u8 vv6410_sensor_init[][2] = {