mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2024-11-23 02:04:41 +08:00
nvk: Advertise VK_EXT_device_generated_commands
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31394>
This commit is contained in:
parent
347e6b493b
commit
83b220f833
@ -583,6 +583,7 @@ Khronos extensions that are not part of any Vulkan version:
|
||||
VK_EXT_descriptor_buffer DONE (anv, lvp, nvk, radv, tu)
|
||||
VK_EXT_device_address_binding_report DONE (radv, tu)
|
||||
VK_EXT_device_fault DONE (radv)
|
||||
VK_EXT_device_generated_commands DONE (nvk/Turing+)
|
||||
VK_EXT_device_memory_report DONE (vn)
|
||||
VK_EXT_direct_mode_display DONE (anv, lvp, nvk, radv, tu, v3dv)
|
||||
VK_EXT_discard_rectangles DONE (radv)
|
||||
|
@ -17,3 +17,4 @@ VK_KHR_shader_relaxed_extended_instruction on anv, hasvk, hk, nvk, radv, tu, v3d
|
||||
GL_OVR_multiview and GL_OVR_multiview2 on zink
|
||||
VK_KHR_shader_float_controls2 on radv
|
||||
VK_KHR_shader_float_controls2 on nvk
|
||||
VK_EXT_device_generated_commands on nvk
|
||||
|
@ -28,6 +28,7 @@
|
||||
|
||||
#include <sys/sysmacros.h>
|
||||
|
||||
#include "nv_push.h"
|
||||
#include "cl90c0.h"
|
||||
#include "cl91c0.h"
|
||||
#include "cla097.h"
|
||||
@ -191,6 +192,7 @@ nvk_get_device_extensions(const struct nvk_instance *instance,
|
||||
.EXT_depth_range_unrestricted = info->cls_eng3d >= VOLTA_A,
|
||||
.EXT_descriptor_buffer = true,
|
||||
.EXT_descriptor_indexing = true,
|
||||
.EXT_device_generated_commands = true,
|
||||
#ifdef VK_USE_PLATFORM_DISPLAY_KHR
|
||||
.EXT_display_control = true,
|
||||
#endif
|
||||
@ -515,6 +517,10 @@ nvk_get_device_features(const struct nv_device_info *info,
|
||||
.descriptorBufferImageLayoutIgnored = true,
|
||||
.descriptorBufferPushDescriptors = false,
|
||||
|
||||
/* VK_EXT_device_generated_commands */
|
||||
.deviceGeneratedCommands = true,
|
||||
.dynamicGeneratedPipelineLayout = true,
|
||||
|
||||
/* VK_EXT_dynamic_rendering_unused_attachments */
|
||||
.dynamicRenderingUnusedAttachments = true,
|
||||
|
||||
@ -962,6 +968,25 @@ nvk_get_device_properties(const struct nvk_instance *instance,
|
||||
.resourceDescriptorBufferAddressSpaceSize = UINT32_MAX,
|
||||
.descriptorBufferAddressSpaceSize = UINT32_MAX,
|
||||
|
||||
/* VK_EXT_device_generated_commands */
|
||||
.maxIndirectPipelineCount = UINT32_MAX,
|
||||
.maxIndirectShaderObjectCount = UINT32_MAX,
|
||||
.maxIndirectSequenceCount = 1 << 20,
|
||||
.maxIndirectCommandsTokenCount = 16,
|
||||
.maxIndirectCommandsTokenOffset = 2047,
|
||||
.maxIndirectCommandsIndirectStride = 1 << 12,
|
||||
.supportedIndirectCommandsInputModes =
|
||||
VK_INDIRECT_COMMANDS_INPUT_MODE_VULKAN_INDEX_BUFFER_EXT |
|
||||
VK_INDIRECT_COMMANDS_INPUT_MODE_DXGI_INDEX_BUFFER_EXT,
|
||||
.supportedIndirectCommandsShaderStages =
|
||||
NVK_SHADER_STAGE_GRAPHICS_BITS | VK_SHADER_STAGE_COMPUTE_BIT,
|
||||
.supportedIndirectCommandsShaderStagesPipelineBinding =
|
||||
NVK_SHADER_STAGE_GRAPHICS_BITS | VK_SHADER_STAGE_COMPUTE_BIT,
|
||||
.supportedIndirectCommandsShaderStagesShaderBinding =
|
||||
NVK_SHADER_STAGE_GRAPHICS_BITS | VK_SHADER_STAGE_COMPUTE_BIT,
|
||||
.deviceGeneratedCommandsTransformFeedback = true,
|
||||
.deviceGeneratedCommandsMultiDrawIndirectCount = true,
|
||||
|
||||
/* VK_EXT_extended_dynamic_state3 */
|
||||
.dynamicPrimitiveTopologyUnrestricted = true,
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user