summaryrefslogtreecommitdiff
path: root/tests/meson.build
diff options
context:
space:
mode:
authorKarthik B S <karthik.b.s@intel.com>2020-09-25 09:56:13 +0530
committerVille Syrjälä <ville.syrjala@linux.intel.com>2020-09-25 18:04:16 +0300
commitebc9ca51848b368170d3f76acce0c23bff84581f (patch)
treeeceaba87f8613ccfcb1e0168cf194111d04fbf43 /tests/meson.build
parent051bd38e4586730fe131134741947f2815324590 (diff)
tests/kms_async_flips: Add test to validate asynchronous flips
Asynchronous flips are issued using the page flip IOCTL. The test consists of two subtests. The first subtest waits for the page flip event to be received before giving the next flip, and the second subtest doesn't wait for page flip events. The test passes if the IOCTL is successful. v2: -Add authors in the test file. (Paulo) -Reduce the run time and timeouts to suit IGT needs. (Paulo) -Replace igt_debug's with igt_assert's to catch slow flips. (Paulo) -Follow IGT coding style regarding spaces. (Paulo) -Make set up code part of igt_fixture. (Paulo) -Skip the test if async flips are not supported. (Paulo) -Replace suggested-by. (Paulo) -Added description for test and subtests. v3: -Rename the test to kms_async_flips. (Paulo) -Modify the TODO comment. (Paulo) -Remove igt_debug in flip_handler. (Paulo) -Use drmIoctl() in has_async function. (Paulo) -Add more details in igt_assert in flip_handler. (Paulo) -Remove flag variable in flip_handler. (Paulo) -Call igt_assert in flip_handler after the warm up time. v4: -Calculate the time stamp in flip_handler from userspace, as the kernel will return vbl timestamps and this cannot be used for async flips. -Add a new subtest to verify that the async flip time stamp lies in between the previous and next vblank time stamp. (Daniel) v5: -Add test that alternates between sync and async flips. (Ville) -Add test to verify invalid async flips. (Ville) -Remove the subtest async-flip-without-page-flip-events. (Michel) -Remove the intel gpu restriction and make the test generic. (Michel) v6: -Change the THRESHOLD from 10 to 8 as failures are seen on CI on platforms <= gen10. -In older platforms(<= gen10), async address update bit in plane ctl is double buffered. Made changes in subtests to accomodate this. -Moved the igt_assert from flip_handler to individual subtest as we now have four subtests and adding conditions for the assert in flip handler is messy. v7: -Change flip_interval from int to float for more precision. -Remove the fb height change case in 'invalid' subtest as per the feedback received on the kernel patches. -Add subtest to verify legacy cursor IOCTL. (Ville) v8: -Add a cursor flip before async flip in cursor test. (Ville) -Make flip_interval double for more precision as failures are seen on older platforms on CI. v9: -Replace BUFS macro. (Ville) -Query cursor resolution from the kernel. (Ville) -Rename THRESHOLD to MIN_FLIPS_PER_FRAME. (Ville) -Use XRGB8888 instead of ARGB8888. (Ville) -Rename has_monotonic_timestamp to require_monotonic_timestamp. (Ville) -Make logic in alternate_sync_async subtest more readable. (Ville) -Rename get_vbl_timestamp_us() function. (Ville) -Rename has_async() to has_async_flip. (Ville) -Make data_t static. (Ville) -Fix leaking fb and res pointers. (Ville) -Remove async_capable variable. (Ville) -Move initialization to a function. (Ville) -Have a generic has_drm_cap() helper. (Ville) -Warm up logic removed. -Added TODO's for follow up work. v10: -Move flip timestamps inside data_t. (Ville) -Remove the redundant first flip in invalid subtest. (Ville) v11: -Pass cap ID to the igt_has_drm_cap helper instead of the whole structure. (Ville) -Fix the patch ordering. (Ville) Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com> Signed-off-by: Karthik B S <karthik.b.s@intel.com> [vsyrjala: Fix integer vs. pointer mismatch] Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Diffstat (limited to 'tests/meson.build')
-rw-r--r--tests/meson.build1
1 files changed, 1 insertions, 0 deletions
diff --git a/tests/meson.build b/tests/meson.build
index 5eb2d2fc..515f7528 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -16,6 +16,7 @@ test_progs = [
'feature_discovery',
'kms_3d',
'kms_addfb_basic',
+ 'kms_async_flips',
'kms_atomic',
'kms_atomic_interruptible',
'kms_atomic_transition',