- Jan 15, 2020
-
-
Petri Latvala authored
Sometimes tests output garbage (e.g. due to extreme occurrences of #55 ) but we need to present the garbage as results. We already ignore any test output after the first \0, and for the rest of the bytes that are not directly UTF-8 as-is, we can quite easily represent them with two-byte UTF-8 encoding. libjson-c already expects the string you feed it through json_object_new_string* functions to be UTF-8. v2: Rebase, adjust for dynamic subtest parsing Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
- Jan 14, 2020
-
-
Chris Wilson authored
No need to memset(0) the mapping of a fresh buffer, as we expect it to be 0 already. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by:
Chuansheng Liu <chuansheng.liu@intel.com>
-
Chris Wilson authored
Since with multiple devices, we may have multiple different perf_pmu each with their own type, we want to find the right one for the job. The tests are run with a specific fd, from which we can extract the appropriate bus-id and find the associated perf-type. The performance monitoring tools are a little more general and not yet ready to probe all device or bind to one in particular, so we just assume the default igfx for the time being. v2: Extract the bus address from out of sysfs v3: A new name for a new decade! Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: "Robert M. Fosha" <robert.m.fosha@intel.com> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Cc: Michal Wajdeczko <michal.wajdeczko@intel.com> Reviewed-by: "Robert M. Fosha" <robert.m.fosha@intel.com> #v2 Reviewed-by:
Tvrtko Ursulin <tvrtko.ursulin@intel.com>
-
- Jan 13, 2020
-
-
Chris Wilson authored
Make the assertion stringifies more readable by avoiding extraneous casting and ordering the cleanup to prevent secondary and distracting failures. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
- Jan 10, 2020
-
-
Chris Wilson authored
Prior to execlists, we are not able to quickly detect the end of the execution and so rely entirely on HW rc6. This means that each pulse incurs an extra EI (160ms) before RC6 is entered, dramatically reducing the amount of time spent in RC6 versus our soft-rc6. As such we need to increase the tolerance to be much more lenient to allow gen6/gen7 to pass -- the extreme condition we are trying to prevent happening again is where we never enter rc6 under these light conditions. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com>
-
Chris Wilson authored
Long ago, we would only approach runtime-suspend if the GPU had been idle (no userspace submissions) for a second or two. However, since disabling automatic HW RC6 such a relaxed approach to runtime-suspend caused us to never enter RC6 on the desktop and consume vast quantities of power. Surmise this behaviour by setting up a background load that is only active for ~1% of the time (so equivalent to a compositor that is updating the clock every 50ms or so) and verify that we do continue to enter RC6 between the GPU pulses. References: https://gitlab.freedesktop.org/drm/intel/issues/614 Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Imre Deak <imre.deak@intel.com> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Acked-by:
Mika Kuoppala <mika.kuoppala@linux.intel.com> Reviewed-by:
Imre Deak <imre.deak@intel.com>
-
Petri Latvala authored
Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Cc: Tomi Sarvela <tomi.p.sarvela@intel.com> Acked-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Petri Latvala authored
Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Cc: Tomi Sarvela <tomi.p.sarvela@intel.com> Acked-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Petri Latvala authored
Instead of generating a subtest for each engine in a static list, convert to dynamic subtests, with one dynamic subtest per actually present physical engine. v2: - Remove the now-redundant *-all subtests - Use the "basic" subtest in intel-ci/fast-feedback.testlist Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Reviewed-by:
Katarzyna Dec <katarzyna.dec@intel.com> Reviewed-by:
Chris Wilson <chris@chris-wilson.co.uk>
-
Chris Wilson authored
A batch is now known as the batch, not a plain old gtt_offset which could be anyone! Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Andi Shyti <andi.shyti@intel.com>
-
Chris Wilson authored
In case we decide we want a more consistent naming scheme, before we go full structured with yaml. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Andi Shyti <andi.shyti@intel.com>
-
- Jan 09, 2020
-
-
Include close() for prime file descriptor and call mumap() in mmap() success case only. Signed-off-by:
Mohammed Khajapasha <mohammed.khajapasha@intel.com> Reviewed-by:
Chris Wilson <chris@chris-wilson.co.uk>
-
- Jan 03, 2020
-
-
Petri Latvala authored
Multiple different subtests can have a dynamic subtest with the same name. Add a test to make sure we correctly delimit the output parsing. Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Petri Latvala authored
Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Petri Latvala authored
Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Petri Latvala authored
Dynamic subtests now include more output, change the dynamic subtest parsing test accordingly. Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Petri Latvala authored
On an assertion failure, the string "Subtest xyz failed" is printed. Make sure we don't match that for SUBTEST_RESULT, or the equivalent for dynamic subtests. Parsing the results already explicitly searched for the proper result line, the difference is when we delimit output up to "the next line of interest". Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Petri Latvala authored
Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Petri Latvala authored
The first dynamic part now starts its reported output at the beginning of its subtest's output, and the last dynamic part ends its reported output at the end of its subtest's output. v2: Rebase Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Petri Latvala authored
v2: Rebase Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Petri Latvala authored
v2: Rebase Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Petri Latvala authored
v2: Use an enum to select a pattern string for asprintf (Arek) Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
Petri Latvala authored
Signed-off-by:
Petri Latvala <petri.latvala@intel.com> Reviewed-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
- Dec 31, 2019
-
-
For batches which need to be run from device memory there's a need to use mmap offset interface to map the buffer. Signed-off-by:
Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by:
Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk>
-
Imre Deak authored
Add an option to check whether the framebuffer content was really compressed. v2: - Add code comment explaining the reason and way of the check. (JP) Cc: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Cc: Mika Kahola <mika.kahola@intel.com> Signed-off-by:
Imre Deak <imre.deak@intel.com> Reviewed-by:
Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
-
Imre Deak authored
Enable testing of packed and semiplanar YUV formats for better coverage of the display's media decompression functionality. Cc: Mika Kahola <mika.kahola@intel.com> Signed-off-by:
Imre Deak <imre.deak@intel.com> Reviewed-by:
Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
-
Imre Deak authored
When using both an SDR and HDR plane, the CRC of the resulting image will not match the CRC of the reference image where just an HDR plane is used. To avoid this - most probably HW precision issue - make sure all the planes we enable are of the same SDR/HDR type. Cc: Mika Kahola <mika.kahola@intel.com> Signed-off-by:
Imre Deak <imre.deak@intel.com> Reviewed-by:
Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
-
Add GEN12 CCS format modifier for media compression. Signed-off-by:
Mika Kahola <mika.kahola@intel.com> Signed-off-by:
Imre Deak <imre.deak@intel.com> Reviewed-by:
Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
-
Imre Deak authored
Prepare for testing the media compression functionality with YUV formats. No functional change. Cc: Mika Kahola <mika.kahola@intel.com> Signed-off-by:
Imre Deak <imre.deak@intel.com> Reviewed-by:
Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
-
Imre Deak authored
This reverts commit 0586d205. Now that support for YUV engine copy was added, we can re-enable the YUV tests. Cc: Mika Kahola <mika.kahola@intel.com> Signed-off-by:
Imre Deak <imre.deak@intel.com> Reviewed-by:
Mika Kahola <mika.kahola@intel.com>
-
Imre Deak authored
Add the missing bits to the Vebox copy and AUX pagetable helpers for copying YUV FBs with the Vebox engine. Cc: Mika Kahola <mika.kahola@intel.com> Signed-off-by:
Imre Deak <imre.deak@intel.com> Reviewed-by:
Mika Kahola <mika.kahola@intel.com>
-
Imre Deak authored
UV FBs have two color surfaces so extend the igt_buf struct accordingly to support blitting such FBs. The patch is produced with the coccinelle patch below. No functional changes. @@ @@ struct igt_buf { ... - uint32_t stride; ... - uint32_t size; + struct { + uint32_t stride; + uint32_t size; + } surface[2]; ... }; @@ struct igt_buf b; @@ <... ( - b.stride + b.surface[0].stride | - b.size + b.surface[0].size ) ...> @@ struct igt_buf *b; @@ <... ( - b->size + b->surface[0].size | - b->stride + b->surface[0].stride ) ...> @@ identifier I; expression E1; expression E2; @@ ( struct igt_buf I = { - .size = E1, - .stride = E2, + .surface[0] = { + .size = E1, + .stride = E2, + }, }; | struct igt_buf I = { - .size = E1, + .surface[0] = { + .size = E1, + }, }; | struct igt_buf I = { - .stride = E1, + .surface[0] = { + .stride = E1, + }, }; ) v2: - Rebase on latest upstream. (Mika) Cc: Mika Kahola <mika.kahola@intel.com> Signed-off-by:
Imre Deak <imre.deak@intel.com> Reviewed-by:
Mika Kahola <mika.kahola@intel.com>
-
Imre Deak authored
YUV FBs have two CCS surfaces so extend the igt_buf struct accordingly to support blitting such FBs. The patch is produced with the coccinelle patch below, along with some w/s fixup. No functional change. @@ @@ struct igt_buf { ... struct { uint32_t offset; uint32_t stride; - } aux; + } ccs[2]; ... }; @@ struct igt_buf *b; @@ ( - b->aux.offset + b->ccs[0].offset | - b->aux.stride + b->ccs[0].stride ) @@ struct igt_buf b; @@ ( - b.aux.offset + b.ccs[0].offset | - b.aux.stride + b.ccs[0].stride ) Cc: Mika Kahola <mika.kahola@intel.com> Signed-off-by:
Imre Deak <imre.deak@intel.com> Reviewed-by:
Mika Kahola <mika.kahola@intel.com>
-
Imre Deak authored
Use the igt_buf compression field to determine the compression type for a buffer, instead of the fact that AUX stride is set. We need to look at the former one anyway to distinguish between compression types. Cc: Mika Kahola <mika.kahola@intel.com> Signed-off-by:
Imre Deak <imre.deak@intel.com> Reviewed-by:
Mika Kahola <mika.kahola@intel.com>
-
- Dec 30, 2019
-
-
Chris Wilson authored
The gem_workarounds basic subtest has been entirely subsumed by the kernel's own sanity checks on applying the mmio, and we have further coverage that the values remain set from our live_workarounds selftest. Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Petri Latvala <petri.latvala@intel.com> Acked-by:
Petri Latvala <petri.latvala@intel.com>
-
Juha-Pekka Heikkilä authored
Having crc running continuously cause this test sometime fill crc buffer, fix this problem as well as do some generic cleanups. v2: Take out gem_sync() v3: Use rendercopy if available, otherwise Cairo surface for restoring test image v4: take out useless assert and restructure a bit Signed-off-by:
Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Reviewed-by:
Stanislav Lisovskiy <stanislav.lisovskiy@intel.com>
-
Nayana, Venkata Ramana authored
... instead of asserting and failing. Cc: Dec, Katarzyna <katarzyna.dec@intel.com> Cc: Kempczynski, Zbigniew <zbigniew.kempczynski@intel.com> Signed-off-by:
Nayana, Venkata Ramana <venkata.ramana.nayana@intel.com> Acked-by:
Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Reviewed-by:
Katarzyna Dec <katarzyna.dec@intel.com> Signed-off-by:
Arkadiusz Hiler <arkadiusz.hiler@intel.com>
-
- Dec 21, 2019
-
-
Imre Deak authored
The Vebox backend needed for this is not ready yet for YUV formats, since that needs a separate AUX pagetable setup for the Y and UV planes and also setting up the matching format in the Vebox tiling convert command surface state. It makes sense to test the MC kernel patchset for regressions though, so let's disable the MC YUV tests until Vebox is able to handle those formats (and revert this patch when that happens and before the kernel patches enabling MC YUV formats get merged). Cc: Mika Kahola <mika.kahola@intel.com> Cc: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: Matt Roper <matthew.d.roper@intel.com> Signed-off-by:
Imre Deak <imre.deak@intel.com> Reviewed-by:
Ville Syrjälä <ville.syrjala@linux.intel.com>
-
- Dec 18, 2019
-
-
Chris Wilson authored
To configure the display, one is required to be the DRM_MASTER. Closes: https://gitlab.freedesktop.org/drm/intel/issues/855 Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Acked-by:
Petri Latvala <petri.latvala@intel.com> Reviewed-by:
Mika Kahola <mika.kahola@intel.com>
-
- Dec 17, 2019
-
-
Imre Deak authored
Media compressed framebuffers don't have a CCS CC plane. Add helpers to select the different types of CCS planes and make sure we setup the planes correctly for MC framebuffers too. Note that the order of MC framebuffer planes this change assumes is plane 0: Y plane plane 1: UV plane plane 2: CCS plane for plane 0 plane 3: CCS plane for plane 1 unlike the order defined in the latest decompression kernel patchset. The above order is the logical one that allows us to keep the existing way of handling the Y/UV planes. v2: - Fix is_ccs_plane() adding the missing is_ccs_modifier() check. v3: - Simplify is_ccs_plane(). (DK) Cc: Mika Kahola <mika.kahola@intel.com> Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by:
Imre Deak <imre.deak@intel.com> Reviewed-by:
Mika Kahola <mika.kahola@intel.com>
-