mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 05:18:08 +02:00
tu: Implement VK_KHR_maintenance7
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33780>
This commit is contained in:
parent
8b39b75308
commit
3800f4c199
2 changed files with 27 additions and 1 deletions
|
|
@ -550,7 +550,7 @@ Khronos extensions that are not part of any Vulkan version:
|
|||
VK_KHR_get_display_properties2 DONE (anv, nvk, pvr, radv, tu, v3dv, vn)
|
||||
VK_KHR_get_surface_capabilities2 DONE (anv, lvp, nvk, pvr, radv, tu, v3dv, vn)
|
||||
VK_KHR_incremental_present DONE (anv, hasvk, lvp, nvk, radv, tu, v3dv, vn)
|
||||
VK_KHR_maintenance7 DONE (anv, lvp, nvk, radv)
|
||||
VK_KHR_maintenance7 DONE (anv, lvp, nvk, radv, tu)
|
||||
VK_KHR_performance_query DONE (anv, radv/gfx10.3+, tu, v3dv)
|
||||
VK_KHR_pipeline_binary DONE (radv)
|
||||
VK_KHR_pipeline_executable_properties DONE (anv, nvk, panvk, hasvk, radv, tu, v3dv)
|
||||
|
|
|
|||
|
|
@ -196,6 +196,7 @@ get_device_extensions(const struct tu_physical_device *device,
|
|||
.KHR_maintenance4 = true,
|
||||
.KHR_maintenance5 = true,
|
||||
.KHR_maintenance6 = true,
|
||||
.KHR_maintenance7 = true,
|
||||
.KHR_map_memory2 = true,
|
||||
.KHR_multiview = TU_DEBUG(NOCONFORM) ? true : device->info->a6xx.has_hw_multiview,
|
||||
.KHR_performance_query = TU_DEBUG(PERFC) || TU_DEBUG(PERFCRAW),
|
||||
|
|
@ -516,6 +517,9 @@ tu_get_features(struct tu_physical_device *pdevice,
|
|||
/* VK_KHR_maintenance6 */
|
||||
features->maintenance6 = true;
|
||||
|
||||
/* VK_KHR_maintenance7 */
|
||||
features->maintenance7 = true;
|
||||
|
||||
/* VK_KHR_performance_query */
|
||||
features->performanceCounterQueryPools = true;
|
||||
features->performanceCounterMultipleQueryPools = false;
|
||||
|
|
@ -1278,6 +1282,28 @@ tu_get_properties(struct tu_physical_device *pdevice,
|
|||
props->maxCombinedImageSamplerDescriptorCount = 1;
|
||||
props->fragmentShadingRateClampCombinerInputs = true;
|
||||
|
||||
/* VK_KHR_maintenance7 */
|
||||
props->robustFragmentShadingRateAttachmentAccess = true;
|
||||
/* For D24S8, storing depth or stencil forces a load and store of the other
|
||||
* component.
|
||||
*/
|
||||
props->separateDepthStencilAttachmentAccess = false;
|
||||
/* Uniform and storage buffers are different sizes, so we can't allow the
|
||||
* user to freely mix them and count both against a shared limit. We have
|
||||
* to force the user to use at most MAX_DYNAMIC_UNIFORM_BUFFERS uniform
|
||||
* buffers and MAX_DYNAMIC_STORAGE_BUFFERS storage buffers and set the
|
||||
* combined limit to the sum (which makes it redundant since the user will
|
||||
* always hit the other limits first).
|
||||
*/
|
||||
props->maxDescriptorSetTotalUniformBuffersDynamic = MAX_DYNAMIC_UNIFORM_BUFFERS;
|
||||
props->maxDescriptorSetTotalStorageBuffersDynamic = MAX_DYNAMIC_STORAGE_BUFFERS;
|
||||
props->maxDescriptorSetTotalBuffersDynamic =
|
||||
MAX_DYNAMIC_UNIFORM_BUFFERS + MAX_DYNAMIC_STORAGE_BUFFERS;
|
||||
props->maxDescriptorSetUpdateAfterBindTotalUniformBuffersDynamic = MAX_DYNAMIC_UNIFORM_BUFFERS;
|
||||
props->maxDescriptorSetUpdateAfterBindTotalStorageBuffersDynamic = MAX_DYNAMIC_STORAGE_BUFFERS;
|
||||
props->maxDescriptorSetUpdateAfterBindTotalBuffersDynamic =
|
||||
MAX_DYNAMIC_UNIFORM_BUFFERS + MAX_DYNAMIC_STORAGE_BUFFERS;
|
||||
|
||||
/* VK_EXT_host_image_copy */
|
||||
|
||||
/* We don't use the layouts ATM so just report all layouts from
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue