1873 Commits

Author SHA1 Message Date
Daniel Vetter
0a587e24b7 tests/gem_storedw_batches_loop: Add testcase to check secure dispatch
v2: Use the mrb_exec function since otherwise we can't pass flags.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-18 18:37:10 +02:00
Daniel Vetter
195f04c300 tests/gem_persistent_relocs: Tune down the test a bit
Takes too long.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-17 00:13:47 +02:00
Daniel Vetter
31139f6b8f tests/gem_fenced_exec_thrash: Add interruptible and busy-load subtests
Usual progression for gem tests up the nasty-scale.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-17 00:13:47 +02:00
Daniel Vetter
d1b9bc0dc1 lib/drmtest: check that igt_exit is called for subtest tests
I get this wrong for almost every conversion to subtests ...

v2: Don't install the check when just listing subtest names.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-17 00:13:47 +02:00
Daniel Vetter
7b3634364a tests/gem_fenced_exec_thrash: New subtests that uses all fences
igt runs under the assumption that nothing else (besides maybe fbcon)
is using the gpu. So we should be able to use all fences.

Keep the conservative testcase around though in case someone has a
broken setup.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-17 00:13:47 +02:00
Daniel Vetter
14e12b8008 tests/*: scrap get_num_fences
Just use gem_available_fences directly.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-17 00:13:47 +02:00
Mengdong Lin
deba868066 intel_audio_dump/hsw: rename some audio configuration registers for Haswell
For Haswell, some audio configuration registers have changed their name and
some bit definitions.

This patch applies the changes, and uses subfunctions to parse registers for
code reuse.

Here is the name change list:
Audio configuration: AUD_CONFIG_x to AUD_TCx_CONFIG
Audio Misc Control: AUD_MISC_CTRL_x to AUD_Cn_MISC_CTRL
Audio M & CTS programming enable: AUD_CTS_ENABLE_x to AUD_TCx_M_CTS_ENABLE
Audio EDID data block: AUD_HDMIW_HDMIEDID_x to AUD_TCx_EDID_DATA
Audio Widget Data Island Packet: AUD_HDMIW_INFOFR_x to AUD_TCx_AUD_INFOFR
Audio Pipe and Converter Configs: AUD_PORT_EN_HD_CFG to AUD_PIPE_CONV_CFG
Audio Digital Converter: AUD_OUT_DIG_CNVT_x to AUD_Cn_DIG_CNVT
Audio Stream Descriptor Format: AUD_OUT_STR_DESC_x to AUD_Cn_STR_DESC
Audio Connect List Entry & Length:  AUD_PINW_CONNLNG_LIST_x to
                                        AUD_TCx_PIN_PIPE_CONN_ENTRY_LNGTH
Audio Connection Select Control: AUD_PINW_CONNLNG_SEL to AUD_PIPE_CONN_SEL_CTRL
Audio DIP & ELD Control State: AUD_DIP_ELD_CTRL_ST_x to AUD_TCx_DIP_ELD_CTRL_ST
Audio HDMI FIFO status: AUD_HDMIW_STATUS to AUD_HDMI_FIFO_STATUS

NOTE:
For Tx, x = A/B/C, meaning Transcoder A/B/C.
For Cn, n = 1/2/3, meaning audio converter 1/2/3.

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>
2013-09-16 14:20:28 -07:00
Mengdong Lin
3c7dc5cf32 intel_audio_dump/hsw: align code with tab
This patch makes the file to follow kernel coding style:
- replace leading spaces with tabs for alignment
- fix some minor format issues

But the max length of a line is set to 120 characters for readability
on high resolution displays.

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>
2013-09-16 14:20:28 -07:00
Mengdong Lin
cac586586d intel_audio_dump/hsw: remove misuse of PCH transcoder configuration register
The PCH transcoder config register (PCH_TRANS_CONF, 0xf0008) is not the
correct config register for transcoder A, B or C. This register is in
PCH and for CRT display, nothing to do with display audio.

So This patch removes misuse of it as config register for transcoder A/B/C.

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>
2013-09-16 14:20:28 -07:00
Rodrigo Vivi
be28ba071b bump version to 1.4 and add the release date
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
2013-09-16 16:37:08 -03:00
Rodrigo Vivi
a33d557623 NEWS: Fix dates of previous releases
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
2013-09-16 15:52:34 -03:00
Rodrigo Vivi
564a1dd993 overlay: fix link error due to missing -lrt
CC: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
2013-09-16 15:52:34 -03:00
Daniel Vetter
a031a1bf93 lib/drmtest: ducttape over fork race
Whatever the reason (and I've thought there isn't one) if we fork and
kill right away the child seems to not reliably die. We can work
around this little race by forcing the default SIGQUIT handler. This
should break anything since we reset our atexit handling anyway, so if
the helper needs any atexit handling the special signal helpers will
be reinstated.

Note that inserting sufficient amounts of printf between the fork and
kill makes this unnecessary.

While add it also add the retry loop for the waitpid call, in case
there's another guy constantly interrupting us.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-13 16:48:08 +02:00
Daniel Vetter
9298dfabd9 lib: add test for igt_fork_signal_helper
If we're really fast we've trying to stop the signal helper again
we somehow race somewhere and it'll never happen. So add a testcase for
this. Since I expect more to come for testsuite tests add a separate
make target for them. Run tests with

$ make check

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-13 16:48:08 +02:00
Chris Wilson
32f9c49795 NEWS: smelling fixes 2013-09-13 16:28:37 +01:00
Daniel Vetter
35ee50769e initial release notes for the next release
Please amend/improve.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-13 17:03:27 +02:00
Daniel Vetter
030c9c0f91 reconstruct NEWS file for the releases thus far
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-13 17:03:26 +02:00
Damien Lespiau
25dfea28a5 overlay: Fix stale mention to x11-position.c
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2013-09-13 16:00:05 +01:00
Eero Tamminen
3fda0b6714 man: Fixes typo in intel_lid.man
Signed-off-by: Eero Tamminen <eero.t.tamminen@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2013-09-13 15:33:50 +01:00
Daniel Vetter
932716dd91 lib/drmtest: skip suspend tests in simulation
The simulator doesn't like this nor really support it :(

v2: We've tried to a more gentle resume testing using the pm_test
infrastructure, but that alos failed. So add a FIXME comment that we
need to improve things a bit here.

Cc: Ben Widawsky <benjamin.widawsky@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-13 11:19:10 +02:00
Daniel Vetter
506ef293ab lib/drmtest: drop unused oldsig variabel
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-12 12:57:26 +02:00
Daniel Vetter
212de08d0f lib/drmtest: Restore default sighandlers
Forked tests ended up restoring the sighandlers already inherited
from the parent, resulting in endless signal loops through our
atexit handler.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-11 15:46:43 +02:00
Daniel Vetter
661f252f7e lib/drmtest: don't frob signals in __igt_fork_helper
We shut up the exit handlers already by clearing the array.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-11 15:05:20 +02:00
Daniel Vetter
9fb316a6db lib/drmtest: clean up children in an exit handler
Also be a bit more careful with killing them in general.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-11 14:29:00 +02:00
Daniel Vetter
1978aecf1d tests/gem_persisten_relocs: Update like gem_reloc_vs_pug
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-11 14:03:47 +02:00
Daniel Vetter
5dc424f70d tests/gem_reloc_vs_gpu: some fixes
- Clear the igt_helper_process struct to avoid hitting asserts.
- Fix up the logic for enumerating forked processes.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-11 13:59:18 +02:00
Daniel Vetter
bbc820302b lib/drmtest: handle SIGBUS in the exit handlers
Our kernel likes to occasionally kill process with a SIGBUS when this
shouldn't ever happen. Hence also handle this signal in the exit
handler infrastructure.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-11 12:11:54 +02:00
Daniel Vetter
14dd7cb8aa lib/drmtest: Reject igt_fork from within igt_fork earlier
We reject it in igt_waitchildren already, but earlier is better.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-11 11:51:40 +02:00
Daniel Vetter
5f790db084 lib/drmtest: Fix igt_stop_signal_helper for subtest listing
We need to bail out early for otherwise we'll hit the
!signal_helper->running assert.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-11 11:09:08 +02:00
Daniel Vetter
b3a61c8028 lib/drmtest: skip when prefault control isn't available
Instead of crashing with an igt_assert. Fixes the only crashing test
when running igt on non-intel systems.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-11 10:47:07 +02:00
Daniel Vetter
2b218f69d7 lib/drmtest: Use ARRAY_SIZE
Less fragile ...

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-11 10:40:25 +02:00
Daniel Vetter
57e6746181 lib/drmtest: double-check that we clean up helper processes
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-10 18:22:17 +02:00
Daniel Vetter
e73c1a07f3 lib/drmtest: consolidate the helper process killing in one exit handler
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-10 18:22:17 +02:00
Daniel Vetter
7c25e8cff1 tests/gem_reloc_vs_gpu: use igt_fork_helper
Now we do a waitpid instead of a simple wait which could eat
the "wrong" child ...

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-10 17:40:06 +02:00
Daniel Vetter
edd723457c lib/drmtest: create helpers for forking helper threads
The upshot is that we can share the logic to make sure the helpers
are all properly stoved again in a 2nd step.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-10 17:40:06 +02:00
Daniel Vetter
2096649053 lib/drmtest: fixup for the prefault rework
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-08 14:03:20 +02:00
Daniel Vetter
fbd64de6be lib/drmtest: Avoid calling exit handlers multiple times
- reset the count when forking
- don't add the same handler multiple times
- don't restore the exit signal handlers in the forked helper
  process
- reset the exit handler count once called to make sure we don't call
  it multiple times when dying
- don't wait for the signal helper if it's gone already

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-08 14:03:03 +02:00
Daniel Vetter
b3dadedd2e tests/gem_reloc_overflow: Add more checks
For reloc offsets and batch start/len. Doesn't quite fit into the test
subject at hand here, but meh.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-04 15:27:14 +02:00
Daniel Vetter
44d4a3defb tests/gem_reloc_overflow: convert to subtests
More will come!

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-04 15:27:14 +02:00
Daniel Vetter
3c46789c8d tests/gem_exec_bad_domains: enable conflicting write domains test
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-04 15:27:14 +02:00
Imre Deak
4f496bafea lib: fix the fix for gen5 workaround emmision
Fix the regression introduced in

commit bfbe813f8fb587017c4e1d73c51395c2837eb395
Author: Daniel Vetter <daniel.vetter@ffwll.ch>
Date:   Tue May 29 22:14:06 2012 +0200

    lib: fix gen5 workaround emission

Signed-off-by: Imre Deak <imre.deak@intel.com>
2013-09-04 17:02:19 +03:00
Imre Deak
caf4608809 lib/intel_batchbuffer: remove code w/o effect
Introduced when refactoring the patch in

commit c1ee0bb53269ded7b79966d081518d689639bac7
Author: Imre Deak <imre.deak@intel.com>
Date:   Mon Jul 29 16:43:31 2013 +0300

    intel_batchbuffer: add support for non-32bit blt copies

No functional change.

Signed-off-by: Imre Deak <imre.deak@intel.com>
2013-09-04 17:07:28 +03:00
Daniel Vetter
52221651ab tests/gem_pipe_control_store_loop: Add subtest for reused buffers
This exercises the slightly faulty kernel w/a that Eric fixed in

commit e844b990b1df9242bb91b7d490552f3198946838
Author: Eric Anholt <eric@anholt.net>
Date:   Tue Jul 31 15:35:01 2012 -0700

    drm/i915: Don't forget to apply SNB PIPE_CONTROL GTT workaround.

    If a buffer that was the target of a PIPE_CONTROL from userland was a
    reused one that hadn't been evicted which had not previously had this
    workaround applied, then the early return for a correct
    presumed_offset in this function meant we would not bind it into the
    GTT and the write would land somewhere else.

    Fixes reproducible failures with GL_EXT_timer_query usage in apitrace,
    and I also expect it to fix the intermittent OQ issues on snb that
    danvet's been working on.

    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=48019
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=52932
    Signed-off-by: Eric Anholt <eric@anholt.net>
    Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
    Reviewed-by: Carl Worth <cworth@cworth.org>
    Tested-by: Carl Worth <cworth@cworth.org>
    Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-04 14:08:10 +02:00
Daniel Vetter
0550092c9a tests: add missing igt_exit() calls
Forgotten while converting to subtests, then copy&pasted.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-04 13:25:28 +02:00
Daniel Vetter
5113df7891 lib/drmtest: add igt_skip_on macro
I've fumbled the logic inversion when converting to igt_require way
too often, so lets add something for dummies like me ;-)

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-04 13:19:42 +02:00
Daniel Vetter
1f9d201be4 tests: Update .gitignore
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-04 10:36:28 +02:00
Daniel Vetter
87c690f9e2 tests: add gem_persisten_relocs
This reproduces the 3.7 relocation regression ...

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-09-04 10:30:21 +02:00
Ben Widawsky
612252f3f9 intel_gtt: Raw PTE dumper mode
./tools/intel_gtt -d | head
GTT offset |                 PTEs
--------------------------------------------------------
  0x000000 | 0xe4005015 0xe2854015 0xe283e015 0xe283f015
  0x004000 | 0xe28ba015 0xe28bb015 0xe28b6015 0xe28b7015
  0x008000 | 0xe2828015 0xe2829015 0xe282a015 0xe282b015
  0x00c000 | 0xe2928015 0xe2929015 0xe292a015 0xe292b015
  0x010000 | 0xe2918015 0xe2919015 0xe291a015 0xe291b015
  0x014000 | 0xe291c015 0xe291d015 0xe291e015 0xe291f015
  0x018000 | 0xe2920015 0xe2921015 0xe2922015 0xe2923015
  0x01c000 | 0xe2924015 0xe2925015 0xe2926015 0xe2927015

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-09-03 15:31:14 -07:00
Ben Widawsky
c6f9bdc66f intel_gtt: Properly support gen6+ GTT PTEs
This finishes the objective in the last patch which was to actually deal
with physical addresses, and not the PTEs.

GEN6+ Provided support for physical addresses above 4GB. I'm not
actually sure what Ironlake supported, and don't feel like firing up the
timemachine.

v2: Add support for gen4, gen5, and haswell.

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-09-03 15:31:14 -07:00
Ben Widawsky
8adfb5886d intel_gtt: Use function to get the physical address
The GTT PTEs that the tool is trying to compare is really about
addresses, and not the PTE itself. To accomplish this, make which
calculates the physical address we actually want.

This commit itself doesn't change any functionality; just the wording in
the code.

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-09-03 15:31:14 -07:00