From 585b5fcf4483bded6520b6aee997ad85312c2b25 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Thu, 24 Dec 2020 11:33:18 +1000 Subject: [PATCH] lavapipe: add single ssbo variable pointer support. Multiple buffer seems to break with tess eval only, something to investigate later. Acked-By: Mike Blumenkrantz Part-of: --- docs/features.txt | 2 +- src/gallium/frontends/lavapipe/lvp_device.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/features.txt b/docs/features.txt index 7294cca09b1..fd0e034f011 100644 --- a/docs/features.txt +++ b/docs/features.txt @@ -443,7 +443,7 @@ Vulkan 1.1 -- all DONE: anv, radv VK_KHR_sampler_ycbcr_conversion DONE (anv, radv, tu) VK_KHR_shader_draw_parameters DONE (anv, lvp, radv, tu) VK_KHR_storage_buffer_storage_class DONE (anv, lvp, radv) - VK_KHR_variable_pointers DONE (anv, radv, tu) + VK_KHR_variable_pointers DONE (anv, lvp, radv, tu) Vulkan 1.2 -- all DONE: anv diff --git a/src/gallium/frontends/lavapipe/lvp_device.c b/src/gallium/frontends/lavapipe/lvp_device.c index f1da7f7daf2..ff0f7400745 100644 --- a/src/gallium/frontends/lavapipe/lvp_device.c +++ b/src/gallium/frontends/lavapipe/lvp_device.c @@ -115,6 +115,7 @@ static const struct vk_device_extension_table lvp_device_extensions_supported = #ifdef LVP_USE_WSI_PLATFORM .KHR_swapchain = true, #endif + .KHR_variable_pointers = true, .EXT_calibrated_timestamps = true, .EXT_conditional_rendering = true, .EXT_extended_dynamic_state = true, @@ -437,7 +438,7 @@ VKAPI_ATTR void VKAPI_CALL lvp_GetPhysicalDeviceFeatures2( switch (ext->sType) { case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES: { VkPhysicalDeviceVariablePointersFeatures *features = (void *)ext; - features->variablePointers = true; + features->variablePointers = false; features->variablePointersStorageBuffer = true; break; }