summaryrefslogtreecommitdiff
path: root/tests
AgeCommit message (Collapse)Author
2017-09-04tests/kms_frontbuffer_tracking: convert macros to functionsDaniel Vetter
Macros that should be C functions but aren't are really hard to read and confusing. Convert them over. v2: Clean up commit message and keep printing the line numbers (Paulo). v3: Actually git add (silly me). Cc: Paulo Zanoni <paulo.r.zanoni@intel.com> Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
2017-08-31pm_rps: Changes in waitboost scenarioKatarzyna Dec
CI is observing sporadical failures in pm_rps subtests. There are a couple of reasons. One of them is the fact that on gen6, gen7 and gen7.5, max frequency (as in the HW limit) is not set to RP0, but the value obtaind from PCODE (which may be different from RP0). Thus the test is operating under wrong assumptions (SOFTMAX == RP0 == BOOST which is simply not the case). Let's compare current frequency with BOOST frequency rather than SOFTMAX to get the test behaviour under control. In boost_freq function I set MAX freq to medium freqency, which ensures that we for sure reach BOOST frequency. This could help with failures with boost frequency failing to drop down. Additionally GPU reset needs to be modified so we are not dependent on kernel's low priority retire worker. Reset method was replaced by igt_force_gpu_reset() and in reset testcase we make sure that we can recover from hang. v2: Commit message, simplified waiting for boost to finish, drop noisy whitespace cleanup. v3: Removed reading from i915_rps_boost_info debugfs because it not the same on every kernel. Removed function waiting for boost. Instead of that I made sure we will reach in boost by setting MAX freq to fmid. v4: Moved proposal with making test drm master to other patch v5: Used igt_force_gpu_reset() to reset GPU. Modified "reset" testcase. v6: Comments changes and update. v7: Fixing typos v8: Fixing another typos in comments and commit msg Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Jeff Mcgee <jeff.mcgee@intel.com> Cc: Petri Latvala <petri.latvala@intel.com> Cc: Jani Saarinen <jani.saarinen@intel.com> Cc: Radoslaw Szwichtenberg <radoslaw.szwichtenberg@intel.com> Reviewed-by: Radoslaw Szwichtenberg <radoslaw.szwichtenberg@intel.com> Acked-by: Daniel Vetter <daniel.vetter@intel.com> Signed-off-by: Katarzyna Dec <katarzyna.dec@intel.com>
2017-08-31tests/perf: add Geminilake supportLionel Landwerlin
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Matthew Auld <matthew.auld@intel.com>
2017-08-31tests/perf: add Kabylake supportLionel Landwerlin
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Matthew Auld <matthew.auld@intel.com>
2017-08-30tests/chamelium: Let the Chamelium itself wait for a stable video inputPaul Kocialkowski
Before capturing video, the Chamelium will always wait for the video input to be stable (and perform the FSM if it was not). This means that there is no need to explicitly do it beforehand. When the receiver needs to be reset, the call will result in a timeout, after which the follow-up call to capture the video will perform the FSM that resets it. Skipping the explicit wait for video input stable allows the Chamelium to perform the FSM directly, which saves valuable time. Removing the associated call does not negatively impact the execution of the CRC and frame comparison tests either. Signed-off-by: Paul Kocialkowski <paul.kocialkowski@linux.intel.com> Reviewed-by: Lyude Paul <lyude@redhat.com>
2017-08-30tests/audio: Add suspend and hibernate tests for HDMI signal integrityPaul Kocialkowski
This introduces tests for HDMI signal integrity after suspend and hibernate. They simply test that signal integrity is ensured before and after suspend or hibernate. Signed-off-by: Paul Kocialkowski <paul.kocialkowski@linux.intel.com> Reviewed-by: Lyude Paul <lyude@redhat.com>
2017-08-30igt/vgem_basic: Load and unload the module firstChris Wilson
To ensure the module exists, first load it. Then when we try to unload the module (to check that our modprobe interface works), we will not get spurious failures due to -ENOENT (in this case meaning the module did not exist): (vgem_basic:18361) igt-core-DEBUG: Starting subtest: unload (vgem_basic:18361) igt-kmod-DEBUG: Could not remove module vgem (No such file or directory) Test requirement not met in function test_unload, file vgem_basic.c:331: Test requirement: module_unload() == 0 Last errno: 2, No such file or directory Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2017-08-30tests/kms_atomic: subtest atomic_invalid_params requires CRTCMarta Lofstedt
Check for valid crtc is missing in igt@kms_atomic@atomic_invalid_params. This leads to segfault on machines where the subtest should be skipped. Signed-off-by: Marta Lofstedt <marta.lofstedt@intel.com> Reviewed-by: Mika Kahola <mika.kahola@intel.com>
2017-08-29igt: Add gem_closeChris Wilson
What transpired recently was that we allow a single process to create multiple handles to the same VMA (which I broke). Make sure we test! References: https://bugs.freedesktop.org/show_bug.cgi?id=102355 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Michał Winiarski <michal.winiarski@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2017-08-25tests: chamelium: Eliminate reset when preparing outputPaul Kocialkowski
Resetting the Chamelium when preparing the video output is unnecessary and significant increases the tests run-time. Since all video-related tests work just as well without it, eliminate it. This also adds a call to reset_test in the analog frame dump test, that was missing before, although the chamelium was still reset by the call to prepare_output. Signed-off-by: Paul Kocialkowski <paul.kocialkowski@linux.intel.com> Reviewed-by: Lyude Paul <lyude@redhat.com>
2017-08-24intel-ci: Remove generic.testlistPetri Latvala
The list has been unmaintained and unused. The set of tests is a subset of what CI runs in sharded runs so we are running all of them already. Signed-off-by: Petri Latvala <petri.latvala@intel.com> Acked-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Acked-by: Daniel Vetter <daniel.vetter@intel.com> Acked-by: Tomi Sarvela <tomi.p.sarvela@intel.com>
2017-08-23intel-ci: Add fast chamelium tests to the fast-feedback listPaul Kocialkowski
This adds the fastest chamelium tests to the Intel CI fast-feedback list, with the objective of running in under a minute. Signed-off-by: Paul Kocialkowski <paul.kocialkowski@linux.intel.com> Reviewed-by: Lyude Paul <lyude@redhat.com>
2017-08-23tests/chamelium: Introduce fast CRC tests, with a single modePaul Kocialkowski
This introduces a fast fashion of testing display CRC, that only tests a single mode (the highest resolution). It drastically reduces the run time of the test, which is necessary for the fast-feedback test list. Signed-off-by: Paul Kocialkowski <paul.kocialkowski@linux.intel.com> Reviewed-by: Lyude Paul <lyude@redhat.com>
2017-08-23tests/chamelium: Introduce fast basic hpd tests, with limited togglesPaul Kocialkowski
This introduces a fast fashion of testing basic hotplug detect, with only 3 toggles. It drastically reduces the run time of the test, which is necessary for the fast-feedback test list. Signed-off-by: Paul Kocialkowski <paul.kocialkowski@linux.intel.com> Reviewed-by: Lyude Paul <lyude@redhat.com>
2017-08-22tests/Makefile.am: Wrap audio test with dedicated conditionalPaul Kocialkowski
This uses the dedicated HAVE_AUDIO conditional, that depends on both ALSA and GSL, for wrapping the audio test. This makes the wrapping consistent with what is done for the chamelium test. Signed-off-by: Paul Kocialkowski <paul.kocialkowski@linux.intel.com> Reviewed-by: Lyude Paul <lyude@redhat.com>
2017-08-21tests: Introduce audio tests, starting with HDMI signal integrityPaul Kocialkowski
This introduces a new test for audio going through display connectors. It currently contains a single subtest for HDMI signal integrity, but other test cases will be added later on. The test setup consists in using an HDMI-VGA bridge that separates the audio out (via a 3.5 mm jack) and feeding this back to the DUT's line-in where it can be recorded by ALSA with controls correctly configured. The audio test makes use of the audio and ALSA igt libraries helpers. Signed-off-by: Paul Kocialkowski <paul.kocialkowski@linux.intel.com> Reviewed-by: Lyude Paul <lyude@redhat.com>
2017-08-16tests/gem_exec_params: Update the invalid-flag subtest for FENCE_ARRAYJason Ekstrand
Tests for the new flag were added in 3685dabb0ab25eb1. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2017-08-16intel-ci: Add fast-feedback-simulation.testlistKelvin Gardiner
Added an initial list of fast feedback tests for simulation environments. v2 (Petri): Rebase README, Add the simulation list to EXTRA_DIST. Signed-off-by: Kelvin Gardiner <kelvin.gardiner@intel.com> Signed-off-by: Petri Latvala <petri.latvala@intel.com>
2017-08-15tests/kms_mmap_write_crc: Add drmModeDirtyFB after dirtying fbMaarten Lankhorst
The test shows the need for coherency through the dma-buf sync ioctl's, but forgets to call dirtyfb, without this the FB Is never updated and we will fail anyway. Solve this by adding a drmModeDirtyFB, I've confirmed by adding -n that the test will still faill without prime_sync_end anyway, so the test is still useful. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Cc: Marta Löfstedt <marta.lofstedt@intel.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101109 Tested-by: Chris Wilson <chris@chris-wilson.co.uk> #llc Acked-by: Marta Lofstedt <marta.lofstedt@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> #llc
2017-08-15tests/kms_flip: fix spin_batch conversionDaniel Vetter
The goal of these subtests was just to delay a kms operation a little bit. The goal wasn't to - spin until the operation was completed. That results in a gpu hang, and gpu hangs need igt_hang for safety. - complete it before the operation. That's just pointless. Fix it by using the timeout support. This was all broken in the initial conversation: commit 96ec8cb3b5ec1fc2927d6cff8e09930082301d7e Author: Abdiel Janulgue <abdiel.janulgue@linux.intel.com> Date: Sat Oct 29 01:01:05 2016 +0300 igt/kms_flip: Use new igt_spin_batch Note that part of the damage was removed already in commit b0081ea9cb7d39234fd0fcc64dd56ed4f5d50b05 Author: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Date: Wed Aug 9 11:11:52 2017 +0200 tests/kms_flip: Remove $engine-flip-vs-dpms/modeset But this patch also made things worse, because it remove code that wasn't dead yet (because it didn't remove all the dpms vs spinning batch tests). v2: Augment commit message and use macro for 1s-in-ns. Cc: Tomeu Vizoso <tomeu.vizoso@collabora.com> Cc: Abdiel Janulgue <abdiel.janulgue@linux.intel.com> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2017-08-14igt/gem_exec_fence: Exercise syncobj APIChris Wilson
New execbuf API allows to pass arrays of fences as handles rather than allocate lots of fds. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2017-08-14tests/kms_flip: Remove $engine-flip-vs-dpms/modesetMaarten Lankhorst
This is already tested in kms_busy, and without cs flips there's no point in doing those tests any more. The removed tests were broken and caused GPU hangs because the spin batch was not unblocked correctly. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2017-08-14Revert "tests/igt_command_line: Ignore subtest list for kms_ccs"Petri Latvala
The temporary workaround can now be removed with kms_ccs being fixed. This reverts commit 1385b31d9371fae02af2fd8adb0d9ea86a5bb0f2. Signed-off-by: Petri Latvala <petri.latvala@intel.com> Acked-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2017-08-14tests/kms_ccs: Fix subtest enumeration:Daniel Vetter
- We can't enumerate planes, push that into the subtest. - pipe enumeration needs to use for_each_pipe_static. This fells our CI since the test enumeration/sharding happens on the build server, which has no gfx nor does the job run as root ... Cc: Daniel Stone <daniels@collabora.com> Cc: Jason Ekstrand <jason@jlekstrand.net> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
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-10tests/igt_command_line: Ignore subtest list for kms_ccsArkadiusz Hiler
Temporary workaround for "make check" to pass despite the issue with kms_ccs which do not list any subtests, even though it should. TO BE REVERTED by Daniel Stone Cc: Daniel Stone <daniels@collabora.com> Cc: Daniel Vetter <daniel.vetter@intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Acked-by: Daniel Vetter <daniel.vetter@intel.com>
2017-08-10tests/kms_ccs: Test CCS on sprite planesDaniel Stone
Also try to test CCS on available non-primary planes. However, as there is not enough bandwidth to scan out both the primary and sprite planes when using CCS (or even Y-tiled), fall back to linear for the primary plane when using CCS for a sprite/cursor plane. Signed-off-by: Daniel Stone <daniels@collabora.com> Acked-by: Jason Ekstrand <jason@jlekstrand.net>
2017-08-10tests/kms_ccs: Split all tests into subtestsDaniel Stone
Some subtests were magically doing a for-each-pipe loop. Remove that, and have all multi-pipe tests actually work across all pipes. Signed-off-by: Daniel Stone <daniels@collabora.com> Acked-by: Jason Ekstrand <jason@jlekstrand.net>
2017-08-10tests/kms_ccs: Test for supported modifierDaniel Stone
Make sure the CCS modifier is supported on our plane, before we try to use it on that plane. Signed-off-by: Daniel Stone <daniels@collabora.com> Acked-by: Jason Ekstrand <jason@jlekstrand.net>
2017-08-10tests/kms_ccs: Reshuffle test name and loopDaniel Stone
In preparation for also testing sprites. Signed-off-by: Daniel Stone <daniels@collabora.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2017-08-10tests/kms_ccs: Paramaterize color for framebufferDaniel Stone
Will be used in later patches. Signed-off-by: Daniel Stone <daniels@collabora.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2017-08-10tests/kms_ccs: Remove excessive FB alignmentDaniel Stone
We don't need to align the framebuffer dimensions to the tile size. As long as the pitch is aligned to the tile width, and the BO dimensions can fit full tiles of both aligned pitch and aligned height, we don't need to claim the FB itself is larger. Signed-off-by: Daniel Stone <daniels@collabora.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2017-08-10tests/kms_ccs: Split FB generation into helperDaniel Stone
Create a new helper for generating and rendering the framebuffer, rather than doing it inline with applying the configuration. This will be used later to generate a different plane configuration. Signed-off-by: Daniel Stone <daniels@collabora.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2017-08-10tests/kms_ccs: Convert int/bool to enumDaniel Stone
Rather than using TEST_UNCOMPRESSED / TEST_COMPRESSED as alternately either an int or a bool, change it to a bitfield enum. This will let us add more parameters later to control framebuffer generation. Signed-off-by: Daniel Stone <daniels@collabora.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2017-08-09igt: add syncobj_basic.Dave Airlie
Some basic sync object interface tests Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> Signed-off-by: Dave Airlie <airlied@redhat.com>
2017-08-08igt/gem_exec_capture: Wait for batch to execute before triggering resetChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2017-08-07tests/perf: fix userspace configs issues on HSWLionel Landwerlin
We don't have flex eu counters on HSW, so don't try to program for thoses. Reported-by: CI \o/ Fixes: 609cb5e30b4 ("tests/perf: add tests to verify create/destroy userspace configs") Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Matthew Auld <matthew.auld@intel.com>
2017-08-07tests/core_auth: set rlimitDaniel Vetter
Some distros have huge rlimits and then the test takes forever, or worse oom, or even worse, takse down the entire machine (which is shouldn't be able to, but oh well, oom handling in linux). Make sure we have a consistent rlimit by adjusting it manually. v2: Use the default of 1024 from everywhere except ubuntu. Cc: Tomi Sarvela <tomi.p.sarvela@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
2017-08-07tests/kms_cursor_legacy: use 'enum pipe' type instead of 'int'Gustavo Padovan
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.com> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2017-08-04tests/perf: follow up build fixLionel Landwerlin
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Fixes: adcde8ac ("tests/perf: fix build where system headers don't have Gen8 formats") Tested-by: Matthew Auld <matthew.auld@intel.com Reviewed-by: Matthew Auld <matthew.auld@intel.com> Reviewed-by: Daniel Stone <daniels@collabora.com>
2017-08-04tests/kms_ccs: Don't overallocate CCS surfaceDaniel Stone
Due to a mix-up in kernel branches being used, I'd mangled Jason's original CCS test to hopelessly overallocate the CCS surface size. Restore it back to its original. Signed-off-by: Daniel Stone <daniels@collabora.com> Cc: Jason Ekstrand <jason@jlekstrand.net>
2017-08-04tests/perf: fix build where system headers don't have Gen8 formatsLionel Landwerlin
v2: Use previous enum to define the new Gen8 enums (Petri) v3: Duh! (Lionel) v4: Redefine MAX oa formats value (Daniel) Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Tested-by: Daniel Stone <daniels@collabora.com>
2017-08-04tests/kms_properties: Don't set immutable propertiesDaniel Stone
If the kernel tells us it's immutable, trying to set it probably isn't going to succeed. There was previously a hard-coded list of immutable properties, keyed by name, but we can just test the flag instead, which is more future-proof. Fixes a failure seen with the IN_FORMATS property. v2: Remove the entire list apart from DPMS, replacing it with a test for immutable. Signed-off-by: Daniel Stone <daniels@collabora.com> Reviewed-by: Daniel Vetter <daniel.vetter@intel.com> Cc: Ben Widawsky <ben@bwidawsk.net>
2017-08-04kms_busy: Fix basic-modeset-* name format parametersPetri Latvala
Commit 37b06eb9b526df6c23ec75f7a9ecd9547fa76695 limited the used engines to only the default engine, dropping the engine name from subtest names, but left over the format parameter. Fixes: 37b06eb9b526 ("tests/kms_busy: Only test against one engine") Signed-off-by: Petri Latvala <petri.latvala@intel.com> Reviewed-by: Marta Lofstedt <marta.lofstedt@intel.com> CC: Daniel Vetter <daniel.vetter@ffwll.ch>
2017-08-04tests/perf: add tests to verify create/destroy userspace configsLionel Landwerlin
v2: Add tests regarding removing configs (Matthew) Add tests regarding adding/removing configs without permissions (Matthew) v3: Add some flex registers (Matthew) v4: memset oa_config to 0 (Lionel) Change error code for removing unexisting config EINVAL->ENOENT (Lionel) v5: Update i915 uapi (Chris) Use wrappers to make assertions more readable (Chris) v6: Add whitelisting test (Lionel) v7: Add wrapper function for removing configs (Matthew) Fix an unfinished comment (Matthew) v8: Add EFAULT check (Lionel) Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Matthew Auld <matthew.auld@intel.com>
2017-08-04tests/perf: add utility function for checking periodic reportsLionel Landwerlin
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Matthew Auld <matthew.auld@intel.com>
2017-08-04tests/perf: update print_reports to print context IDRobert Bragg
Signed-off-by: Robert Bragg <robert@sixbynine.org> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
2017-08-04tests/perf: print [un]slice freq and report reasons in debugRobert Bragg
Signed-off-by: Robert Bragg <robert@sixbynine.org> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
2017-08-04tests/perf: factor out oa report sanity checkingRobert Bragg
Signed-off-by: Robert Bragg <robert@sixbynine.org> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
2017-08-04tests/perf: consider ctx-switch reports while polling/blockingRobert Bragg
Signed-off-by: Robert Bragg <robert@sixbynine.org> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>