diff --git a/docs/features.txt b/docs/features.txt index ecbe52e16b9..351e799972a 100644 --- a/docs/features.txt +++ b/docs/features.txt @@ -486,7 +486,7 @@ Vulkan 1.3 -- all DONE: anv, lvp, nvk, radv, tu, vn VK_KHR_zero_initialize_workgroup_memory DONE (anv, hasvk, lvp, nvk, radv, tu, v3dv, vn) VK_EXT_4444_formats DONE (anv, hasvk, lvp, nvk, radv, tu, v3dv, vn) VK_EXT_extended_dynamic_state DONE (anv, hasvk, lvp, nvk, radv, tu, v3dv, vn) - VK_EXT_extended_dynamic_state2 DONE (anv, hasvk, lvp, nvk, radv, tu, vn) + VK_EXT_extended_dynamic_state2 DONE (anv, hasvk, lvp, nvk, radv, tu, v3dv, vn) VK_EXT_inline_uniform_block DONE (anv, hasvk, lvp, nvk, radv, tu, v3dv, vn) VK_EXT_pipeline_creation_cache_control DONE (anv, hasvk, lvp, nvk, radv, tu, v3dv, vn) VK_EXT_pipeline_creation_feedback DONE (anv, hasvk, lvp, nvk, radv, tu, v3dv, vn) diff --git a/src/broadcom/vulkan/v3dv_device.c b/src/broadcom/vulkan/v3dv_device.c index 001f1e084f3..355145515fe 100644 --- a/src/broadcom/vulkan/v3dv_device.c +++ b/src/broadcom/vulkan/v3dv_device.c @@ -202,6 +202,7 @@ get_device_extensions(const struct v3dv_physical_device *device, .EXT_load_store_op_none = true, .EXT_inline_uniform_block = true, .EXT_extended_dynamic_state = true, + .EXT_extended_dynamic_state2 = true, .EXT_external_memory_dma_buf = true, .EXT_host_query_reset = true, .EXT_image_drm_format_modifier = true, @@ -412,6 +413,17 @@ get_features(const struct v3dv_physical_device *physical_device, /* VK_EXT_extended_dynamic_state */ .extendedDynamicState = true, + /* VK_EXT_extended_dynamic_state2 */ + .extendedDynamicState2 = true, + /* We don't support extendedDynamicState2LogicOp as that would require + * compile shader variants after the pipeline creation. + */ + .extendedDynamicState2LogicOp = false, + /* We don't support extendedDynamicState2PatchControlPoints as we don't + * support Tessellation Shaders + */ + .extendedDynamicState2PatchControlPoints = false, + /* VK_KHR_pipeline_executable_properties */ .pipelineExecutableInfo = true,