V4L/DVB (12280): gspca - sonixj: Remove auto gain/wb/expo for the ov7660 sensor.
authorJean-Francois Moine <moinejf@free.fr>
Wed, 8 Jul 2009 09:33:44 +0000 (06:33 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Sat, 12 Sep 2009 15:17:46 +0000 (12:17 -0300)
Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/gspca/sonixj.c

index d6332ab80669218cdfa1d5b0fdd3a61874be9fc5..3f3e1705ce7ad69c5896253edcd27993125a6829 100644 (file)
@@ -727,13 +727,13 @@ static const u8 ov7660_sensor_init[][8] = {
        {0xa1, 0x21, 0x12, 0x05, 0x00, 0x00, 0x00, 0x10},
                                                /* Outformat = rawRGB */
        {0xa1, 0x21, 0x13, 0xb8, 0x00, 0x00, 0x00, 0x10}, /* init COM8 */
-       {0xd1, 0x21, 0x00, 0x01, 0x74, 0x74, 0x00, 0x10},
+       {0xd1, 0x21, 0x00, 0x01, 0x74, 0x92, 0x00, 0x10},
                                                /* GAIN BLUE RED VREF */
        {0xd1, 0x21, 0x04, 0x00, 0x7d, 0x62, 0x00, 0x10},
                                                /* COM 1 BAVE GEAVE AECHH */
        {0xb1, 0x21, 0x08, 0x83, 0x01, 0x00, 0x00, 0x10}, /* RAVE COM2 */
        {0xd1, 0x21, 0x0c, 0x00, 0x08, 0x04, 0x4f, 0x10}, /* COM 3 4 5 6 */
-       {0xd1, 0x21, 0x10, 0x7f, 0x40, 0x05, 0xff, 0x10},
+       {0xd1, 0x21, 0x10, 0x7f, 0x40, 0x05, 0xf8, 0x10},
                                                /* AECH CLKRC COM7 COM8 */
        {0xc1, 0x21, 0x14, 0x2c, 0x00, 0x02, 0x00, 0x10}, /* COM9 COM10 */
        {0xd1, 0x21, 0x17, 0x10, 0x60, 0x02, 0x7b, 0x10},
@@ -1637,16 +1637,19 @@ static void setfreq(struct gspca_dev *gspca_dev)
        if (gspca_dev->ctrl_dis & (1 << FREQ_IDX))
                return;
        if (sd->sensor == SENSOR_OV7660) {
+               u8 com8;
+
+               com8 = 0xf8;            /* no auto gain/wb/expo */
                switch (sd->freq) {
                case 0: /* Banding filter disabled */
-                       i2c_w1(gspca_dev, 0x13, 0xdf);
+                       i2c_w1(gspca_dev, 0x13, com8 & 0xdf);
                        break;
                case 1: /* 50 hz */
-                       i2c_w1(gspca_dev, 0x13, 0xff);
+                       i2c_w1(gspca_dev, 0x13, com8);
                        i2c_w1(gspca_dev, 0x3b, 0x0a);
                        break;
                case 2: /* 60 hz */
-                       i2c_w1(gspca_dev, 0x13, 0xff);
+                       i2c_w1(gspca_dev, 0x13, com8);
                        i2c_w1(gspca_dev, 0x3b, 0x02);
                        break;
                }