msm: mdss: Correct PP register programming deferring

Commit 1b5894d38a00 ("msm: mdss: Separate PP programming to
advanced and deferred modes") separates the PP register
programming into two groups, the normal pp features and the
deferred pp features. However, the above change missed
to add the check in one place and caused mdss_mdp_ad_setup()
gets called two times for every dspp_setup, which breaks the
AD mode switch feature during idle power collapse.
This change fixes the above issue by adding the missing check.

Change-Id: I694299646f62ab29aeff49d4e3749d7858381db4
Signed-off-by: Ping Li <pingli@codeaurora.org>
This commit is contained in:
Ping Li 2017-06-15 19:53:11 -07:00
parent 6f56b2a9c8
commit 5286e14fb9

View file

@ -2783,7 +2783,7 @@ int mdss_mdp_pp_setup_locked(struct mdss_mdp_ctl *ctl,
(ctl->mfd->panel_info->type != WRITEBACK_PANEL));
if (valid_mixers && (mixer_cnt <= mdata->nmax_concurrent_ad_hw) &&
valid_ad_panel) {
valid_ad_panel && (info->pp_program_mask & PP_PROGRAM_AD)) {
ret = mdss_mdp_ad_setup(ctl->mfd);
if (ret < 0)
pr_warn("ad_setup(disp%d) returns %d\n", disp_num, ret);