[igt-dev] [PATCH i-g-t v7 0/5] Simplify working on tiled surfaces over GenX
Zbigniew Kempczyński
zbigniew.kempczynski at intel.com
Mon Jan 13 09:19:03 UTC 2020
Different GenX support different tiling formats and HW capabilities to
copy linear surface on CPU from/to tiled one on GPU. Developing tests
which have to be aware of all tiling HW details is a little bit cumbersome.
Following patches extend IGT:
1. intel_bufops - core tiling surface code which is independent on libdrm,
2. rendercopy_bufmgr - glue between libdrm and intel_bufops, necessary
due to current render_copy code is heavily coupled with libdrm.
As CI doesn't have Gen2 I couldn't add and test software tiling code on
that generation. For that single case hardware tiling is enforced and
switch to software fallback is not possible.
For generations which supports hardware tiling bufops does idempotency
test which should reveal is surface equal regardless using hardware or
software copying method.
v6:
- rename igt_buf_ccs_width/height to igt_buf_intel_ccs_width/height
pointing ccs field in igt_buf is vendor dependent.
- fixing code compilation dependency and order.
v7:
- fixing support CCS data for vebox copy
- adding support for copying CCS data to/from linear
Cc: Chris Wilson <chris at chris-wilson.co.uk>
Cc: Katarzyna Dec <katarzyna.dec at intel.com>
Zbigniew Kempczyński (5):
lib/intel_bufops: Introduce buffer operations
lib/intel_batchbuffer: Add CCS width/height functions for Intel
igt_buf
lib/rendercopy_bufmgr: Add rendercopy buffer manager
i915/gem_render_copy.c: Simplify code by switch to rendercopy bufmgr
HAX: run gem_render_copy tests in BAT
.../igt-gpu-tools/igt-gpu-tools-docs.xml | 1 +
lib/Makefile.sources | 4 +
lib/intel_batchbuffer.c | 47 +
lib/intel_batchbuffer.h | 2 +
lib/intel_bufops.c | 1168 +++++++++++++++++
lib/intel_bufops.h | 84 ++
lib/meson.build | 2 +
lib/rendercopy_bufmgr.c | 175 +++
lib/rendercopy_bufmgr.h | 28 +
tests/i915/gem_render_copy.c | 423 ++----
tests/intel-ci/fast-feedback.testlist | 38 +
11 files changed, 1666 insertions(+), 306 deletions(-)
create mode 100644 lib/intel_bufops.c
create mode 100644 lib/intel_bufops.h
create mode 100644 lib/rendercopy_bufmgr.c
create mode 100644 lib/rendercopy_bufmgr.h
--
2.23.0
More information about the igt-dev
mailing list