aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media
diff options
context:
space:
mode:
authorBrian Johnson <brijohn@gmail.com>2009-09-02 12:14:41 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2009-09-12 11:20:13 -0400
commite8b7acc18045afd52c801e196e6a04aefc252795 (patch)
tree41abacb6b499d9f55a8f0fcefd98c9b28c6d0bac /drivers/media
parent58aa68c2fbdc3d025a3aff280935ede66dbcdc3e (diff)
V4L/DVB (12705): gspca - sn9c20x: Add SXGA support to SOI968
Signed-off-by: Brian Johnson <brijohn@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media')
-rw-r--r--drivers/media/video/gspca/sn9c20x.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/drivers/media/video/gspca/sn9c20x.c b/drivers/media/video/gspca/sn9c20x.c
index 20b03a005293..e4a021ae9cca 100644
--- a/drivers/media/video/gspca/sn9c20x.c
+++ b/drivers/media/video/gspca/sn9c20x.c
@@ -2007,6 +2007,7 @@ static int sd_config(struct gspca_dev *gspca_dev,
2007 2007
2008 switch (sd->sensor) { 2008 switch (sd->sensor) {
2009 case SENSOR_OV9650: 2009 case SENSOR_OV9650:
2010 case SENSOR_SOI968:
2010 cam->cam_mode = sxga_mode; 2011 cam->cam_mode = sxga_mode;
2011 cam->nmodes = ARRAY_SIZE(sxga_mode); 2012 cam->nmodes = ARRAY_SIZE(sxga_mode);
2012 break; 2013 break;
@@ -2122,6 +2123,25 @@ static void configure_sensor_output(struct gspca_dev *gspca_dev, int mode)
2122 struct sd *sd = (struct sd *) gspca_dev; 2123 struct sd *sd = (struct sd *) gspca_dev;
2123 u8 value; 2124 u8 value;
2124 switch (sd->sensor) { 2125 switch (sd->sensor) {
2126 case SENSOR_SOI968:
2127 if (mode & MODE_SXGA) {
2128 i2c_w1(gspca_dev, 0x17, 0x1d);
2129 i2c_w1(gspca_dev, 0x18, 0xbd);
2130 i2c_w1(gspca_dev, 0x19, 0x01);
2131 i2c_w1(gspca_dev, 0x1a, 0x81);
2132 i2c_w1(gspca_dev, 0x12, 0x00);
2133 sd->hstart = 140;
2134 sd->vstart = 19;
2135 } else {
2136 i2c_w1(gspca_dev, 0x17, 0x13);
2137 i2c_w1(gspca_dev, 0x18, 0x63);
2138 i2c_w1(gspca_dev, 0x19, 0x01);
2139 i2c_w1(gspca_dev, 0x1a, 0x79);
2140 i2c_w1(gspca_dev, 0x12, 0x40);
2141 sd->hstart = 60;
2142 sd->vstart = 11;
2143 }
2144 break;
2125 case SENSOR_OV9650: 2145 case SENSOR_OV9650:
2126 if (mode & MODE_SXGA) { 2146 if (mode & MODE_SXGA) {
2127 i2c_w1(gspca_dev, 0x17, 0x1b); 2147 i2c_w1(gspca_dev, 0x17, 0x1b);