freedreno/a5xx: Fix the texel buffer alignment requirement.
authorEric Anholt <eric@anholt.net>
Tue, 16 Mar 2021 00:26:30 +0000 (17:26 -0700)
committerMarge Bot <eric+marge@anholt.net>
Tue, 16 Mar 2021 16:15:48 +0000 (16:15 +0000)
Info comes from the a540 vulkan blob driver minTexelBufferOffsetAlignment.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9617>

src/freedreno/ci/deqp-freedreno-a530-fails.txt
src/gallium/drivers/freedreno/freedreno_screen.c

index c76b67e..baa8b6f 100644 (file)
@@ -126,33 +126,17 @@ dEQP-GLES31.functional.texture.border_clamp.sampler.unorm_depth,Fail
 dEQP-GLES31.functional.texture.border_clamp.unused_channels.r16i,Fail
 dEQP-GLES31.functional.texture.border_clamp.unused_channels.r8,Fail
 dEQP-GLES31.functional.texture.texture_buffer.modify.bufferdata.buffer_size_131071,Fail
-dEQP-GLES31.functional.texture.texture_buffer.modify.bufferdata.offset_7_alignments,Fail
 dEQP-GLES31.functional.texture.texture_buffer.modify.bufferdata.range_size_98304,Fail
-dEQP-GLES31.functional.texture.texture_buffer.modify.buffersubdata.offset_1_alignments,Fail
-dEQP-GLES31.functional.texture.texture_buffer.modify.mapbuffer_readwrite.offset_1_alignments,Fail
 dEQP-GLES31.functional.texture.texture_buffer.modify.mapbuffer_write.buffer_size_131071,Fail
-dEQP-GLES31.functional.texture.texture_buffer.modify.mapbuffer_write.offset_7_alignments,Fail
 dEQP-GLES31.functional.texture.texture_buffer.modify.mapbuffer_write.range_size_98304,Fail
 dEQP-GLES31.functional.texture.texture_buffer.render.as_fragment_texture.buffer_size_131071,Fail
-dEQP-GLES31.functional.texture.texture_buffer.render.as_fragment_texture.offset_7_alignments,Fail
 dEQP-GLES31.functional.texture.texture_buffer.render.as_fragment_texture.range_size_98304,Fail
 dEQP-GLES31.functional.texture.texture_buffer.render.as_index_array_as_fragment_texture.buffer_size_131071,Fail
-dEQP-GLES31.functional.texture.texture_buffer.render.as_index_array_as_fragment_texture.offset_7_alignments,Fail
 dEQP-GLES31.functional.texture.texture_buffer.render.as_index_array_as_fragment_texture.range_size_98304,Fail
 dEQP-GLES31.functional.texture.texture_buffer.render.as_index_array_as_vertex_texture_as_fragment_texture.buffer_size_131071,Fail
-dEQP-GLES31.functional.texture.texture_buffer.render.as_index_array_as_vertex_texture_as_fragment_texture.offset_7_alignments,Fail
 dEQP-GLES31.functional.texture.texture_buffer.render.as_index_array_as_vertex_texture_as_fragment_texture.range_size_98304,Fail
-dEQP-GLES31.functional.texture.texture_buffer.render.as_index_array_as_vertex_texture.offset_7_alignments,Fail
-dEQP-GLES31.functional.texture.texture_buffer.render.as_vertex_array_as_fragment_texture.offset_1_alignments,Fail
-dEQP-GLES31.functional.texture.texture_buffer.render.as_vertex_array_as_index_array_as_fragment_texture.offset_1_alignments,Fail
-dEQP-GLES31.functional.texture.texture_buffer.render.as_vertex_array_as_index_array_as_vertex_texture_as_fragment_texture.offset_1_alignments,Fail
-dEQP-GLES31.functional.texture.texture_buffer.render.as_vertex_array_as_index_array_as_vertex_texture.offset_1_alignments,Fail
-dEQP-GLES31.functional.texture.texture_buffer.render.as_vertex_array_as_vertex_texture_as_fragment_texture.offset_1_alignments,Fail
-dEQP-GLES31.functional.texture.texture_buffer.render.as_vertex_array_as_vertex_texture.offset_1_alignments,Fail
 dEQP-GLES31.functional.texture.texture_buffer.render.as_vertex_texture_as_fragment_texture.buffer_size_131071,Fail
-dEQP-GLES31.functional.texture.texture_buffer.render.as_vertex_texture_as_fragment_texture.offset_7_alignments,Fail
 dEQP-GLES31.functional.texture.texture_buffer.render.as_vertex_texture_as_fragment_texture.range_size_98304,Fail
-dEQP-GLES31.functional.texture.texture_buffer.render.as_vertex_texture.offset_7_alignments,Fail
 dEQP-GLES31.functional.texture.texture_buffer.state_query.max_texture_buffer_size_getfloat,Fail
 dEQP-GLES31.functional.texture.texture_buffer.state_query.max_texture_buffer_size_getinteger,Fail
 dEQP-GLES3.functional.clipping.line.wide_line_clip_viewport_corner,Fail
index b274858..d00e1e4 100644 (file)
@@ -277,8 +277,7 @@ fd_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
        case PIPE_CAP_TEXTURE_BUFFER_OFFSET_ALIGNMENT:
                if (is_a3xx(screen)) return 16;
                if (is_a4xx(screen)) return 32;
-               if (is_a5xx(screen)) return 32;
-               if (is_a6xx(screen)) return 64;
+               if (is_a5xx(screen) || is_a6xx(screen)) return 64;
                return 0;
        case PIPE_CAP_MAX_TEXTURE_BUFFER_SIZE:
                /* We could possibly emulate more by pretending 2d/rect textures and