diff --git a/docs/features.txt b/docs/features.txt index 4252e44049c..97b04cbe52b 100644 --- a/docs/features.txt +++ b/docs/features.txt @@ -607,7 +607,7 @@ Khronos extensions that are not part of any Vulkan version: VK_EXT_pci_bus_info DONE (anv, hasvk, nvk, radv, vn) VK_EXT_physical_device_drm DONE (anv, hasvk, nvk, radv, tu, v3dv, vn) VK_EXT_pipeline_library_group_handles DONE (anv, radv) - VK_EXT_pipeline_robustness DONE (anv, radv, v3dv) + VK_EXT_pipeline_robustness DONE (anv, nvk, radv, v3dv) VK_EXT_post_depth_coverage DONE (anv/gfx11+, lvp, radv/gfx10+, tu) VK_EXT_primitive_topology_list_restart DONE (anv, hasvk, lvp, nvk, radv, tu, v3dv, vn) VK_EXT_primitives_generated_query DONE (anv, hasvk, lvp, nvk, radv, tu, vn) diff --git a/src/nouveau/vulkan/nvk_physical_device.c b/src/nouveau/vulkan/nvk_physical_device.c index b67b31197c1..c5c5f50b3bb 100644 --- a/src/nouveau/vulkan/nvk_physical_device.c +++ b/src/nouveau/vulkan/nvk_physical_device.c @@ -208,6 +208,7 @@ nvk_get_device_extensions(const struct nvk_instance *instance, .EXT_pci_bus_info = info->type == NV_DEVICE_TYPE_DIS, .EXT_pipeline_creation_cache_control = true, .EXT_pipeline_creation_feedback = true, + .EXT_pipeline_robustness = true, .EXT_physical_device_drm = true, .EXT_primitive_topology_list_restart = true, .EXT_private_data = true, @@ -560,6 +561,9 @@ nvk_get_device_features(const struct nv_device_info *info, /* VK_EXT_non_seamless_cube_map */ .nonSeamlessCubeMap = true, + /* VK_EXT_pipeline_robustness */ + .pipelineRobustness = true, + /* VK_EXT_primitive_topology_list_restart */ .primitiveTopologyListRestart = true, .primitiveTopologyPatchListRestart = true, @@ -905,6 +909,16 @@ nvk_get_device_properties(const struct nvk_instance *instance, .pciDevice = info->pci.dev, .pciFunction = info->pci.func, + /* VK_EXT_pipeline_robustness */ + .defaultRobustnessStorageBuffers = + VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DISABLED_EXT, + .defaultRobustnessUniformBuffers = + VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DISABLED_EXT, + .defaultRobustnessVertexInputs = + VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2_EXT, + .defaultRobustnessImages = + VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_2_EXT, + /* VK_EXT_physical_device_drm gets populated later */ /* VK_EXT_provoking_vertex */