summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/clk/msm/mdss/mdss-dsi-pll-8996-util.c16
-rw-r--r--drivers/video/fbdev/msm/mdss_dsi.c6
-rw-r--r--drivers/video/fbdev/msm/msm_mdss_io_8974.c10
3 files changed, 9 insertions, 23 deletions
diff --git a/drivers/clk/msm/mdss/mdss-dsi-pll-8996-util.c b/drivers/clk/msm/mdss/mdss-dsi-pll-8996-util.c
index 07dc52d1cfc7..0c954e487065 100644
--- a/drivers/clk/msm/mdss/mdss-dsi-pll-8996-util.c
+++ b/drivers/clk/msm/mdss/mdss-dsi-pll-8996-util.c
@@ -295,22 +295,6 @@ static void dsi_pll_disable(struct clk *c)
dsi_pll_stop_8996(pll->pll_base);
- /* stop pll output */
- MDSS_PLL_REG_W(pll->pll_base, DSIPHY_PLL_CLKBUFLR_EN, 0);
- /* stop clk */
- MDSS_PLL_REG_W(pll->pll_base, DSIPHY_CMN_GLBL_TEST_CTRL, 0);
- /* stop digital block */
- MDSS_PLL_REG_W(pll->pll_base, DSIPHY_CMN_CTRL_0, 0x0);
-
- if (slave) {
- /* stop pll output */
- MDSS_PLL_REG_W(pll->pll_base, DSIPHY_PLL_CLKBUFLR_EN, 0);
- /* stop clk */
- MDSS_PLL_REG_W(pll->pll_base, DSIPHY_CMN_GLBL_TEST_CTRL, 0);
- /* stop digital block */
- MDSS_PLL_REG_W(pll->pll_base, DSIPHY_CMN_CTRL_0, 0x0);
- }
-
mdss_pll_resource_enable(pll, false);
pll->pll_on = false;
diff --git a/drivers/video/fbdev/msm/mdss_dsi.c b/drivers/video/fbdev/msm/mdss_dsi.c
index d8197cb34398..111c59a2f6c2 100644
--- a/drivers/video/fbdev/msm/mdss_dsi.c
+++ b/drivers/video/fbdev/msm/mdss_dsi.c
@@ -1040,8 +1040,9 @@ static int mdss_dsi_off(struct mdss_panel_data *pdata, int power_state)
goto panel_power_ctrl;
}
+ mdss_dsi_clk_ctrl(ctrl_pdata, DSI_LINK_CLKS, 0);
if (pdata->panel_info.type == MIPI_CMD_PANEL)
- mdss_dsi_clk_ctrl(ctrl_pdata, DSI_ALL_CLKS, 1);
+ mdss_dsi_clk_ctrl(ctrl_pdata, DSI_CORE_CLKS, 1);
if (!pdata->panel_info.ulps_suspend_enabled) {
/* disable DSI controller */
@@ -1050,8 +1051,7 @@ static int mdss_dsi_off(struct mdss_panel_data *pdata, int power_state)
/* disable DSI phy */
mdss_dsi_phy_disable(ctrl_pdata);
}
-
- mdss_dsi_clk_ctrl(ctrl_pdata, DSI_ALL_CLKS, 0);
+ mdss_dsi_clk_ctrl(ctrl_pdata, DSI_CORE_CLKS, 0);
panel_power_ctrl:
ret = mdss_dsi_panel_power_ctrl(pdata, power_state);
diff --git a/drivers/video/fbdev/msm/msm_mdss_io_8974.c b/drivers/video/fbdev/msm/msm_mdss_io_8974.c
index f884af10b793..2aca9cbdbaa9 100644
--- a/drivers/video/fbdev/msm/msm_mdss_io_8974.c
+++ b/drivers/video/fbdev/msm/msm_mdss_io_8974.c
@@ -133,11 +133,13 @@ static void mdss_dsi_phy_shutdown(struct mdss_dsi_ctrl_pdata *ctrl)
}
if (IS_MDSS_MAJOR_MINOR_SAME(ctrl->shared_data->hw_rev,
- MDSS_DSI_HW_REV_104))
- MIPI_OUTP(ctrl->phy_io.base + DSIPHY_CMN_CTRL_0, ~0x1F);
- else
+ MDSS_DSI_HW_REV_104)) {
+ MIPI_OUTP(ctrl->phy_io.base + DSIPHY_PLL_CLKBUFLR_EN, 0);
+ MIPI_OUTP(ctrl->phy_io.base + DSIPHY_CMN_GLBL_TEST_CTRL, 0);
+ MIPI_OUTP(ctrl->phy_io.base + DSIPHY_CMN_CTRL_0, 0);
+ } else {
MIPI_OUTP(ctrl->phy_io.base + MDSS_DSI_DSIPHY_CTRL_0, 0x000);
-
+ }
}
/**