summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHuaibin Yang <huaibiny@codeaurora.org>2013-12-18 15:16:54 -0800
committerDavid Keitel <dkeitel@codeaurora.org>2016-03-23 20:25:25 -0700
commit5942971be97d225d51b636d6ff100fac107cb404 (patch)
treebba59b42339d0250d8b6c3df7c5ec636fc30596f
parent3da16e614cf178139775f9b35744c4449641552f (diff)
msm: mdss: add tile format condition for prefill bytes calculation
Latency buffer requires more lines to be prefilled for use cases that supports tile format. Change-Id: I552bade677822d47cdd5b43c01f795552e94b406 Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
-rw-r--r--drivers/video/fbdev/msm/mdss_mdp_ctl.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/video/fbdev/msm/mdss_mdp_ctl.c b/drivers/video/fbdev/msm/mdss_mdp_ctl.c
index fe0a2ac8a2f2..8dacd7b76022 100644
--- a/drivers/video/fbdev/msm/mdss_mdp_ctl.c
+++ b/drivers/video/fbdev/msm/mdss_mdp_ctl.c
@@ -85,6 +85,7 @@ struct mdss_mdp_prefill_params {
bool is_caf;
bool is_fbc;
bool is_bwc;
+ bool is_tile;
};
static inline bool mdss_mdp_perf_is_caf(struct mdss_mdp_pipe *pipe)
@@ -207,7 +208,7 @@ static u32 mdss_mdp_perf_calc_pipe_prefill_cmd(struct mdss_mdp_prefill_params
/* 1st line if fbc is not enabled and 2nd line if fbc is enabled */
if (((params->dst_y == 0) && !params->is_fbc) ||
((params->dst_y <= 1) && params->is_fbc)) {
- if (params->is_bwc) /* no tile condition for now */
+ if (params->is_bwc || params->is_tile)
latency_lines = 4;
latency_buf_bytes = params->src_w * params->bpp * latency_lines;
prefill_bytes += latency_buf_bytes;
@@ -344,6 +345,7 @@ int mdss_mdp_perf_calc_pipe(struct mdss_mdp_pipe *pipe,
prefill_params.is_caf = mdss_mdp_perf_is_caf(pipe);
prefill_params.is_fbc = is_fbc;
prefill_params.is_bwc = pipe->bwc_mode;
+ prefill_params.is_tile = pipe->src_fmt->tile;
if (mixer->type == MDSS_MDP_MIXER_TYPE_INTF) {
perf->prefill_bytes = (mixer->ctl->is_video_mode) ?