Mesa (master): anv: enable multiple planes per image/imageView

Lionel Landwerlin llandwerlin at kemper.freedesktop.org
Fri Oct 6 16:14:03 UTC 2017


Module: Mesa
Branch: master
Commit: a62a97933578a813beb0d27cc8e404850f7fd302
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a62a97933578a813beb0d27cc8e404850f7fd302

Author: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Date:   Wed Jul 19 12:14:19 2017 +0100

anv: enable multiple planes per image/imageView

This change introduce the concept of planes for image & views. It
matches the planes available in new formats.

We also refactor depth & stencil support through the usage of planes
for the sake of uniformity. In the backend (genX_cmd_buffer.c) we have
to take some care though with regard to auxilliary surfaces.
Multiplanar color buffers can have multiple auxilliary surfaces but
depth & stencil share the same HiZ one (only store in the depth
plane).

v2: by Jason
    Remove unused aspect parameters from anv_blorp.c
    Assert when attempting to resolve YUV images
    Drop redundant logic for plane offset in make_surface()
    Rework anv_foreach_plane_aspect_bit()

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>

---

 src/intel/vulkan/anv_blorp.c       | 250 ++++++++++------
 src/intel/vulkan/anv_dump.c        |  17 +-
 src/intel/vulkan/anv_formats.c     |   3 +-
 src/intel/vulkan/anv_image.c       | 583 +++++++++++++++++++++++--------------
 src/intel/vulkan/anv_intel.c       |   4 +-
 src/intel/vulkan/anv_private.h     | 236 +++++++++++----
 src/intel/vulkan/anv_wsi.c         |   8 +-
 src/intel/vulkan/gen8_cmd_buffer.c |   2 +-
 src/intel/vulkan/genX_cmd_buffer.c | 296 ++++++++++++-------
 9 files changed, 915 insertions(+), 484 deletions(-)

Diff:   http://cgit.freedesktop.org/mesa/mesa/diff/?id=a62a97933578a813beb0d27cc8e404850f7fd302



More information about the mesa-commit mailing list