Age | Commit message (Collapse) | Author |
|
We are, the build system takes care of that.
Reviewed-by: Eric Anholt <eric@anholt.net>
Acked-by: Jani Nikula <jani.nikula@intel.com>
Acked-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
Acked-by: Petri Latvala <petri.latvala@intel.com>
Acked-by: Daniel Stone <daniels@collabora.com>
Acked-by: Radoslaw Szwichtenberg <radoslaw.szwichtenberg@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
|
|
We have it. Daniel Stone said the #ifdef HAVE_CONFIG_H comes from the
X11 transition to the modular build, where in the imake -> modular
build transition config.h wasn't universally available. Now we just
make this a requirement (so yeah Android better generate one too).
v2: Improve commit message a bit.
Reviewed-by: Eric Anholt <eric@anholt.net>
Acked-by: Jani Nikula <jani.nikula@intel.com>
Acked-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
Acked-by: Petri Latvala <petri.latvala@intel.com>
Acked-by: Daniel Stone <daniels@collabora.com>
Acked-by: Radoslaw Szwichtenberg <radoslaw.szwichtenberg@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
|
|
In meson I want to just set this everywhere (no reason not to), and
doing so will allow us to clean up a few things.
But that means autofoo needs to follow suit.
v2: Rebase.
Reviewed-by: Eric Anholt <eric@anholt.net>
Acked-by: Jani Nikula <jani.nikula@intel.com>
Acked-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
Acked-by: Petri Latvala <petri.latvala@intel.com>
Acked-by: Daniel Stone <daniels@collabora.com>
Acked-by: Radoslaw Szwichtenberg <radoslaw.szwichtenberg@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
|
|
The invalid props test forgot to check for atomic. Add the required
check.
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
|
|
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
|
|
gem_spin_batch.c:51:13: warning: format ‘%d’ expects argument of type ‘int’, but argument 4 has type ‘long unsigned int’ [-Wformat=]
intel_opregion_decode.c:313:9: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘uint64_t {aka const long long unsigned int}’ [-Wformat=]
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
|
|
Ensure that we can suspend the GPU even if it is currently busy in an
indefinite loop, requiring us to declare the task hung.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
|
|
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
|
|
Due to premature patch pushing, lots of tests remain outstanding.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=102417
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
We queue N low priority hanging batches across the engines
and check that our high priority write over takes them.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
|
|
Apply a little more stress to the scheduler.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
|
|
Measure the ring_size so we don't overfill it and block until the GPU
hangs.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Make sure that our buffers are ready and loaded to reduce the initial
stall.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
|
|
After triggering an error (such as trying to use userptr on a GTT
mmaping), we store the EFAULT on the object permanently. So to test the
error, we must sacrifice the object and recreate the userptr handle.
We restrict the error to just one of the overlapping userptr handles to
check the object independence.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=100596
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
|
|
By using ftw, we avoid the issue of having to handle directory recursion
ourselves and can focus on the test of checking the reading a
sysfs/debugfs does not break runtime suspend. In the process, disregard
errors when opening the individual files as they may fail for other
reasons.
v2: Bracket the file open/close with the wait_for_suspended() tests.
Whilst the fd is open, it may be keeping the device awake, e.g.
i915_forcewake_user.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Tested-by: Jari Tahvanainen <jari.tahvanainen@intel.com>
|
|
Signed-off-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
|
|
This reverts commit effb78b382895c19d0946c217cee3602dcd94c50.
cibuglog is for filtering unstable results, we can't simply opt to not
test PSR.
Acked-by: Petri Latvala <petri.latvala@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
|
|
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>
|
|
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>
|
|
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
|
|
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
Tests for the new flag were added in 3685dabb0ab25eb1.
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
|
|
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>
|
|
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
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
- 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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
In preparation for also testing sprites.
Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
|
|
Will be used in later patches.
Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
|
|
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>
|