disp: msm: sde: check and program DS only on CRTCs that support it

Currently, when runtime_pm_suspend occurs DS property is marked
as dirty invariably if the CRTC allocated the blocks or not.
This causes atomic check failure on CRTCs without DS allocation.

Change-Id: I90287e8e283d2e80aa47627d4aa045040d76b472
Signed-off-by: Amine Najahi <anajahi@codeaurora.org>
这个提交包含在:
Amine Najahi
2020-05-13 01:28:47 -04:00
父节点 403ee1f6f8
当前提交 bf1c81232c

查看文件

@@ -3966,7 +3966,10 @@ static void sde_crtc_handle_power_event(u32 event_type, void *arg)
sde_cp_crtc_suspend(crtc);
/* reconfigure everything on next frame update */
bitmap_fill(cstate->dirty, SDE_CRTC_DIRTY_MAX);
set_bit(SDE_CRTC_DIRTY_DIM_LAYERS, cstate->dirty);
if (cstate->num_ds_enabled)
set_bit(SDE_CRTC_DIRTY_DEST_SCALER, cstate->dirty);
event.type = DRM_EVENT_SDE_POWER;
event.length = sizeof(power_on);