Everywhere else we search for a match based on an Intel display
device, so if the quick check of the fixed slot fails, fallback to
walking the PCI bus looking for a match.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This test uses debugfs entry to set next_seqno close
to a wrapping point and then creates a load with dependant
buffer objects or with specified command to induce the wrap.
v2: Use new get_rendercpy_func as suggested by Daniel Vetter.
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
flink names may not be destroyed while there's still a userspace
handle around. Test this by
- exporting an flink name from fd2
- open a gem bo from that name in fd
- close fd2, then open a new drm file (so that the original handle
disappears)
- check whether the same flink name still works
- mulitple write domains
- conflicting write domains
- not-yet-defined gpu domains
Also convert to subtests while at it.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Again required a bit of shuffling to avoid expensive setup and some
logic to properly handling 'skip' when only running a subtest.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Small changes to avoid expensive setup just to print out the subtest
list, and setting up the source buffers such that "early-read" works
without having run "overwrite-soure" right beforehand.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
To make the testnames easier to handle in scripts, replace all
spaces with dashes.
The important part is to not print anything to stdout when enumerating
subtests, so protect the timestamp test with the right check.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
To make these helpers as least invasive as possible simply initialize
the options with a getopt parser and let the control flow be steered
with a simple helper which gets the subtest name as an argument.
The only tricky part for using it is that the subtest check helper
doubles up as the conduit to enumerate tests (and in that mode
prevents any test from being run). It is therefore important that
nothing gets printed to stdout outside of these checks.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Results in spurious 'warn' results in piglit. Also don't print
progress indicators when not outputting to a terminal.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This is getting in the way of piglit integration. If we want this
functionality again, we should integrate it into the IGT piglit runner
as an option.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Piglit needs a way to grab the latest list of tests to run, so add new
make targets to dump those. Note that for future extendability we'll
dump 2 different lists, one for single-testcase tests and one for
testcases with enumerable subcases. Some support code for the later
will follow in subsequent patches.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Since monotonic timestamps are now the preferred time format, change
timestamps checks to compare against monotonic instead of real time.
Also add two tests for DRM's compatibility mode where it returns real
timestamps.
v2: drop the tests for the compatibilty mode (Daniel)
Signed-off-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
The old way worked too, but just skipping the test for the first event
is more logical/simpler thing to do.
Signed-off-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
In v2:
- Wait for the seq that just completed (current_seq) not last_seq - 1.
- Do an equality check for ts and seq instead of >=. The previous
issue didn't let us do this before.
- Simplify the condition when we do an "expired sequence" check by
only using the last flip event as a reference.
Signed-off-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
We need a big enough duration, so the hotplug event's affect doesn't
distort our final frame count too much.
Without this these tests will exit with a "dropped frames" error.
Signed-off-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
... using a fine roll of duct-tape. Dunno what exactly leaks out from
the previous testcase, but the bo gets moved about a bit and makes the
self-check of the test fail.
pageflip vs. pan is interesting since we wait for outstanding flips
before updating the fb base address. For vblank absolutely nothing
interesting happens.
15 seconds for timestamp checkers (to at least hit the dreaded hotplug
once), 5 seconds for fast tests that check every vblank something, 30
for slow test (dpms/modeset cycles).