Mesa (master): zink: enable PIPE_CAP_MULTI_DRAW_INDIRECT(_PARAMS) caps
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Thu Dec 31 13:46:01 UTC 2020
Module: Mesa
Branch: master
Commit: cef876910a04070e5c89667d88df7bc3e588af19
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=cef876910a04070e5c89667d88df7bc3e588af19
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date: Thu Aug 20 09:22:37 2020 -0400
zink: enable PIPE_CAP_MULTI_DRAW_INDIRECT(_PARAMS) caps
Reviewed-by: Erik Faye-Lund <erik.faye-lund at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8233>
---
src/gallium/drivers/zink/zink_screen.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/gallium/drivers/zink/zink_screen.c b/src/gallium/drivers/zink/zink_screen.c
index 9cdfc821cf9..13b3b73a867 100644
--- a/src/gallium/drivers/zink/zink_screen.c
+++ b/src/gallium/drivers/zink/zink_screen.c
@@ -105,6 +105,11 @@ zink_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
case PIPE_CAP_GLSL_TESS_LEVELS_AS_INPUTS:
return 1;
+ case PIPE_CAP_MULTI_DRAW_INDIRECT:
+ case PIPE_CAP_MULTI_DRAW_INDIRECT_PARAMS:
+ return screen->vk_CmdDrawIndirectCount &&
+ screen->vk_CmdDrawIndexedIndirectCount;
+
case PIPE_CAP_VERTEX_ELEMENT_INSTANCE_DIVISOR:
return screen->info.have_EXT_vertex_attribute_divisor;
@@ -839,7 +844,7 @@ load_instance_extensions(struct zink_screen *screen)
GET_PROC_ADDR_INSTANCE_LOCAL(screen->instance, CmdDrawIndexedIndirectCountKHR);
screen->vk_CmdDrawIndirectCount = vk_CmdDrawIndirectCountKHR;
screen->vk_CmdDrawIndexedIndirectCount = vk_CmdDrawIndexedIndirectCountKHR;
- } else if (VK_MAKE_VERSION(1,1,0) <= screen->loader_version) {
+ } else if (VK_MAKE_VERSION(1,2,0) <= screen->loader_version) {
// Get Vk 1.1+ Instance functions
GET_PROC_ADDR_INSTANCE(CmdDrawIndirectCount);
GET_PROC_ADDR_INSTANCE(CmdDrawIndexedIndirectCount);
More information about the mesa-commit
mailing list