Merge "msm: mdss: Clear pp dirty flags based on program stage"

This commit is contained in:
Linux Build Service Account 2018-03-15 05:43:03 -07:00 committed by Gerrit - the friendly Code Review server
commit 2a5717e16e

View file

@ -453,6 +453,13 @@ static u32 igc_limited[IGC_LUT_ENTRIES] = {
#define PP_FLAGS_DIRTY_SHARP 0x200
#define PP_FLAGS_DIRTY_PA_DITHER 0x400
#define PP_EARLY_PROGRAM_DIRTY_MASK (PP_FLAGS_DIRTY_PCC | \
PP_FLAGS_DIRTY_ENHIST | PP_FLAGS_DIRTY_HIST_COL)
#define PP_DEFERRED_PROGRAM_DIRTY_MASK (PP_FLAGS_DIRTY_IGC | \
PP_FLAGS_DIRTY_PGC | PP_FLAGS_DIRTY_ARGC | \
PP_FLAGS_DIRTY_GAMUT | PP_FLAGS_DIRTY_PA | \
PP_FLAGS_DIRTY_DITHER | PP_FLAGS_DIRTY_PA_DITHER)
/* Leave space for future features */
#define PP_FLAGS_RESUME_COMMIT 0x10000000
@ -2860,10 +2867,15 @@ int mdss_mdp_pp_setup_locked(struct mdss_mdp_ctl *ctl,
}
}
if (info->pp_program_mask & PP_NORMAL_PROGRAM_MASK) {
mdss_pp_res->pp_disp_flags[disp_num] &=
~PP_EARLY_PROGRAM_DIRTY_MASK;
}
if (info->pp_program_mask & PP_DEFER_PROGRAM_MASK) {
/* clear dirty flag */
if (disp_num < MDSS_BLOCK_DISP_NUM) {
mdss_pp_res->pp_disp_flags[disp_num] = 0;
mdss_pp_res->pp_disp_flags[disp_num] &=
~PP_DEFERRED_PROGRAM_DIRTY_MASK;
if (disp_num < mdata->nad_cfgs)
mdata->ad_cfgs[disp_num].reg_sts = 0;
}