summaryrefslogtreecommitdiff
path: root/lib/igt_kms.c
diff options
context:
space:
mode:
authorMaarten Lankhorst <maarten.lankhorst@linux.intel.com>2019-01-31 09:31:07 +0100
committerMaarten Lankhorst <maarten.lankhorst@linux.intel.com>2019-02-01 10:54:44 +0100
commit5ce2b9cbcd71af4bd14bff0ac9c62453c8bdc3ce (patch)
treeb35fc429c0694b0f6e3964dd3bee74168def69d3 /lib/igt_kms.c
parentc8eb378cd55bfa6b9e059a5231e81b701befe81d (diff)
lib/igt_kms: Clear all non-atomic properties in legacy/universal commit correctly.
We used to add them all 1 by 1, but we really only care about not handling a few. Only skip unsetting all atomic properties, instead of handling it through a whitelist. This fixes kms_busy, which was updating the VRR hint, even though we already unset it in the legacy path. Cc: Nicholas Kazlauskas <nkazlaus@amd.com> Cc: Harry Wentland <harry.wentland@amd.com> Cc: Leo Li <sunpeng.li@amd.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109490 Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com> Reviewed-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Diffstat (limited to 'lib/igt_kms.c')
-rw-r--r--lib/igt_kms.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index 71df98d2..d45b01bd 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -3223,10 +3223,9 @@ display_commit_changed(igt_display_t *display, enum igt_commit_style s)
pipe_obj->values[IGT_CRTC_OUT_FENCE_PTR] = 0;
pipe_obj->changed = 0;
} else {
- igt_pipe_obj_clear_prop_changed(pipe_obj, IGT_CRTC_BACKGROUND);
- igt_pipe_obj_clear_prop_changed(pipe_obj, IGT_CRTC_CTM);
- igt_pipe_obj_clear_prop_changed(pipe_obj, IGT_CRTC_DEGAMMA_LUT);
- igt_pipe_obj_clear_prop_changed(pipe_obj, IGT_CRTC_GAMMA_LUT);
+ for (i = 0; i < IGT_NUM_CRTC_PROPS; i++)
+ if (!is_atomic_prop(i))
+ igt_pipe_obj_clear_prop_changed(pipe_obj, i);
if (s != COMMIT_UNIVERSAL) {
igt_pipe_obj_clear_prop_changed(pipe_obj, IGT_CRTC_MODE_ID);