platform/upstream/intel-gpu-tools.git
10 years agokms_plane: Add panning test for primary plane
Yi Sun [Fri, 23 May 2014 00:28:47 +0000 (08:28 +0800)]
kms_plane: Add panning test for primary plane

Get CRCs of a full red and a full blue surface as reference.

Create a big framebuffer that is twice width and twice height as the
current display mode.

Fill the top left quarter with red, bottom right quarter with blue
Check the scanned out image with the CRTC at position (0, 0) of the
framebuffer and it should be the same CRC as the full red fb
Check the scanned out image with the CRTC at position (hdisplay,
vdisplay) and it should be the same CRC as the full blue fb

v2: Fix a few things here and there (Damien)

Cc: Lei Liu <lei.a.liu@intel.com>
Cc: Yi Sun <yi.sun@intel.com>
Signed-off-by: Lei Liu <lei.a.liu@intel.com>
Signed-off-by: Yi Sun <yi.sun@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agokms_plane: Make the gathering of reference CRCs test agnostic
Damien Lespiau [Mon, 7 Jul 2014 12:30:41 +0000 (13:30 +0100)]
kms_plane: Make the gathering of reference CRCs test agnostic

We're going to add tests for panning. Both position and panning tests
share the need to grab reference CRCs of single coloured fb, so let's
separate this function from the position test.

Cc: Lei Liu <lei.a.liu@intel.com>
Cc: Yi Sun <yi.sun@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agopipe_crc: Make collect_crc() ensure the CRC looks somewhat valid
Damien Lespiau [Mon, 7 Jul 2014 14:17:56 +0000 (15:17 +0100)]
pipe_crc: Make collect_crc() ensure the CRC looks somewhat valid

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agopipe_crc: Warn if the CRC values is 0xffffffff
Damien Lespiau [Mon, 7 Jul 2014 14:16:51 +0000 (15:16 +0100)]
pipe_crc: Warn if the CRC values is 0xffffffff

This is what we read when the CRC logic in in a powered down well. We
really don't want that to happen.

In theory, it's possible 0xffffffff to be a valid CRC value, so I don't
assert here.

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agolib: Reset 'position_changed' after a drmModeSetCrtc()
Damien Lespiau [Mon, 7 Jul 2014 14:08:33 +0000 (15:08 +0100)]
lib: Reset 'position_changed' after a drmModeSetCrtc()

So the next commit won't trigger a drmModeSetCrtc() if the primary plane
doesn't have any update needing it.

This shouldn't be a problem at the moment as we don't allow the primary
plane to be of a different size than the CRTC viewport, but it will most
likely change in the future and we don't want to have that bug there.

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agokms_pipe_crc_basic: Add a bit a debugging output
Damien Lespiau [Wed, 28 May 2014 17:59:09 +0000 (18:59 +0100)]
kms_pipe_crc_basic: Add a bit a debugging output

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agokms_pipe_crc_basic: Make the number of CRCs a parameter
Damien Lespiau [Wed, 28 May 2014 16:55:06 +0000 (17:55 +0100)]
kms_pipe_crc_basic: Make the number of CRCs a parameter

Let's make the test a bit more generic and have the number of CRCs we're
collecting a define so it can be changed easily.

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agokms_pipe_crc_basic: Cycle between 2 differently colored buffer
Damien Lespiau [Wed, 28 May 2014 16:40:05 +0000 (17:40 +0100)]
kms_pipe_crc_basic: Cycle between 2 differently colored buffer

Instead of just testing if the CRCs are stable, we also test 2 different
fbs to make sure that the CRC is actually changing.

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agokms_pipe_crc_basic: Split the main test function a bit more
Damien Lespiau [Wed, 28 May 2014 16:33:32 +0000 (17:33 +0100)]
kms_pipe_crc_basic: Split the main test function a bit more

Let's put the per-output test in its own function to get rid of 1 level
of indentation. We'll need it to cycle through 2 different framebuffers
to make sure we compute different CRCs if the fbs are different.

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agolib/kms: Provide universal plane #define's
Matt Roper [Mon, 7 Jul 2014 16:08:29 +0000 (09:08 -0700)]
lib/kms: Provide universal plane #define's

There hasn't been a libdrm release containing the universal plane
definitions yet, so add them to igt_kms to allow compilation to succeed
in the meantime.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agotests/gem_exec_parse: use gem_uses_aliasing_ppgtt
Daniel Vetter [Mon, 7 Jul 2014 15:54:30 +0000 (17:54 +0200)]
tests/gem_exec_parse: use gem_uses_aliasing_ppgtt

Suggested by Brad Volking.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agotests/kms_psr_sink_crc: Fix delayed gtt/cpu write tests
Daniel Vetter [Tue, 17 Jun 2014 21:47:49 +0000 (23:47 +0200)]
tests/kms_psr_sink_crc: Fix delayed gtt/cpu write tests

- Drop the flip from the name - we don't do that. And the blt is
  really just to have a bit of fun with the domain tracking.

- The real test is 1) dirty with gpu 2) grab 1st crc 3) set_domain for
  cpu access 4) wait a long time 5) dirty more with cpu 6) grab 2nd
  crc.

This fixes failures since with the old tests we wouldn't have noticed
the cpu rendering really.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agokms_universal_plane: Don't assert outside of fixtures/subtests
Damien Lespiau [Thu, 3 Jul 2014 14:50:53 +0000 (15:50 +0100)]
kms_universal_plane: Don't assert outside of fixtures/subtests

Doing otherwise breaks listing the subtests. The test was throwing an
error out when universal planes were disabled as well because of that.

Cc: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agotests/kms_cursor_crc: Call drmModeMoveCursor() directly
Matt Roper [Mon, 30 Jun 2014 23:44:30 +0000 (16:44 -0700)]
tests/kms_cursor_crc: Call drmModeMoveCursor() directly

We're calling drmModeSetCursor() to change the cursor image and never
actually doing a display commit (aside from when we display the cursor),
so call the move ioctl directly rather than igt_plane_set_position() to
ensure the changes actually take effect.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agotests/kms_cursor_crc: Combine data_t and test_data_t
Matt Roper [Mon, 30 Jun 2014 23:44:29 +0000 (16:44 -0700)]
tests/kms_cursor_crc: Combine data_t and test_data_t

If a subtest fails, cleanup_crtc() never gets called and then the
test_data_t structure for the test is lost, including the CRC file
descriptor that we never got a chance to release; this causes all
subsequent tests to fail with -EBUSY at igt_pipe_crc_new().

The split between permanent data_t and temporary test_data_t doesn't
seem to serve a purpose, so just combine the fields from both into
data_t.  This will prevent us from losing the CRC filedescriptor so that
we can properly close and reopen it after a failed test.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agotests/kms_universal_plane: Universal plane testing (v6)
Matt Roper [Mon, 30 Jun 2014 23:44:28 +0000 (16:44 -0700)]
tests/kms_universal_plane: Universal plane testing (v6)

Add a simple test to exercise universal plane support.

v6:
 - Update to new universal plane interface (commit parameter rather than
   state-changing function).  It should now be a lot more explicit which
   steps are being taken with legacy API's vs universal API's now.
v5:
 - Check that we don't have more than one primary or cursor.  This will
   catch accidental calls to drm_plane_init() in the kernel where
   drm_universal_plane_init() was intended (these don't cause a compile
   warning due to type compatibility between enum and bool).
v4:
 - Test disabling the primary plane explicitly when it has previously
   been implicitly disabled due to clipping.
 - Skip test if igt_pipe_crc_new() fails
v3:
 - For testing while crtc is off, switch between several different
   primary plane fb's before reenabling the crtc.  This will help
   catch pin/unpin mistakes.
v2:
 - Test that pageflips error out gracefully when the primary plane
   is disabled before the ioctl, or between ioctl and pageflip
   execution.
 - Test that nothing blows up if we try to disable the primary plane
   immediately after a pageflip (presumably before the pageflip actually
   completes).
 - Test that we can setup primary + sprite planes with the CRTC off and
   then have them show up properly when we enable the CRTC
   (drmModeSetCrtc with fb = -1).
 - Test that we can modeset properly after having disabled the primary
   plane
 - Test that proper error codes are returned for invalid plane
   programming attempts.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agolib/kms: Drop primary plane windowing test from igt_plane_set_position()
Matt Roper [Mon, 30 Jun 2014 23:44:27 +0000 (16:44 -0700)]
lib/kms: Drop primary plane windowing test from igt_plane_set_position()

None of our hardware can support this today, but we'd like to be able to
write tests that check that the kernel returns the proper error code
when userspace tries it anyway.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agolib/kms: Add universal plane support (v2)
Matt Roper [Mon, 30 Jun 2014 23:44:26 +0000 (16:44 -0700)]
lib/kms: Add universal plane support (v2)

Add support for universal planes.  This involves revamping the existing
plane handling a bit to allow primary & cursor planes to come from the
DRM plane list, rather than always being manually added.

v2: Don't drop fixed ordering of internal plane list.  Primary will
    always be index 0, cursor will always be last in internal plane
    list.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agolib/kms: Add igt_display_try_commit2()
Matt Roper [Mon, 30 Jun 2014 23:44:25 +0000 (16:44 -0700)]
lib/kms: Add igt_display_try_commit2()

Add a new public API that will attempt a display commit, but will return
an error code upon failure rather than failing the IGT test.  This is
intended to allow igt tests to verify that the expected error codes are
returned to userspace when invalid requests are issued.

Note that with non-atomic programming, a single commit operation has
several potential failure points internally; the first non-zero error
code encountered will be returned immediately and no further programming
will be performed by the commit.  It is the caller's responsibility to
return to a sane state.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agolib/kms: Add igt_display_commit2()
Matt Roper [Mon, 30 Jun 2014 23:44:24 +0000 (16:44 -0700)]
lib/kms: Add igt_display_commit2()

Add a new commit interface, igt_display_commit2(), that allows tests to
specify which programming API should be used to perform hardware
updates.  COMMIT_LEGACY is the only option for now, but universal
and atomic interfaces will be added as additional options in the future.

igt_display_commit() remains unchanged for existing tests that wish to
place the hardware in a specific state, but that don't care which API is
used to achieve that state.  The legacy API will be used by default for
now, but in the future we may decide to make the default API
configurable via an environment variable.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agolib/kms: Track need for vblank wait locally
Matt Roper [Mon, 30 Jun 2014 23:44:23 +0000 (16:44 -0700)]
lib/kms: Track need for vblank wait locally

The need to wait for a vblank after programming is due to the way we
actually program the hardware.  Move need_wait_for_vblank out of the
pipe and into a local variable in preparation for future programming
styles (e.g., atomic pageflip) that will need different logic.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agolib/kms: Drop igt_pipe->need_set_{crtc, cursor}
Matt Roper [Mon, 30 Jun 2014 23:44:22 +0000 (16:44 -0700)]
lib/kms: Drop igt_pipe->need_set_{crtc, cursor}

The "need" flags on igt_pipe simply mirror the fb_changed field of the
primary/cursor planes.  Drop them and just use fb_changed instead.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agogem_exec_parse: require PPGTT as well
Jesse Barnes [Thu, 26 Jun 2014 15:47:08 +0000 (08:47 -0700)]
gem_exec_parse: require PPGTT as well

The command parser may be present, but not active, so check for PPGTT
before allowing this test to run.

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
10 years agotests/gem_ctx_exec: Add reset-pin-leak subtest
Ville Syrjälä [Wed, 18 Jun 2014 18:14:11 +0000 (21:14 +0300)]
tests/gem_ctx_exec: Add reset-pin-leak subtest

Add a subtest to make sure the kernel doesn't leak the vma
pin_count for the last context on reset.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
10 years agogem_mmap_gtt: Test mmaping less than the full object
Chris Wilson [Sat, 21 Jun 2014 14:39:09 +0000 (15:39 +0100)]
gem_mmap_gtt: Test mmaping less than the full object

A bug was recently introduced into the kernel that happened when the vma
was smaller than the object. Test that.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agogem_fence_upload: Improve the contended messages
Chris Wilson [Sat, 21 Jun 2014 14:38:31 +0000 (15:38 +0100)]
gem_fence_upload: Improve the contended messages

In the contended upload case, we did not distinguish between linear and
tiled uploads.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agointel-gpu-tools: add igt_core init func calls to some tests
Tim Gore [Fri, 20 Jun 2014 10:28:12 +0000 (11:28 +0100)]
intel-gpu-tools: add igt_core init func calls to some tests

igt-core.h/c provides some macros and initialisation
functions to support the tests but some of the single
tests do not use these. Modifying these tests to use
the igt_simple_main macro and igt_simple_init function
is the first step towards a consistent command line
across all tests.

Signed-off-by: Tim Gore <tim.gore@intel.com>
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
10 years agotests/gem_exec_big: Re-add gem_sync
Daniel Vetter [Thu, 19 Jun 2014 08:13:12 +0000 (10:13 +0200)]
tests/gem_exec_big: Re-add gem_sync

We need this to avoid hitting the slowpath and ending up with a
presumed_offset == -1. Regression reported by PRTS, bisected to

commit eb36fc993d7ae1988c80ba5b767989059c91d0ec
Author:     Chris Wilson <chris@chris-wilson.co.uk>
AuthorDate: Mon Jun 16 10:49:16 2014 +0100
Commit:     Chris Wilson <chris@chris-wilson.co.uk>
CommitDate: Mon Jun 16 10:51:02 2014 +0100

    igt/gem_exec_big: Update to new igt_assert_eq

    Use igt_assert_eq for better test output on failures.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
v2: igt_warn_on unexpected reloc offsets.

Cc: shuang.he@intel.com
Acked-by: Chris Wilson <chris@chris-wilson.co.uk> (on irc)
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agotests/gem_mmap: Add short mmap test
Daniel Vetter [Tue, 17 Jun 2014 21:06:59 +0000 (23:06 +0200)]
tests/gem_mmap: Add short mmap test

Blows up with the current full-object prefault code.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agoParitially revert "lib: add missing includes to headers"
Daniel Vetter [Tue, 17 Jun 2014 19:22:05 +0000 (21:22 +0200)]
Paritially revert "lib: add missing includes to headers"

This reinstates the #includes for lib/debug.h since without that the
shader debugger fails to build. You need to manually enable it with
./autogen.sh --enable-shader-debugger and the fail only happens when
running a clean build with

$ git clean -dfx && ./autogen.sh --enable-shader-debugger && make

I have no idea what breaks, but this restores the build.

Reported by Ben Widawsky.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agotests: Move gem_userptr_blits to the right Makefile target
Daniel Vetter [Tue, 17 Jun 2014 16:52:08 +0000 (18:52 +0200)]
tests: Move gem_userptr_blits to the right Makefile target

We need to be able to check for this somehow ...

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agotests/Makefile.sources: Remove empty last line
Daniel Vetter [Wed, 30 Apr 2014 16:15:36 +0000 (18:15 +0200)]
tests/Makefile.sources: Remove empty last line

Actually just whitespace change to make sure the new built rules for
tests/*.txt pick up the changes properly everywhere.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agoFixed the review issues for pm_rc6_residency IGT case
Wendy Wang [Mon, 9 Jun 2014 08:36:47 +0000 (16:36 +0800)]
Fixed the review issues for pm_rc6_residency IGT case

Why need add rc6_residency_counter subtest case:
RC6 feature support residency counter,from power consumption aspect,
the counter closer to 1,the better.If the counter is < 0.9, the residency
is not good and will impact power consumption value, if the counter is  > 1,
sysfs file is inaccurate.

Attach the test result message:
root@x-bdw05:/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests# ./pm_rc6_residency
IGT-Version: 1.6-g9a70e29 (x86_64) (Linux: 3.15.0-rc7_drm-intel-nightly_0a37b5_20140604+ x86_64)
Subtest rc6-residency-check: SUCCESS
This machine doesn't support rc6pp
This machine doesn't support rc6p
The residency counter : 0.987000
This machine entry rc6 state.
Subtest rc6-residency-counter: SUCCESS

root@x-bdw05:/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests# ./pm_rc6_residency --run-subtest rc6-residency-counter
IGT-Version: 1.6-g9a70e29 (x86_64) (Linux: 3.15.0-rc7_drm-intel-nightly_0a37b5_20140604+ x86_64)
This machine doesn't support rc6pp
This machine doesn't support rc6p
The residency counter : 0.987000
This machine entry rc6 state.
Subtest rc6-residency-counter: SUCCESS

root@x-bdw05:/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests# ./pm_rc6_residency --run-subtest rc6-residency-check
IGT-Version: 1.6-g9a70e29 (x86_64) (Linux: 3.15.0-rc7_drm-intel-nightly_0a37b5_20140604+ x86_64)
Subtest rc6-residency-check: SUCCESS

root@x-bdw05:/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests# ./pm_rc6_residency --list
rc6-residency-check
rc6-residency-counter

Run as non-root
[haha@x-pk home]$ ./pm_rc6_residency
IGT-Version: 1.6-g18d2130 (x86_64) (Linux: 3.13.0-rc3_drm-intel-nightly_639e4d_20131210+ x86_64)
No intel gpu found
Subtest rc6-residency-check: SKIP
Subtest rc6-residency-counter: SKIP

Run on non-intel platform
[root@x-pk5 home]# ./pm_rc6_residency
IGT-Version: 1.6-g18d2130 (x86_64) (Linux: 3.13.0-rc3_drm-intel-nightly_639e4d_20131210+ x86_64)
Test requirement not met in function read_rc6_residency, file pm_rc6_residency.c:77:
Last errno: 2, No such file or directory
Test requirement: (!(file))
Subtest rc6-residency-check: SKIP
Subtest rc6-residency-counter: SKIP

Signed-off-by: Wendy Wang <wendy.wang@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agoRevert "Revert "Add rc6_residency_counter subtest""
Daniel Vetter [Mon, 16 Jun 2014 21:54:43 +0000 (23:54 +0200)]
Revert "Revert "Add rc6_residency_counter subtest""

This reverts commit 35554a1bcaaea55c1cfa88c0176c58d2fb3b8013.

Apparently people are too unhappy with this.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agolib: add missing includes to headers
Thomas Wood [Mon, 16 Jun 2014 15:21:35 +0000 (16:21 +0100)]
lib: add missing includes to headers

Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agolib: ensure igt_display_init clears the memory for the display struct
Thomas Wood [Mon, 16 Jun 2014 15:12:21 +0000 (16:12 +0100)]
lib: ensure igt_display_init clears the memory for the display struct

Add the call to memset that was accidentally removed in:

commit 1e9e1baba389fe498be12390ceeeacb1d141a5cf
Author: Daniel Vetter <daniel.vetter@ffwll.ch>
Date:   Thu Mar 13 17:20:05 2014 +0100

    lib/igt_kms: rip out custom verbose loggin support

    Instead just piggy-pack on top of igt_log.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agointel-gpu-tools: remove the --cmd option from gem_seqno_wrap
Tim Gore [Mon, 16 Jun 2014 08:38:09 +0000 (09:38 +0100)]
intel-gpu-tools: remove the --cmd option from gem_seqno_wrap

gem_seqno_wrap was not being built on Android because it uses
wordexp which is not in Bionic.
After discussion with Mika Kuoppala (the test author) it seems
that wordexp was used to implement the --cmd option that was
really only intended for use during development of the test and
is no longer needed. So I have removed support for this option
and enabled this test for Android.

Signed-off-by: Tim Gore <tim.gore@intel.com>
Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com>
[danvet: Resolve conflicts with cocci run.]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agoigt/gem_exec_big: Update to new igt_assert_eq
Chris Wilson [Mon, 16 Jun 2014 09:49:16 +0000 (10:49 +0100)]
igt/gem_exec_big: Update to new igt_assert_eq

Use igt_assert_eq for better test output on failures.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agoigt/gem_exec_parse: Convert to igt_assert_eq
Chris Wilson [Mon, 16 Jun 2014 08:01:52 +0000 (09:01 +0100)]
igt/gem_exec_parse: Convert to igt_assert_eq

For better test output on failure.

References: https://bugs.freedesktop.org/show_bug.cgi?id=80083
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agotools/intel_display_poller: Add a new tool that will poll various display registers
Ville Syrjälä [Tue, 29 Oct 2013 16:17:39 +0000 (18:17 +0200)]
tools/intel_display_poller: Add a new tool that will poll various display registers

intel_poller can be used to poll various display registers
(IIR,scanline/pixel/flip/frame counter, live address, etc.).

It can be used to determine eg. at which scanline or pixel count certain
events occur.

v2: s/intel_poller/intel_display_poller/

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
10 years agotools: Add intel_iosf_sb_{read,write} tools
Ville Syrjälä [Tue, 10 Jun 2014 18:28:10 +0000 (21:28 +0300)]
tools: Add intel_iosf_sb_{read,write} tools

Add generic tools to poke at IOSF sideband. The user needs to
manually specify SB port as well as the register.

TODO: Maybe add symbolic names for the units? Would avoid having
to trawl the docs for the magic hex value.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
10 years agolib/igt_debufs: Add IGT_NO_FORCEWAKE environment variable
Ville Syrjälä [Wed, 11 Jun 2014 16:21:27 +0000 (19:21 +0300)]
lib/igt_debufs: Add IGT_NO_FORCEWAKE environment variable

If IGT_NO_FORCEWAKE is set, skip the forcewake open. Useful when you
want to poke at register without otherwise disturbing the GPU.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
10 years agolib/igt_debugfs: Don't fail if debugfs is already mounted
Ville Syrjälä [Wed, 11 Jun 2014 16:20:19 +0000 (19:20 +0300)]
lib/igt_debugfs: Don't fail if debugfs is already mounted

Remove the igt_assert() from the debugfs mount. It will fail if debugfs
is already mounted. With the assert in place it's very annying to use
igt without i915 loaded (eg. to dump BIOS configured registers).

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
10 years agotests: run igt.cocci
Daniel Vetter [Fri, 13 Jun 2014 16:27:59 +0000 (18:27 +0200)]
tests: run igt.cocci

Re-run with correct igt_fail rules. Again manually fixup missing
includes for igt_core.h.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agoNEWS: Mention igt.cocci
Daniel Vetter [Fri, 13 Jun 2014 14:23:10 +0000 (16:23 +0200)]
NEWS: Mention igt.cocci

And also pimp the spatch file itself with usage hints.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agolib: Introduce igt_fail_on/_f
Daniel Vetter [Fri, 13 Jun 2014 16:01:33 +0000 (18:01 +0200)]
lib: Introduce igt_fail_on/_f

I've yet again totally screwed things up (this time automated with
cocci even, but not yet pushed luckily). So finally add a new version
for easier conversion and adjust the cocci script.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agolib/igt.cocci: Also add rule to use igt_warn_on_f
Daniel Vetter [Fri, 13 Jun 2014 13:45:30 +0000 (15:45 +0200)]
lib/igt.cocci: Also add rule to use igt_warn_on_f

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agolib/igt.cocci: Convert abort() to igt_fail
Daniel Vetter [Fri, 13 Jun 2014 13:45:12 +0000 (15:45 +0200)]
lib/igt.cocci: Convert abort() to igt_fail

abort should only be used for internal library checks - using
abort() we get a "crash" result, using igt_fail we get "fail"
in piglit.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agolib/igt.cocci: Conversion to igt logging
Daniel Vetter [Fri, 13 Jun 2014 13:41:28 +0000 (15:41 +0200)]
lib/igt.cocci: Conversion to igt logging

Also update old hunks to match on igt logging instead of fprintf.

v2: Don't forget about perror.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agotests: Don't use stderr for informational messages
Daniel Vetter [Fri, 13 Jun 2014 13:32:50 +0000 (15:32 +0200)]
tests: Don't use stderr for informational messages

These should go to stdout instead. The next patch will clean this up
with cocci, so no change from fprintf(stdout, to printf( here.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agotests/pm_psr_sink_crc: Fix longjmp fun
Daniel Vetter [Fri, 13 Jun 2014 13:19:09 +0000 (15:19 +0200)]
tests/pm_psr_sink_crc: Fix longjmp fun

igt_fixture and igt_subtests use longjmp/setjmp internally, which
means local variables at the same stack frame are at risk. Best
practice is to move them out right in front of the igt_main block.

It would be awesome if someone could come up with a cocci patch to
auto-fix this, but unfortunately my attempts failed.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agoRevert "tests: Run igt.cocci over tests"
Daniel Vetter [Fri, 13 Jun 2014 16:03:50 +0000 (18:03 +0200)]
Revert "tests: Run igt.cocci over tests"

This reverts commit 6903ab04e5f9048e3932eb3225e94b6a228681ba.

The igt_assert conversion rule is broken and doesn't invert the check
as it should.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agoigt/gem_fence_upload: Exercise contention on the fault handler
Chris Wilson [Fri, 13 Jun 2014 14:46:33 +0000 (15:46 +0100)]
igt/gem_fence_upload: Exercise contention on the fault handler

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agotests: Run igt.cocci over tests
Daniel Vetter [Fri, 13 Jun 2014 09:06:18 +0000 (11:06 +0200)]
tests: Run igt.cocci over tests

Cocci is awesome

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agolib: add igt.cocci
Daniel Vetter [Fri, 13 Jun 2014 09:16:28 +0000 (11:16 +0200)]
lib: add igt.cocci

Small start but useful to collect refactorings/simplifications for
common igt patterns. Please add more if you stumble over some so that
we can occasionally run this to clean up the tests.

I haven't figured out yet how to do the assert_cmpint->assert_eq
transformation.

Run this with

spatch --sp-file lib/igt.cocci --in-place tests/*.c

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agolib/igt_core: Add igt_assert_eq
Daniel Vetter [Fri, 13 Jun 2014 08:46:55 +0000 (10:46 +0200)]
lib/igt_core: Add igt_assert_eq

Suggested by Chris Wilson. Not yet rolled out since I'm trying to use
cocci for this.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agotests/prime_self_import: Use igt_assert_cmpint
Daniel Vetter [Fri, 13 Jun 2014 08:23:01 +0000 (10:23 +0200)]
tests/prime_self_import: Use igt_assert_cmpint

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agotests/kms_psr_sink_crc: Skip properly
Daniel Vetter [Fri, 13 Jun 2014 08:18:24 +0000 (10:18 +0200)]
tests/kms_psr_sink_crc: Skip properly

Aside: The test has way too many bool return values that are then
always checked with igt_assert. Imo cleaner to switch to a more
declarative approach and shovel the igt_assert/require into those
functions instead.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=79962
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agoigt/gem_fence_upload: Throw some threads into the mix
Chris Wilson [Thu, 12 Jun 2014 16:01:02 +0000 (17:01 +0100)]
igt/gem_fence_upload: Throw some threads into the mix

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agoigt/gem_mmap_gtt: Exercise concurrent pagefaulting
Chris Wilson [Thu, 12 Jun 2014 10:50:01 +0000 (11:50 +0100)]
igt/gem_mmap_gtt: Exercise concurrent pagefaulting

This should hit the BUG inside remap_pfn_range in

commit c5158fabeaf53ed2c614c3333aaa4b3cce80f500
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Tue Jun 10 12:14:41 2014 +0100

[   27.767634] kernel BUG at mm/memory.c:2315!
[   27.767655] invalid opcode: 0000 [#1] SMP
[   27.767679] Modules linked in: cpufreq_userspace cpufreq_powersave cpufreq_stats cpufreq_conservative binfmt_misc nfs lockd fscache sunrpc hid_generic usbhid hid x86_pkg_temp_thermal microcode i2c_i801 lpc_ich mfd_core battery acpi_cpufreq evdev processor ac loop ehci_pci xhci_hcd ehci_hcd sr_mod usbcore cdrom usb_common fan thermal
[   27.767872] CPU: 3 PID: 912 Comm: gem_mmap_gtt Not tainted 3.15.0-rc8+ #953
[   27.767903] Hardware name: Intel Corporation Shark Bay Client platform/Flathead Creek Crb, BIOS HSWLPTU1.86C.0109.R03.1301282055 01/28/2013
[   27.767956] task: ffff880448415010 ti: ffff88044d22c000 task.ti: ffff88044d22c000
[   27.767988] RIP: 0010:[<ffffffff81130734>]  [<ffffffff81130734>] remap_pfn_range+0x2a4/0x400
[   27.768033] RSP: 0000:ffff88044d22fc28  EFLAGS: 00010282
[   27.768057] RAX: 0000000000020002 RBX: 00000000000a3b57 RCX: ffff880448b73fe8
[   27.768088] RDX: 0000000000000002 RSI: ffff880000000000 RDI: ffffea000efe8158
[   27.768119] RBP: ffff88044d22fcd8 R08: 00007fc7b57fe000 R09: 00007fc7b57fe000
[   27.768150] R10: 00000000000001fd R11: 0000000000000a9a R12: ffffea000efe8128
[   27.768180] R13: 0000000000000001 R14: 00007fc7b57fd000 R15: 800000000000002f
[   27.768212] FS:  00007fc7977fc700(0000) GS:ffff88045e380000(0000) knlGS:0000000000000000
[   27.768246] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   27.768272] CR2: 00007fc7b67fd000 CR3: 000000044866c000 CR4: 00000000001407e0
[   27.768303] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[   27.768333] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[   27.768363] Stack:
[   27.768374]  ffff880448bbb6f8 00000000ffffffff 00007fc7b57fdfff 00007fc7b57fdfff
[   27.768414]  00007fc7b57fe000 ffff88044866c7f8 ffff8804496b08f0 00007fc7b57fdfff
[   27.768454]  fffffff8038ee35a 0000000000001000 ffff88044c208180 00007fc7b57fe000
[   27.768494] Call Trace:
[   27.768511]  [<ffffffff81365277>] i915_gem_fault+0x337/0x340
[   27.768538]  [<ffffffff8112d3c4>] __do_fault+0x34/0x70
[   27.768565]  [<ffffffff8109088e>] ? wake_up_process+0x1e/0x40
[   27.768592]  [<ffffffff8113015c>] do_shared_fault.isra.96+0x2c/0x1f0
[   27.768623]  [<ffffffff81502405>] ? rwsem_down_read_failed+0xe5/0x130
[   27.768654]  [<ffffffff810a2519>] ? __rwsem_do_wake+0x129/0x160
[   27.768682]  [<ffffffff81131085>] handle_mm_fault+0x2b5/0xb80
[   27.768712]  [<ffffffff81270a64>] ? call_rwsem_down_read_failed+0x14/0x30
[   27.768745]  [<ffffffff81036c67>] __do_page_fault+0x167/0x4c0
[   27.768774]  [<ffffffff8109a540>] ? pick_next_task_fair+0x700/0x870
[   27.768804]  [<ffffffff814ff23b>] ? __schedule+0x27b/0x860
[   27.768831]  [<ffffffff81036fec>] do_page_fault+0xc/0x10
[   27.768857]  [<ffffffff815034a2>] page_fault+0x22/0x30
[   27.768881] Code: 4d 85 ed 49 0f 44 d7 80 cc 02 49 81 c6 00 10 00 00 48 83 c3 01 48 83 c1 08 48 09 d0 48 89 41 f8 4d 39 f0 74 32 48 83 39 00 74 c4 <0f> 0b 66 2e 0f 1f 84 00 00 00 00 00 48 39 37 75 63 48 8b 45 c8
[   27.769081] RIP  [<ffffffff81130734>] remap_pfn_range+0x2a4/0x400
[   27.769113]  RSP <ffff88044d22fc28>

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agodocs: remove unused annotation glossary include
Thomas Wood [Wed, 11 Jun 2014 16:13:39 +0000 (17:13 +0100)]
docs: remove unused annotation glossary include

API annotations are not used anywhere in the documentation, so the
annotation glossary is not built.

Signed-off-by: Thomas Wood <thomas.wood@intel.com>
10 years agodocs: always rebuild the sections file
Thomas Wood [Wed, 11 Jun 2014 14:32:14 +0000 (15:32 +0100)]
docs: always rebuild the sections file

Always rebuild the sections file since it currently doesn't contain any
custom modifications.

Signed-off-by: Thomas Wood <thomas.wood@intel.com>
10 years agodocs: add private headers to IGNORE_HFILES
Thomas Wood [Wed, 11 Jun 2014 10:46:39 +0000 (11:46 +0100)]
docs: add private headers to IGNORE_HFILES

Signed-off-by: Thomas Wood <thomas.wood@intel.com>
10 years agolib: various documentation fixes
Thomas Wood [Mon, 9 Jun 2014 16:23:21 +0000 (17:23 +0100)]
lib: various documentation fixes

Fix some documentation comments and mark some struct members private.

Signed-off-by: Thomas Wood <thomas.wood@intel.com>
10 years agogitignore: add missing files and keep lists sorted
Thomas Wood [Mon, 9 Jun 2014 13:45:44 +0000 (14:45 +0100)]
gitignore: add missing files and keep lists sorted

Signed-off-by: Thomas Wood <thomas.wood@intel.com>
10 years agoREADME: update the section on modifying and rebuilding documentation
Thomas Wood [Mon, 9 Jun 2014 13:05:42 +0000 (14:05 +0100)]
README: update the section on modifying and rebuilding documentation

Signed-off-by: Thomas Wood <thomas.wood@intel.com>
10 years agolib: remove /** from comments that are not API documentation
Thomas Wood [Mon, 9 Jun 2014 13:02:04 +0000 (14:02 +0100)]
lib: remove /** from comments that are not API documentation

These comments are not gtk-doc comments, so replacing /** with /*
prevents any gtk-doc warnings.

Signed-off-by: Thomas Wood <thomas.wood@intel.com>
10 years agoREADME: update piglit instructions
Thomas Wood [Mon, 9 Jun 2014 12:35:21 +0000 (13:35 +0100)]
README: update piglit instructions

Piglit now has a top level "piglit" command and the location of the
tests can now be read from an environment variable.

Signed-off-by: Thomas Wood <thomas.wood@intel.com>
10 years agoquick_dump: read the architecture files for items to add to EXTRA_DIST
Thomas Wood [Fri, 6 Jun 2014 14:28:50 +0000 (15:28 +0100)]
quick_dump: read the architecture files for items to add to EXTRA_DIST

Each architecture file contains a list of the text files it requires, so
use this to add to the list of files to distribute.

Signed-off-by: Thomas Wood <thomas.wood@intel.com>
10 years agotests/gem_fence_upload: Fix test wrapper
Daniel Vetter [Thu, 12 Jun 2014 07:05:55 +0000 (09:05 +0200)]
tests/gem_fence_upload: Fix test wrapper

- tests with subtests need to be in the _M target for correct
  enumeration.

- No need for igt_exit when using the igt_(simple_)main wrappers.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agolib/intel_os: Spelling fix
Daniel Vetter [Thu, 12 Jun 2014 07:04:20 +0000 (09:04 +0200)]
lib/intel_os: Spelling fix

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agotests: add gem_fence_upload
Chris Wilson [Mon, 3 Feb 2014 15:52:00 +0000 (15:52 +0000)]
tests: add gem_fence_upload

This test demonstrates the performance cliff clients face when they
unwittingly use too many fenced surfaces in a looped upload.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agotests/kms_psr_sink_crc: Create test to test PSR by checking panel CRC.
Rodrigo Vivi [Thu, 20 Mar 2014 01:43:51 +0000 (22:43 -0300)]
tests/kms_psr_sink_crc: Create test to test PSR by checking panel CRC.

v2: Wait psr enable with timeout and more subtest added.
v3: Add wait for v_blank leeting test more reliable and preparing to
    add Baytrail per-pipe tests.
v4: Call busy_ioctl on mmap_gtt to match the real usage and remove the need
    of inactivate on set_domain, what was semantically wrong.
v5: Adding more test cases to cover mmap_gtt with and without followed by
    busy ioctl and also without busy and waiting 10 seconds between
    set_domain and actual write.
v6: rebase after kms_plane added and debugfs api changed.
    Plus adding more test cases.
v7: Some rework and sprite test added

Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
10 years agolist-workarounds/chv: Add Cherryview to the list of valid platorms
Damien Lespiau [Fri, 31 May 2013 14:33:21 +0000 (15:33 +0100)]
list-workarounds/chv: Add Cherryview to the list of valid platorms

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
10 years agoRevert "Add rc6_residency_counter subtest"
Daniel Vetter [Tue, 10 Jun 2014 09:05:16 +0000 (11:05 +0200)]
Revert "Add rc6_residency_counter subtest"

This reverts commit 9a70e29f8380c2fc6f9b43757c68e24bf2619061.

Patch needs polish and after a quick irc discussion Ben&I agreed that
the revert is in order.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agotests/kms_fbc_crc: Update blit code for BDW
Ville Syrjälä [Tue, 10 Jun 2014 11:51:44 +0000 (14:51 +0300)]
tests/kms_fbc_crc: Update blit code for BDW

Switch to XY_COLOR_BLT from COLOR_BLT and use the appropriate
macros to make the code work on BDW.

Also make the blit 8bpp instead if 16bpp. 8bpp is what it was
supposed to use all along.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76307
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
10 years agoAPI docs for intel_check_memory()
Chris Wilson [Tue, 10 Jun 2014 13:29:00 +0000 (14:29 +0100)]
API docs for intel_check_memory()

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agoNEWS: post-release bump
Daniel Vetter [Tue, 10 Jun 2014 06:18:37 +0000 (08:18 +0200)]
NEWS: post-release bump

10 years agobump version to 1.7 and add the release date intel-gpu-tools-1.7
Rodrigo Vivi [Mon, 9 Jun 2014 18:30:15 +0000 (11:30 -0700)]
bump version to 1.7 and add the release date

Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
10 years agoFix make distclean by fixing includes of version.h
Rodrigo Vivi [Mon, 9 Jun 2014 18:15:47 +0000 (11:15 -0700)]
Fix make distclean by fixing includes of version.h

Actually only the igt_core was breaking the make distcheck,
but let's make it consistent and let the code cleaner.

Credits-to: Reviewed-by: Ben Widawsky <ben@bwidawsk.net>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
10 years agonull_state_gen: Fix Makefile.am for make distcheck
Rodrigo Vivi [Mon, 9 Jun 2014 17:48:10 +0000 (10:48 -0700)]
null_state_gen: Fix Makefile.am for make distcheck

10 years agoquick_dump: Fix vlv file names on Makefile.am
Rodrigo Vivi [Mon, 9 Jun 2014 17:47:13 +0000 (10:47 -0700)]
quick_dump: Fix vlv file names on Makefile.am

10 years agoigt/gem_evict_alignment: Fix the memory limits checking
Chris Wilson [Fri, 6 Jun 2014 07:43:08 +0000 (08:43 +0100)]
igt/gem_evict_alignment: Fix the memory limits checking

We actually allocate twice as many bo as needed to fill the aperture to
cause ENOSPC, but the entire payload has to still fit into RAM.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=75138
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agoigt/gem_evict_alignment: Fix the memory limits checking
Chris Wilson [Fri, 6 Jun 2014 07:43:08 +0000 (08:43 +0100)]
igt/gem_evict_alignment: Fix the memory limits checking

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=75138
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agoigt/gem_evict_alignment: Remove obsolete skip on gen8+
Chris Wilson [Fri, 6 Jun 2014 07:40:36 +0000 (08:40 +0100)]
igt/gem_evict_alignment: Remove obsolete skip on gen8+

If the BLT commands, aren't fixed yet, they should be. ASAP.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agoAdd rc6_residency_counter subtest
Wendy Wang [Thu, 5 Jun 2014 02:27:42 +0000 (10:27 +0800)]
Add rc6_residency_counter subtest

Move rc6_residency_check to subtest, add new rc6_residency_counter subtest
for pm_rc6_residency IGT case.

Test results run on platforms show as below:
On HSW
---------------------------------------
[root@x-hswu opt]# ./pm_rc6_residency
IGT-Version: 1.6-g35b31df (x86_64) (Linux: 3.15.0-rc3_drm-intel-nightly_0791a3_20140520+ x86_64)
Subtest rc6-residency-check: SUCCESS
This machine doesn't support rc6pp
This machine doesn't support rc6p
This machine entry  rc6 status.
The residency counter : 0.999667
Subtest rc6-residency-counter: SUCCESS

On IVB
----------------------------------------
[root@IVB tests]# ./pm_rc6_residency
IGT-Version: 1.6-g35b31df (x86_64) (Linux: 3.13.6_20140318+ x86_64)
Subtest rc6-residency-check: SUCCESS
This machine entry  rc6p status.
The residency counter : 0.997000
Subtest rc6-residency-counter: SUCCESS

On BYT
----------------------------------------
root@x-byt:/opt# ./pm_rc6_residency
IGT-Version: 1.6-g0d39021 (x86_64) (Linux: 3.14.0_kcloud_ceabbb_20140521+ x86_64)
Subtest rc6-residency-check: SUCCESS
This machine doesn't support rc6pp
This machine doesn't support rc6p
The residency counter : 1.144333
Test assertion failure function rc6_residency_counter, file pm_rc6_residency.c:131:
Last errno: 0, Success
Failed assertion: counter_result <=1
Debug files must be wrong,
Subtest rc6-residency-counter: FAIL

On BDW
---------------------------------------
[root@x-bdw01 opt]# ./pm_rc6_residency
IGT-Version: 1.6-g0d39021 (x86_64) (Linux: 3.15.0-rc5_drm-intel-nightly_367653_20140521+ x86_64)
Subtest rc6-residency-check: SUCCESS
This machine doesn't support rc6pp
This machine doesn't support rc6p
The residency counter : 0.994333
This machine entry rc6 state.
Subtest rc6-residency-counter: SUCCESS

Signed-off-by: Liu, Lei A <lei.a.liu@intel.com>
Signed-off-by: Wendy Wang <wendy.wang@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
10 years agolib: Add debug to memory limits checks
Chris Wilson [Thu, 5 Jun 2014 12:33:25 +0000 (13:33 +0100)]
lib: Add debug to memory limits checks

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agoigt/gem_evict_everything: Compute number of surfaces to saturate the aperture
Chris Wilson [Thu, 5 Jun 2014 12:19:39 +0000 (13:19 +0100)]
igt/gem_evict_everything: Compute number of surfaces to saturate the aperture

The goal is to only fill the aperture, not all of memory, so fine-tune
the computed number of surfaces, hopefully avoiding an integer overflow
in the process.

References: https://bugs.freedesktop.org/show_bug.cgi?id=79573
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agolib/igt_debugfs: Fix spelling docs
Daniel Vetter [Thu, 5 Jun 2014 08:28:09 +0000 (10:28 +0200)]
lib/igt_debugfs: Fix spelling docs

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agorendercopy/gen8: Also emit 3DSTATE_WM_DEPTH_STENCIL.
Kenneth Graunke [Tue, 3 Jun 2014 21:52:30 +0000 (14:52 -0700)]
rendercopy/gen8: Also emit 3DSTATE_WM_DEPTH_STENCIL.

rendercopy was failing to emit 3DSTATE_WM_DEPTH_STENCIL, which is a new
packet on Broadwell.  Mesa emits this packet.

This appears to fix various tests on a fresh boot, when Mesa has never
run.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78890
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78891
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78935
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78936
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78937
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78938
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Ben Widawsky <ben@bwidawsk.net>
Tested-by: Guo Jinxian <jinxianx.guo@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
10 years agotests/kms_flip: Move EBUSY to a new busy-flip subtest
Ville Syrjälä [Wed, 28 May 2014 17:05:59 +0000 (20:05 +0300)]
tests/kms_flip: Move EBUSY to a new busy-flip subtest

The EBUSY checking is very fragile currently in case there's any kind
extra delay in the test loop. At least the flip-vs-rmfb fails reliably
on my IVB.

So to make the test less fragile remove the EBUSY check from all the
current flip tests, and instead add a specific busy-flip test. To
better guarantee that we get the EBUSY add a blocking vblank wait just
before we issue the first flip. This maximizes the time we have to
submit two flips during one frame.

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
10 years agointel-gpu-tools: move kms_fence_pin_leak to single test list
Tim Gore [Wed, 4 Jun 2014 08:32:54 +0000 (09:32 +0100)]
intel-gpu-tools: move kms_fence_pin_leak to single test list

In Makefile.sources, kms_fence_pin_leak was in the "Multi" test list,
ie tests with subtests, whereas it is actually simple/single test.
This was confusing the Android script for enumerating tests.

Signed-off-by: Tim Gore <tim.gore@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agoquick_dump: increase reg name column width
Imre Deak [Tue, 3 Jun 2014 13:52:48 +0000 (16:52 +0300)]
quick_dump: increase reg name column width

Needed by the new long audio register names.

Signed-off-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
10 years agoquick_dump: vlv: remove redundant base file specifications
Imre Deak [Tue, 3 Jun 2014 13:04:47 +0000 (16:04 +0300)]
quick_dump: vlv: remove redundant base file specifications

The registers in these files are included in the dumps for all platforms
by default, so no need to specify them explicitly.

Signed-off-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
10 years agoquick_dump: vlv: move flisdsi register group to its logical place
Imre Deak [Tue, 3 Jun 2014 12:44:27 +0000 (15:44 +0300)]
quick_dump: vlv: move flisdsi register group to its logical place

Signed-off-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
10 years agoquick_dump: vlv: add missing dpio phy registers
Imre Deak [Tue, 3 Jun 2014 12:55:11 +0000 (15:55 +0300)]
quick_dump: vlv: add missing dpio phy registers

Also move the phy register block to its logical place.

Signed-off-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
10 years agoquick_dump: vlv: add missing display registers
Imre Deak [Tue, 3 Jun 2014 11:26:30 +0000 (14:26 +0300)]
quick_dump: vlv: add missing display registers

Signed-off-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
10 years agoquick_dump: chv: add misc gen7 GT registers
Imre Deak [Tue, 3 Jun 2014 13:11:52 +0000 (16:11 +0300)]
quick_dump: chv: add misc gen7 GT registers

Signed-off-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
10 years agoquick_dump: chv: add dsi (mipi) registers
Imre Deak [Mon, 2 Jun 2014 23:02:24 +0000 (02:02 +0300)]
quick_dump: chv: add dsi (mipi) registers

Signed-off-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
10 years agoquick_dump: vlv: clean up dsi (mipi) registers
Imre Deak [Mon, 2 Jun 2014 22:59:45 +0000 (01:59 +0300)]
quick_dump: vlv: clean up dsi (mipi) registers

Split out the base offset into the third argument and rename MIPIB to
MIPIC to match the display cluster register HAS.

Signed-off-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>