From 7f1525f086f9bbc0cea5c8c69cd32fd59f921333 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alejandro=20Pi=C3=B1eiro?= Date: Mon, 16 Sep 2019 14:23:07 +0200 Subject: [PATCH] v3d: enable ARB_texture_buffer_object and ARB_texture_buffer_range MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Through their specific PIPE_CAP. v2 (Iago) - Add comment in test failure Signed-off-by: Alejandro PiƱeiro Signed-off-by: Juan A. Suarez Romero Reviewed-by: Iago Toral Quiroga Part-of: --- docs/features.txt | 4 ++-- src/broadcom/ci/v3d-rpi4-fails.txt | 4 +++- src/gallium/drivers/v3d/v3d_screen.c | 6 ++++++ 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/docs/features.txt b/docs/features.txt index 458c2d79815..06504ee9095 100644 --- a/docs/features.txt +++ b/docs/features.txt @@ -76,7 +76,7 @@ GL 3.1, GLSL 1.40 --- all DONE: freedreno, i965, nv50, nvc0, r600, radeonsi, llv GL_ARB_copy_buffer (Buffer copying) DONE (v3d, vc4, lima) GL_NV_primitive_restart (Primitive restart) DONE (v3d) 16 vertex texture image units DONE () - GL_ARB_texture_buffer_object (Texture buffer objs) DONE () + GL_ARB_texture_buffer_object (Texture buffer objs) DONE (v3d) GL_ARB_texture_rectangle (Rectangular textures) DONE (v3d, vc4, lima) GL_ARB_uniform_buffer_object (Uniform buffer objs) DONE (v3d) GL_EXT_texture_snorm (Signed normalized textures) DONE (v3d) @@ -185,7 +185,7 @@ GL 4.3, GLSL 4.30 -- all DONE: i965/gen8+, nvc0, r600, radeonsi, llvmpipe, virgl GL_ARB_shader_image_size DONE (freedreno/a5xx+, i965, softpipe, v3d, panfrost) 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) - GL_ARB_texture_buffer_range DONE (freedreno, nv50, i965, softpipe, swr, d3d12) + GL_ARB_texture_buffer_range DONE (freedreno, nv50, i965, softpipe, swr, v3d, d3d12) 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, softpipe, swr) diff --git a/src/broadcom/ci/v3d-rpi4-fails.txt b/src/broadcom/ci/v3d-rpi4-fails.txt index 72ed78abd81..8c7d5af1520 100644 --- a/src/broadcom/ci/v3d-rpi4-fails.txt +++ b/src/broadcom/ci/v3d-rpi4-fails.txt @@ -106,7 +106,6 @@ spec@arb_color_buffer_float@gl_rgba32f-render-fog,Fail spec@arb_color_buffer_float@gl_rgba32f-render-sanity,Fail spec@arb_color_buffer_float@gl_rgba32f-render-sanity-fog,Fail spec@arb_compute_shader@minmax,Fail -spec@arb_copy_buffer@targets,Fail spec@arb_depth_buffer_float@fbo-generatemipmap-formats,Fail spec@arb_depth_buffer_float@fbo-generatemipmap-formats@GL_DEPTH_COMPONENT32F,Fail spec@arb_depth_buffer_float@fbo-generatemipmap-formats@GL_DEPTH_COMPONENT32F NPOT,Fail @@ -327,3 +326,6 @@ spec@nv_read_depth@read_depth_gles3,Fail spec@oes_egl_image_external_essl3@oes_egl_image_external_essl3,Crash spec@oes_point_sprite@arb_point_sprite-checkerboard_gles1,Fail spec@oes_shader_io_blocks@compiler@layout-location-aliasing.vert,Fail + +# Seems a bug in the test; it works if overriding GL version to 2.1 +spec@arb_texture_buffer_range@ranges-2 compat,Fail diff --git a/src/gallium/drivers/v3d/v3d_screen.c b/src/gallium/drivers/v3d/v3d_screen.c index 728c9057871..fcff5a6a541 100644 --- a/src/gallium/drivers/v3d/v3d_screen.c +++ b/src/gallium/drivers/v3d/v3d_screen.c @@ -282,6 +282,12 @@ v3d_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param) case PIPE_CAP_SUPPORTED_PRIM_MODES_WITH_RESTART: return screen->prim_types; + case PIPE_CAP_TEXTURE_BUFFER_OBJECTS: + return true; + + case PIPE_CAP_TEXTURE_BUFFER_OFFSET_ALIGNMENT: + return 256; + case PIPE_CAP_IMAGE_STORE_FORMATTED: return false;