From e4056eeb02a3f5ab39196b8daa829a899458aba5 Mon Sep 17 00:00:00 2001 From: Ingrid Gallardo Date: Tue, 13 May 2014 09:58:55 -0700 Subject: msm: mdss: fix screen shifting in some scenarios when split display enabled Split display configuration requires that lower and upper pipe control registers get programmed accordingly. This change fixes a missing configuration bit in one of the control registers. Change-Id: I17c71c004dbf6807483f132cb22271230b27960c Signed-off-by: Ingrid Gallardo --- drivers/video/fbdev/msm/mdss_mdp_ctl.c | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/drivers/video/fbdev/msm/mdss_mdp_ctl.c b/drivers/video/fbdev/msm/mdss_mdp_ctl.c index 910e3456bf0a..47c2f4682584 100644 --- a/drivers/video/fbdev/msm/mdss_mdp_ctl.c +++ b/drivers/video/fbdev/msm/mdss_mdp_ctl.c @@ -1758,17 +1758,14 @@ static void mdss_mdp_ctl_split_display_enable(int enable, if (main_ctl->opmode & MDSS_MDP_CTL_OP_CMD_MODE) { upper |= BIT(1); lower |= BIT(1); - - /* interface controlling sw trigger */ - if (main_ctl->intf_num == MDSS_MDP_INTF2) - upper |= BIT(4); - else - upper |= BIT(8); - } else { /* video mode */ - if (main_ctl->intf_num == MDSS_MDP_INTF2) - lower |= BIT(4); - else - lower |= BIT(8); + } + /* interface controlling sw trigger (cmd & video mode)*/ + if (main_ctl->intf_num == MDSS_MDP_INTF2) { + lower |= BIT(4); + upper |= BIT(4); + } else { + lower |= BIT(8); + upper |= BIT(8); } } writel_relaxed(upper, main_ctl->mdata->mdp_base + -- cgit v1.2.3