[Mesa-dev] [PATCH] virgl: Expose GL_ARB_copy_image if host supports it
Gurchetan Singh
gurchetansingh at chromium.org
Fri Jul 20 16:17:22 UTC 2018
Reviewed-by: Gurchetan Singh <gurchetansingh at chromium.org>
On Tue, Jul 3, 2018 at 4:32 AM Gert Wollny <gert.wollny at collabora.com> wrote:
>
> Signed-off-by: Gert Wollny <gert.wollny at collabora.com>
> ---
> Note that I used (1 << 3) instead of (1 << 2) because Dave's experimental patch
> already uses the latter for computer shader caps.
> The host side patch starting to implement this can be found here:
> https://patchwork.freedesktop.org/series/45064/
>
> Thanks for reviewing,
> Gert
>
> src/gallium/drivers/virgl/virgl_hw.h | 1 +
> src/gallium/drivers/virgl/virgl_screen.c | 3 ++-
> 2 files changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/src/gallium/drivers/virgl/virgl_hw.h b/src/gallium/drivers/virgl/virgl_hw.h
> index d338051d9b..4c23cb18b5 100644
> --- a/src/gallium/drivers/virgl/virgl_hw.h
> +++ b/src/gallium/drivers/virgl/virgl_hw.h
> @@ -201,6 +201,7 @@ enum virgl_formats {
> #define VIRGL_CAP_NONE 0
> #define VIRGL_CAP_TGSI_INVARIANT (1 << 0)
> #define VIRGL_CAP_TEXTURE_VIEW (1 << 1)
> +#define VIRGL_CAP_COPY_IMAGE (1 << 3)
>
> #define VIRGL_BIND_DEPTH_STENCIL (1 << 0)
> #define VIRGL_BIND_RENDER_TARGET (1 << 1)
> diff --git a/src/gallium/drivers/virgl/virgl_screen.c b/src/gallium/drivers/virgl/virgl_screen.c
> index 8bd6673c3c..2a340b004f 100644
> --- a/src/gallium/drivers/virgl/virgl_screen.c
> +++ b/src/gallium/drivers/virgl/virgl_screen.c
> @@ -219,6 +219,8 @@ virgl_get_param(struct pipe_screen *screen, enum pipe_cap param)
> return vscreen->caps.caps.v2.max_shader_patch_varyings;
> case PIPE_CAP_SAMPLER_VIEW_TARGET:
> return vscreen->caps.caps.v2.capability_bits & VIRGL_CAP_TEXTURE_VIEW;
> + case PIPE_CAP_COPY_BETWEEN_COMPRESSED_AND_PLAIN_FORMATS:
> + return vscreen->caps.caps.v2.capability_bits & VIRGL_CAP_COPY_IMAGE;
> case PIPE_CAP_TEXTURE_GATHER_SM5:
> case PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT:
> case PIPE_CAP_FAKE_SW_MSAA:
> @@ -246,7 +248,6 @@ virgl_get_param(struct pipe_screen *screen, enum pipe_cap param)
> case PIPE_CAP_GENERATE_MIPMAP:
> case PIPE_CAP_SURFACE_REINTERPRET_BLOCKS:
> case PIPE_CAP_QUERY_BUFFER_OBJECT:
> - case PIPE_CAP_COPY_BETWEEN_COMPRESSED_AND_PLAIN_FORMATS:
> case PIPE_CAP_STRING_MARKER:
> case PIPE_CAP_QUERY_MEMORY_INFO:
> case PIPE_CAP_PCI_GROUP:
> --
> 2.17.1
>
More information about the mesa-dev
mailing list