summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-02-27igt: Make libudev mandatoryAntonio Argenziano
Since more essential components use libudev, make its dependency mandatory. Signed-off-by: Antonio Argenziano <antonio.argenziano@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Petri Latvala <petri.latvala@intel.com> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Acked-by: Petri Latvala <petri.latvala@intel.com>
2018-02-27lib/igt_kms: Remove remaining docbook warnings mentioning igt_kms files.Maarten Lankhorst
Some warnings still exist, but they are about missing descriptions for structs enums and their members. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2018-02-27lib/igt_kms: Fix docbook warningsMaarten Lankhorst
This gets rid of the following warnings: lib/igt_kms.c:2688: warning: Symbol name not found at the start of the comment block. lib/igt_kms.c:2738: warning: Symbol name not found at the start of the comment block. lib/igt_kms.c:2788: warning: Symbol name not found at the start of the comment block. lib/igt_kms.c:2812: warning: Parameter description for igt_pipe_obj_replace_prop_blob::pipe is not used from source code comment block. lib/igt_kms.c:2812: warning: Parameter description for igt_pipe_obj_replace_prop_blob::pipe_obj is missing in source code comment block. lib/igt_kms.c:3794: warning: Parameter description for igt_cleanup_hotplug::mon is missing in source code comment block. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2018-02-27igt/debugfs_tests: Record which file is being opened in kmsgChris Wilson
When tracking down the cause of a particular kernel warning, knowing which file it is associated with can be a big clue. So write the filename into the kernel message log prior to opening it. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2018-02-27lib: Export kmsg()Chris Wilson
Export the kmsg() function for use by tests to write into the kernel message log, useful for tests to inline their progress with kernel error messages. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2018-02-26igt/gem_softpin: Only expect EINVAL for color-overlaps for user objectsChris Wilson
If the specified object can not fit into the GTT due to overlap with a neighbouring pinned object (not part of the execobjects[]), we expect to fail with ENOSPC (as we cannot evict, rather than EINVAL for the user error in a badly constructed execobjects[]). To prevent the tests causing overlap with other external objects expand the test hole by a page on either side. (Setting up the system to deliberately hit ENOSPC is trickier as for example it requires pinned an object into the scanout with enough free space on either side to test.) Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2018-02-26igt/kms_force_connector_basic: Clear any previous connector overrideChris Wilson
When searching for a VGA connector to use to test overriding the connector status, we require the system to have a disconnected VGA connector, but if a previous test left an override inplace, that may not exist. Before we check whether the connector is attached to real HW, first reset the connector status override so that we always get the actual HW result. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Marta Lofstedt <marta.lofstedt@intel.com> Reviewed-by: Marta Lofstedt <marta.lofstedt@intel.com> Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
2018-02-26tests/kms_plane_lowres: Drain pipe before reading CRCMika Kahola
In CI runs we every now and then fail to read correct CRC yielding an error when comparing reference and grabbed CRC's. Let's first fix the test so that we drain the pipe first and then read the correct CRC. References: https://bugs.freedesktop.org/show_bug.cgi?id=103166 Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Signed-off-by: Mika Kahola <mika.kahola@intel.com>
2018-02-26meson: Don't build docs when cross-compilingPetri Latvala
Building documentation requires executing all test binaries to produce their respective description texts. This can be a very time-consuming process, if viable at all, when the target arch differs from the host. Don't process the doc directory at all when an exe wrapper is setup. This avoids the runtime penalty when the target binaries are executed through qemu, but leaves everything as-is when the target binaries can be directly executed, like when cross-compiling to x86 from x86_64 host. Signed-off-by: Petri Latvala <petri.latvala@intel.com> Cc: Eric Anholt <eric@anholt.net> Reviewed-by: Eric Anholt <eric@anholt.net>
2018-02-26igt/gem_busy: Fix extended-bsd aliasing checksChris Wilson
Although we want to specify exactly which physical engine to run on, the busy ioctl can only return the I915_EXEC_RING identifier, i.e. the aliased I915_EXEC_BSD for vcs0/vcs1. Horrors. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=105248 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
2018-02-23Iterate over physical enginesChris Wilson
We current have a single for_each_engine() iterator which we use to generate both a set of uABI engines and a set of physical engines. Determining what uABI ring-id corresponds to an actual HW engine is tricky, so pull that out to a library function and introduce for_each_physical_engine() for cases where we want to issue requests once on each HW ring (avoiding aliasing issues). v2: Remember can_store_dword for gem_sync v3: Find more open-coded for_each_physical Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
2018-02-23meson: Make cairo mandatoryArkadiusz Hiler
We use cairo all around the codebase unconditionally, yet for some reason it was an optional dependency. Cc: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Acked-by: Petri Latvala <petri.latvala@intel.com>
2018-02-23meson: Use bufmgr stubs headers if libdrm_intel is not foundArkadiusz Hiler
Just adding the .h file to lib_headers is not enough. With this change we are passing 'stubs/drm' as a part of include_directories when building, so a proper -I will be issued to the compiler. This can be done by turning 'inc' into a list of include_directories()-generated objects. Cc: Liviu Dudau <liviu.dudau@arm.com> Cc: Eric Anholt <eric@anholt.net> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com> Tested-by: Petri Latvala <petri.latvala@intel.com>
2018-02-23igt: Use lib gem_execbuf where possibleAntonio Argenziano
Replace custom execbuf ioctl wrapper with the ones in lib. v2: - Lib execbuf wrapper is not signal handling friendly. (Chris) v3: - EXECBUFFER2_WR != EXECBUFFER2. (Chris) v4: Drop gem_exec_fence.c changes Signed-off-by: Antonio Argenziano <antonio.argenziano@intel.com> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Petri Latvala <petri.latvala@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-02-23tests/gem_busy: Use intel_measure_ring_sizeAntonio Argenziano
With intel_measure_ring_size added as common function we can use it instead of the local copy Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Signed-off-by: Antonio Argenziano <antonio.argenziano@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-02-23tests/gem_ringfill: use intel_measure_ring_sizeDaniele Ceraolo Spurio
With intel_measure_ring_size added as common function we can use it instead of the local copy Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-02-23tests/gem_exec_await: use intel_measure_ring_sizeDaniele Ceraolo Spurio
With intel_measure_ring_size added as common function we can use it instead of the local copy Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-02-23tests/gem_eio: use igt_corkAntonio Argenziano
With igt_cork added as common utility we can use it instead of the local copy Signed-off-by: Antonio Argenziano <antonio.argenziano@intel.com> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-02-23tests/gem_wait: use igt_corkDaniele Ceraolo Spurio
With igt_cork added as common utility we can use it instead of the local copy Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Signed-off-by: Antonio Argenziano <antonio.argenziano@intel.com> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-02-23tests/gem_exec_latency: use new common functionsDaniele Ceraolo Spurio
With intel_measure_ring_size and igt_cork added as common utilities we can use them instead of the local copy of those utilities Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-02-23tests/gem_exec_fence: use new common functionsDaniele Ceraolo Spurio
With intel_measure_ring_size and igt_cork added as common utilities we can use them instead of the local copy of those utilities Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-02-23tests/gem_exec_schedule: use new common functionsDaniele Ceraolo Spurio
With intel_measure_ring_size and igt_cork added as common utilities we can use them instead of the local copy of those utilities Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-02-23lib/igt_gt: add intel_measure_ring_sizeDaniele Ceraolo Spurio
The logic to measure the ring size is replicated almost identically in several tests. Adding it as a common function will make the code cleaner. The tests are updated in follow up patches. v2: - Move into a new file: 'gem_ring'. (Chris) v3: - Rename ring measure function. (Chris) Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Signed-off-by: Antonio Argenziano <antonio.argenziano@intel.com> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-02-23lib/igt_dummyload: add igt_corkDaniele Ceraolo Spurio
The "cork" bo (imported bo with attached fence) and fence is used in several tests to stall execution. Moving it to a common place makes the codebase cleaner. Note that the actual test updates is done in follow up patches as it is simpler to do in one go after one more common function is added in the next patch. v2: don't use new/free naming, don't use dynamic alloc (Chris) v3: add sw_sync common functions. (Chris) v4: squash sw_sync and vgem cork structs into one. (Chris) v5: use anonymous enum in cork struct. (Chris) v6: reset cork after unplugging. (Chris) Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Signed-off-by: Antonio Argenziano <antonio.argenziano@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-02-22igt: Add VC4 purgeable BO testsBoris Brezillon
v3: Make sure we receive a SIGBUS signal when accessing memory of a purged BO Add <signal.h> include after rebase (by anholt) Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Eric Anholt <eric@anholt.net> Reviewed-by: Eric Anholt <eric@anholt.net>
2018-02-22igt: Add igt_vc4_get_param() helperBoris Brezillon
v2: Rebase on get/set_tiling helpers (by anholt). Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Eric Anholt <eric@anholt.net> Reviewed-by: Eric Anholt <eric@anholt.net>
2018-02-22igt/vc4: Add a helper function to mark BOs purgeableBoris Brezillon
v2: Rebase on get/set_tiling helpers (by anholt). Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Eric Anholt <eric@anholt.net> Reviewed-by: Eric Anholt <eric@anholt.net>
2018-02-22tools/aubdump: Signal drm sync objects when device override is usedJordan Justen
This prevents an infinite hang with crucible (vulkan) rendering tests when --device is used. Cc: Jason Ekstrand <jason@jlekstrand.net> Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Scott D Phillips <scott.d.phillips@intel.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2018-02-22tools/aubdump: Note pinned BO in verbose outputJordan Justen
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Scott D Phillips <scott.d.phillips@intel.com>
2018-02-22tools/aubdump: Support alignment of BO in execbuffer2Jordan Justen
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Scott D Phillips <scott.d.phillips@intel.com>
2018-02-22igt/gem_ctx_isolation: Fix checking for context supportChris Wilson
Missed the new method for igt_require(gem_has_contexts()) in the rebase. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
2018-02-22test/perf: fixup inverted conditionLionel Landwerlin
The previous patch said : "verify that the time is always longer or equal to the period we've asked for" This is an obvious error, it only worked on my machine and the CI because only one longer period was observed. But another CI run caught the issue : https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4280/shard-glkb6/igt@perf@oa-exponents.html Fixes: c3d11ca104fa ("tests/perf: make oa-exponents subtest more reliable") Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Matthew Auld <matthew.auld@intel.com>
2018-02-22igt/kms_fronbuffer_tracking: Handle ENODEV when checking i915_edp_psr_status ↵Lofstedt, Marta
for chipset support If the machine doesn't support PSR, it will return -ENODEV from i915_edp_psr_status, which we want to interpret as unsupported. This is in line with what Chris just fixed for FBC. V2: Copy-pasted to the correct place Signed-off-by: Marta Lofstedt <marta.lofstedt@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-02-22igt/kms_fbcon_fbt: Handle ENODEV when checking i915_edp_psr_status for ↵Lofstedt, Marta
chipset support If the machine doesn't support PSR, it will return -ENODEV from i915_edp_psr_status, which we want to interpret as unsupported. This is in line with what Chris just fixed for FBC. V2: Copy-pasted to the correct position. Signed-off-by: Marta Lofstedt <marta.lofstedt@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-02-22igt/perf_pmu: Fix 64b printf-ismsChris Wilson
My bad, perf_pmu.c: In function ‘accuracy’: perf_pmu.c:1533:4: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 5 has type ‘uint64_t’ [-Wformat] perf_pmu.c:1533:4: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 6 has type ‘uint64_t’ [-Wformat] Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
2018-02-22lib/igt_perf: Find active perf CPUTvrtko Ursulin
Instead of assuming PMU runs on CPU0, try all possible CPUs if that is not the case. This makes the callers handle fallout from broken tests better, as well as sysadmin interventions where callers are not tests. Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-02-22tests/perf_pmu: Skip hotplug test on BroxtonTvrtko Ursulin
Apollolake machine in the shards cannot bring the CPU0 back online so skip the test on all Broxtons for now. v2: Fix inverted check. v3: igt_skip_on. (Chris Wilson) Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Acked-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-02-21igt/perf_pmu: Use a self-correcting busy pwmChris Wilson
Convert the busy pwm from using a single calibration pass with a fixed target into a self-correcting pwm that tries to adjust how long to sleep on each pwm in order to converge at the target busy %%. Being self-correcting, it should fare better against the more variable systems CI presents. v2: Be fair and equally strict for low/high busy %% v3: target_idle_us and calculate expected from timing of each individual pass Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=105157 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
2018-02-21igt/kms_fbcon_fbt: Handle ENODEV when checking i915_fbc_info for chipset supportChris Wilson
If the machine doesn't support FBC, it will return -ENODEV from i915_fbc_info, which we want to interpret as unsupported. Reported-by: Marta Lofstedt<marta.lofstedt@intel.com> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Marta Lofstedt<marta.lofstedt@intel.com>
2018-02-21igt/gem_ctx_isolation: Check isolation of registers between contextsChris Wilson
A new context assumes that all of its registers are in the default state when it is created. What may happen is that a register written by one context may leak into the second, causing mass confusion. v2: Extend back to Sandybridge (etc) v3: Check context preserves registers across suspend/hibernate and resets. v4: Complete the remapping onto the new class:instance v5: Not like that, like this, try again to use class:instance v6: Prepare for retrospective gen4 contexts! v7: Repaint register set name to nonpriv, as this is what bspec calls the registers that are writable by userspace. v8: Fix a typo for LRM on gen8 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
2018-02-21tests/perf: make oa-exponents subtest more reliableLionel Landwerlin
We know the OA unit might skip some reports from time to time (reasons include pressure on memory controller, power management, ...). So rather than checking that the time between periodic reports is about the period we asked for, let's verify that the time is always longer or equal to the period we've asked for. We still have to leave some room for errors. Here is dump of an error in this updated test : (perf:405) DEBUG: report0019 ts=e217de20 hw_id=0x00000014 delta=64 (perf:405) DEBUG: report0020 ts=e217de60 hw_id=0x00000014 delta=64 (perf:405) DEBUG: report0021 ts=e217dea0 hw_id=0x00000014 delta=64 (perf:405) DEBUG: report0022 ts=e217df66 hw_id=0x00000014 delta=198 ****** (perf:405) DEBUG: report0023 ts=e217dfa0 hw_id=0x00000014 delta=58 ****** (perf:405) DEBUG: report0024 ts=e217dfe0 hw_id=0x00000014 delta=64 (perf:405) DEBUG: report0025 ts=e217e020 hw_id=0x00000014 delta=64 (perf:405) DEBUG: report0026 ts=e217e060 hw_id=0x00000014 delta=64 As you can see there is a discrepency in the periodic reports. I have no explanation for it. This isn't a programming error since the same context has correct periods before and after, so it must be some kind of hardware glitch/corner-case that hasn't be been documented. Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Matthew Auld <matthew.auld@intel.com>
2018-02-21igt/gem_ctx_switch: Do a warmup pass over all contextsChris Wilson
Ensure that we always use every context at least once before we start running the stress-test. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
2018-02-21igt/gem_eio: Use slow spinners to inject hangsChris Wilson
One weird issue we see in bug 104676 is that the hangs are too fast on HSW! So force the use of the slow spinners that do not try to trigger a hang by injecting random bytes into the batch. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104676 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
2018-02-21igt/gem_exec_schedule: Replace constant 16 with its magic macroChris Wilson
s/16/MAX_ELSP_QLEN/ as appropriate v2: Use ARRAY_SIZE for loop bounds over fixed size arrays Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
2018-02-21igt/gem_exec_schedule: Dump the engine info prior to sync on preempt_otherChris Wilson
It is useful to dump the request layout between engines help debug ordering issues and stuck preemption, so add it to preempt_other(). Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
2018-02-21igt/gem_exec_schedule: Trim max number of contexts usedChris Wilson
icl offers a much reduced context space, and in its simplest setup we cannot allocate one context per priority level, so trim the number and reuse the same context for multiple priority requests. v2: Bump the MAX to 1024 (still lower than the ~4096 previously in use) v3: Also limit NCTX to MAX_CONTEXTS for wide-* Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Acked-by: Antonio Argenziano <antonio.argenziano@intel.com> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
2018-02-21igt/kms_frontbuffer_tracking: Wait for PSR to be disabledChris Wilson
PSR may not exit instantaneously, so while asserting that PSR is disabled after an action, we may have to wait a short while. Currently that wait is waiting for PSR to enabled and expecting to timeout; this fails when we start the assertion with PSR already enabled. Fix the wait to wait until PSR is disabled rather than timeout. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2018-02-20igt/gem_fenced_exec_thrash: Use fixed durationsChris Wilson
Convert from using constant loops of indeterminate loads over to using a duration based with precise dummyloads, we are able to do more cycles in less time by limiting the amount of BUSY_LOAD required to exercise the test. v2: Bump limits and make the checks tighter. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
2018-02-20tests/kms_chv_cursor_fail: Use igt_display_reset() and igt_pipe_crc_drain()Maarten Lankhorst
This reduces the amount of state to reset on each preparation, and allows us to keep CRC enabled. With 2 outputs on KBL the test time goes from approximately 9.2s to 7s on KBL. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2018-02-20tests/kms_plane_scaling: Use existing igt_kms apis to paint the fbCarlos Santa
itg_kms already defines an api that creates and colors a new fb, let's use that instead of recreating that all over again. Signed-off-by: Carlos Santa <carlos.santa@intel.com> CC: Jyoti Yadav <jyoti.r.yadav@intel.com> Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>