gallium: add PIPE_CAP_FBFETCH_ZS and expose extension

st/mesa will expose GL_ARM_shader_framebuffer_fetch_depth_stencil
if this new capability is supported by the driver.

Signed-off-by: Pavel Asyutchenko <sventeam@yandex.ru>
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com>
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13979>
This commit is contained in:
Pavel Asyutchenko
2021-09-01 23:25:16 +03:00
committed by Marge Bot
parent 68e8940114
commit 41f22a1823
7 changed files with 10 additions and 1 deletions
+1
View File
@@ -308,6 +308,7 @@ u_pipe_screen_get_param_defaults(struct pipe_screen *pscreen,
case PIPE_CAP_FBFETCH:
case PIPE_CAP_FBFETCH_COHERENT:
case PIPE_CAP_FBFETCH_ZS:
case PIPE_CAP_BLEND_EQUATION_ADVANCED:
case PIPE_CAP_LEGACY_MATH_RULES:
case PIPE_CAP_DOUBLES:
+1
View File
@@ -1011,6 +1011,7 @@ enum pipe_cap
PIPE_CAP_MAX_CONSTANT_BUFFER_SIZE_UINT,
PIPE_CAP_HARDWARE_GL_SELECT,
PIPE_CAP_DITHERING,
PIPE_CAP_FBFETCH_ZS,
PIPE_CAP_LAST,
/* XXX do not add caps after PIPE_CAP_LAST! */
+1
View File
@@ -234,6 +234,7 @@ struct gl_extensions
GLboolean AMD_vertex_shader_viewport_index;
GLboolean ANDROID_extension_pack_es31a;
GLboolean APPLE_object_purgeable;
GLboolean ARM_shader_framebuffer_fetch_depth_stencil;
GLboolean ATI_meminfo;
GLboolean ATI_texture_compression_3dc;
GLboolean ATI_texture_mirror_once;
+2
View File
@@ -200,6 +200,8 @@ EXT(ARB_vertex_type_2_10_10_10_rev , ARB_vertex_type_2_10_10_10_rev
EXT(ARB_viewport_array , ARB_viewport_array , GLL, GLC, x , x , 2010)
EXT(ARB_window_pos , dummy_true , GLL, x , x , x , 2001)
EXT(ARM_shader_framebuffer_fetch_depth_stencil, ARM_shader_framebuffer_fetch_depth_stencil, GLL, GLC, x , ES2, 2014)
EXT(ATI_blend_equation_separate , EXT_blend_equation_separate , GLL, GLC, x , x , 2003)
EXT(ATI_draw_buffers , dummy_true , GLL, x , x , x , 2002)
EXT(ATI_fragment_shader , ATI_fragment_shader , GLL, x , x , x , 2001)
+2 -1
View File
@@ -874,7 +874,8 @@ void st_init_extensions(struct pipe_screen *screen,
{ o(OES_texture_float_linear), PIPE_CAP_TEXTURE_FLOAT_LINEAR },
{ o(OES_texture_half_float_linear), PIPE_CAP_TEXTURE_HALF_FLOAT_LINEAR },
{ o(OES_texture_view), PIPE_CAP_SAMPLER_VIEW_TARGET },
{ o(INTEL_blackhole_render), PIPE_CAP_FRONTEND_NOOP, },
{ o(INTEL_blackhole_render), PIPE_CAP_FRONTEND_NOOP },
{ o(ARM_shader_framebuffer_fetch_depth_stencil), PIPE_CAP_FBFETCH_ZS },
};
/* Required: render target and sampler support */