summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaarten Lankhorst <maarten.lankhorst@linux.intel.com>2017-09-27 18:17:53 +0200
committerMaarten Lankhorst <maarten.lankhorst@linux.intel.com>2017-10-03 09:40:12 +0200
commit1e3db6500dd5c5aa2cc8cb03501b50ef17d06564 (patch)
tree9080b955a805173cfbc597162246ad20921e1589
parent76c7a71a13fd21fbf58ec2903c25acc980b7ddaf (diff)
lib/igt_kms: Commit primary plane when a modeset is forced on a pipe
In between tests, some tests can do the following sequence: (pipe C configured with FB) igt_plane_set_fb(primary (pipe C), NULL); /* Clear rotation property first */ igt_display_commit2(display, COMMIT_UNIVERSAL); /* disable pipe */ igt_display_commit2(display, COMMIT_LEGACY); This would result in PIPE_C not being properly disabled, which will cause an error on the next mode. This can be seen when running the full kms_rotation_crc testcase without --subtest, it will fail on exhaust-fences because the bad-tiling subtest wasn't able to disable pipe C correctly. Testcase: kms_rotation_crc Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Mika Kahola <mika.kahola@intel.com>
-rw-r--r--lib/igt_kms.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index a5db6bc4..d25090b0 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -2332,7 +2332,7 @@ static int igt_primary_plane_commit_legacy(igt_plane_t *primary,
igt_assert(!primary->rotation_changed);
if (!primary->fb_changed && !primary->position_changed &&
- !primary->size_changed)
+ !primary->size_changed && !primary->pipe->mode_changed)
return 0;
crtc_id = pipe->crtc_id;