From: Brian Paul Date: Mon, 27 Jun 2016 17:16:03 +0000 (-0600) Subject: svga: adjust sampler view format for RGBX X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=68388043f3280bbac9383721e37f8ca7685b7f01;p=mesa.git svga: adjust sampler view format for RGBX We previously handled the case of a RGBX sampler view of a RGBA surface. Add the reverse case too. For GL_ARB_copy_image. Acked-by: Roland Scheidegger Reviewed-by: Charmaine Lee --- diff --git a/src/gallium/drivers/svga/svga_state_sampler.c b/src/gallium/drivers/svga/svga_state_sampler.c index 6e78825954f..00e8fc0e6c8 100644 --- a/src/gallium/drivers/svga/svga_state_sampler.c +++ b/src/gallium/drivers/svga/svga_state_sampler.c @@ -106,12 +106,16 @@ svga_validate_pipe_sampler_view(struct svga_context *svga, enum pipe_format pformat = sv->base.format; /* vgpu10 cannot create a BGRX view for a BGRA resource, so force it to - * create a BGRA view. + * create a BGRA view (and vice versa). */ if (pformat == PIPE_FORMAT_B8G8R8X8_UNORM && sv->base.texture->format == PIPE_FORMAT_B8G8R8A8_UNORM) { pformat = PIPE_FORMAT_B8G8R8A8_UNORM; } + else if (pformat == PIPE_FORMAT_B8G8R8A8_UNORM && + sv->base.texture->format == PIPE_FORMAT_B8G8R8X8_UNORM) { + pformat = PIPE_FORMAT_B8G8R8X8_UNORM; + } format = svga_translate_format(ss, pformat, PIPE_BIND_SAMPLER_VIEW);