summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/panel-lgd-wxga-7-0.c
diff options
context:
space:
mode:
authorRobert Shih <rshih@nvidia.com>2013-11-12 16:46:07 +0800
committerSachin Nikam <snikam@nvidia.com>2013-11-14 00:36:11 -0800
commit6caa720463ba210444717143f7bd1a4b4ada5abc (patch)
tree3889cbe5e6b25fbcea18a3a987ae4832c3388ff1 /arch/arm/mach-tegra/panel-lgd-wxga-7-0.c
parent37cd39f20cc10a761075fc33dcb9432a3fd70ab8 (diff)
arm: tegra: tn8: lgd 7" use Tx only video clk mode
Set video clk mode to Tx only and tweak the timing to make Tx only work in dsi_lgd_wxga_7_0 modes. Also add the D-Phy timing. Bug 1401244 Bug 1234973 Change-Id: Idbd18224e79d572408e74c4b5f86b1b8eac7f17f Signed-off-by: Robert Shih <rshih@nvidia.com> Reviewed-on: http://git-master/r/329502 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Animesh Kishore <ankishore@nvidia.com> Reviewed-by: Kerwin Wan <kerwinw@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Sachin Nikam <snikam@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra/panel-lgd-wxga-7-0.c')
-rw-r--r--arch/arm/mach-tegra/panel-lgd-wxga-7-0.c24
1 files changed, 14 insertions, 10 deletions
diff --git a/arch/arm/mach-tegra/panel-lgd-wxga-7-0.c b/arch/arm/mach-tegra/panel-lgd-wxga-7-0.c
index 1834a4a96986..429a0bd0ffed 100644
--- a/arch/arm/mach-tegra/panel-lgd-wxga-7-0.c
+++ b/arch/arm/mach-tegra/panel-lgd-wxga-7-0.c
@@ -91,7 +91,7 @@ static struct tegra_dsi_out dsi_lgd_wxga_7_0_pdata = {
.power_saving_suspend = true,
.video_data_type = TEGRA_DSI_VIDEO_TYPE_VIDEO_MODE,
- .video_clock_mode = TEGRA_DSI_VIDEO_CLOCK_CONTINUOUS,
+ .video_clock_mode = TEGRA_DSI_VIDEO_CLOCK_TX_ONLY,
.dsi_init_cmd = dsi_lgd_wxga_7_0_init_cmd,
.n_init_cmd = ARRAY_SIZE(dsi_lgd_wxga_7_0_init_cmd),
@@ -104,6 +104,13 @@ static struct tegra_dsi_out dsi_lgd_wxga_7_0_pdata = {
.dsi_suspend_cmd = dsi_lgd_wxga_7_0_suspend_cmd,
.n_suspend_cmd = ARRAY_SIZE(dsi_lgd_wxga_7_0_suspend_cmd),
+
+ .phy_timing = {
+ .t_clkprepare_ns = 27,
+ .t_clkzero_ns = 330,
+ .t_hsprepare_ns = 30,
+ .t_datzero_ns = 270,
+ },
};
static int tegratab_dsi_regulator_get(struct device *dev)
@@ -248,24 +255,21 @@ static int dsi_lgd_wxga_7_0_postsuspend(void)
* v_total =
* Vert_BackPorch + Vert_SyncWidth + Vert_DispActive + Vert_FrontPorch;
* panel_freq = ( h_total * v_total * refresh_freq );
- * h_total = 40 + 8 + 800 + 16 = 864
- * v_total = 2 + 1 + 1280 + 5 = 1288
- * panel_freq = 864 * 1288 * 60 = 66769920 ==> let's set it to 67000000 !
*/
static struct tegra_dc_mode dsi_lgd_wxga_7_0_modes[] = {
{
- .pclk = 67000000,
+ .pclk = 71000000, /* 890 *1323 *60 = 70648200 */
.h_ref_to_sync = 10,
.v_ref_to_sync = 1,
- .h_sync_width = 8,
+ .h_sync_width = 1,
.v_sync_width = 1,
- .h_back_porch = 40, /*48 - 8(h_sync_width)*/
- .v_back_porch = 2, /*3 - 1(v_sync_width)*/
+ .h_back_porch = 57,
+ .v_back_porch = 14,
.h_active = 800,
.v_active = 1280,
- .h_front_porch = 16,
- .v_front_porch = 5,
+ .h_front_porch = 32,
+ .v_front_porch = 28,
},
};