msm_fb: Fix adb shell start/stop issue when bypass enabled
Currently when 2/3/4 layer bypass is enabled, doing a adb shell
stop/start is failing overlay and composition happens through
GPU. Fix this issue by proper overlay configuration during this
scenario.
Change-Id: Ia04f1839bf80ed552671e48445af63a4dcd6bdfd
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
diff --git a/drivers/video/msm/mdp4_overlay.c b/drivers/video/msm/mdp4_overlay.c
index e9d41d1..7df4c30 100644
--- a/drivers/video/msm/mdp4_overlay.c
+++ b/drivers/video/msm/mdp4_overlay.c
@@ -1662,9 +1662,13 @@
cnt = 0;
ndx = MDP4_MIXER_STAGE_BASE;
for ( ; ndx < MDP4_MIXER_STAGE_MAX; ndx++) {
- pipe = ctrl->stage[mixer_num][ndx];
+ pipe = &ctrl->plist[ndx];
if (pipe == NULL)
continue;
+
+ if (!pipe->pipe_used)
+ continue;
+
info->z_order = pipe->mixer_stage - MDP4_MIXER_STAGE0;
/* z_order == -1, means base layer */
info->ptype = pipe->pipe_type;
diff --git a/include/linux/msm_mdp.h b/include/linux/msm_mdp.h
index d3bfdc2..ff2f38a 100644
--- a/include/linux/msm_mdp.h
+++ b/include/linux/msm_mdp.h
@@ -594,7 +594,7 @@
int z_order;
};
-#define MAX_PIPE_PER_MIXER 4
+#define MAX_PIPE_PER_MIXER 5
struct msmfb_mixer_info_req {
int mixer_num;