summaryrefslogtreecommitdiff
path: root/tests/kms_plane_multiple.c
AgeCommit message (Collapse)Author
2017-08-14lib/kms: Add for_each_pipe_staticDaniel Vetter
for_each_pipe cannot be used for enumerating testcases, so provide something that can. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2017-08-03tests/kms_plane_multiple: Fix reference CRCMika Kahola
kms_plane_multiple wrongly expected that igt lib function would modify the passed igt_crc_t* object. You should use igt_crc_t** instead. This patch fixes this anomaly in the test. While at it, remove unnecesary struct for test data as we only need reference CRC here. The problem was caught by CI system and at least affects on HSW platform. V2: Don't change function that collects CRC for reference CRC Fix CRC pointers Remove unnecessary struct for holding test data Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101907 Signed-off-by: Mika Kahola <mika.kahola@intel.com> Reviewed-by: Marta Lofstedt <marta.lofstedt@intel.com>
2017-06-16tests: Rename I915_MAX_PIPES to IGT_MAX_PIPESLeo (Sunpeng) Li
Name should not be driver-specific. Signed-off-by: Leo (Sunpeng) Li <sunpeng.li@amd.com> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2017-03-21Restore "lib: Open debugfs files for the given DRM device"Chris Wilson
This reverts commit 25fbae15262cf570e207e62f50e7c5233e06bc67, restoring commit 301ad44cdf1b868b1ab89096721da91fa8541fdc Author: Tomeu Vizoso <tomeu.vizoso@collabora.com> Date: Thu Mar 2 10:37:11 2017 +0100 lib: Open debugfs files for the given DRM device with fixes. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-03-21Revert "lib: Open debugfs files for the given DRM device"Tomeu Vizoso
This reverts commit 301ad44cdf1b868b1ab89096721da91fa8541fdc. When a render-only device is opened and gem_quiescent_gpu is called, we need to use the debugfs dir for the master device instead. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
2017-03-21lib: Open debugfs files for the given DRM deviceTomeu Vizoso
When opening a DRM debugfs file, locate the right path based on the given DRM device FD. This is needed so, in setups with more than one DRM device, any operations on debugfs files affect the expected DRM device. v2: - rebased and fixed new API additions v3: - updated chamelium test, which was missed previously - use the minor of the device for the debugfs path, not the major - have a proper exit handler for calling igt_hpd_storm_reset with the right device fd. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Robert Foss <robert.foss@collabora.com> Acked-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-02-03tests/kms_plane_multiple: Test only with maximum number of planesMika Kahola
To be more suitable for BAT testing, let's modify the test such a way that it only uses the maximum number of available planes. This reduces the total number of subtests. v2: Fix broken kms_plane_multiple --list-subtests (Petri) Cc: Petri Latvala <petri.latvala@intel.com> Cc: Robert Foss <robert.foss@collabora.com> Reviewed-by: Robert Foss <robert.foss@collabora.com> Signed-off-by: Mika Kahola <mika.kahola@intel.com>
2017-02-02Revert "tests/kms_plane_multiple: Test only with maximum number of planes"Petri Latvala
This commit breaks kms_plane_multiple --list-subtests. This reverts commit 5da674ce4d597bba312cf423939de405d0cafed1. Signed-off-by: Petri Latvala <petri.latvala@intel.com>
2017-02-02tests/kms_plane_multiple: Test only with maximum number of planesMika Kahola
To be more suitable for BAT testing, let's modify the test such a way that it only uses the maximum number of available planes. This reduces the total number of subtests. Cc: Robert Foss <robert.foss@collabora.com> Reviewed-by: Robert Foss <robert.foss@collabora.com> Signed-off-by: Mika Kahola <mika.kahola@intel.com>
2017-01-31tests/kms_plane_multiple: Add support for dynamic number of planesRobert Foss
Add changes reflecting the new support for dynamic number of planes per pipe. Signed-off-by: Robert Foss <robert.foss@collabora.com> Reviewed-by: Mika Kahola <mika.kahola@intel.com>
2017-01-19tests/kms_plane_multiple: Cleanup in favor of library functionsMika Kahola
Cleaunup by replacing get_vblank() function with library function kmstest_get_vblank(). Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Signed-off-by: Mika Kahola <mika.kahola@intel.com>
2017-01-19tests/kms_plane_multiple: Relax atomic commit time requirementMika Kahola
Relax required time to atomic commits from 1 vblank to 2 vblanks. v2: Increase MAX_CRCS to 2 (Maarten) Reference: Issues seen on BYT CI tests Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Signed-off-by: Mika Kahola <mika.kahola@intel.com>
2017-01-12kms_plane_multiple: Use for_each_valid_output_on_pipeMaarten Lankhorst
Not all outputs are valid on all pipes. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
2017-01-12tests/kms_plane_multiple: Change number of iterationsMika Kahola
In CI system, the default 64 iterations of this test may cause CRC overflow warnings in dmesg when debugfs is enabled in kernel config. To keep dmesg warning noise in minimum, let's run this test only once by default. Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Signed-off-by: Mika Kahola <mika.kahola@intel.com>
2016-12-07tests/kms_plane_multiple: Fix CRC based atomic correctness testMika Kahola
Fixes issues on kms_plane_multiple i-g-t test found when running CI tests v1: - don't use tiling for cursor plane (Ville) - for y/yf tiling check that the platform is at least GEN9 (Ville) Cc: Ville Syrjala <ville.syrjala@linux.intel.com> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Signed-off-by: Mika Kahola <mika.kahola@intel.com>
2016-11-28tests/kms_plane_multiple: CRC based atomic correctness testMika Kahola
This is a testcase with multiple planes. The idea here is the following - draw a uniform frame with blue color - grab crc for reference - put planes randomly on top with the same blue color - punch holes with black color into the primary framebuffer - ideally the planes should cover these holes so that the output is the identical to reference crc - composite all with one ioctl call - grab crc and verify that the reference crc is equal - repeat this for several iterations to maximize coverage v7: Unify reference crc grabbing for atomic and legacy tests (Maarten) v6: Rename test_planes() to prepare_planes() (Maarten) When grabbing reference crc, keep framebuffer and crc enabled for atomic mode setting. (Maarten) Fix crc collection for legacy modesetting (Maarten) v5: Remove limit for max number of iterations and add possibility to loop forever (Daniel) Remove IN_RANGE() macro (Maarten) Remove log file and show random number seed on screen instead (Maarten) Split legacy and atomic plane tests on own functions (Maarten) remove test_atomic() function and pass test mode info as parameter (Maarten) Use bigger rectangle size (256x256) for non-cursor planes and smaller (128x128) size for cursor plane (Maarten) v4: For atomic test enable crc capturing before entering into a iteration loop. After each iteration, check that page flip didn't take no more than 1 vblank, fetch all crc's and check the values. Introduce new command line parameter for the number of iterations. The test run from 1 to 256 iterations. v3: Cleanup by removing separate plane array For atomic, pass DRM_MODE_PAGE_FLIP_EVENT Grab crc by using igt_pipe_crc_get_crc instead of igt_pipe_crc_collect_crc Rename nplanes variable to max_planes To optimize test execution, run iterations after the modeset v2: Keep a logfile on random number seeds per subtest that are not skipped due to unmet test requirements Signed-off-by: Mika Kahola <mika.kahola@intel.com> Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>