summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPing Li <pingli@codeaurora.org>2016-08-24 16:33:21 -0700
committerPing Li <pingli@codeaurora.org>2016-08-29 11:38:56 -0700
commit53bfdf149fb457285581b0fab6f15906d2fd65e0 (patch)
tree4f6ec83158dbe3692ad7814eb805917c6e8cb7e3
parentaaf356abef25b51d88bde2175a5c373f1f9ad49b (diff)
msm: mdss: Update MDP memory retention sequence for msmcobalt
msmcobalt requires MDP clks ON when configuring the retention bits of MDSS_MDP_CBCR and MDSS_MDP_LUT_CBCR registers, so that the retention signals can be propagated to memories. This change adds the code to support the new requirement. Change-Id: I75b83ce99f061104641188c0f0d3d6cd3e0cfb09 Signed-off-by: Ping Li <pingli@codeaurora.org>
-rw-r--r--drivers/video/fbdev/msm/mdss_mdp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/video/fbdev/msm/mdss_mdp.c b/drivers/video/fbdev/msm/mdss_mdp.c
index f35156a2cfcb..cd842cecc945 100644
--- a/drivers/video/fbdev/msm/mdss_mdp.c
+++ b/drivers/video/fbdev/msm/mdss_mdp.c
@@ -1364,6 +1364,7 @@ static void mdss_mdp_memory_retention_enter(void)
}
}
+ __mdss_mdp_reg_access_clk_enable(mdata, true);
if (mdss_mdp_clk) {
clk_set_flags(mdss_mdp_clk, CLKFLAG_RETAIN_MEM);
clk_set_flags(mdss_mdp_clk, CLKFLAG_PERIPH_OFF_SET);
@@ -1375,6 +1376,7 @@ static void mdss_mdp_memory_retention_enter(void)
clk_set_flags(mdss_mdp_lut_clk, CLKFLAG_PERIPH_OFF_SET);
clk_set_flags(mdss_mdp_lut_clk, CLKFLAG_NORETAIN_PERIPH);
}
+ __mdss_mdp_reg_access_clk_enable(mdata, false);
}
static void mdss_mdp_memory_retention_exit(void)
@@ -1396,7 +1398,7 @@ static void mdss_mdp_memory_retention_exit(void)
}
}
-
+ __mdss_mdp_reg_access_clk_enable(mdata, true);
if (mdss_mdp_clk) {
clk_set_flags(mdss_mdp_clk, CLKFLAG_RETAIN_MEM);
clk_set_flags(mdss_mdp_clk, CLKFLAG_RETAIN_PERIPH);
@@ -1408,6 +1410,7 @@ static void mdss_mdp_memory_retention_exit(void)
clk_set_flags(mdss_mdp_lut_clk, CLKFLAG_RETAIN_PERIPH);
clk_set_flags(mdss_mdp_lut_clk, CLKFLAG_PERIPH_OFF_CLEAR);
}
+ __mdss_mdp_reg_access_clk_enable(mdata, false);
}
/**