At least on my old atom i945 they take forever. Also, metric tons of
pipe B underruns while running rcs-flip-vs-panning. No idea why that
happens.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
We run flips and vblank waits in parallel, which means the step
for each is the maximum. If we'd switch to an interleaved scheme
(to be able to check the correlation) we'd need to add them instead.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
We don't have a reference value for the vblank counter yet, so
will end up waiting for a long time for the vblank counter to
wrap around again.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
It's broken since it doesn't take the order the events arrived into
account and so will fall over for longer seq_step values in the vblank
event: Since the flip completes right away, but the vblank later on
they won't have the same timestamp.
For now just give up, we could resurrect this by strictly alternating
between a flip and a vblank wait.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
With PLANE1 and PIPE CRC sources the test will work on all currently
shipping (and planed fwiw) platforms.
Also add all the other new sources for non-ivb/hsw chips.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Copy the trick from ZZ_hangman of just cd'ing into the old working
directory in a subshell.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=70561
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Let's add a new test that sets a mode, wait for a few vblanks (3) and
then make sure we read 3 identical CRCs.
Some subtests check for various parsing errors.
In the process, improve the debugfs helpers to deal with CRCs.
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
I deemed them a bit redundant (assuming that developers are the only
ones that look at them anyway). But Paulo requested that I readd them
for the education of QA.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
I've blown the conversion in
commit 37e5b318c5dac290611099e2eec21df1e49fa71f
Author: Daniel Vetter <daniel.vetter@ffwll.ch>
Date: Fri Oct 4 18:42:26 2013 +0200
tests/kms_flip: use igt_assert more
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=70332
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
By not assigning opterr, getopt will print its own error message that
includes information about whether an option is unknown or just requires
an additional argument.
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Just a very quick hack cobbled together with /bin/sh and exec. We
can't use system since that does stupid things with singals ... Still
we need to whack the child process pretty hard to get rid of it.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
If the test enviroment isn't properly set up we should fail the
testcase, since otherwise there's no way to make sure a feature
actually works.
To cut down on bug triaging time extract the basic test (which was
previously used to skip all subtests) into a "basic" subtest.
Also fail the test hard if the msr interface isn't available. And
switch all other check in setup_enviroment to igt_require.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=69838
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Some kernels inadvertedly forwarded dpms changes to crtcs connected to
shared encoders even though that specific output wasn't enabled.
Hilarity ensued.
Note that we only have shared encoders on hsw (DP+HDMI) and with sdvo
cards (multi-function encoders).
v2: Do a full OFF->ON->OFF transition to make sure something actually
happens.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
On machines with many outputs and many crtcs it takes too long.
So scale the runtime by the number of output combinations we're trying
to light up.
Compensate the test runtime a bit by doubling most subtests' duration.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
At least for pipe A/B we should always fail the test if we can't light
up the preferred mode - the kernel should filter out impossible modes
and for our hw pipe A/B are the least constrained.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>