summaryrefslogtreecommitdiff
path: root/linux/drivers/media
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@redhat.com>2009-07-04 08:15:11 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2009-07-04 08:15:11 -0300
commit6dfa16c1aa732ce5a5c0f0404e70ed2d65675b6b (patch)
tree655e7c949f6c55d670779b718f4966f30139ca1a /linux/drivers/media
parent4a782628ed2966858fcf5acac0b890dea02c5b11 (diff)
downloadmediapointer-dvb-s2-6dfa16c1aa732ce5a5c0f0404e70ed2d65675b6b.tar.gz
mediapointer-dvb-s2-6dfa16c1aa732ce5a5c0f0404e70ed2d65675b6b.tar.bz2
mt9v011: let's stick with datasheet values where it works
From: Mauro Carvalho Chehab <mchehab@redhat.com> The original driver for Silvercrest cameras were using some values that are different from what datasheet says. As result, it was taken very less snapshots per second than expected. A test with the datasheet values showed that they work fine and give a better frame rate. So, let's stick with datasheet values. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'linux/drivers/media')
-rw-r--r--linux/drivers/media/video/mt9v011.c23
1 files changed, 7 insertions, 16 deletions
diff --git a/linux/drivers/media/video/mt9v011.c b/linux/drivers/media/video/mt9v011.c
index 17a4fa386..505529e3e 100644
--- a/linux/drivers/media/video/mt9v011.c
+++ b/linux/drivers/media/video/mt9v011.c
@@ -134,24 +134,12 @@ static const struct i2c_reg_value mt9v011_init_default[] = {
{ R0D_MT9V011_RESET, 0x0001 },
{ R0D_MT9V011_RESET, 0x0000 },
- { R09_MT9V011_SHUTTER_WIDTH, 0x0418 },
- { R0A_MT9V011_CLK_SPEED, 0x0000 },
{ R0C_MT9V011_SHUTTER_DELAY, 0x0000 },
+ { R09_MT9V011_SHUTTER_WIDTH, 0x1fc },
+
+ { R0A_MT9V011_CLK_SPEED, 0x0000 },
{ R1E_MT9V011_DIGITAL_ZOOM, 0x0000 },
- { R20_MT9V011_READ_MODE, 0x1100 },
-
- /*
- * Those registers are not docummented at the datasheet.
- * However, the original driver initializes them
- */
- { 0x30, 0x0005 },
- { 0x34, 0x0100 },
- { 0x3d, 0x068f },
- { 0x40, 0x01e0 },
- { 0x52, 0x0100 },
- { 0x58, 0x0038 }, /* Datasheet default 0x0078 */
- { 0x59, 0x0723 }, /* Datasheet default 0x0703 */
- { 0x62, 0x041a }, /* Datasheet default 0x0418 */
+ { R20_MT9V011_READ_MODE, 0x1000 },
{ R07_MT9V011_OUT_CTRL, 0x000a }, /* chip enable */
};
@@ -187,6 +175,9 @@ static void set_res(struct v4l2_subdev *sd)
* hblank and vblank should be adjusted, in order to warrant that
* we'll preserve the line timings for 30 fps, no matter what resolution
* is selected.
+ * NOTE: datasheet says that width (and height) should be filled with
+ * width-1. However, this doesn't work, since one pixel per line will
+ * be missing.
*/
hstart = 14 + (640 - core->width) / 2;