[virglrenderer-devel] [PATCH 3/5] vrend: Support R10G10B10{A2, X2} formats

Gurchetan Singh gurchetansingh at chromium.org
Tue Mar 20 02:01:31 UTC 2018


The GLES3 version of the test does pass with this patch:

dEQP-GLES3.functional.fbo.completeness.renderable.texture.color0.rgb_unsigned_int_2_10_10_10_rev

However, I get a "vrend_report_buffer_error: context error reported 2
"deqp-gles3" Illegal command buffer 329729" whenever I run this test.
I'm running GLES3 on the guest, GL on the host.

On Thu, Mar 15, 2018 at 12:50 PM, Jakob Bornecrantz <jakob at collabora.com> wrote:
> From: Alexandros Frantzis <alexandros.frantzis at collabora.com>
>
> Introduce the VIRGL_FORMAT_R10G10B10{A2,X2}_UNORM formats and add
> support for them in the renderer.
>
> Fixes:
>
> dEQP-GLES2.functional.fbo.completeness.renderable.texture.color0.rgb_unsigned_int_2_10_10_10_rev
> dEQP-GLES2.functional.fbo.completeness.renderable.texture.color0.rgba_unsigned_int_2_10_10_10_rev
>
> Signed-off-by: Alexandros Frantzis <alexandros.frantzis at collabora.com>
> Signed-off-by: Jakob Bornecrantz <jakob at collabora.com>
> ---
>  src/virgl_hw.h      | 4 ++++
>  src/vrend_formats.c | 2 ++
>  2 files changed, 6 insertions(+)
>
> diff --git a/src/virgl_hw.h b/src/virgl_hw.h
> index 4e42c05..7cbbeee 100644
> --- a/src/virgl_hw.h
> +++ b/src/virgl_hw.h
> @@ -38,6 +38,7 @@ enum virgl_formats {
>     VIRGL_FORMAT_B5G5R5A1_UNORM          = 5,
>     VIRGL_FORMAT_B4G4R4A4_UNORM          = 6,
>     VIRGL_FORMAT_B5G6R5_UNORM            = 7,
> +   VIRGL_FORMAT_R10G10B10A2_UNORM       = 8,
>     VIRGL_FORMAT_L8_UNORM                = 9,    /**< ubyte luminance */
>     VIRGL_FORMAT_A8_UNORM                = 10,   /**< ubyte alpha */
>     VIRGL_FORMAT_L8A8_UNORM              = 12,   /**< ubyte alpha, luminance */
> @@ -201,6 +202,9 @@ enum virgl_formats {
>     VIRGL_FORMAT_BPTC_SRGBA              = 256,
>     VIRGL_FORMAT_BPTC_RGB_FLOAT          = 257,
>     VIRGL_FORMAT_BPTC_RGB_UFLOAT         = 258,
> +
> +   VIRGL_FORMAT_R10G10B10X2_UNORM       = 308,
> +
>     VIRGL_FORMAT_MAX,
>  };
>
> diff --git a/src/vrend_formats.c b/src/vrend_formats.c
> index 738b182..aea634a 100644
> --- a/src/vrend_formats.c
> +++ b/src/vrend_formats.c
> @@ -232,6 +232,8 @@ static struct vrend_format_table bit10_formats[] = {
>    { VIRGL_FORMAT_B10G10R10X2_UNORM, GL_RGB10_A2, GL_BGRA, GL_UNSIGNED_INT_2_10_10_10_REV },
>    { VIRGL_FORMAT_B10G10R10A2_UNORM, GL_RGB10_A2, GL_BGRA, GL_UNSIGNED_INT_2_10_10_10_REV },
>    { VIRGL_FORMAT_B10G10R10A2_UINT, GL_RGB10_A2UI, GL_BGRA_INTEGER, GL_UNSIGNED_INT_2_10_10_10_REV },
> +  { VIRGL_FORMAT_R10G10B10X2_UNORM, GL_RGB10_A2, GL_RGBA, GL_UNSIGNED_INT_2_10_10_10_REV },
> +  { VIRGL_FORMAT_R10G10B10A2_UNORM, GL_RGB10_A2, GL_RGBA, GL_UNSIGNED_INT_2_10_10_10_REV },
>  };
>
>  static struct vrend_format_table packed_float_formats[] = {
> --
> 2.14.1
>
> _______________________________________________
> virglrenderer-devel mailing list
> virglrenderer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/virglrenderer-devel


More information about the virglrenderer-devel mailing list