mesa/src/vulkan/runtime
Konstantin Seurer 4cbbdc0a50 vulkan: Pass a structure to most BVH build callbacks
It is annoying to change all function signatures when a driver needs
more information. There are also some callbacks that have a lot of
parameters and there have already been bugs related to that.

This patch tries to clean the interface by adding a struct that contains
all information that might be relevant for the driver and passing that
to most callbacks.

radv changes are:
Reviewed-by: Natalie Vock <natalie.vock@gmx.de>

anv changes are:
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>

turnip changes are:
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>

vulkan runtime changes are:

Reviewed-by: Natalie Vock <natalie.vock@gmx.de>
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35385>
2025-06-23 20:43:43 +00:00
..
bvh vulkan/bvh: Add type information for vk_bvh_geometry_data 2025-05-12 17:45:11 +02:00
radix_sort vulkan/radix_sort: Stop force-unrolling loops 2025-02-15 09:55:52 +00:00
rmv vulkan/rmv: Correctly set heap size 2024-11-14 09:11:25 +00:00
meson.build vulkan/runtime,radv: Add shared BVH building framework 2024-12-01 16:08:06 +00:00
vk_acceleration_structure.c vulkan: Pass a structure to most BVH build callbacks 2025-06-23 20:43:43 +00:00
vk_acceleration_structure.h vulkan: Pass a structure to most BVH build callbacks 2025-06-23 20:43:43 +00:00
vk_android.c vulkan/android: add a helper to easy front buffer usage query 2025-06-23 00:46:42 +00:00
vk_android.h vulkan/android: add a helper to easy front buffer usage query 2025-06-23 00:46:42 +00:00
vk_blend.c treewide: Stop putting enum in front of Vulkan enum types 2024-12-02 17:22:49 +00:00
vk_blend.h
vk_buffer.c vulkan: Add device address helpers to vk_buffer 2025-03-06 09:46:00 +00:00
vk_buffer.h vulkan: Relax bda assert for zero-size buffers 2025-03-12 01:09:54 +00:00
vk_buffer_view.c
vk_buffer_view.h
vk_cmd_copy.c
vk_cmd_enqueue.c vulkan: Update XML and headers to 1.4.303 2024-12-02 17:22:49 +00:00
vk_command_buffer.c vulkan: don't leak debug utils label name 2025-02-19 11:03:39 +00:00
vk_command_buffer.h vulkan/runtime: introduce vk_meta_object_list 2024-07-25 19:14:31 +00:00
vk_command_pool.c vulkan/runtime: return same cmdbuf level from the command pool freelist 2024-11-08 17:20:43 +00:00
vk_command_pool.h vulkan/runtime: return same cmdbuf level from the command pool freelist 2024-11-08 17:20:43 +00:00
vk_debug_report.c
vk_debug_report.h
vk_debug_utils.c vulkan/runtime: Add object type to DMR API 2025-03-04 15:24:39 +00:00
vk_debug_utils.h vulkan/runtime: Add object type to DMR API 2025-03-04 15:24:39 +00:00
vk_deferred_operation.c
vk_deferred_operation.h
vk_descriptor_set_layout.c vulkan/runtime: store flags on descriptor set layouts 2025-02-27 13:26:58 +02:00
vk_descriptor_set_layout.h vulkan/runtime: track dynamics descriptor in a set layout 2025-05-08 11:22:55 +00:00
vk_descriptor_update_template.c vulkan: reference count vk_descriptor_update_template 2024-06-20 16:43:55 +00:00
vk_descriptor_update_template.h vulkan: reference count vk_descriptor_update_template 2024-06-20 16:43:55 +00:00
vk_descriptors.c
vk_descriptors.h
vk_device.c vulkan: add missing include for FALLTHROUGH 2025-06-02 17:51:56 +00:00
vk_device.h vulkan: fix random tabs to spaces 2025-05-16 03:57:31 +00:00
vk_device_generated_commands.c runtime: sort push constant layouts 2025-02-17 18:39:53 +00:00
vk_device_generated_commands.h vk/runtime: add EXT DGC layout handling 2024-09-27 18:41:41 +00:00
vk_device_memory.c
vk_device_memory.h
vk_drm_syncobj.c vulkan: Use syncobj shim 2025-04-08 15:38:39 +00:00
vk_drm_syncobj.h vulkan: Use syncobj shim 2025-04-08 15:38:39 +00:00
vk_fence.c
vk_fence.h
vk_format_info_gen.py
vk_framebuffer.c
vk_framebuffer.h
vk_graphics_state.c vulkan/state: Fix default input attachment map values 2025-04-10 13:17:53 +00:00
vk_graphics_state.h vulkan: rename depth bias graphics states 2024-12-06 13:48:26 -05:00
vk_image.c vulkan: dump headers/registry to 1.4.317 2025-06-06 14:38:17 +00:00
vk_image.h vk/image: Add vk_image_can_be_aliased_to_yuv_plane() helper 2025-02-15 05:39:33 +00:00
vk_instance.c vulkan: Add utilities for triggering renderdoc captures 2025-02-28 12:40:43 +01:00
vk_instance.h vulkan: Add utilities for triggering renderdoc captures 2025-02-28 12:40:43 +01:00
vk_limits.h
vk_log.c vulkan: Add a comment explainint SEVERITY_WARNING_BIT for vk_error*() 2024-10-01 00:48:36 +00:00
vk_log.h vulkan: add vk_debug_ignored_stype helper 2024-05-10 18:49:38 +00:00
vk_meta.c vulkan/meta: Use vk_buffer.device_address directly 2025-03-06 09:46:01 +00:00
vk_meta.h vulkan: Add helpers for creating bvh build pipelines/layouts 2025-05-09 09:55:32 +00:00
vk_meta_blit_resolve.c vk/meta: generalize 3D blit code 2025-04-08 19:04:47 +00:00
vk_meta_clear.c vulkan/meta: Stop using strings for meta keys 2025-02-03 16:03:49 +01:00
vk_meta_copy_fill_update.c vulkan: fix random tabs to spaces 2025-05-16 03:57:31 +00:00
vk_meta_draw_rects.c vulkan/runtime: implementaiton -> implementation 2024-06-26 12:31:00 +00:00
vk_meta_object_list.c vk/meta: Support VkShaderExt objects to allow tracking internal shaders 2024-10-03 09:53:34 +00:00
vk_meta_object_list.h vulkan: fix random tabs to spaces 2025-05-16 03:57:31 +00:00
vk_meta_private.h vk/meta: Make some helpers public 2024-10-03 09:53:34 +00:00
vk_nir.c vulkan/runtime: Don't use deprecated NIR_PASS_V macro. 2025-02-22 08:54:23 +01:00
vk_nir.h vk: Don't include full nir.h in headers. 2025-02-12 22:33:07 +01:00
vk_nir_convert_ycbcr.c vk: Don't include full nir.h in headers. 2025-02-12 22:33:07 +01:00
vk_nir_convert_ycbcr.h vk: Don't include full nir.h in headers. 2025-02-12 22:33:07 +01:00
vk_object.c
vk_object.h anv: Implement VK_EXT_device_memory_report 2025-03-04 15:24:39 +00:00
vk_physical_device.c vulkan: add common GetPhysicalDeviceCalibrateableTimeDomainsKHR 2025-01-07 03:39:28 +00:00
vk_physical_device.h
vk_pipeline.c vulkan/pipeline: Hash null descriptor robustness info 2025-06-03 07:02:36 +00:00
vk_pipeline.h vulkan/runtime: add a multialloc variant for pipeline create 2025-05-08 11:22:55 +00:00
vk_pipeline_cache.c vulkan/runtime: allow to use a different disk cache 2025-02-05 16:30:27 +00:00
vk_pipeline_cache.h vulkan/runtime: allow to use a different disk cache 2025-02-05 16:30:27 +00:00
vk_pipeline_layout.c vulkan/runtime: track dynamics descriptor in a set layout 2025-05-08 11:22:55 +00:00
vk_pipeline_layout.h vulkan/runtime: track dynamics descriptor in a set layout 2025-05-08 11:22:55 +00:00
vk_query_pool.c
vk_query_pool.h
vk_queue.c vulkan: don't leak debug utils label name 2025-02-19 11:03:39 +00:00
vk_queue.h vulkan/queue: Use a builder pattern for vk_queue_submit 2024-10-03 22:11:39 +00:00
vk_render_pass.c vk/pass: Add input attachment location info 2025-04-10 13:17:53 +00:00
vk_render_pass.h vk/pass: Add input attachment location info 2025-04-10 13:17:53 +00:00
vk_sampler.c vulkan: Drop vk_sampler_init() 2025-06-19 15:45:09 +00:00
vk_sampler.h vulkan: Drop vk_sampler_init() 2025-06-19 15:45:09 +00:00
vk_semaphore.c
vk_semaphore.h
vk_shader.c vulkan: pass enabled features to drivers 2025-05-27 13:23:12 +00:00
vk_shader.h vulkan: pass enabled features to drivers 2025-05-27 13:23:12 +00:00
vk_shader_module.c dzn: Use vk_pipeline_shader_stage_to_nir() 2024-08-29 03:30:31 +00:00
vk_shader_module.h dzn: Use vk_pipeline_shader_stage_to_nir() 2024-08-29 03:30:31 +00:00
vk_standard_sample_locations.c
vk_standard_sample_locations.h
vk_sync.c
vk_sync.h
vk_sync_binary.c
vk_sync_binary.h
vk_sync_dummy.c
vk_sync_dummy.h
vk_sync_timeline.c vulkan: Use u_cnd_monotonic for vk_sync_timeline 2024-07-08 22:09:06 +00:00
vk_sync_timeline.h vulkan: Use u_cnd_monotonic for vk_sync_timeline 2024-07-08 22:09:06 +00:00
vk_synchronization.c vulkan/runtime: fix a wrong assert that validates timeline semaphores 2025-05-19 07:22:23 +00:00
vk_synchronization.h vulkan: Add vk_expand_(dst|src)_access_flags2 2024-06-28 10:41:49 +00:00
vk_texcompress_astc.c vulkan: add descriptor buffer support to compute astc decoder 2025-02-17 15:03:43 +01:00
vk_texcompress_astc.h vulkan: add descriptor buffer support to compute astc decoder 2025-02-17 15:03:43 +01:00
vk_texcompress_etc2.c
vk_texcompress_etc2.h
vk_video.c vulkan/video: add vp9 decode 2025-06-09 20:46:03 +00:00
vk_video.h vulkan/video: add vp9 decode 2025-06-09 20:46:03 +00:00
vk_ycbcr_conversion.c
vk_ycbcr_conversion.h vulkan: Add a vk_sampler_state struct 2025-06-19 15:45:08 +00:00