|
@@ -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;
|
|
|
}
|