]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/media/video/sn9c102/sn9c102_pas106b.c
Pull error-inject into release branch
[linux-2.6-omap-h63xx.git] / drivers / media / video / sn9c102 / sn9c102_pas106b.c
index 8d79a5fae5ded0f6fa2b59cb9dc59edfdce14877..67151964801fa6c59df309c8193aef86961908fe 100644 (file)
 #include "sn9c102_sensor.h"
 
 
-static struct sn9c102_sensor pas106b;
-
-
 static int pas106b_init(struct sn9c102_device* cam)
 {
        int err = 0;
 
-       err += sn9c102_write_reg(cam, 0x00, 0x10);
-       err += sn9c102_write_reg(cam, 0x00, 0x11);
-       err += sn9c102_write_reg(cam, 0x00, 0x14);
-       err += sn9c102_write_reg(cam, 0x20, 0x17);
-       err += sn9c102_write_reg(cam, 0x20, 0x19);
-       err += sn9c102_write_reg(cam, 0x09, 0x18);
+       err = sn9c102_write_const_regs(cam, {0x00, 0x10}, {0x00, 0x11},
+                                      {0x00, 0x14}, {0x20, 0x17},
+                                      {0x20, 0x19}, {0x09, 0x18});
 
        err += sn9c102_i2c_write(cam, 0x02, 0x0c);
        err += sn9c102_i2c_write(cam, 0x05, 0x5a);
@@ -172,7 +166,7 @@ static int pas106b_set_pix_format(struct sn9c102_device* cam,
 static struct sn9c102_sensor pas106b = {
        .name = "PAS106B",
        .maintainer = "Luca Risolia <luca.risolia@studio.unibo.it>",
-       .supported_bridge = BRIDGE_SN9C101 | BRIDGE_SN9C102 | BRIDGE_SN9C103,
+       .supported_bridge = BRIDGE_SN9C101 | BRIDGE_SN9C102,
        .sysfs_ops = SN9C102_I2C_READ | SN9C102_I2C_WRITE,
        .frequency = SN9C102_I2C_400KHZ | SN9C102_I2C_100KHZ,
        .interface = SN9C102_I2C_2WIRES,
@@ -279,16 +273,17 @@ static struct sn9c102_sensor pas106b = {
 
 int sn9c102_probe_pas106b(struct sn9c102_device* cam)
 {
-       int r0 = 0, r1 = 0, err = 0;
+       int r0 = 0, r1 = 0, err;
        unsigned int pid = 0;
 
        /*
           Minimal initialization to enable the I2C communication
           NOTE: do NOT change the values!
        */
-       err += sn9c102_write_reg(cam, 0x01, 0x01); /* sensor power down */
-       err += sn9c102_write_reg(cam, 0x00, 0x01); /* sensor power on */
-       err += sn9c102_write_reg(cam, 0x28, 0x17); /* sensor clock at 24 MHz */
+       err = sn9c102_write_const_regs(cam,
+                                      {0x01, 0x01}, /* sensor power down */
+                                      {0x00, 0x01}, /* sensor power on */
+                                      {0x28, 0x17});/* sensor clock 24 MHz */
        if (err)
                return -EIO;