diff options
author | Tatenda Chipeperekwa <tatendac@codeaurora.org> | 2016-03-23 11:34:48 -0700 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2016-04-06 10:24:27 -0700 |
commit | 9fa1034a5a21036006c2daea5b151ec9741a7440 (patch) | |
tree | 5d4afb8dc27114a3fbd0a738d0e5b5a0345563f1 | |
parent | aed4865b21a8394b397b3d9001e59247ec003295 (diff) |
platform: msm_shared: add dual pipe configuration for 4K modes
Add dual pipe configuration for 4K HDMI modes with a width
exceeding the maximum width supported by a single display pipe.
Change-Id: I2f9a2b5182f4f2ff5e8cd9ac7d55590a3eb56cbf
-rw-r--r-- | platform/msm_shared/mdss_hdmi.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/platform/msm_shared/mdss_hdmi.c b/platform/msm_shared/mdss_hdmi.c index 19015665..b6276646 100644 --- a/platform/msm_shared/mdss_hdmi.c +++ b/platform/msm_shared/mdss_hdmi.c @@ -175,6 +175,7 @@ enum edid_data_block_type { #define HDMI_VFRMT_END 127 #define HDMI_VSDB_3D_EVF_DATA_OFFSET(vsd) \ (!((vsd)[8] & BIT(7)) ? 9 : (!((vsd)[8] & BIT(6)) ? 11 : 13)) +#define MSM_MDP_MAX_PIPE_WIDTH 2560 static uint8_t mdss_hdmi_video_formats[HDMI_VFRMT_COUNT]; static uint8_t mdss_hdmi_mode_count; @@ -1012,7 +1013,15 @@ static void mdss_hdmi_panel_init(struct msm_panel_info *pinfo) pinfo->lcdc.hsync_skew = 0; pinfo->lcdc.xres_pad = 0; pinfo->lcdc.yres_pad = 0; - pinfo->lcdc.dual_pipe = 0; + + /* Add dual pipe configuration for resultions greater than + * MSM_MDP_MAX_PIPE_WIDTH. + */ + if (pinfo->xres > MSM_MDP_MAX_PIPE_WIDTH) { + pinfo->lcdc.dual_pipe = 1; + pinfo->lm_split[0] = pinfo->xres / 2; + pinfo->lm_split[1] = pinfo->xres - pinfo->lm_split[0]; + } } static uint8_t mdss_hdmi_cable_status(void) |