Mesa (master): softpipe: Enable PIPE_CAP_TEXTURE_BUFFER_OFFSET_ALIGNMENT

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Apr 9 08:29:15 UTC 2019


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

Author: Gert Wollny <gert.wollny at collabora.com>
Date:   Sun Apr  7 08:40:52 2019 +0200

softpipe: Enable PIPE_CAP_TEXTURE_BUFFER_OFFSET_ALIGNMENT

The offset alignment must be set to s16 because the tile cache is
implemented to require this.

This enables ARB_buffer_texture_range and OES_texture_buffer for
softpipe. The according deqp-gles31 tests pass.

Also update the feature table.

Signed-off-by: Gert Wollny <gert.wollny at collabora.com>
Reviewed-by: Dave Airlie <airlied at redhat.com>

---

 docs/features.txt                        | 2 +-
 src/gallium/drivers/softpipe/sp_screen.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/docs/features.txt b/docs/features.txt
index 60877fa1969..03f68fb44c8 100644
--- a/docs/features.txt
+++ b/docs/features.txt
@@ -184,7 +184,7 @@ GL 4.3, GLSL 4.30 -- all DONE: i965/gen8+, nvc0, r600, radeonsi, virgl
   GL_ARB_shader_image_size                              DONE (freedreno/a5xx+, i965, softpipe)
   GL_ARB_shader_storage_buffer_object                   DONE (freedreno/a5xx+, i965, softpipe)
   GL_ARB_stencil_texturing                              DONE (freedreno, i965/hsw+, nv50, llvmpipe, softpipe, swr)
-  GL_ARB_texture_buffer_range                           DONE (freedreno, nv50, i965, llvmpipe)
+  GL_ARB_texture_buffer_range                           DONE (freedreno, nv50, i965, softpipe, llvmpipe)
   GL_ARB_texture_query_levels                           DONE (all drivers that support GLSL 1.30)
   GL_ARB_texture_storage_multisample                    DONE (all drivers that support GL_ARB_texture_multisample)
   GL_ARB_texture_view                                   DONE (freedreno, i965, nv50, llvmpipe, softpipe, swr)
diff --git a/src/gallium/drivers/softpipe/sp_screen.c b/src/gallium/drivers/softpipe/sp_screen.c
index e8f6733d0ed..ffe85337bff 100644
--- a/src/gallium/drivers/softpipe/sp_screen.c
+++ b/src/gallium/drivers/softpipe/sp_screen.c
@@ -195,7 +195,7 @@ softpipe_get_param(struct pipe_screen *screen, enum pipe_cap param)
    case PIPE_CAP_MAX_TEXTURE_BUFFER_SIZE:
       return 65536;
    case PIPE_CAP_TEXTURE_BUFFER_OFFSET_ALIGNMENT:
-      return 0;
+      return 16;
    case PIPE_CAP_TGSI_TEXCOORD:
    case PIPE_CAP_PREFER_BLIT_BASED_TEXTURE_TRANSFER:
       return 0;




More information about the mesa-commit mailing list