From b35bb9f5c7955fcf878675d356c4e4d5817318f5 Mon Sep 17 00:00:00 2001 From: Ashley Smith Date: Thu, 28 Aug 2025 12:42:06 +0100 Subject: [PATCH] panfrost: Enable shader_atomic_int64 for gallium Vulkan support was added previously, enable gallium support. Acked-by: Erik Faye-Lund Acked-by: Mary Guillemard Signed-off-by: Ashley Smith Part-of: --- docs/features.txt | 1 + docs/relnotes/new_features.txt | 1 + src/gallium/drivers/panfrost/pan_screen.c | 2 ++ 3 files changed, 4 insertions(+) diff --git a/docs/features.txt b/docs/features.txt index bffd00482e1..c69b384b77c 100644 --- a/docs/features.txt +++ b/docs/features.txt @@ -209,6 +209,7 @@ GL 4.4, GLSL 4.40 -- all DONE: freedreno/a6xx, nvc0, r600, radeonsi, llvmpipe, v GL_ARB_texture_mirror_clamp_to_edge DONE (freedreno, nv50, softpipe, v3d, panfrost, crocus) GL_ARB_texture_stencil8 DONE (freedreno, nv50, softpipe, v3d, panfrost) GL_ARB_vertex_type_10f_11f_11f_rev DONE (freedreno, nv50, softpipe, panfrost, crocus) + GL_NV_shader_atomic_int64 DONE (radeonsi, panfrost/v9+) GL 4.5, GLSL 4.50 -- all DONE: freedreno/a6xx, nvc0, r600, radeonsi, llvmpipe, virgl, zink, iris, crocus/gen7.5+, d3d12, asahi diff --git a/docs/relnotes/new_features.txt b/docs/relnotes/new_features.txt index a97498af246..dab5f17bf11 100644 --- a/docs/relnotes/new_features.txt +++ b/docs/relnotes/new_features.txt @@ -14,3 +14,4 @@ VK_KHR_maintenance9 on NVK cl_khr_semaphore on radeonsi and zink cl_khr_external_semaphore on radeonsi and zink cl_khr_external_semaphore_sync_fd on radeonsi and zink +GL_NV_shader_atomic_int64 on radeonsi and Panfrost V9+ diff --git a/src/gallium/drivers/panfrost/pan_screen.c b/src/gallium/drivers/panfrost/pan_screen.c index c07bb65826e..d6d6e403f97 100644 --- a/src/gallium/drivers/panfrost/pan_screen.c +++ b/src/gallium/drivers/panfrost/pan_screen.c @@ -910,6 +910,8 @@ panfrost_init_screen_caps(struct panfrost_screen *screen) caps->max_texture_anisotropy = 16.0; caps->max_texture_lod_bias = 16.0; /* arbitrary */ + + caps->shader_atomic_int64 = dev->arch >= 9; } static void