1923 Commits

Author SHA1 Message Date
Damien Lespiau
f9e74fb494 assembler/bdw: Preliminary gen8 send & msgtarget support
Still some work needed there, but enough for rendercopy.

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:39:40 -08:00
Damien Lespiau
bc3bf098a9 assembler/bdw: Add the start of a gen8 disassembler
Directly taken from Mesa.

v2 (Ben): Updated copyright

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:39:28 -08:00
Damien Lespiau
42d8d57c8c assembler/bdw: Make the validation functions take a brw_program_instruction
This allows to use the same functions to validate operands on gen8 for
now.

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:34:36 -08:00
Damien Lespiau
af4d37de38 assembler/bdw: Support some basic gen8 intructions
We should now support alu2 intructions with direct register addressing.

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:34:35 -08:00
Damien Lespiau
c3b36592af assembler/bdw: Add gen8_instruction from mesa
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:34:35 -08:00
Ben Widawsky
f57f55e4da tests/bdw: Port storedw_loop_vebox to gen8
I chose not to implement this in the same way as Zhao Yakui because I
was lazy.

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:34:35 -08:00
Zhao Yakui
50a52f3ada tests/bdw: Port storedw_loop_blt to gen8
The code is from the storedw_loop_render.

v2 (by Ben): Flush on the correct ring

Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:34:35 -08:00
Zhao Yakui
6a2d5059ff tests/bdw: Port storedw_loop_bsd to gen8
The code is from the storedw_loop_render.

v2 (by Ben): Flush on the correct Ring

Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:34:35 -08:00
Damien Lespiau
636f726b80 tests/bdw: Port storedw_loop_render to bdw
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:34:35 -08:00
Ben Widawsky
3aad2ac83c tests/bdw: pwrite_pread
support gen8 style blits

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:34:35 -08:00
Ben Widawsky
d348022934 tests/bdw: gem_linear_blits
support gen8 style blits

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:34:35 -08:00
Ben Widawsky
adc5a41f2b tests/bdw: gem_pin
support gen8 style blits

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:34:35 -08:00
Ben Widawsky
eb89ce7a7e tests/bdw: gem_exec_blt
support gen8 style blits

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:34:35 -08:00
Ben Widawsky
91f9e19fcd tests/bdw: gem_evict_*
support gen8 style blits

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:34:35 -08:00
Ben Widawsky
6fa529ecd6 tests/bdw: gem_cpu_reloc
support gen8 style blits

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:34:35 -08:00
Ben Widawsky
3e2937bd99 tests/bdw: gem_exec_faulting_reloc
support gen8 style blits

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:34:35 -08:00
Ben Widawsky
f4dfa37e85 bdw: Update obvious missing blit support
This provides a macro that allows us to update all the arbitrary blit
commands we have stuck throughout the code. It assumes we don't actually
use 64b relocs (which is currently true). This also allows us to easily find
all the areas we need to update later when we really use the upper dword.

This block was done mostly with a sed job, and represents the easier
in test blit implementations.

v2 by Oscar: s/OUT_BATCH/BEGIN_BATCH in BLIT_COPY_BATCH_START

CC: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
2013-11-06 09:34:35 -08:00
Damien Lespiau
26f09a9189 bdw: Add gen8 specific instdone bits
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:34:35 -08:00
Damien Lespiau
295137046a bdw: Add gen8 to intel_gen()
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:34:35 -08:00
Damien Lespiau
068c21b56b bdw: Add gen8 to the IS_9XX() macro
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:34:35 -08:00
Ben Widawsky
a8221a53ec pciid/bdw: Add Broadwell PCI ids
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:31:46 -08:00
Ben Widawsky
f20ac4c8a1 chipset: IS_I9XX macro
This isnt useful in IGT, but it will allow us to keep the merge process
with libdrm simpler.

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2013-11-06 09:31:46 -08:00
Rodrigo Vivi
41b5fbfd60 bump version to 1.5 and add the release date
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
2013-11-06 13:06:11 -02:00
Rodrigo Vivi
ad648d9deb tests: pm_psr
Check on debugfs if PSR is supported by panel and matching all conditions in
hardware. In this case PSR must be enabled and performance counting increasing

v2: check if performance counter is really increasing.
v3: respect new naming convention

Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
2013-11-06 12:58:21 -02:00
Daniel Vetter
27f1a7dd4b NEWS: drop_caches improvements
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-06 15:06:15 +01:00
Jesse Barnes
d9381c8a66 quick_dump/vlv: add DPIO_CTL to the dump
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2013-11-05 14:50:51 -08:00
Oscar Mateo
aa252d0e00 lib/drmtest: Retire requests via drop caches after gem_quiescent_gpu
This helps make sure that the GPU is really quiescent by getting
rid of any residual stuff.

Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-05 16:45:16 +01:00
Daniel Vetter
4a6a59f314 tests/gem_ctx_bad_exec: Check the errno, too
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-05 13:42:47 +01:00
Oscar Mateo
466da453ae gem_flink_race: Assure no pending requests before object counting
Same thing that was done for prime_self_import.

v2: Move igt_drop_caches_set() call inside get_object_count() to make
it clearer why we want this.

Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-05 12:30:40 +01:00
Oscar Mateo
ece21fa865 prime_self_import: Assure no pending requests before object counting
We don't want a previously used object to be freed in the middle of a
before/after object counting operation (or we would get a "-1 objects
leaked" message). We have seen this happening, e.g., when a context
from a previous run dies, but its backing object is alive waiting for
a retire_work to kick in.

v2: Use igt_debugfs facilities for drop cache.
v3: Move igt_drop_caches_set() call inside get_object_count() to make
it clearer why we want this.

Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
Cc: Ben Widawsky <ben@bwidawsk.net>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-05 12:30:40 +01:00
Daniel Vetter
eeaf013214 NEWS: Roll in updates. 2013-11-04 19:49:10 +01:00
Daniel Vetter
682b674a67 tests: establish core_ prefix
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-04 19:49:10 +01:00
Daniel Vetter
51dc087864 tests: Use kms_ prefix a bit more
I was a bit on the fence about the basic pipe CRC test since that
doesn't really test kms, but debug infrastructure in debugfs.

Otoh running this one for a full kms testrun is always good, to make
sure that all the other (real) CRC based tests work sanely.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-04 19:49:10 +01:00
Daniel Vetter
5738f1952d tests: establish pm_ prefix
Imo power management, power consumption and performance are tightly
enough coupled that we can throw them all into one bin.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-04 19:49:10 +01:00
Daniel Vetter
c32032111a tests: estbalish drv_ prefix
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-04 19:49:10 +01:00
Daniel Vetter
d983f99345 tests: Start to document naming conventions
Just a start and we need more work here. Some follow-up patches will
clear up some of the historical confusion.

While at it rename the pc8 "basic" test to "rte".

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-04 19:49:10 +01:00
Daniel Vetter
66c46ecc80 Update .gitignore a bit
- Ignore build-aux/
- Cleanup ignores for assembler/
2013-11-04 19:49:10 +01:00
Daniel Vetter
af9d1b5cdb lib: drop return value from igt_drop_caches
No one actually cares, everyone expects it to just work.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-04 18:11:29 +01:00
Oscar Mateo
5f0ab94c3f lib: Add igt_drop_caches_set()
This is basically a "drop cache" interface to the igt_debugfs
facilities. Also, update existing users.

Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
Cc: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-04 18:05:37 +01:00
Oscar Mateo
a97402e89a tests: Fix "-thrashing" and "-thrash-inactive" distinction
A typo in the relocation tests made both sub-tests perform the
same action: drop *all* caches.

Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-04 18:05:31 +01:00
Daniel Vetter
163d85d5f0 tests: igt_no_subtest
Yet another check for the library.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-01 22:18:20 +01:00
Daniel Vetter
6d73fdbfd2 tests: Add a Makefile comment about the expected failures in igt_ tests
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-01 22:16:24 +01:00
Daniel Vetter
8f718b1cd8 tests: Add a test template
Requested by Paulo.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-01 21:10:59 +01:00
Daniel Vetter
071e9ca1ca lib: add igt_main macro
In the past new testcases with subtest often forgot to add the call to
igt_exit at the end of their main() function. That is now caught with
a bit more obnoxious asserts, but it's still a nuissance.

This little igt_main macro takes care of that (and also of calling the
subtest machinery initialization code correctly).

If no one objects I'll roll this out for all the simple cases (i.e.
those tests that don't have additional argv parsing on top of the
subtest machinery).

v2: Roll it out across the board.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-01 21:10:59 +01:00
Daniel Vetter
223a61e12e lib: make igt_install_exit_handler never fail
Most callers didn't bother checking, so just move the asserts into
the function itself.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-01 21:10:59 +01:00
Daniel Vetter
1f0cf2df85 lib: make igt_set_vt_graphics_mode never fail
All tests agree that this is a letal failure, so no point
to pass it back to callers.

Also add some igt_require calls for the drm_fd where I've
noticed that it's missing.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-01 21:10:59 +01:00
Daniel Vetter
0369fe19b8 lib: consolidate pipe crc exit handler
No need to sprinkle this all over:
- exit handlers will only be registered once
- they're always called when exiting, so no need to explictly call
  them.

This allows us to hide all the pipe crc cleanup in the library.

Cc: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-01 21:10:59 +01:00
Daniel Vetter
43def94f32 tests/kms_cursor_crc: rework to auto-skip connectors
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-01 20:43:16 +01:00
Daniel Vetter
8bb5730d28 tests/debugfs_pipe_crc: set mode before creating CRC helper
Otherwise the automagic skipping for DP ports on gmch platforms
won't work.

v2: We also need to just skip that connector, not the entire subtest.

kms_cursor_crc still needs to be updated.

Cc: Damien Lespiau <damien.lespiau@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-01 20:43:16 +01:00
Daniel Vetter
842007154d tests: use "auto" pipe CRC source
Makes stuff work on DP ports on gmch platforms automatically.

Cc: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-11-01 20:43:15 +01:00