Mesa (master): panfrost: advertise images for midgard

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Jan 27 12:52:33 UTC 2021


Module: Mesa
Branch: master
Commit: b64fdefad5cda57a530d98000ae3f690ef7f417e
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b64fdefad5cda57a530d98000ae3f690ef7f417e

Author: Italo Nicola <italonicola at collabora.com>
Date:   Thu Jan 21 23:25:05 2021 +0000

panfrost: advertise images for midgard

Signed-off-by: Italo Nicola <italonicola at collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon at collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8066>

---

 docs/features.txt                         | 8 ++++----
 src/gallium/drivers/panfrost/pan_screen.c | 8 +++++++-
 2 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/docs/features.txt b/docs/features.txt
index 0181b4ddc1b..2a583de8583 100644
--- a/docs/features.txt
+++ b/docs/features.txt
@@ -158,7 +158,7 @@ GL 4.2, GLSL 4.20 -- all DONE: i965/gen7+, nvc0, r600, radeonsi, llvmpipe, virgl
   GL_ARB_texture_storage                                DONE (all drivers)
   GL_ARB_transform_feedback_instanced                   DONE (freedreno, i965, nv50, softpipe, swr, v3d)
   GL_ARB_base_instance                                  DONE (freedreno, i965, nv50, softpipe, swr, v3d)
-  GL_ARB_shader_image_load_store                        DONE (freedreno/a5xx+, i965, softpipe, v3d)
+  GL_ARB_shader_image_load_store                        DONE (freedreno/a5xx+, i965, softpipe, v3d, panfrost/midgard)
   GL_ARB_conservative_depth                             DONE (all drivers that support GLSL 1.30)
   GL_ARB_shading_language_420pack                       DONE (all drivers that support GLSL 1.30)
   GL_ARB_shading_language_packing                       DONE (all drivers)
@@ -182,7 +182,7 @@ GL 4.3, GLSL 4.30 -- all DONE: i965/gen8+, nvc0, r600, radeonsi, llvmpipe, virgl
   GL_ARB_multi_draw_indirect                            DONE (freedreno, i965, softpipe, swr, v3d, zink)
   GL_ARB_program_interface_query                        DONE (all drivers)
   GL_ARB_robust_buffer_access_behavior                  DONE (i965, zink)
-  GL_ARB_shader_image_size                              DONE (freedreno/a5xx+, i965, softpipe, v3d, zink)
+  GL_ARB_shader_image_size                              DONE (freedreno/a5xx+, i965, softpipe, v3d, zink, panfrost/midgard)
   GL_ARB_shader_storage_buffer_object                   DONE (freedreno/a5xx+, i965, softpipe, v3d, panfrost)
   GL_ARB_stencil_texturing                              DONE (freedreno, i965/hsw+, nv50, softpipe, swr, v3d, panfrost, d3d12, zink)
   GL_ARB_texture_buffer_range                           DONE (freedreno, nv50, i965, softpipe, swr, d3d12, zink)
@@ -251,8 +251,8 @@ GLES3.1, GLSL ES 3.1 -- all DONE: i965/hsw+, nvc0, r600, radeonsi, virgl, v3d, s
   GL_ARB_framebuffer_no_attachments                     DONE (freedreno, i965/gen7+, softpipe, zink)
   GL_ARB_program_interface_query                        DONE (all drivers)
   GL_ARB_shader_atomic_counters                         DONE (freedreno/a5xx+, i965/gen7+, swr, zink)
-  GL_ARB_shader_image_load_store                        DONE (freedreno/a5xx+, i965/gen7+, swr, zink)
-  GL_ARB_shader_image_size                              DONE (freedreno/a5xx+, i965/gen7+, swr, zink)
+  GL_ARB_shader_image_load_store                        DONE (freedreno/a5xx+, i965/gen7+, swr, zink, panfrost/midgard)
+  GL_ARB_shader_image_size                              DONE (freedreno/a5xx+, i965/gen7+, swr, zink, panfrost/midgard)
   GL_ARB_shader_storage_buffer_object                   DONE (freedreno/a5xx+, i965/gen7+)
   GL_ARB_shading_language_packing                       DONE (all drivers)
   GL_ARB_separate_shader_objects                        DONE (all drivers)
diff --git a/src/gallium/drivers/panfrost/pan_screen.c b/src/gallium/drivers/panfrost/pan_screen.c
index 49d2f1eb8d8..0aebbea8ad3 100644
--- a/src/gallium/drivers/panfrost/pan_screen.c
+++ b/src/gallium/drivers/panfrost/pan_screen.c
@@ -285,6 +285,9 @@ panfrost_get_param(struct pipe_screen *screen, enum pipe_cap param)
         case PIPE_CAP_PSIZ_CLAMPED:
                 return 1;
 
+        case PIPE_CAP_NIR_IMAGES_AS_DEREF:
+                return 0;
+
         default:
                 return u_pipe_screen_get_param_defaults(screen, param);
         }
@@ -383,8 +386,11 @@ panfrost_get_shader_param(struct pipe_screen *screen,
                 return 32;
 
         case PIPE_SHADER_CAP_MAX_SHADER_BUFFERS:
-        case PIPE_SHADER_CAP_MAX_SHADER_IMAGES:
                 return is_deqp ? 8 : 0;
+
+        case PIPE_SHADER_CAP_MAX_SHADER_IMAGES:
+                return is_bifrost ? 0 : PIPE_MAX_SHADER_IMAGES;
+
         case PIPE_SHADER_CAP_MAX_HW_ATOMIC_COUNTERS:
         case PIPE_SHADER_CAP_MAX_HW_ATOMIC_COUNTER_BUFFERS:
                 return 0;



More information about the mesa-commit mailing list