Zhao Yakui [Thu, 6 Nov 2014 08:02:31 +0000 (16:02 +0800)]
Mediafill/skl: Remove redundant field to fix GPU hang
After applying the commit(
982f7eb238a0898c456e0574dee7c4507738d75f), the
OUT_RELOC is updated on Broadwell and later, which is to handle the
64-bit field of gfx address internally. In such case some commands
should be fixed, otherwise GPU hang will be triggered when running
gem_media_fill. (It is already fixed on Broadwell)
Reviewed-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Zhao Yakui [Thu, 6 Nov 2014 08:02:30 +0000 (16:02 +0800)]
Rendercopy/skl: Remove redundant field to fix GPU hang
After applying the commit(
982f7eb238a0898c456e0574dee7c4507738d75f), the
OUT_RELOC is updated on Broadwell and later, which is to handle the
64-bit field of gfx address internally. In such case some commands
should be fixed, otherwise GPU hang will be triggered when running
rendercopy. (It is already fixed on Broadwell)
Reviewed-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Brad Volkin [Tue, 4 Nov 2014 22:00:43 +0000 (14:00 -0800)]
tests/drv_hangman: skip a few asserts when using the cmd parser
This test has a few checks that batch buffer addresses in the error
state match the expected address for the userspace supplied batch.
But the batch buffer copy piece of the command parser means that
the logged addresses are actually _supposed_ to be different. So
skip just those checks.
Signed-off-by: Brad Volkin <bradley.d.volkin@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Chris Wilson [Tue, 4 Nov 2014 16:34:40 +0000 (16:34 +0000)]
tests: Remove spurious binaries from gem_tiled_wb commit
commit
c45216b26d223ffd7f68c5794870214445a64b5c
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Nov 4 07:30:57 2014 +0000
igt/gem_tiled_wb: Exercise CPU mmaps with swizzling
brought along a few interlopers.
Daniel Vetter [Tue, 4 Nov 2014 16:24:55 +0000 (17:24 +0100)]
tests/prime_nv_test: Skip cpu mmap testcase
It's not implemented yet, so no point in running the test really.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=68638
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Chris Wilson [Tue, 4 Nov 2014 12:13:11 +0000 (12:13 +0000)]
igt/gem_tiled_wb: Remove extraneous mmap(wc) requirement
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Chris Wilson [Tue, 4 Nov 2014 07:30:57 +0000 (07:30 +0000)]
igt/gem_tiled_wb: Exercise CPU mmaps with swizzling
This exercises the the extended get_tiling ioctl in order to determine
proper swizzling for direct access to objects through WB.
Userspace cannot handle bit17 swizzling through wc mmaps (because bit17
requires swizzling based on the actual physical address of the page -
which is unknown to userspace) and so we need an extended get_tiling
ioctl to report the actual as well as the logical swizzling on an
object.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Chris Wilson [Tue, 4 Nov 2014 12:06:17 +0000 (12:06 +0000)]
ioctl_wrappers: Pass in offset to CPU mmaps
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Chris Wilson [Tue, 4 Nov 2014 07:40:11 +0000 (07:40 +0000)]
igt/gem_linear_blits: Add sufficient RAM check
References: https://bugs.freedesktop.org/show_bug.cgi?id=85834
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Thomas Wood [Wed, 29 Oct 2014 12:26:09 +0000 (12:26 +0000)]
lib/igt_core.h: add debug messages for test requirements
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Thomas Wood [Wed, 29 Oct 2014 12:03:22 +0000 (12:03 +0000)]
lib/igt_core.h: fix igt_skip_on_f requirement message
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Thomas Wood [Wed, 29 Oct 2014 17:20:52 +0000 (17:20 +0000)]
lib/tests: use the "check_" prefix for tests
The "check_" prefix ensures the test programs are not installed and are
only built when "make check" is run.
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Thomas Wood [Wed, 29 Oct 2014 17:18:06 +0000 (17:18 +0000)]
build: fix distcheck
Fix distcheck issues introduced by commit 685e577 (Move library
selftests to lib/tests).
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Thomas Wood [Wed, 29 Oct 2014 16:17:41 +0000 (16:17 +0000)]
lib: ensure the library is built before the tests
This fixes the build problems introduced by commit 685e577 (Move library
selftests to lib/tests).
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Gagandeep S Arora [Fri, 12 Sep 2014 19:56:04 +0000 (01:26 +0530)]
demos/intel_sprite_on: Added support to display all sprites.
Extended intel_sprite_on functionality to display all the
available sprite planes on a particular connector.
Signed-off-by: Gagandeep S Arora <gagandeep.s.arora@intel.com>
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Daniel Vetter [Wed, 29 Oct 2014 12:31:15 +0000 (13:31 +0100)]
tests: Reenable testdisplay
This seems to have been accidentally disabled in
commit
982f7eb238a0898c456e0574dee7c4507738d75f
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Aug 29 15:19:57 2014 +0100
Prepare for 64bit relocation addresses
Apparently no one noticed.
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Daniel Vetter [Wed, 29 Oct 2014 12:28:55 +0000 (13:28 +0100)]
tests/testdisplay: Fix test status check fumble
This is a regression from
4306538d1d3f60877866c39c9ca953cc5e541dae is the first bad commit
commit
4306538d1d3f60877866c39c9ca953cc5e541dae
Author: Daniel Vetter <daniel.vetter@ffwll.ch>
AuthorDate: Thu Oct 2 11:18:20 2014 +0200
Commit: Daniel Vetter <daniel.vetter@ffwll.ch>
CommitDate: Thu Oct 2 11:34:55 2014 +0200
tests: Sprinkle missing igt_exit() where needed.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=85582
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Daniel Vetter [Tue, 28 Oct 2014 09:54:32 +0000 (10:54 +0100)]
Add CONTRIBUTING file
i-g-t has become a fairly big project with lots of people involved, so
lets document the basics and formalize the current process a bit.
Also use this opportunity to announce Thomas Wood as igt maintainer
once more.
v2: Recommend --subject-prefix="PATCH i-g-t" as suggested by Damien.
v3: Clean out contributing-related information from README.
Cc: Thomas Wood <thomas.wood@intel.com>
Cc: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Daniel Vetter [Mon, 27 Oct 2014 14:08:50 +0000 (15:08 +0100)]
Move library selftests to lib/tests
Again they're not really igt testcases so are in the way of
running spatch unconditionally. Move them someplace else.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Daniel Vetter [Mon, 27 Oct 2014 13:51:55 +0000 (14:51 +0100)]
Move watermark code from tests to tools
They're now igt tests, and so if you blindly run lib/igt.cocci with
spatch on tests/*c they get mangled. Move them away, but still keep
them as noinst targets.
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Paulo Zanoni [Fri, 24 Oct 2014 19:40:04 +0000 (17:40 -0200)]
tests/pm_rpm: add system-suspend-{execbuf,modeset} subtests
We were having a problem where the system-suspend test was passing,
but then the next test - gem-execbuf-stress - was failing because of
bugs caused by the suspend subtest. So add a single test that emulates
the same problem, and another test that just sets a mode after resume.
This way, we should be reproducing the problem even if you don't run
the tests in the order they are defined.
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Damien Lespiau [Wed, 15 Oct 2014 22:13:30 +0000 (23:13 +0100)]
skl_ddb_allocation: Respect the minimum number of blocks
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Ville Syrjälä [Tue, 27 May 2014 18:33:10 +0000 (21:33 +0300)]
tests/kms_flip: Make flip-vs-panning-vs-hang change DSPSURF
Make sure DSPSURF will change during the panning operation
in flip-vs-panning-vs-hang.
This will now test agains bugs between the kernel's mmio vs.
CS flip race handling and GPU resets. If the kernel is buggy
if will fail to notice that the panning operation changed the
base address before the GPU reset had a chance to deal with the
pending page flips, and so the flip would never complete due to
DSPSURFLIVE not matching the expected value.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Chris Wilson [Fri, 24 Oct 2014 06:40:04 +0000 (07:40 +0100)]
igt/gem_userptr_blits/dmabuf: Map the right pointer for !llc
References: https://bugs.freedesktop.org/show_bug.cgi?id=85354#c2
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Mika Kuoppala [Mon, 15 Sep 2014 10:01:31 +0000 (13:01 +0300)]
tests/gem_workarounds: adapt to constant wa list from driver
Driver now returns the constant values that were set once
on ring initialization time. Extend the simple interface
check to all gens (i915_wa_registers needs to be present).
Due to delay when render context is visible on cpu side,
wait gpu to execute something on default context to get rid
of undeterministic behaviour by sometimes getting all ones.
Cc: Arun Siluvery <arun.siluvery@linux.intel.com>
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
Daniel Vetter [Thu, 23 Oct 2014 15:54:44 +0000 (17:54 +0200)]
tests/*: lib/igt.cocci found something!
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Sonika Jindal [Thu, 23 Oct 2014 15:48:50 +0000 (08:48 -0700)]
kms_rotation_crc: Add test for cursor rotation (v2)
v2: Slight rebasing onto latest i-g-t codebase (Matt).
Signed-off-by: Sonika Jindal <sonika.jindal@intel.com>
Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Mika Kuoppala [Mon, 20 Oct 2014 10:27:55 +0000 (13:27 +0300)]
lib: fix #define max
Regression from:
commit
be4710a541b517b5f8663448bffed5656d59b47b
Author: Thomas Wood <thomas.wood@intel.com>
Date: Fri Oct 10 11:20:35 2014 +0100
lib: add common min and max macros
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=85218
Tested-by: Guo Jinxian <jinxianx.guo@intel.com>
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
Chris Wilson [Thu, 23 Oct 2014 06:55:54 +0000 (07:55 +0100)]
igt/gem_userptr_blits/dmabuf: Provide partial coverage on !llc platforms
Without LLC, we cannot assume coherency between system RAM and the GTT.
If we try to use the GTT with snooped memory, the machine may lock up,
so the kernel prevents us from doing so, causing the test to fail.
However, we still do want to verify that we can access the userptr
through a dmabuf, so just check that we can make a copy from it using
the GPU and ignore the GTT cross-checking.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=85354
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Paulo Zanoni [Tue, 21 Oct 2014 13:45:59 +0000 (11:45 -0200)]
lib/igt_aux: move audio RPM code to igt_setup_runtime_pm()
If we don't enable audio runtime PM, the audio driver won't release
its reference, the refcount won't ever become zero, so we will never
actually runtime suspend. So move this code from pm_rpm.c to
igt_aux.c, so kms_flip - and any other IGT test case using RPM - can
benefit from it.
Previously, if you ran pm_rpm before running the other tests - or if
you just didn't have snd_hda_intel loaded - you wouldn't notice this
bug.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78893
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Brad Volkin [Wed, 15 Oct 2014 21:52:42 +0000 (14:52 -0700)]
tests/gem_exec_parse: test for chained batch buffers
libva makes extensive use of chained batch buffers. The batch
buffer copy portion of the command parser has the potential to
break chained batches, so add a simple test to make sure that
doesn't happen.
Signed-off-by: Brad Volkin <bradley.d.volkin@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Paulo Zanoni [Tue, 14 Oct 2014 16:52:58 +0000 (13:52 -0300)]
tests/kms_cursor_crc: HSW/BDW only have square cursors
When I look at cursor_size_ok() (from the Kernel's intel_display.c), I
see that only 845g and i865g support non-square cursors, so SKIP the
tests on HSW/BDW instead of failing them.
This problem happened because support for non-square cursors was being
developed for HSW/BDW, but it ended up not being merged due to a small
problem and priority changes. Let's make those tests SKIP until we
have proper support on the Kernel: after that, we can revert this
patch.
v2: Improve commit message.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=84268
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Paulo Zanoni [Tue, 14 Oct 2014 19:01:10 +0000 (16:01 -0300)]
lib/igt_aux: make igt_wait_for_pm_status() resist the signal helper
If the signal helper is active, the usleep() calls return earlier, and
we may end up returning false way before the 10s timeout, failing the
subtests. This currently happens on the kms_flip RPM interruptible
subtests.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78893
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Thomas Wood [Wed, 15 Oct 2014 11:10:13 +0000 (12:10 +0100)]
tests/kms_force_connector: fix assertion when VGA is already connected
Compare the number of modes available when the edid is reset with the
number before the edid was overridden.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=82230
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Thomas Wood [Thu, 16 Oct 2014 16:29:55 +0000 (17:29 +0100)]
tests: add a check for command line handling
Check that command line handling works consistently across all tests.
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Thomas Wood [Thu, 16 Oct 2014 15:35:44 +0000 (16:35 +0100)]
drm_lib.sh: add standard command line options
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Thomas Wood [Thu, 16 Oct 2014 13:23:24 +0000 (14:23 +0100)]
configure: include the skylake quick_dump files in EXTRA_DIST
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Thomas Wood [Thu, 16 Oct 2014 12:59:37 +0000 (13:59 +0100)]
quick_dump: fix distcheck
Commit 711a17a (quick_dump: Move base_display.txt to indivual platforms)
renamed base_display.txt to common_display.txt, but didn't update
Makefile.am accordingly. Since common_display.txt is now included in the
platform files, it is automatically included in $(QUICK_DUMP_EXTRA_DIST)
and therefore just the reference to base_display.txt needs removing.
Cc: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Thomas Wood [Fri, 10 Oct 2014 10:20:35 +0000 (11:20 +0100)]
lib: add common min and max macros
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Thomas Wood [Wed, 8 Oct 2014 16:06:58 +0000 (17:06 +0100)]
lib: various documentation fixes
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Damien Lespiau [Mon, 13 Oct 2014 14:14:15 +0000 (15:14 +0100)]
skl_ddb_allocation: Make 'end' exclusive in the DDB allocation entry
Ville suggested that we should use the same semantics as C arrays to
reduce the number of those pesky +1/-1 in the allocation code.
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Damien Lespiau [Mon, 28 Apr 2014 06:11:04 +0000 (07:11 +0100)]
skl_ddb_allocation: Add checks on the DDB entries
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Damien Lespiau [Mon, 28 Apr 2014 04:56:31 +0000 (05:56 +0100)]
skl_ddb_allocation: Add a standalone version of the DDB allocator
This is useful to debug the allocation algorithm.
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Thomas Wood [Thu, 9 Oct 2014 15:44:12 +0000 (16:44 +0100)]
tests/kms_force_connect: skip if a VGA connector is not available
v2: rename "connector" to "vga_connector" to improve the skip message
(Chris Wilson)
Suggested-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Thomas Wood [Thu, 9 Oct 2014 15:29:20 +0000 (16:29 +0100)]
tests/kms_force_connector: ensure igt_exit is called at exit
Since commit 5782eca (lib/igt_core.c: disable lowmemorykiller during
tests), igt_exit needs to be called before the test exits.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=84771
Cc: Tim Gore <tim.gore@intel.com>
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Rodrigo Vivi [Tue, 14 Oct 2014 17:19:13 +0000 (10:19 -0700)]
tests/pm_rc6_residency: Split RC6p and RC6pp.
sysfs interface for rc6 has been changed to only expose deep RC6 file to the platorms
that really support them, aka SNB and IVB.
So let's split this test and only test RC6p and RC6pp on these platforms.
Reference: https://bugs.freedesktop.org/show_bug.cgi?id=84886
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Paulo Zanoni [Tue, 14 Oct 2014 18:09:22 +0000 (15:09 -0300)]
tests/pm_rpm: use igt_assert_eq() on COMPARE()
A few weeks ago we were hitting this assertion, and the _eq macro is
more useful when you're debugging.
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Paulo Zanoni [Tue, 14 Oct 2014 17:59:36 +0000 (14:59 -0300)]
tests/pm_rpm: fix some compilation warnings
warning: ignoring return value of ‘write’, declared with attribute
warn_unused_result [-Wunused-result]
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Paulo Zanoni [Tue, 14 Oct 2014 17:42:23 +0000 (14:42 -0300)]
tests/pm_rpm: reduce the number of rounds on the stress tests
With the current Kernel, it takes more than 10 minutes to run
modeset-stress-extra-wait on BYT with eDP, and we don't really want
IGT subtests that take more than 10 minutes to run: QA reports them as
bugs.
Since, as far as I remember, any of these RPM race condition bugs we
had could always be triggered with just 4-5 rounds of testing, let's
tune down the number of rounds we test:
Before:
rounds = (--quick option used) ? 10 : 50;
After:
rounds = (--quick option used) ? 10 : 40;
rounds = (wait_flags & WAIT_EXTRA) ? rounds / 2 : rounds;
This should make all subtests be way above the 10m limit.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=84897
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Chris Wilson [Tue, 14 Oct 2014 09:10:42 +0000 (10:10 +0100)]
igt/gem_bad_reloc: Handle real offset being 0
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Chris Wilson [Tue, 14 Oct 2014 08:27:40 +0000 (09:27 +0100)]
igt/gem_negative_reloc: Execute a BLT operation with a negative reloc
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Rodrigo Vivi [Fri, 10 Oct 2014 15:18:28 +0000 (08:18 -0700)]
Revert "tests/kms_sink_crc_basic: Wait 2 vblanks before grabing the new crc."
This reverts
commit
d92fbc23138b1014e8574daf29dbb06b8c81aa7a.
Author: Rodrigo Vivi <rodrigo.vivi@intel.com>
Date: Tue Sep 9 12:25:47 2014 -0400
tests/kms_sink_crc_basic: Wait 2 vblanks before grabing the new crc.
Sink CRC is fixed on kernel to wait as many vblanks as needed. It was fixed b
commit
ad9dc91b6e21266bfc6f466db4b95e10211f31ee
Author: Rodrigo Vivi <rodrigo.vivi@gmail.com>
Date: Tue Sep 16 19:18:12 2014 -0400
drm/i915: Fix Sink CRC
This this fix in place we don't need this extra 2 vblanks on test case itself
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Rodrigo Vivi [Fri, 10 Oct 2014 15:14:32 +0000 (08:14 -0700)]
Revert "tests/kms_psr_sink_crc: Wait 2 vblanks before grabing the new crc."
This reverts
commit
d190a1f9668680c7a429110c91f8faa27949b220.
Author: Rodrigo Vivi <rodrigo.vivi@intel.com>
Date: Wed Sep 3 21:26:29 2014 -0400
tests/kms_psr_sink_crc: Wait 2 vblanks before grabing the new crc.
Sink CRC is fixed on kernel to wait as many vblanks as needed. It was fixed by:
commit
ad9dc91b6e21266bfc6f466db4b95e10211f31ee
Author: Rodrigo Vivi <rodrigo.vivi@gmail.com>
Date: Tue Sep 16 19:18:12 2014 -0400
drm/i915: Fix Sink CRC
This this fix in place we don't need this extra 2 vblanks on test case itself.
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Mika Kuoppala [Fri, 10 Oct 2014 13:59:00 +0000 (16:59 +0300)]
tools/null_state_gen: Add copyright notice to state output
along with info about what generated it.
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
Armin Reese [Fri, 5 Sep 2014 20:58:11 +0000 (13:58 -0700)]
tools/null_state_gen: Add GEN9 golden context batch buffer creation
Modifications to 'null_state_gen' so it can generate GEN9
golden context batch buffer source for SKL.
v2: - rebased on top of gen8 changes (Mika)
- fixed state base address command size (Mika)
- base address size macro as pages (Mika)
v3: - rebased on top of current master (Mika)
- removed obsolete #includes (Mika)
- added copyright (Mika)
- render and component packing added (Mika)
Cc: Damien Lespiau <damien.lespiau@intel.com>
Cc: Armin Reese <armin.c.reese@intel.com>
Cc: Volkin, Bradley D <bradley.d.volkin@intel.com>
Reviewed-by: Volkin, Bradley D <bradley.d.volkin@intel.com> (v2)
Signed-off-by: Armin Reese <armin.c.reese@intel.com> (v1)
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
Mika Kuoppala [Mon, 8 Sep 2014 07:49:59 +0000 (10:49 +0300)]
tools/null_state_gen: Add Gen8 golden state
Previously we didn't have a clear understanding what is necessary
for a pipeline state to be properly initialized. So we had to improvise
and use a stripped out render copy.
Now we have a more clear understanding so switch out render copy based
frankenstate to state we can call golden state.
v2: - export intel_batch_state_offset
- add 3DSTATE_RASTER (Bradley Volkin)
Cc: Volkin, Bradley D <bradley.d.volkin@intel.com>
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
Mika Kuoppala [Mon, 8 Sep 2014 07:41:38 +0000 (10:41 +0300)]
tools/null_state_gen: Add macro to emit commands with null state
In null/golden context there are multiple state commands where
the actual state is always zero. For more compact batch representation
add a macro which just emits command and the rest of the state as zero.
v2: - Be more verbose about length bias (Bradley Volkin)
- strip out unrelated state_offset declaration (Bradley Volkin)
Cc: Volkin, Bradley D <bradley.d.volkin@intel.com>
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
Mika Kuoppala [Thu, 9 Oct 2014 15:39:05 +0000 (18:39 +0300)]
tools/null_state_gen: Limit the total state len to 4096 bytes
Currently our kernel side buffer object is only one page.
Limit the amount of dwords to 1024 to enforce this.
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
Mika Kuoppala [Thu, 9 Oct 2014 15:35:49 +0000 (18:35 +0300)]
tools/null_state_gen: Add more debug output
Be more verbose about the state size we generate.
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
Mika Kuoppala [Thu, 9 Oct 2014 16:10:48 +0000 (19:10 +0300)]
tools/null_state_gen: Add copyrights
to files where they were missing.
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
Adam Sampson [Tue, 7 Oct 2014 16:41:18 +0000 (17:41 +0100)]
Don't use += to append to a shell variable.
POSIX only requires "=" to be supported; "+=" works in bash but not in
dash.
Signed-off-by: Adam Sampson <ats@offog.org>
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Adam Sampson [Tue, 7 Oct 2014 16:41:17 +0000 (17:41 +0100)]
Use = rather than == in test.
The POSIX standard only requires test to support "="; "==" works in bash
but not in dash. Other comparisons in configure.ac use "=" already.
Signed-off-by: Adam Sampson <ats@offog.org>
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Chris Wilson [Wed, 8 Oct 2014 09:44:06 +0000 (10:44 +0100)]
igt/kms_flip/nonblocking_read: Demonstrate that O_NONBLOCK is a myth
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Damien Lespiau [Wed, 8 Oct 2014 09:25:48 +0000 (10:25 +0100)]
quick_dump: Drop common_display.txt from VLV/CHV
Those registers are big core registers and weren't really relevant for
VLV/CHV. Drop them from the dump then.
Suggested-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Damien Lespiau [Mon, 6 Oct 2014 16:42:33 +0000 (17:42 +0100)]
quick_dump/skl: Make quick_dump SKL aware
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Damien Lespiau [Mon, 6 Oct 2014 14:10:35 +0000 (15:10 +0100)]
quick_dump/skl: Add some display registers
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Damien Lespiau [Mon, 6 Oct 2014 17:32:51 +0000 (18:32 +0100)]
quick_dump: Move base_display.txt to indivual platforms
SKL will have a whole separate display regs file, so merge
base_display.txt into each platform file.
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Damien Lespiau [Mon, 6 Oct 2014 15:30:39 +0000 (16:30 +0100)]
quick-dump: Make quick dump link against libintel_tools
Because quick-dump was only selecting a few files in lib/ and we move
stuff around and/or add new dependencies we were failing to provide the
necessary symbols to the shim library providing python bindings. And so
we had a run-time error:
Traceback (most recent call last):
File "./tools/quick_dump/quick_dump.py", line 17, in <module>
import chipset
File "/home/damien/gfx/sources/intel-gpu-tools/tools/quick_dump/chipset.py", line 28, in <module>
_chipset = swig_import_helper()
File "/home/damien/gfx/sources/intel-gpu-tools/tools/quick_dump/chipset.py", line 24, in swig_import_helper
_mod = imp.load_module('_chipset', fp, pathname, description)
File "/usr/lib64/python3.3/imp.py", line 183, in load_module
return load_dynamic(name, filename, file)
ImportError: /home/damien/gfx/sources/intel-gpu-tools/tools/quick_dump/_chipset.so: undefined symbol: kmstest_pipe_name
So, let's simplify maintainance and just link against the library we're
building and using elsewhere.
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Damien Lespiau [Mon, 6 Oct 2014 15:49:05 +0000 (16:49 +0100)]
gem_wait: Use PRIu64 in format string
../../tests/gem_wait.c: In function ‘render_timeout’:
../../tests/gem_wait.c:182:3: warning: format ‘%llu’ expects argument of type
‘long long unsigned int’, but argument 3 has type ‘uint64_t’ [-Wformat=]
igt_info("Finished with %llu time remaining\n", timeout);
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Damien Lespiau [Mon, 6 Oct 2014 17:23:33 +0000 (18:23 +0100)]
overlay: Fix compilation warning when not having xrandr
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Damien Lespiau [Mon, 6 Oct 2014 17:19:58 +0000 (18:19 +0100)]
gem_seqno_wrap: Remove unused variable
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Daniel Vetter [Mon, 6 Oct 2014 06:32:49 +0000 (08:32 +0200)]
tests/gem_wait: Don't close drmfd in subtest
I didn't notice this on the machine I developed it since the original
wait testcase fails there. Oops.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Tim Gore [Thu, 2 Oct 2014 15:26:32 +0000 (16:26 +0100)]
lib/Android.mk: add define of IGT_DATADIR for igt_fb.c
Since the igt_create_stereo_fb function moved into igt_fb.c
we need to add the definition of IGT_DATADIR in the Android
makefile in order to build the cairo dependent tests.
Signed-off-by: Tim Gore <tim.gore@intel.com>
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Daniel Vetter [Thu, 2 Oct 2014 09:18:20 +0000 (11:18 +0200)]
tests: Sprinkle missing igt_exit() where needed.
Yay for breaking piles of tests.
This regression has been introduced with
commit
5782eca1e19e85a04ad402fa4094aa1b5f9c53ce
Author: Tim Gore <tim.gore@intel.com>
Date: Wed Oct 1 13:25:20 2014 +0100
lib/igt_core.c: disable lowmemorykiller during tests
Cc: Tim Gore <tim.gore@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Tim Gore [Wed, 1 Oct 2014 12:25:20 +0000 (13:25 +0100)]
lib/igt_core.c: disable lowmemorykiller during tests
Several IGT tests cycle through a lot of GEM memory and
when running these tests on Android they tend to get
killed by the lowmemorykiller. The lowmemorykiller really
is not usefull in this context and is just preventing the
test from doing its job. This commit adds a function to
disable the lowmemorykiller by writing "9999" to its
oom adj parameter, which means it will never "select"
any process to kill. The normal linux oom killer is still
there to protect the kernel.
The low memory killer is disabled during the common
init function and then re-enabled by the exit handler.
To make this work for single tests the exit handler is now
installed in the common init function also so that it is
invoked for all tests.
This is just a hack to get round the fact that the i915
driver uses the concept of purgeable memory which is not
understood by the lowmemorykiller. If this ever gets
fixed then this patch can be removed.
Signed-off-by: Tim Gore <tim.gore@intel.com>
[danvet: A bit of polish (coding style, static and rename
check_igt_exit to common_exit_handler, drop the is_disabled check
since we only call this once now).]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Daniel Vetter [Wed, 1 Oct 2014 10:12:43 +0000 (12:12 +0200)]
NEWS: Updates
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Daniel Vetter [Tue, 30 Sep 2014 16:44:15 +0000 (18:44 +0200)]
lib/aux: Print progress output at INFO level
With the structured logging it makes more sense to tune this down a
bit. Also, this way it is consistent with Thomas Wood's new activity
indicator helper.
Spotted while discussing Thomas' patch with him.
v2: Thomas noticed that I've forgotten the fflush. Extract
igt_interactive_info for both igt_progress and igt_print_activity.
v3: Interactive output should go to stderr. Also extract the "is this
a terminal" check.
Cc: Thomas Wood <thomas.wood@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Thomas Wood [Tue, 30 Sep 2014 16:05:39 +0000 (17:05 +0100)]
lib: add a function to indicate activity
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Thomas Wood [Mon, 29 Sep 2014 11:08:31 +0000 (12:08 +0100)]
tests/sysfs_l3_parity: fix warnings in test enumeration
Source drm_lib.sh before skipping the test to ensure that subtest
enumeration is always handled correctly.
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Thomas Wood [Fri, 26 Sep 2014 14:16:21 +0000 (15:16 +0100)]
lib: ensure any buffers are flushed before fork
Flush any buffers before forking to prevent duplicated output.
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Thomas Wood [Fri, 26 Sep 2014 13:24:52 +0000 (14:24 +0100)]
doc: various spelling and typo fixes
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Imre Deak [Thu, 18 Sep 2014 15:31:29 +0000 (18:31 +0300)]
test/kms, pm: use drm_open_any_master
These tests require DRM master right, so make sure they have it from the
beginning. This gives an early indication if another DRM master is running
and makes the given test skip (with a proper explanation of the reason)
instead of exiting with error.
Signed-off-by: Imre Deak <imre.deak@intel.com>
Imre Deak [Thu, 18 Sep 2014 15:25:37 +0000 (18:25 +0300)]
tests/pm_rpm: factor out drm_open_any_master
Signed-off-by: Imre Deak <imre.deak@intel.com>
Xiang, Haihao [Fri, 11 Apr 2014 13:57:21 +0000 (21:57 +0800)]
lib/skl: Return the render copy and media fill functions
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
[Ben: Reordered if tree]
Signed-off-by: Ben Widawsky <benjamin.widawsky@linux.intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Zhao Yakui [Tue, 11 Feb 2014 02:48:47 +0000 (10:48 +0800)]
mediafill/skl: Follow spec to configure media sampler DOP clock gating in PIPELINE_SELECTION
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Zhao Yakui [Tue, 11 Feb 2014 02:48:46 +0000 (10:48 +0800)]
mediafill/skl: Follow spec to configure FORCE_MEDIA_AWAKE in PIPELINE_SELECTION
The FORCE_MEDIA_AWAKE bit is added for the PIPELINE_SELECTION command and
some instructions requires that the media enginee is awake.
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Zhao Yakui [Tue, 11 Feb 2014 02:48:45 +0000 (10:48 +0800)]
mediafill/skl: Follow the spec to add pipeline_select mask
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Zhao Yakui [Tue, 11 Feb 2014 02:48:44 +0000 (10:48 +0800)]
mediafill/skl: follow the spec to update STATE_BASE_ADDRESS command
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Zhao Yakui [Tue, 11 Feb 2014 02:48:43 +0000 (10:48 +0800)]
mediafill/skl: Start the gen9 media_fill from the gen8 version
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Zhao Yakui [Thu, 23 Jan 2014 05:26:12 +0000 (13:26 +0800)]
assembler/skl: update the extdesc field for SEND instruction
The send instruction on gen9 uses the 32bit immediate instead of 6bit immediate
for the extended message descriptors. And some bits of SEND instruction are defined
as the extdesc field.
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Zhao Yakui [Thu, 23 Jan 2014 05:26:11 +0000 (13:26 +0800)]
assembler/skl: Add more cache agent for write(...)
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Zhao Yakui [Thu, 23 Jan 2014 05:26:10 +0000 (13:26 +0800)]
assembler/skl: update read(...)
READ(...) is used for Render Target read and Media Block read. But there is no
sampler cache agent on gen9. At the same time two message types don't
share the same cache agent any more. So a parameter is needed for cache agent.
The 2th parameter of read(...) is not used for gen6/gen7/gen8. Hence it is
reused as cache agent for SKL as that on ILK.
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Zhao Yakui [Thu, 23 Jan 2014 05:26:09 +0000 (13:26 +0800)]
assembler/skl: Redefine the cache agent type for some fixed functions
The different cache agent type is defined for SKL although it still uses
the same function ID as the previous generations.
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Damien Lespiau [Tue, 5 Feb 2013 12:10:44 +0000 (12:10 +0000)]
assembler/skl: Add gen 9 to the -g option
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Xiang, Haihao [Fri, 11 Apr 2014 13:57:20 +0000 (21:57 +0800)]
rendercopy/skl: Set the URB VS start address to 4
A value less than 4 might result in GPU hang on simulation
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@linux.intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Zhao Yakui [Wed, 22 Jan 2014 01:37:26 +0000 (09:37 +0800)]
rendercopy/skl: Follow the spec to add the Pipeline selection mask
Reviewed-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Zhao Yakui [Wed, 22 Jan 2014 01:37:25 +0000 (09:37 +0800)]
rendercopy/skl: Emit 3DSTATE_WM_HZ_OP
This is from that on BDW. Without it, the pixel pipeline can't work well.
Reviewed-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Zhao Yakui [Wed, 22 Jan 2014 01:37:24 +0000 (09:37 +0800)]
rendercopy/skl: Fix the 3DSTATE_DS instruction length
Reviewed-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Zhao Yakui [Wed, 22 Jan 2014 01:37:23 +0000 (09:37 +0800)]
rendercopy/skl: Fix the STATE_BASE_ADDRESS instruction length
Reviewed-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Zhao Yakui [Wed, 22 Jan 2014 01:37:22 +0000 (09:37 +0800)]
rendercopy/skl: Set Instruction Buffer size Modify Enable to 1
This is ported from that on BDW.
Reviewed-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>