From 66fb466eb5ea5aa0c728ae15244ae08ede2b3b58 Mon Sep 17 00:00:00 2001 From: Maarten Lankhorst Date: Thu, 21 Sep 2017 16:07:48 +0200 Subject: lib/igt_kms: Rework pipe properties to be more atomic, v7. In the future I want to allow tests to commit more properties, but for this to work I have to fix all properties to work better with atomic commit. Instead of special casing each property make a bitmask for all property changed flags, and try to commit all properties. This has been the most involved one, since legacy pipe commit still handles a lot of the properties differently from the rest. Changes since v1: - Dump all changed properties on commit. - Fix bug in igt_pipe_refresh(). Changes since v2: - Set pipe ACTIVE property changed flag on init. Changes since v3: - Add a missing igt_pipe_refresh() to kms_atomic_interruptible. Changes since v4: - Perform error handling when setting custom crtc properties. Changes since v5: - Only attempt to commit changes properties. Changes since v6: - Clear OUT_FENCE_PTR on succesful commit. Signed-off-by: Maarten Lankhorst Reviewed-by: Mika Kahola --- tests/kms_atomic_transition.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tests/kms_atomic_transition.c') diff --git a/tests/kms_atomic_transition.c b/tests/kms_atomic_transition.c index 2ae75f2d..7ddb65ce 100644 --- a/tests/kms_atomic_transition.c +++ b/tests/kms_atomic_transition.c @@ -633,7 +633,7 @@ static unsigned set_combinations(igt_display_t *display, unsigned mask, struct i drmModeModeInfo *mode = NULL; if (!(mask & (1 << pipe))) { - if (display->pipes[pipe].mode_blob) { + if (igt_pipe_is_prop_changed(display, pipe, IGT_CRTC_ACTIVE)) { event_mask |= 1 << pipe; igt_plane_set_fb(plane, NULL); } -- cgit v1.2.3