Just to make life easier and be eable to easily test with
PSR disabled to know exactly what to expect when running it
for real
v3: Use igt_debug helpers and add env option for running with psr disabled
on this test without have to recompile like v1 or changing igt infrastructure like v2.
I tried to add --disable-psr or local --dry-run but than it fails to print subtests
so this was the safest way.
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Tests were broken on platforms that doesn't have psr or on new kernel that contains new interface.
A lot more need to be done to get these tests really useful, but for now lets avoid it breaking
tests framework.
v2: Doesn't duplicate kernel's HAS_PSR. skip based on debugfs output.
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
v2: sink CRC R, G and B might change depending on display. So let's split the
colors and bitwise them.
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
gen2 will read the batch up until it reaches the end as defined by the
MI_BATCH_BUFFER_END command. Play nice and make sure that it does end on a
MI_BB_END.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Only attempt to test the number of planes that exist on the device so as
not to trigger spurious failures.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=82233
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
The test relies on having to wait upon the GPU at some point and so
simulating a missed interrupt. If there is insufficient load on the GPU,
we can complete the task before we even wait.
References: https://bugs.freedesktop.org/show_bug.cgi?id=71334
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Move create_stereo_fb from testdisplay to igt_create_stereo_fb in igt_fb
so that it can be used in other tests.
v2: update for new igt_create_fb API
add parameters for format and tiling
remove some old debug code
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Use the existing allocation, saves having to make fresh allocations in
the innermost loop - trimming code and potential failure paths.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Since relocations are variable size, depending upon generation, it is
easier to handle the resizing of the batch request inside the
BEGIN_BATCH macro. This still leaves us with having to resize commands
in a few places - which still need adaption for gen8+.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This reveal that quite a few locations were writing relocation offsets
but only allowing for 32 bit addresses. To reveal such places in active
tests, we also now double check that we do not use more batch space than
declared.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
As before, we also want to race against access through the fence
registers. This overlaps slightly with gem_set_tiling_vs_blt, but the
different access pattern should make it useful.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Similar to the previous commit, we also want to check that every
pipeline is serialised correctly. This extends the test to include
render copies as well as blits.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
In future, we may allow reordering of GPU batches. This implements a
simple race detector by extending the current CPU-vs-GPU checks.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Some of the workarounds are lost followed by a gpu reset, suspend/resume;
this patch adds a test which compares register state before and after
the test scenario.
This test currently verifies only bdw workarounds.
v2: address patch cleanup comments (ThomasW)
Add binary to ignore list and use igt_debugfs helper fns
to read debugfs file and igt_info for printing debug info.
v2.1: address minor comments from Daniel
use igt_main as opposed to normal main
Signed-off-by: Arun Siluvery <arun.siluvery@linux.intel.com>
[danvet: Drop igt_exit, it's already in igt_main.]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Since planes are universal now, using commit2 so that drmModeSetPlane can be
called for primary plane as well instead of drmModeSetCrtc. drmModeSetPlane will
update the x,y,w,h for the plane.
Cc: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Sonika Jindal <sonika.jindal@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Combine two subtests(rc6_residency_check and rc6_residency_counter)
into one subtest(residency_accuracy)
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
gem_mmap seg faults when all tests are run together. This occurs because
the new-object subtest closes the gem object, but short-mmap assumes
it still exists. Thus gem_mmap__cpu() returns nil for addr and memset()
seg faults. This patch makes new-object and short-mmap create and
close their own gem objects.
Signed-off-by: Mike Mason <michael.w.mason@intel.com>
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
kms_flip_event_leak depends on cairo, so add it to the
list of tests to skip (in Android.mk) if ANDROID_HAS_CAIRO
is not set to 1.
Signed-off-by: Tim Gore <tim.gore@intel.com>
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
This patch just adds kms_flip_event_leak to tests/.gitignore.
Signed-off-by: Mike Mason <michael.w.mason@intel.com>
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Make sure the rotation is reset after the VT mode is restored by
collecting the unrotated CRC and comparing with the CRC value after VT mode
has been restored. The CRC is used to ensure the hardware state is checked,
rather than any software state.
References: https://bugs.freedesktop.org/show_bug.cgi?id=82236
Signed-off-by: Thomas Wood <thomas.wood@intel.com>