diff options
| author | Benet Clark <benetc@codeaurora.org> | 2014-03-17 13:14:22 -0700 |
|---|---|---|
| committer | David Keitel <dkeitel@codeaurora.org> | 2016-03-23 20:28:08 -0700 |
| commit | 476a2e4892bf9242f5b41d6495babef89befaddd (patch) | |
| tree | 82b63f8d56f91c1af0370aa7a8bf296d4915f0fa /drivers/video/fbdev | |
| parent | 36e1ed5c26104734eabcab9fcce40ae40975c384 (diff) | |
msm: mdss: Prevent AD on WFD configuration
Assertive display is not allowed on HDMI and WFD configurations.
However, since WFD uses the writeback path, and AD uses the
writeback path for earlier hardware, then we must check which
hardware configuration is being used when checking writeback
panel configuration to prevent or allow AD.
Change-Id: I85f7380d0345cad7785ed41e22df559bc5c1618e
Signed-off-by: Benet Clark <benetc@codeaurora.org>
Diffstat (limited to 'drivers/video/fbdev')
| -rw-r--r-- | drivers/video/fbdev/msm/mdss_mdp_pp.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/video/fbdev/msm/mdss_mdp_pp.c b/drivers/video/fbdev/msm/mdss_mdp_pp.c index 4bf49b6a620d..c457a3616fed 100644 --- a/drivers/video/fbdev/msm/mdss_mdp_pp.c +++ b/drivers/video/fbdev/msm/mdss_mdp_pp.c @@ -1707,6 +1707,7 @@ int mdss_mdp_pp_setup_locked(struct mdss_mdp_ctl *ctl) u32 disp_num; int i; bool valid_mixers = true; + bool valid_ad_panel = true; if ((!ctl->mfd) || (!mdss_pp_res) || (!mdata)) return -EINVAL; @@ -1727,8 +1728,13 @@ int mdss_mdp_pp_setup_locked(struct mdss_mdp_ctl *ctl) if (mixer_id[i] >= mdata->nad_cfgs) valid_mixers = false; } + valid_ad_panel = (ctl->mfd->panel_info->type != DTV_PANEL) && + (((mdata->mdp_rev < MDSS_MDP_HW_REV_103) && + (ctl->mfd->panel_info->type == WRITEBACK_PANEL)) || + (ctl->mfd->panel_info->type != WRITEBACK_PANEL)); + if (valid_mixers && (mixer_cnt <= mdata->nmax_concurrent_ad_hw) && - (ctl->mfd->panel_info->type != DTV_PANEL)) { + valid_ad_panel) { ret = mdss_mdp_ad_setup(ctl->mfd); if (ret < 0) pr_warn("ad_setup(disp%d) returns %d", disp_num, ret); |
