2350 Commits

Author SHA1 Message Date
Sagar Kamble
ba3a1a86b7 kms_cursor_crc: Enabling this test for all cursor sizes
v1: Added 128x128 and 256x256 cursor size support.

v2: Refined the test to use igt_subtest_f and automate enumeration.

v3: Restructuring test enumeration using drmGetCap. [Daniel's review comments]

Signed-off-by: Sagar Kamble <sagar.a.kamble@intel.com>
Reviewed-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-20 17:32:14 +01:00
Rodrigo Vivi
cde058ae35 tests/gem_gtt_hog: Fix for BDW
Update XY_COLOR_BLT command for Broadwell.

v2: stash devid and remove ugly double allocation. (by Chris).
v3: fix inverted blt command size and stash fd, devid and intel_gen.
v4: improved len calculation and noop between blt commands. (by Chris).

Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=73724

Cc: Chris Wilson chris@chris-wilson.co.uk>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
2014-03-19 13:15:24 -07:00
Rodrigo Vivi
d8164356e7 tests/gem_gtt_hog: Use XY_COLOR_BLT instead of COLOR_BLT.
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
2014-03-19 13:15:21 -07:00
Rodrigo Vivi
2f96726c96 tests/gem_wait_render_timeout: Fix for BDW
Update XY_COLOR_BLT command for Broadwell.

Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
2014-03-19 13:12:33 -07:00
Rodrigo Vivi
3e6d9d912a tests/gem_wait_render_timeout: Use XY_COLOR_BLT instead of COLOR_BLT.
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
2014-03-19 11:45:21 -07:00
Ben Widawsky
e8562b3081 gem_wait_render_timeout: use igt_assert_cmpint
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2014-03-19 11:42:07 -07:00
Ben Widawsky
5a5880426e Revert "gen8 rendercpy: temporarily disable"
This reverts commit e41928e6c9bb3f24833a827903f1afeda83592d6.
2014-03-19 10:14:57 -07:00
Ben Widawsky
d92c2cf1de intel_gtt: Dump the whole GTT
The tool formerly only dumped the aperture size, which is fine, but not
everything interesting. Most of the patch is just the variable rename.
The real work happens with using the BAR0 size divided by 2 instead of
the BAR2 size.

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2014-03-19 10:14:57 -07:00
Ben Widawsky
00bd3eba11 quick_dump: gen8 private PAT
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2014-03-19 10:14:57 -07:00
Daniel Vetter
10571b8ccb lib/igt_core: Document library design best practices
This is what I've been doing in the past few months when refactoring
i-g-t code. More ideas and also patterns to add highly welcome.

v2: Some minor polish on the text and add another bullet to reference
the kernel's coding style.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-17 10:43:20 +01:00
Daniel Vetter
3ea97f2e51 lib/igt_core: Small api doc fix
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-17 09:47:50 +01:00
Daniel Vetter
f2e5dc0114 lib/igt_debugfs: s/igt_pipe_crc_check/igt_require_pipe_crc/
Functions which provide feature checks through igt_skip should be of
the form <prefix>_require_<feature>.

Otoh feature checks which return in a boolean whether the feature is
available should be of the form <prefix>_has_<feature>, e.g.
gem_has_blt.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-17 09:47:50 +01:00
Daniel Vetter
dcf947aa4f lib/igt_debugfs: Remove igt_debugfs_init
And also move the igt_debugfs_t type out of the headers.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-17 09:47:50 +01:00
Daniel Vetter
cc8f0e6e3a lib/igt_debugfs: Remove debugfs from pipe crc functions
All tests have now lost explicit references to igt_debugfs_t!

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-17 09:47:50 +01:00
Daniel Vetter
9a7609a8e4 lib/igt_debugfs: Remove debugfs from igt_debugfs_fopen
Also add a missing igt_assert to kms_fbc_crc and again add the missing
Returns: section to the api doc.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-17 09:47:50 +01:00
Daniel Vetter
f04f17bcd4 lib/igt_debugfs: Remove debugfs from igt_debugfs_open
Also update the api docs a bit since the Returns: section was missing.

v2: Readd the accidentally lost line for @filename.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-17 09:47:32 +01:00
Daniel Vetter
28b6e41142 lib/igt_debugfs: implement a singleton igt_debugfs_t instance
Allows us to remove every so little bit of boilerplate from
tests, once it's all rolled out.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-16 14:53:50 +01:00
Mengdong Lin
8fe0c50871 intel_audio_dump: fix CTS/M value index
This patch fixes the reversed CTS/M value index when dumping the
'audio M/CTS programing enable' register.

Signed-off-by: Mengdong Lin <mengdong.lin@intel.com>
Reviewed-by: Haihao Xiang <haihao.xiang@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
2014-03-14 23:07:07 -07:00
Daniel Vetter
374290e430 tests: update .gitignoe
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-14 16:13:45 +01:00
Daniel Vetter
b0b4f8db71 tests/drv_suspend: new forcewake subtest
I suspect that currently we have an issue in there with the runtime PM
refcounting, but silly me developed this on a machine with runtime PM
support ...

Cc: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-14 16:13:09 +01:00
Daniel Vetter
2839619f49 lib/igt_core: add printf attribute to igt_vlog
I didn't know that this also works for the varargs versions of
format strings. But gcc was kind enough to let me know.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-14 16:06:51 +01:00
Daniel Vetter
ea18fc16cd lib: extract igt_open_forcewake_handle
... and I immediately regret that I've killed the return value
for igt_debugfs_init, since we have callers which need to work
without the forcewake stuff, e.g. the reg dumper needs to work
without i915 loaded.

Put this new helper to good use in the mmio code and the pm_pc8
testcase.

Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-14 16:00:22 +01:00
Daniel Vetter
553d594b6e tests/pm_rps: wait longer for idling
Big cores seem to take forever to idle, at least my ivb here. Fairly
ridiculous, so maybe there's more room for our debooster to kick in.

Anyway, this gets the min-max-config-idle and reset subtests going
somewhat reliably on my ivb. They still occasionally fail with the
current frequency pegged to max (or close to it) for no apparent
reason at all. Rebooting tends to fix it.

Don't ask, don't tell.

Cc: Jeff McGee <jeff.mcgee@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-14 11:24:27 +01:00
Daniel Vetter
a7dd98497a tests/pm_rps: use igt_assert_cmpint
Much better debug output almost for free.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-14 11:24:27 +01:00
Daniel Vetter
5cf8d8d6db lib/igt_core: document the caveats of magic code blocks
v2: Polish the wording a bit.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-14 10:59:15 +01:00
Daniel Vetter
5632bc81d9 tests/pm_rps: load harder
Big core platforms need some seriuos omph to break a sweat.

This fixes min-max-config-loaded here on my ivb.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=75146
Cc: Jeff McGee <jeff.mcgee@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-14 10:27:30 +01:00
Daniel Vetter
d4f89d0ff2 tests/pm_rps: simplify load helper setup
There's no need to be fancy here.

Cc: Jeff McGee <jeff.mcgee@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-14 10:27:30 +01:00
Daniel Vetter
5188bbe23e tests/pm_rps: ducttape for igt fork helper cleanup issues
We don't call cleanup handlers when exiting a subtest currently, only
when exiting the entire binary. Which means pm_rps falls over when it
fails more than one subtest.

Cc: Jeff McGee <jeff.mcgee@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-14 10:27:29 +01:00
Daniel Vetter
f962dee636 test/kms_pipe_crc_basic: Fix up igt_kms conversion breakage
Apparently the framework doesn't ignore disabled pipes correctly, so
help it out a bit.

Again an awesome track record for our QA and bug scrubbers :(

Oh and while I rant: Docs for this stuff, please ;-)

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-13 19:44:40 +01:00
Daniel Vetter
bd53d722dd lib: add igt_vlog to print varargs
... and put it to immediate use in igt_display_log.

To make this all add up also drop the return value of igt_display_log,
no one really cared anyway.

Aside: I've noticed that every time another subtest runs (at least
with kms_pipe_crc_basic) the log indent level moves one up ...

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-13 19:44:40 +01:00
Daniel Vetter
1e9e1baba3 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>
2014-03-13 19:44:40 +01:00
Daniel Vetter
523d909834 NEWS: post-release blurb and mention api doc work
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-13 18:09:41 +01:00
Daniel Vetter
eaccd444f7 lib: switch intel_copy_bo to directly take a size
Instead of a width/height combination. Since I've been lazy with the
math this now only accepts page-aligned copy operations, but that's
all we need really.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-13 18:07:22 +01:00
Daniel Vetter
32d41cc7a7 tests/prime_nv_tests: fix copied buffer size
Doesn't affect the test since we only check the first few bytes. But I
want to switch the copy code to always copy entire pages around, so
use the right buffer size.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-13 18:07:22 +01:00
Daniel Vetter
ec5f9e8788 lib: api docs for intel_batchbuffer
- I didn't bother to document the BLIT batch header macros - I'm not
  too happy with them and they're fairly obscure.
- intel_copy_bo could use some interface love, added a FIXME comment
  for now.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-13 18:07:22 +01:00
Daniel Vetter
49e3877ae7 lib/intel_batchbuffer: Remove BATCH_LOCALS
Totally unused, we have frisky implicit assumptions that the
batch is called batch instead.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-13 18:07:21 +01:00
Daniel Vetter
675c91974e lib: remove hw context #defines
The libdrm we require nowadays has them already.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-13 18:07:21 +01:00
Daniel Vetter
3f284f7967 docs: Exclude debug.xml
It is all just stuff used internally by the EU debugger only. Not
really generally useful, expect if someone wants to write
documentation for the debugger.

Which needs a lot more than just this.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-13 18:07:21 +01:00
Rodrigo Vivi
a095072b64 bump version to 1.6 and add the release date
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
2014-03-13 07:52:47 -03:00
Daniel Vetter
981276819f lib/igt_debugfs: api docs
Again issues with an enum, this time intel_pipe_crc_source. The
typedefs seem to work better here though.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-12 21:22:56 +01:00
Daniel Vetter
36a83a6c5c lib/igt_debugfs: drop drm_fd argument from igt_pipe_crc_new
It's nowhere used and removing it gives us a cleaner, more
orthogonal interface.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-12 21:22:52 +01:00
Daniel Vetter
803d07b2ff lib: make igt_debugfs_open infallible
(Almost) no one cared anyway.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-12 21:22:48 +01:00
Daniel Vetter
096bb851f6 lib/ioctl_wrappers: api doc fixup
Oops.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-12 21:22:41 +01:00
Daniel Vetter
adb28fd71d lib: move prefault helpers to igt_debugfs.c
This way all debugfs library code is in one place, ready for some api
documentation care.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-12 21:22:31 +01:00
Daniel Vetter
55e64989e5 lib/igt_core: api documentation
At most a bit of comment of function declaration movement for more
polish. One tricky bit is to #ifdef out (only for gtkdoc of course)
the struct option; forward declaration - gtkdoc needlessly lists it.

FIXME: The struct documentation for igt_helper_process somehow doesn't
get picked up ... Same issue seems to be with the igt_log_level enum,
I've shoveled the relevant documentation into igt_log in free-form for
now.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-12 16:39:39 +01:00
Daniel Vetter
d63fe1519d lib: extract igt_core.c
Same game as with ioctl_wrappers.c.

To split was rather clean except for the static function
oom_adjust_for_doom. But that was a bug, the calls to it in the
various open helpers should simply be done at init and fork time.
Which was already the case, except for simple testcase.  So fix it up.

While at it also start with a small section header for the
documentation.

v2: Don't forget to update the xml template ...

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-12 16:39:39 +01:00
Daniel Vetter
556c49f20b lib/ioctl_wrappers: api doc
Also some tiny polish to function interface:
- @caching in gem_set_tiling should be uint32_t to match the ioctl
  struct.
- s/size/length/ for gem_write/read.
- move gem_get_num_rings to the other ring feature helpers.

v2: Also demote gem_require_ring from static inline and move it, too.

v3: Also move gem_handle_to_libdrm_bo.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-12 16:39:39 +01:00
Daniel Vetter
766c5bc6ae lib: extract ioctl_wrappers.c
I want to group the ioctl wrappers and related functions into their
own documentation section.

Apparently gtkdoc refuses to obey this wish without a corespdonding
header. So appease it. Also gtkdoc seems to struggle with rebuilding a
bit ...

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-11 22:58:07 +01:00
Thomas Wood
6c659264a6 tests: add missing assertion
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-11 21:13:09 +01:00
Thomas Wood
682f69385a lib: Add missing header to Makefile.sources
i915_pciids.h was missing from Makefile.sources, which caused distcheck to
fail.

Signed-off-by: Thomas Wood <thomas.wood@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-03-11 21:11:22 +01:00