diff options
author | Brian Johnson <brijohn@gmail.com> | 2009-09-03 18:10:15 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2009-09-12 11:20:14 -0400 |
commit | 4d708a5e9e5db74da28965fa00082d8c9323f523 (patch) | |
tree | 29e298bf7fd025b6bc4bf152d9a65384dc25dca2 | |
parent | 13a84fa4de7c050b27f14d39720f8b036cecde24 (diff) |
V4L/DVB (12707): gspca - sn9c20x: Add SXGA support to MT9M111
Signed-off-by: Brian Johnson <brijohn@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r-- | drivers/media/video/gspca/sn9c20x.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/drivers/media/video/gspca/sn9c20x.c b/drivers/media/video/gspca/sn9c20x.c index 5e01b2845754..cdad3db33367 100644 --- a/drivers/media/video/gspca/sn9c20x.c +++ b/drivers/media/video/gspca/sn9c20x.c | |||
@@ -1038,8 +1038,8 @@ static struct i2c_reg_u16 mt9m001_init[] = { | |||
1038 | static struct i2c_reg_u16 mt9m111_init[] = { | 1038 | static struct i2c_reg_u16 mt9m111_init[] = { |
1039 | {0xf0, 0x0000}, {0x0d, 0x0021}, {0x0d, 0x0008}, | 1039 | {0xf0, 0x0000}, {0x0d, 0x0021}, {0x0d, 0x0008}, |
1040 | {0xf0, 0x0001}, {0x3a, 0x4300}, {0x9b, 0x4300}, | 1040 | {0xf0, 0x0001}, {0x3a, 0x4300}, {0x9b, 0x4300}, |
1041 | {0xa1, 0x0280}, {0xa4, 0x0200}, {0x06, 0x708e}, | 1041 | {0x06, 0x708e}, {0xf0, 0x0002}, {0x2e, 0x0a1e}, |
1042 | {0xf0, 0x0002}, {0x2e, 0x0a1e}, {0xf0, 0x0000}, | 1042 | {0xf0, 0x0000}, |
1043 | }; | 1043 | }; |
1044 | 1044 | ||
1045 | static struct i2c_reg_u8 hv7131r_init[] = { | 1045 | static struct i2c_reg_u8 hv7131r_init[] = { |
@@ -2005,6 +2005,7 @@ static int sd_config(struct gspca_dev *gspca_dev, | |||
2005 | sd->i2c_addr = id->driver_info & 0xff; | 2005 | sd->i2c_addr = id->driver_info & 0xff; |
2006 | 2006 | ||
2007 | switch (sd->sensor) { | 2007 | switch (sd->sensor) { |
2008 | case SENSOR_MT9M111: | ||
2008 | case SENSOR_OV9650: | 2009 | case SENSOR_OV9650: |
2009 | case SENSOR_SOI968: | 2010 | case SENSOR_SOI968: |
2010 | cam->cam_mode = sxga_mode; | 2011 | cam->cam_mode = sxga_mode; |
@@ -2158,6 +2159,17 @@ static void configure_sensor_output(struct gspca_dev *gspca_dev, int mode) | |||
2158 | i2c_w1(gspca_dev, 0x12, (value & 0x7) | 0x40); | 2159 | i2c_w1(gspca_dev, 0x12, (value & 0x7) | 0x40); |
2159 | } | 2160 | } |
2160 | break; | 2161 | break; |
2162 | case SENSOR_MT9M111: | ||
2163 | if (mode & MODE_SXGA) { | ||
2164 | i2c_w2(gspca_dev, 0xf0, 0x0002); | ||
2165 | i2c_w2(gspca_dev, 0xc8, 0x970b); | ||
2166 | i2c_w2(gspca_dev, 0xf0, 0x0000); | ||
2167 | } else { | ||
2168 | i2c_w2(gspca_dev, 0xf0, 0x0002); | ||
2169 | i2c_w2(gspca_dev, 0xc8, 0x8000); | ||
2170 | i2c_w2(gspca_dev, 0xf0, 0x0000); | ||
2171 | } | ||
2172 | break; | ||
2161 | } | 2173 | } |
2162 | } | 2174 | } |
2163 | 2175 | ||