summaryrefslogtreecommitdiff
path: root/drivers/video/fbdev
diff options
context:
space:
mode:
authorUjwal Patel <ujwalp@codeaurora.org>2015-04-09 21:17:42 -0700
committerDavid Keitel <dkeitel@codeaurora.org>2016-03-23 20:40:24 -0700
commit6344ac8b7fdbb6bc8ba8fd07fde97faf4eb52e1d (patch)
tree31c7420d0b542280b54b95a020d672fec57f8ffc /drivers/video/fbdev
parent1c4125582fb8d95ac9583a5bedf935dd0de56e3b (diff)
msm: mdss: fix pipe un-staging issues when source split is used
When source split is used, pipe can be staged on two mixers or it can be staged on right blend of a mixer. It is also possible that same pipe is used at different z_order in consecutive frames. When pipe's z_order is changed and it goes from two mixers to single mixer or right blend to left blend or any other such variations, pipe needs to un-stage properly. Fix issues in current code by correcting order of state assignments. Change-Id: I5b26cc98186183713b7a187673bcb30440d14145 Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
Diffstat (limited to 'drivers/video/fbdev')
-rw-r--r--drivers/video/fbdev/msm/mdss_mdp_layer.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/video/fbdev/msm/mdss_mdp_layer.c b/drivers/video/fbdev/msm/mdss_mdp_layer.c
index b5ea5bf41974..9ff8ba872f9a 100644
--- a/drivers/video/fbdev/msm/mdss_mdp_layer.c
+++ b/drivers/video/fbdev/msm/mdss_mdp_layer.c
@@ -401,11 +401,9 @@ static int __configure_pipe_params(struct msm_fb_data_type *mfd,
pipe->horz_deci = layer->horz_deci;
pipe->vert_deci = layer->vert_deci;
pipe->bg_color = layer->bg_color;
- pipe->mixer_stage = layer->z_order;
pipe->alpha = layer->alpha;
pipe->transp = layer->transp_mask;
pipe->blend_op = layer->blend_op;
- pipe->src_split_req = false;
flags = pipe->flags;
if (is_single_layer)
@@ -461,6 +459,8 @@ static int __configure_pipe_params(struct msm_fb_data_type *mfd,
}
}
+ pipe->mixer_stage = layer->z_order;
+
if (mfd->panel_orientation & MDP_FLIP_LR)
pipe->dst.x = pipe->mixer_left->width - pipe->dst.x -
pipe->dst.w;