mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-02-15 08:50:28 +01:00
hk: Advertise VK_KHR_pipeline_binary
Signed-off-by: Mary Guillemard <mary@mary.zone> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39095>
This commit is contained in:
parent
b34e113a40
commit
ea4dedde8f
3 changed files with 19 additions and 1 deletions
|
|
@ -561,7 +561,7 @@ Khronos extensions that are not part of any Vulkan version:
|
|||
VK_KHR_maintenance9 DONE (anv, hk, lvp, nvk, panvk, radv)
|
||||
VK_KHR_maintenance10 DONE (anv, nvk, radv)
|
||||
VK_KHR_performance_query DONE (anv, radv/gfx10.3+, tu, v3dv)
|
||||
VK_KHR_pipeline_binary DONE (anv, nvk, panvk, radv)
|
||||
VK_KHR_pipeline_binary DONE (anv, hk, nvk, panvk, radv)
|
||||
VK_KHR_pipeline_executable_properties DONE (anv, hk, nvk, panvk, hasvk, radv, tu, v3dv)
|
||||
VK_KHR_pipeline_library DONE (anv, hk, lvp, nvk, panvk, radv, tu, vn)
|
||||
VK_KHR_present_id DONE (anv, hk, nvk, radv, tu, vn)
|
||||
|
|
|
|||
|
|
@ -20,3 +20,4 @@ VK_KHR_surface_maintenance1 promotion everywhere EXT is exposed
|
|||
VK_KHR_swapchain_maintenance1 promotion everywhere EXT is exposed
|
||||
VK_KHR_dynamic_rendering on PowerVR
|
||||
VK_EXT_multisampled_render_to_single_sampled on panvk
|
||||
VK_KHR_pipeline_binary on HoneyKrisp
|
||||
|
|
|
|||
|
|
@ -92,6 +92,7 @@ hk_get_device_extensions(const struct hk_instance *instance,
|
|||
.KHR_maintenance9 = true,
|
||||
.KHR_map_memory2 = true,
|
||||
.KHR_multiview = true,
|
||||
.KHR_pipeline_binary = true,
|
||||
.KHR_pipeline_executable_properties = true,
|
||||
.KHR_pipeline_library = true,
|
||||
#ifdef HK_USE_WSI_PLATFORM
|
||||
|
|
@ -405,6 +406,9 @@ hk_get_device_features(
|
|||
/* VK_KHR_maintenance9 */
|
||||
.maintenance9 = true,
|
||||
|
||||
/* VK_KHR_pipeline_binary */
|
||||
.pipelineBinaries = true,
|
||||
|
||||
/* VK_KHR_pipeline_executable_properties */
|
||||
.pipelineExecutableInfo = true,
|
||||
|
||||
|
|
@ -951,6 +955,13 @@ hk_get_device_properties(const struct agx_device *dev,
|
|||
/* VK_EXT_multi_draw */
|
||||
.maxMultiDrawCount = UINT16_MAX,
|
||||
|
||||
/* VK_KHR_pipeline_binary
|
||||
*
|
||||
* InternalCache properties are set by
|
||||
* hk_physical_device_init_pipeline_cache()
|
||||
*/
|
||||
.pipelineBinaryCompressedData = false,
|
||||
|
||||
/* VK_EXT_pipeline_robustness */
|
||||
.defaultRobustnessStorageBuffers =
|
||||
VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DISABLED_EXT,
|
||||
|
|
@ -1102,6 +1113,12 @@ hk_physical_device_init_pipeline_cache(struct hk_physical_device *pdev)
|
|||
|
||||
const uint64_t driver_flags = hk_physical_device_compiler_flags(pdev);
|
||||
pdev->vk.disk_cache = disk_cache_create(renderer, timestamp, driver_flags);
|
||||
if (pdev->vk.disk_cache != NULL) {
|
||||
pdev->vk.properties.pipelineBinaryInternalCache = true;
|
||||
pdev->vk.properties.pipelineBinaryInternalCacheControl = true;
|
||||
pdev->vk.properties.pipelineBinaryPrefersInternalCache = true;
|
||||
pdev->vk.properties.pipelineBinaryPrecompiledInternalCache = true;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue