summaryrefslogtreecommitdiff
path: root/src/amd
diff options
context:
space:
mode:
authorRhys Perry <pendingchaos02@gmail.com>2023-03-29 14:35:58 +0100
committerMarge Bot <emma+marge@anholt.net>2023-03-29 22:18:33 +0000
commit125ecd7e2d757131ef984da286d32950aa6d6228 (patch)
treed72453398e1f35205a13f98d660d475ee27d7301 /src/amd
parent47774d2414eea2936175bc8e37d88540bf666360 (diff)
radv: fix setting radv_shader_info::user_data_0 with rt
Fixes raytracing pipelines. Signed-off-by: Rhys Perry <pendingchaos02@gmail.com> Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Fixes: 0e81ec98ce9 ("radv: move user_data_0 to the shader info pass") Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22187>
Diffstat (limited to 'src/amd')
-rw-r--r--src/amd/vulkan/radv_shader.c1
-rw-r--r--src/amd/vulkan/radv_shader_info.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/src/amd/vulkan/radv_shader.c b/src/amd/vulkan/radv_shader.c
index c54655f3217..7b58a09c7f3 100644
--- a/src/amd/vulkan/radv_shader.c
+++ b/src/amd/vulkan/radv_shader.c
@@ -2777,6 +2777,7 @@ radv_create_rt_prolog(struct radv_device *device)
info.desc_set_used_mask = -1; /* just to force indirection */
info.wave_size = device->physical_device->rt_wave_size;
info.workgroup_size = info.wave_size;
+ info.user_data_0 = R_00B900_COMPUTE_USER_DATA_0;
info.cs.is_rt_shader = true;
info.cs.uses_ray_launch_size = true;
info.cs.uses_dynamic_rt_callable_stack = true;
diff --git a/src/amd/vulkan/radv_shader_info.c b/src/amd/vulkan/radv_shader_info.c
index 27cd0f0dd21..d1389d6669a 100644
--- a/src/amd/vulkan/radv_shader_info.c
+++ b/src/amd/vulkan/radv_shader_info.c
@@ -766,6 +766,7 @@ radv_get_user_data_0(const struct radv_device *device, struct radv_shader_info *
return R_00B030_SPI_SHADER_USER_DATA_PS_0;
case MESA_SHADER_COMPUTE:
case MESA_SHADER_TASK:
+ case MESA_SHADER_RAYGEN:
return R_00B900_COMPUTE_USER_DATA_0;
default:
unreachable("invalid shader stage");