[igt-dev] [PATCH i-g-t v5 0/3] Simplify working on tiled surfaces over GenX
Zbigniew Kempczyński
zbigniew.kempczynski at intel.com
Wed Jan 8 07:54:08 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.
Cc: Chris Wilson <chris at chris-wilson.co.uk>
Cc: Katarzyna Dec <katarzyna.dec at intel.com>
Zbigniew Kempczyński (3):
lib/intel_bufops: Introduce buffer operations
lib/rendercopy_bufmgr: Add rendercopy buffer manager
i915/gem_render_copy.c: Simplify code by switch to rendercopy bufmgr
.../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 | 1120 +++++++++++++++++
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 | 370 ++----
10 files changed, 1536 insertions(+), 297 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