[Mesa-dev] [PATCH 15/24] mesa/st: expose EXT_memory_object and EXT_memory_object_fd

Samuel Pitoiset samuel.pitoiset at gmail.com
Wed Jul 26 15:26:51 UTC 2017



On 07/26/2017 01:46 PM, Timothy Arceri wrote:
> From: Andres Rodriguez <andresx7 at gmail.com>
> 
> v2: use PIPE_CAP_MEMOBJ to guard the extension
> 
> Signed-off-by: Andres Rodriguez <andresx7 at gmail.com>
> Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>
> ---
>   src/mesa/main/extensions_table.h       | 2 ++
>   src/mesa/main/mtypes.h                 | 2 ++
>   src/mesa/state_tracker/st_extensions.c | 5 +++++
>   3 files changed, 9 insertions(+)
> 
> diff --git a/src/mesa/main/extensions_table.h b/src/mesa/main/extensions_table.h
> index 757b7bf..347a619 100644
> --- a/src/mesa/main/extensions_table.h
> +++ b/src/mesa/main/extensions_table.h
> @@ -226,6 +226,8 @@ EXT(EXT_gpu_program_parameters              , EXT_gpu_program_parameters
>   EXT(EXT_gpu_shader4                         , EXT_gpu_shader4                        , GLL, GLC,  x ,  x , 2006)
>   EXT(EXT_gpu_shader5                         , ARB_gpu_shader5                        ,  x ,  x ,  x ,  31, 2014)
>   EXT(EXT_map_buffer_range                    , ARB_map_buffer_range                   ,  x ,  x , ES1, ES2, 2012)
> +EXT(EXT_memory_object                       , EXT_memory_object                      , GLL, GLC,  x , ES2, 2017)
> +EXT(EXT_memory_object_fd                    , EXT_memory_object_fd                   , GLL, GLC,  x , ES2, 2017)
>   EXT(EXT_multi_draw_arrays                   , dummy_true                             , GLL,  x , ES1, ES2, 1999)
>   EXT(EXT_packed_depth_stencil                , dummy_true                             , GLL, GLC,  x ,  x , 2005)
>   EXT(EXT_packed_float                        , EXT_packed_float                       , GLL, GLC,  x ,  x , 2004)
> diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
> index 356ec69..c7ba6c7 100644
> --- a/src/mesa/main/mtypes.h
> +++ b/src/mesa/main/mtypes.h
> @@ -4116,6 +4116,8 @@ struct gl_extensions
>      GLboolean EXT_framebuffer_sRGB;
>      GLboolean EXT_gpu_program_parameters;
>      GLboolean EXT_gpu_shader4;
> +   GLboolean EXT_memory_object;
> +   GLboolean EXT_memory_object_fd;
>      GLboolean EXT_packed_float;
>      GLboolean EXT_pixel_buffer_object;
>      GLboolean EXT_point_parameters;
> diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c
> index 74193cc..b00d7e8 100644
> --- a/src/mesa/state_tracker/st_extensions.c
> +++ b/src/mesa/state_tracker/st_extensions.c
> @@ -1321,4 +1321,9 @@ void st_init_extensions(struct pipe_screen *screen,
>         extensions->ARB_texture_cube_map_array &&
>         extensions->ARB_texture_stencil8 &&
>         extensions->ARB_texture_multisample;
> +
> +   if (screen->get_param(screen, PIPE_CAP_MEMOBJ)) {
> +      extensions->EXT_memory_object = GL_TRUE;
> +      extensions->EXT_memory_object_fd = GL_TRUE;
> +   }

You can move this into the big cap_mappings array.

>   }
> 


More information about the mesa-dev mailing list