From e8ffd14c5da56e75c45aea43b8144fc7caca56a0 Mon Sep 17 00:00:00 2001 From: Sandeep Panda Date: Thu, 24 Dec 2015 08:22:48 +0530 Subject: [PATCH] msm: mdss: read DSI CTRL and PHY revision properly In the current implementation DSI PHY revision is read once DSI PHY initialization is complete. But this needs to be done before initializing PHY, so that correct PHY initialization sequence can be executed. Change-Id: I6f0cd59d63d0a8c0a5d47284f2e86e72f37d099f Signed-off-by: Sandeep Panda --- drivers/video/fbdev/msm/mdss_dsi.c | 6 ++++-- drivers/video/fbdev/msm/msm_mdss_io_8974.c | 4 +++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/drivers/video/fbdev/msm/mdss_dsi.c b/drivers/video/fbdev/msm/mdss_dsi.c index 2bd8a47a04be..c79676a89f4f 100644 --- a/drivers/video/fbdev/msm/mdss_dsi.c +++ b/drivers/video/fbdev/msm/mdss_dsi.c @@ -1304,6 +1304,10 @@ int mdss_dsi_on(struct mdss_panel_data *pdata) mdss_dsi_clk_ctrl(ctrl_pdata, ctrl_pdata->dsi_clk_handle, MDSS_DSI_CORE_CLK, MDSS_DSI_CLK_ON); + /* Populate DSI Controller and PHY revision */ + mdss_dsi_read_hw_revision(ctrl_pdata); + mdss_dsi_read_phy_revision(ctrl_pdata); + /* * If ULPS during suspend feature is enabled, then DSI PHY was * left on during suspend. In this case, we do not need to reset/init @@ -1321,8 +1325,6 @@ int mdss_dsi_on(struct mdss_panel_data *pdata) mdss_dsi_clk_ctrl(ctrl_pdata, ctrl_pdata->dsi_clk_handle, MDSS_DSI_LINK_CLK, MDSS_DSI_CLK_ON); mdss_dsi_sw_reset(ctrl_pdata, true); - mdss_dsi_read_hw_revision(ctrl_pdata); - mdss_dsi_read_phy_revision(ctrl_pdata); /* * Issue hardware reset line after enabling the DSI clocks and data diff --git a/drivers/video/fbdev/msm/msm_mdss_io_8974.c b/drivers/video/fbdev/msm/msm_mdss_io_8974.c index 55b94de8fb73..bd2d22e38741 100644 --- a/drivers/video/fbdev/msm/msm_mdss_io_8974.c +++ b/drivers/video/fbdev/msm/msm_mdss_io_8974.c @@ -1937,8 +1937,10 @@ int mdss_dsi_post_clkon_cb(void *priv, pdata = &ctrl->panel_data; if (clk & MDSS_DSI_CORE_CLK) { - if (!pdata->panel_info.cont_splash_enabled) + if (!pdata->panel_info.cont_splash_enabled) { mdss_dsi_read_hw_revision(ctrl); + mdss_dsi_read_phy_revision(ctrl); + } /* * Phy and controller setup is needed if coming out of idle