Mesa (master): zink: hook up EXT_image_drm_format_modifier

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu Apr 29 12:43:25 UTC 2021


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

Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Thu Apr 29 07:57:48 2021 -0400

zink: hook up EXT_image_drm_format_modifier

Reviewed-by: Erik Faye-Lund <erik.faye-lund at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10520>

---

 src/gallium/drivers/zink/zink_device_info.py | 1 +
 src/gallium/drivers/zink/zink_screen.c       | 3 +++
 src/gallium/drivers/zink/zink_screen.h       | 2 ++
 3 files changed, 6 insertions(+)

diff --git a/src/gallium/drivers/zink/zink_device_info.py b/src/gallium/drivers/zink/zink_device_info.py
index 25c6283e290..4d4a56cd434 100644
--- a/src/gallium/drivers/zink/zink_device_info.py
+++ b/src/gallium/drivers/zink/zink_device_info.py
@@ -106,6 +106,7 @@ EXTENSIONS = [
         properties=True,
         features=True,
         conditions=["$feats.nullDescriptor"]),
+    Extension("VK_EXT_image_drm_format_modifier"),
     Extension("VK_EXT_vertex_attribute_divisor",
         alias="vdiv", 
         properties=True,
diff --git a/src/gallium/drivers/zink/zink_screen.c b/src/gallium/drivers/zink/zink_screen.c
index 9bbb172e8f4..5c00b5430f5 100644
--- a/src/gallium/drivers/zink/zink_screen.c
+++ b/src/gallium/drivers/zink/zink_screen.c
@@ -1194,6 +1194,9 @@ load_device_extensions(struct zink_screen *screen)
       GET_PROC_ADDR(CmdBindVertexBuffers2EXT);
    }
 
+   if (screen->info.have_EXT_image_drm_format_modifier)
+      GET_PROC_ADDR(GetImageDrmFormatModifierPropertiesEXT);
+
    if (screen->info.have_KHR_timeline_semaphore)
       GET_PROC_ADDR_KHR(WaitSemaphores);
 
diff --git a/src/gallium/drivers/zink/zink_screen.h b/src/gallium/drivers/zink/zink_screen.h
index d8610b63dcd..b9efb3e97bf 100644
--- a/src/gallium/drivers/zink/zink_screen.h
+++ b/src/gallium/drivers/zink/zink_screen.h
@@ -154,6 +154,8 @@ struct zink_screen {
       bool inline_uniforms;
    } driconf;
 
+   PFN_vkGetImageDrmFormatModifierPropertiesEXT vk_GetImageDrmFormatModifierPropertiesEXT;
+
    VkFormatProperties format_props[PIPE_FORMAT_COUNT];
    struct {
       uint32_t image_view;



More information about the mesa-commit mailing list