In the past new testcases with subtest often forgot to add the call to
igt_exit at the end of their main() function. That is now caught with
a bit more obnoxious asserts, but it's still a nuissance.
This little igt_main macro takes care of that (and also of calling the
subtest machinery initialization code correctly).
If no one objects I'll roll this out for all the simple cases (i.e.
those tests that don't have additional argv parsing on top of the
subtest machinery).
v2: Roll it out across the board.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
All tests agree that this is a letal failure, so no point
to pass it back to callers.
Also add some igt_require calls for the drm_fd where I've
noticed that it's missing.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
No need to sprinkle this all over:
- exit handlers will only be registered once
- they're always called when exiting, so no need to explictly call
them.
This allows us to hide all the pipe crc cleanup in the library.
Cc: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Otherwise the automagic skipping for DP ports on gmch platforms
won't work.
v2: We also need to just skip that connector, not the entire subtest.
kms_cursor_crc still needs to be updated.
Cc: Damien Lespiau <damien.lespiau@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Makes stuff work on DP ports on gmch platforms automatically.
Cc: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Ooops. Reported by Paulo. Also add a new testcase for make check to
make sure this actually works.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
The audio driver uses the power well provided by our driver, so on
Haswell we can't "rmmod i915" if we don't "rmmod snd_hda_intel" first.
The problem with removing snd_hda_intel is that we also need to kill
its users. On the specific machine I tested, the only user seem to be
alsactl, but on other machines this may change. IMHO we should leave
the "kill user space" step to whoever is running the script, but
Daniel asked me to put it here so we have a better chance of Just
Working on QA's machines.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=70336
Requested-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Used to trigger a racing condition between mode setting and
enabling/disabling PC8. The modeset-lpsp-stress-no-wait test should
fail on Kernels without the fix I just wrote today.
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
The goal of these tests is to exercise the combination of power well
enabling/disabling and PC8 enabling/disabling. The modeset-non-lpsp
test exposes a silent bug on the current code that can just be
detected with the Runtime D3 patches. The Kernel patch that fixes the
bug will add a WARN to unmute it on the PC8-only case.
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Seems the -lpthread was missed in
commit 8f771f3facae133bb72216fa05c74bc817920b6d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Oct 29 14:21:29 2013 +0000
gem_close_race: Also test random closing of active fd
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
We really need this since otherwise the magic return value handling
for running testcases with piglit (or on QA's validation
infrastructure) doesn't work properly.
We need to be careful though to only install this check on success.
See also the previous commits to sprinkle igt_exit() calls over all
the tests that missed it.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
I was fedup with having to run my tests as root and not being able to
use my usual setup for tests that only exercise the GT part of the GPU.
Render nodes to the rescue!
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
When going through card%u devices, close the ones that we were able to
open but weren't intel devices.
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
It's much easier to follow the new gem_render_copy test and acquire a
aub dump from it.
Suggested-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
The goal is here to both: demonstrate a simple usage of render copy with
the possibility to write pngs to visualize what it's doing and to
provide a test bed to port the render copy function to new
architectures.
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Make sure we get -ENOENT when we pass a non-existing fb_id to
the page flip and setcrtc ioctls.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Use the display CRC support to validate cursor plane functionality.
The test will position the cursor plane either fully onscreen,
partially onscreen, or fully offscreen, using either a fully opaque
or fully transparent surface. In each case it then reads the PF CRC
and compares it with the CRC value obtained when the cursor plane
was disabled.
v2: Loop over all connectors and crtcs
Use igt_wait_for_vblank
Test more corner cases
Add some progress indication ala. kms_flip
Make it work for pf and pipe sources
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Have igt_pipe_crc_new() check whether the selected source is actually
supported.
v2: Make debugfs_pipe_crc.c not crash
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
kmstest_paint_color_alpha() just like kmstest_paint_color() except you
also get to specify the alpha channel.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>