diff options
author | Ming Wong <miwong@nvidia.com> | 2013-05-23 16:29:47 -0700 |
---|---|---|
committer | Harshada Kale <hkale@nvidia.com> | 2013-07-15 09:42:01 -0700 |
commit | 53de2e3f9e439a9af270914d021c6c6a96a0a0db (patch) | |
tree | eb2d41e1ecf191e20cb20ed2828dba962de782a2 /drivers/media | |
parent | f72439306a30ce3fbbb184cbf43129a0ad1d7297 (diff) |
tegra: media: video: imx135 reduce PLL for HDR res
reduce PLL settings for HDR resolutions for power optimization
Bug 1293554
Change-Id: Ic2e021eee6f335d329be6fec97270c871e981e5a
Signed-off-by: Ming Wong <miwong@nvidia.com>
Reviewed-on: http://git-master/r/248056
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Frank Chen <frankc@nvidia.com>
Tested-by: Bhushan Rayrikar <brayrikar@nvidia.com>
Reviewed-by: Sachin Nikam <snikam@nvidia.com>
Diffstat (limited to 'drivers/media')
-rw-r--r-- | drivers/media/video/tegra/imx135.c | 98 |
1 files changed, 58 insertions, 40 deletions
diff --git a/drivers/media/video/tegra/imx135.c b/drivers/media/video/tegra/imx135.c index fc4043fe9d12..93e25590aa0f 100644 --- a/drivers/media/video/tegra/imx135.c +++ b/drivers/media/video/tegra/imx135.c @@ -102,7 +102,7 @@ static struct imx135_reg mode_4208x3120[] = { {0x0309, 0x05}, {0x030B, 0x01}, {0x030C, 0x01}, - {0x030D, 0xC2}, + {0x030D, 0x98}, {0x030E, 0x01}, {0x3A06, 0x11}, @@ -134,7 +134,7 @@ static struct imx135_reg mode_4208x3120[] = { /* Size Setting */ {0x0340, 0x0C}, - {0x0341, 0xD0}, + {0x0341, 0x48}, {0x0342, 0x11}, {0x0343, 0xDC}, {0x0344, 0x00}, @@ -171,21 +171,21 @@ static struct imx135_reg mode_4208x3120[] = { {0x4400, 0x00}, /* Global Timing Setting */ - {0x0830, 0x87}, - {0x0831, 0x3F}, - {0x0832, 0x67}, + {0x0830, 0x7F}, + {0x0831, 0x37}, + {0x0832, 0x5F}, {0x0833, 0x3F}, - {0x0834, 0x3F}, - {0x0835, 0x4F}, - {0x0836, 0xDF}, - {0x0837, 0x47}, + {0x0834, 0x37}, + {0x0835, 0x3F}, + {0x0836, 0xCF}, + {0x0837, 0x3F}, {0x0839, 0x1F}, {0x083A, 0x17}, {0x083B, 0x02}, /* Integration Time Setting */ {0x0202, 0x0C}, - {0x0203, 0xCC}, + {0x0203, 0x44}, /* Gain Setting */ {0x0205, 0x00}, @@ -204,7 +204,7 @@ static struct imx135_reg mode_4208x3120[] = { {0x0233, 0x00}, {0x0234, 0x00}, {0x0235, 0x40}, - {0x0238, 0x01}, + {0x0238, 0x00}, {0x0239, 0x04}, {0x023B, 0x00}, {0x023C, 0x01}, @@ -214,7 +214,13 @@ static struct imx135_reg mode_4208x3120[] = { {0x33B4, 0x01}, {0x3800, 0x00}, - {0x3A43, 0x01}, + {0x3024, 0x20}, + {0x302B, 0x01}, + {0x302A, 0x01}, + {0x3029, 0x01}, + {0x3028, 0x01}, + {0x3025, 0x00}, + {0x300C, 0x1C}, /* stream on */ {0x0100, 0x01}, @@ -929,7 +935,7 @@ static struct imx135_reg mode_2616x1472[] = { {0x0309, 0x05}, {0x030B, 0x01}, {0x030C, 0x01}, - {0x030D, 0xC2}, + {0x030D, 0x01}, {0x030E, 0x01}, {0x3A06, 0x11}, @@ -960,8 +966,8 @@ static struct imx135_reg mode_2616x1472[] = { {0x441C, 0x01}, /* Size Setting */ - {0x0340, 0x0A}, - {0x0341, 0x40}, + {0x0340, 0x05}, + {0x0341, 0xD8}, {0x0342, 0x11}, {0x0343, 0xDC}, {0x0344, 0x03}, @@ -998,21 +1004,21 @@ static struct imx135_reg mode_2616x1472[] = { {0x4400, 0x00}, /* Global Timing Setting */ - {0x0830, 0x87}, - {0x0831, 0x3F}, - {0x0832, 0x67}, - {0x0833, 0x3F}, - {0x0834, 0x3F}, - {0x0835, 0x4F}, - {0x0836, 0xDF}, - {0x0837, 0x47}, + {0x0830, 0x6F}, + {0x0831, 0x27}, + {0x0832, 0x47}, + {0x0833, 0x27}, + {0x0834, 0x27}, + {0x0835, 0x27}, + {0x0836, 0x8F}, + {0x0837, 0x37}, {0x0839, 0x1F}, {0x083A, 0x17}, {0x083B, 0x02}, /* Integration Time Setting */ - {0x0202, 0x0A}, - {0x0203, 0x3C}, + {0x0202, 0x05}, + {0x0203, 0xD4}, /* Gain Setting */ {0x0205, 0x00}, @@ -1041,7 +1047,13 @@ static struct imx135_reg mode_2616x1472[] = { {0x33B4, 0x01}, {0x3800, 0x00}, - {0x3A43, 0x01}, + {0x3024, 0x20}, + {0x302B, 0x01}, + {0x302A, 0x01}, + {0x3029, 0x01}, + {0x3028, 0x01}, + {0x3025, 0x00}, + {0x300C, 0x1C}, /* stream on */ {0x0100, 0x01}, @@ -1094,7 +1106,7 @@ static struct imx135_reg mode_3896x2192[] = { {0x0309, 0x05}, {0x030B, 0x01}, {0x030C, 0x01}, - {0x030D, 0xC2}, + {0x030D, 0x7C}, {0x030E, 0x01}, {0x3A06, 0x11}, @@ -1125,8 +1137,8 @@ static struct imx135_reg mode_3896x2192[] = { {0x441C, 0x01}, /* Size Setting */ - {0x0340, 0x0A}, - {0x0341, 0x40}, + {0x0340, 0x08}, + {0x0341, 0xA8}, {0x0342, 0x11}, {0x0343, 0xDC}, {0x0344, 0x00}, @@ -1163,21 +1175,21 @@ static struct imx135_reg mode_3896x2192[] = { {0x4400, 0x00}, /* Global Timing Setting */ - {0x0830, 0x87}, - {0x0831, 0x3F}, - {0x0832, 0x67}, - {0x0833, 0x3F}, - {0x0834, 0x3F}, - {0x0835, 0x4F}, - {0x0836, 0xDF}, - {0x0837, 0x47}, + {0x0830, 0x77}, + {0x0831, 0x2F}, + {0x0832, 0x5F}, + {0x0833, 0x37}, + {0x0834, 0x37}, + {0x0835, 0x37}, + {0x0836, 0xBF}, + {0x0837, 0x3F}, {0x0839, 0x1F}, {0x083A, 0x17}, {0x083B, 0x02}, /* Integration Time Setting */ - {0x0202, 0x0A}, - {0x0203, 0x3C}, + {0x0202, 0x08}, + {0x0203, 0xA4}, /* Gain Setting */ {0x0205, 0x00}, @@ -1206,7 +1218,13 @@ static struct imx135_reg mode_3896x2192[] = { {0x33B4, 0x01}, {0x3800, 0x00}, - {0x3A43, 0x01}, + {0x3024, 0x20}, + {0x302B, 0x01}, + {0x302A, 0x01}, + {0x3029, 0x01}, + {0x3028, 0x01}, + {0x3025, 0x00}, + {0x300C, 0x1C}, /* stream on */ {0x0100, 0x01}, |