From: Eric Anholt Date: Wed, 20 Apr 2016 23:31:28 +0000 (-0700) Subject: vc4: Fix tests for format supported with nr_samples == 1. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1410403e1e6cd948b087ebb19f6865f054d14877;p=mesa.git vc4: Fix tests for format supported with nr_samples == 1. This was a bug from the MSAA enabling. Tests for surfaces with nr_samples==1 instead of 0 (generally GL renderbuffers) would incorrectly fail out. Fixes the ARB_framebuffer_sRGB piglit tests other than srgb_conformance. Cc: "11.1 11.2" --- diff --git a/src/gallium/drivers/vc4/vc4_screen.c b/src/gallium/drivers/vc4/vc4_screen.c index 1da4db2ebb7..4dc84d4ea62 100644 --- a/src/gallium/drivers/vc4/vc4_screen.c +++ b/src/gallium/drivers/vc4/vc4_screen.c @@ -386,6 +386,9 @@ vc4_screen_is_format_supported(struct pipe_screen *pscreen, { unsigned retval = 0; + if (sample_count > 1 && sample_count != VC4_MAX_SAMPLES) + return FALSE; + if ((target >= PIPE_MAX_TEXTURE_TYPES) || !util_format_is_supported(format, usage)) { return FALSE; @@ -445,14 +448,12 @@ vc4_screen_is_format_supported(struct pipe_screen *pscreen, } if ((usage & PIPE_BIND_RENDER_TARGET) && - (sample_count == 0 || sample_count == VC4_MAX_SAMPLES) && vc4_rt_format_supported(format)) { retval |= PIPE_BIND_RENDER_TARGET; } if ((usage & PIPE_BIND_SAMPLER_VIEW) && - (sample_count == 0 || sample_count == VC4_MAX_SAMPLES) && - (vc4_tex_format_supported(format))) { + vc4_tex_format_supported(format)) { retval |= PIPE_BIND_SAMPLER_VIEW; }