summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLiu Ying <Ying.Liu@freescale.com>2011-03-21 11:35:05 +0800
committerLiu Ying <Ying.Liu@freescale.com>2011-03-22 11:41:31 +0800
commit1bf3ea33483788f800039bd79687a447ac77b0f4 (patch)
tree4ce60cbfba4da66aad1268f3f7b31ffa2b220fb6
parent8af2715e805290814dafd3515ee0f28d6915fdb1 (diff)
ENGR00140864-2 OV5642:Support 1080P at 15fps and PAL at 30fps
This patch supports OV5642 camera to work at 1080P at 15fps and PAL at 30fps. Tested on MX53 SMD board. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
-rw-r--r--drivers/media/video/mxc/capture/ov5642.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/drivers/media/video/mxc/capture/ov5642.c b/drivers/media/video/mxc/capture/ov5642.c
index ae184fdf57a5..7eca7ea3af79 100644
--- a/drivers/media/video/mxc/capture/ov5642.c
+++ b/drivers/media/video/mxc/capture/ov5642.c
@@ -798,9 +798,9 @@ static struct reg_value ov5642_setting_30fps_PAL_720_576[] = {
{0x3818, 0xc1, 0, 0}, {0x3705, 0xdb, 0, 0}, {0x370a, 0x81, 0, 0},
{0x3801, 0x80, 0, 0}, {0x3621, 0xc7, 0, 0}, {0x3801, 0x50, 0, 0},
{0x3803, 0x08, 0, 0}, {0x3827, 0x3c, 0, 0}, {0x3810, 0x80, 0, 0},
- {0x3804, 0x04, 0, 0}, {0x3805, 0xb0, 0, 0}, {0x5682, 0x05, 0, 0},
- {0x5683, 0x00, 0, 0}, {0x3806, 0x03, 0, 0}, {0x3807, 0x58, 0, 0},
- {0x5686, 0x03, 0, 0}, {0x5687, 0xbc, 0, 0}, {0x3a00, 0x78, 0, 0},
+ {0x3804, 0x04, 0, 0}, {0x3805, 0xb0, 0, 0}, {0x5682, 0x04, 0, 0},
+ {0x5683, 0xb0, 0, 0}, {0x3806, 0x03, 0, 0}, {0x3807, 0x58, 0, 0},
+ {0x5686, 0x03, 0, 0}, {0x5687, 0x58, 0, 0}, {0x3a00, 0x78, 0, 0},
{0x3a1a, 0x05, 0, 0}, {0x3a13, 0x30, 0, 0}, {0x3a18, 0x00, 0, 0},
{0x3a19, 0x7c, 0, 0}, {0x3a08, 0x12, 0, 0}, {0x3a09, 0xc0, 0, 0},
{0x3a0a, 0x0f, 0, 0}, {0x3a0b, 0xa0, 0, 0}, {0x350c, 0x07, 0, 0},
@@ -1113,7 +1113,7 @@ static struct reg_value ov5642_setting_30fps_720P_1280_720[] = {
{0x3819, 0x80, 0, 0}, {0x5002, 0xe0, 0, 0},
};
-static struct reg_value ov5642_setting_30fps_1080P_1920_1080[] = {
+static struct reg_value ov5642_setting_15fps_1080P_1920_1080[] = {
{0x3103, 0x93, 0, 0}, {0x3008, 0x82, 0, 0}, {0x3017, 0x7f, 0, 0},
{0x3018, 0xfc, 0, 0}, {0x3810, 0xc2, 0, 0}, {0x3615, 0xf0, 0, 0},
{0x3000, 0x00, 0, 0}, {0x3001, 0x00, 0, 0}, {0x3002, 0x00, 0, 0},
@@ -1270,7 +1270,7 @@ static struct reg_value ov5642_setting_30fps_1080P_1920_1080[] = {
{0x302b, 0x00, 0, 0}, {0x3503, 0x07, 0, 0}, {0x3011, 0x07, 0, 0},
{0x350c, 0x04, 0, 0}, {0x350d, 0x58, 0, 0}, {0x3801, 0x8a, 0, 0},
{0x3803, 0x0a, 0, 0}, {0x3804, 0x07, 0, 0}, {0x3805, 0x80, 0, 0},
- {0x3806, 0x04, 0, 0}, {0x3807, 0x38, 0, 0}, {0x3808, 0x07, 0, 0},
+ {0x3806, 0x04, 0, 0}, {0x3807, 0x39, 0, 0}, {0x3808, 0x07, 0, 0},
{0x3809, 0x80, 0, 0}, {0x380a, 0x04, 0, 0}, {0x380b, 0x38, 0, 0},
{0x380c, 0x09, 0, 0}, {0x380d, 0xd6, 0, 0}, {0x380e, 0x04, 0, 0},
{0x380f, 0x58, 0, 0}, {0x381c, 0x11, 0, 0}, {0x381d, 0xba, 0, 0},
@@ -1279,7 +1279,7 @@ static struct reg_value ov5642_setting_30fps_1080P_1920_1080[] = {
{0x3a0a, 0x11, 0, 0}, {0x3a0b, 0x60, 0, 0}, {0x3a0d, 0x04, 0, 0},
{0x3a0e, 0x03, 0, 0}, {0x5682, 0x07, 0, 0}, {0x5683, 0x60, 0, 0},
{0x5686, 0x04, 0, 0}, {0x5687, 0x1c, 0, 0}, {0x5001, 0x7f, 0, 0},
- {0x3503, 0x00, 0, 0}, {0x3010, 0x00, 0, 0}, {0x460c, 0x20, 0, 0},
+ {0x3503, 0x00, 0, 0}, {0x3010, 0x10, 0, 0}, {0x460c, 0x20, 0, 0},
{0x460b, 0x37, 0, 0}, {0x471c, 0xd0, 0, 0}, {0x471d, 0x05, 0, 0},
{0x3815, 0x01, 0, 0}, {0x3818, 0x00, 0x08, 0}, {0x501f, 0x00, 0, 0},
{0x4300, 0x30, 0, 0}, {0x3002, 0x1c, 0, 0}, {0x3819, 0x80, 0, 0},
@@ -1293,7 +1293,9 @@ static struct ov5642_mode_info ov5642_mode_info_data[2][ov5642_mode_MAX + 1] = {
{ov5642_mode_NTSC_720_480, 0, 0, NULL, 0},
{ov5642_mode_PAL_720_576, 0, 0, NULL, 0},
{ov5642_mode_720P_1280_720, 0, 0, NULL, 0},
- {ov5642_mode_1080P_1920_1080, 0, 0, NULL, 0},
+ {ov5642_mode_1080P_1920_1080, 1920, 1080,
+ ov5642_setting_15fps_1080P_1920_1080,
+ ARRAY_SIZE(ov5642_setting_15fps_1080P_1920_1080)},
{ov5642_mode_QSXGA_2592_1944, 2592, 1944,
ov5642_setting_15fps_QSXGA_2592_1944,
ARRAY_SIZE(ov5642_setting_15fps_QSXGA_2592_1944)},
@@ -1314,9 +1316,7 @@ static struct ov5642_mode_info ov5642_mode_info_data[2][ov5642_mode_MAX + 1] = {
{ov5642_mode_720P_1280_720, 1280, 720,
ov5642_setting_30fps_720P_1280_720,
ARRAY_SIZE(ov5642_setting_30fps_720P_1280_720)},
- {ov5642_mode_1080P_1920_1080, 1920, 1080,
- ov5642_setting_30fps_1080P_1920_1080,
- ARRAY_SIZE(ov5642_setting_30fps_1080P_1920_1080)},
+ {ov5642_mode_1080P_1920_1080, 0, 0, NULL, 0},
{ov5642_mode_QSXGA_2592_1944, 0, 0, NULL, 0},
},
};