Age | Commit message (Collapse) | Author |
|
When vrefresh is 30 the tests run for twice as long, set it to
vrefresh to make the tests just as long anywhere
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
|
|
This probably won't pass by design on platforms that need to reallocate
global resources like watermarks on gen9+, but it's a good test anyway.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
|
|
The clang compiler generates a build error for binaries with >128MB
data segments because "The gap between stack and binary is only
guarenteed to be 128MB on x86_64"
Simple solution is to allocate the required memory from the heap.
[v2: moved malloc to after skip_on_simulation]
Signed-off-by: Derek Morton <derek.j.morton@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
|
|
When doing lockless lookups using gem_busy(), one of the largest
complications is ensuring that the bo doesn't disappear as we read it.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Upon starting, the IIR may contain stale user interrupts which then
trigger a wakeup when another interrupt occurs (e.g. execlists context
switch). This spurious wakeup causes the waiter to unstick and proceed -
preventing the missed interupt test from suceeeding.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
In the child, make sure the parent is about to sleep before allowing the
GPU to complete. In theory, we are created as an inferior process on the
same CPU and the scheduler shouldn't be executing the child before the
parent, but seems to anyway.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
We don't do any santiy checking at the point of crating the mmap(), that
is deferred until the pointer is actually dereferenced (as the state of
the object may well change between mmap and pagefault).
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
bring them back when they're stable to be run in CI."
This reverts commit 860b3c14f9e98face626e6ca025daf22844dd156.
|
|
This change adds a RC6 test for the MOCS. The MOCS registers are loaded
and saved as part of the RC6 cycle but not all the registers are
saved/restored. This tests that those registers are correctly restored.
Signed-off-by: Peter Antoine <peter.antoine@intel.com>
|
|
On some platforms the MOCS values are not always saved and restored
on RC6 enter/exit. The rational is that the context with restore
these values. On these platforms the test will fail as it tests the
values by directly reading the MOCS registers.
So this change removes the direct testing of the values.
Signed-off-by: Peter Antoine <peter.antoine@intel.com>
|
|
Replace the automake flag HAVE_XXX for VC4/NOUVEAU with HAVE_LIBDRM_XXX in
order for the flags to be more descriptive and also follow the same convention
as HAVE_LIBDRM_INTEL.
Signed-off-by: Robert Foss <robert.foss@collabora.com>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
|
|
Add a new iterator macro to run for a specified number of milliseconds.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
When measuring WB performance we have the issue that it allows CPU
caching which is many times faster than main memory!
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
WC access through the GTT should be much faster for writes than reads.
Indeed, we expect writes to be close to WB performance (for large
sequential transfers) and reads to be only equivalent to UC.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
A few tests rely on being able to allocate an "infinite" number of fd,
but current assert instead of skip on more restrictive kernels.
References: https://bugs.freedesktop.org/show_bug.cgi?id=97125
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
When deliberately hanging the GPU, don't report FAIL if we detect a GPU
hang!
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=97106
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
To stop igt from tripping over itself with the combinatorial explosion
and skips.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
The copy size passed to the CPU copy routines were only for a single row
not the full bo.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
This was intentionally left out of the abi since CRC have fairly low
entropy and can't be reliably compared for inequality in testcases.
Spotted while fixing up warnigns in docs, but given that igt_assert_crc_equal
has a big comment explaining why only the positive assert exists I'm not
sure all those docs are all that useful :(
Cc: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: Matt Roper <matthew.d.roper@intel.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
|
|
Caught by a gcc warning.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
|
|
Add a test that first shows the cursor on the first display, then
shows it on the second display. This exposes the watermark issues on
SKL.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
|
|
Add -varying-size, where we change the size of the cursor between
64x64 to maxw x maxh, atomic-transitions, which alternates between
a full-screen sprite plane and a full-screen primary plane,
toggle, which toggles cursor visibility and
make sure cursor moves between updates. This is a visual indicator of
the tests working as intended.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
|
|
This can happen on CHV, where you only have a output on pipe C.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
|
|
This lets us pick a nice testing pattern while the test runs and makes
sure that the cursor updates don't get nooped. It also tests the
atomic modeset path, if available.
Also make sure cursorX-vs-flipX has 2 separate connected outputs,
else the test is worthless.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
|
|
No real changes yet, only replaced output validation with
for_each_valid_output_on_pipe.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
|
|
Apart from gem_create nothing depends on i915, so use the dumb api
instead.
Suggested-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
|
|
Rename single-A-bo to pipe-A-single-bo, single-all-bo to
pipe-all-single-bo, and ensure that test requirements are met.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Acked-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
This is a small testcase to ensure fastboot works as intended.
When I removed the pipe updates in intel_update_pipe_config
the test started failing, so I think it's useful to keep.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
|
|
On CHV with a 4K hdmi display it's possible to hit the wm upper
limit, 1 rgb primary plane + 2 full size rgb secondary planes
will hit a HW limit. To fix this try halving the horizontal width
until we're below HW limits. This requires a kernel patch to make
sure that the kernel considers actual width in wm calculations,
but without it we get FIFO underruns anyway.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
|
|
This is meant as a stress test, to ensure that all combinations of
atomic transitions work correctly. This could be useful for other
drivers too, so I kept it generic. For i915 this will mainly be a
stress test on watermark calculations.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
|
|
This tests rmfb and last close behavior. In those cases the framebuffers
should be removed from the crtc.
If atomic modeset is supported, we do it all in one nice atomic commit too.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
|
|
They're duplicates with src_x/y, so just use those.
Changes since v1:
- Fix order of parameters in calls to igt_fb_set_position.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
|
|
Use for_each_pipe_with_valid_output instead.
This may increase test time slightly on the affected tests, because now
outputs will be tested on every pipe instead of the first pipe. This
will increase test coverage to all usable pipes though, so it shouldn't
be an issue.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
|
|
PIPE_ANY was used here to assign the first valid pipe, this will no
longer be allowed, so explicitly set it.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
|
|
config, v2.
This is the only time PIPE_ANY was used to mean something other than
unassign this output from a pipe. Without this PIPE_ANY can be aliased
to PIPE_NONE.
Changes since v1:
- Remove DRM_MODE_CONNECTED check, it's implied.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
|
|
This is the same as using config.pipe because the order of crtcs will
never change.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
|
|
Causes too much noise in CI, so skip it for now.
Signed-off-by: Marius Vlad <marius.c.vlad@intel.com>
|
|
back when they're stable to be run in CI.
The following BAT are causing problems:
prime_busy@basic-after-default, fails on all platforms
since it was added, and it sometimes hangs BSW machine
prime_busy@basic-before-default, fails on all platforms
since it was added.
prime_busy@basic-wait-after-default, fails on all platforms
since it was added, and it sometimes hangs BSW machine
prime_busy@basic-wait-before-default, fails on all platforms
since it was added.
Signed-off-by: Marius Vlad <marius.c.vlad@intel.com>
|
|
The following tests are causing problems in CI:
prime_vgem@basic-fence-flip, fails intermittently on a HSW and SKL
prime_vgem@basic-fence-wait-default, fails on all platforms since it
was added
prime_vgem@basic-sync-default, fails on all platforms since it was
added, and it sometimes hangs BYT machine
prime_vgem@basic-busy-default, fails on all platforms since it was
added
prime_vgem@basic-wait-default, fails on all platforms since it was
added, and it sometimes hangs BYT machine
Add a flag to enable them when they get stable enough.
Signed-off-by: Marius Vlad <marius.c.vlad@intel.com>
|
|
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Useful for confirmation when testing.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Adjust the third MOCS entry value based on the corresponding change in
the kernel.
Signed-off-by: Imre Deak <imre.deak@intel.com>
|
|
As we now allow zero as number of workarounds for older gens,
without lri workarounds, change the assert to allow equality.
Also move it out from loop.
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
|
|
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Wait until the child tells us they are running (and have verified the
initial buffer state) before modifing the vgem buffer and then signaling
the child.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Ensure that the child does need to sleep before the vgem is written.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|