Age | Commit message (Collapse) | Author |
|
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>
|
|
This is very quick test (<0.01s) and ensures that the basic
support is in place. And also reminds to tackle the workarounds
in early phases for platform enabling.
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
|
|
We need to not only cover the function in the target=sse4.1 but the
include as well.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Damien Lespiau <damien.lespiau@intel.com>
|
|
To protect the kernel against unscrupulous fence users, fences should
automatically signal after a timeout.
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>
|
|
Suggested-by: Akash Goel <akash.goel@intel.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Don't just fail, skip gracefully if an external module is unavailable.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Ensure that we eventually report idle if we call gem_busy() in a tight
loop on a hanging batch.
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>
|
|
Not a good day.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
The name for a single engine was unset, oops.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
In light of a bug in intel_breadcrumbs where we missed the interrupt
when a new bottom half was installed and raced with the old bottom half
being signaled, try and recreate that race.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Change __wait_for_vblank() to use kmstest_get_vbl_flag() helper function.
Signed-off-by: Robert Foss <robert.foss@collabora.com>
Signed-off-by: Marius Vlad <marius.c.vlad@intel.com>
|
|
Previously crtc0 was statically used for VBLANK tests, but
that assumption is not valid for the VC4 platform.
Instead we're now explicitly setting the mode.
Also add support for testing all connected connectors during
the same test.
Signed-off-by: Robert Foss <robert.foss@collabora.com>
Signed-off-by: Marius Vlad <marius.c.vlad@intel.com>
|
|
Signed-off-by: Marius Vlad <marius.c.vlad@intel.com>
Acked-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Currently gem_sync exploits read-read optimisation to wait upon multiple
rings simultaneously. But at the moment, gem_exec_flush is showing
sporadic missed interrupts on bdw/skl and yet gem_sync is not. This is
some subtlety in the timing, perhaps caused by the extra write. This set
of tests tries to exercise that by using a write batch - which also
means we exercise inter-ring synchronisation (like gem_storedw_loop).
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Since all the batches start with the same content, we can reuse the same
buf to fill them.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|