[Mesa-dev] [PATCH] i965: Don't use tiled_memcpy to download from RGBX or BGRX surfaces

Anuj Phogat anuj.phogat at gmail.com
Mon Feb 2 10:17:32 PST 2015


On Mon, Feb 2, 2015 at 9:53 AM, Jason Ekstrand <jason at jlekstrand.net> wrote:
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=88841
> ---
>  src/mesa/drivers/dri/i965/intel_pixel_read.c | 7 +++++++
>  src/mesa/drivers/dri/i965/intel_tex_image.c  | 7 +++++++
>  2 files changed, 14 insertions(+)
>
> diff --git a/src/mesa/drivers/dri/i965/intel_pixel_read.c b/src/mesa/drivers/dri/i965/intel_pixel_read.c
> index f3ab05c..df22a63 100644
> --- a/src/mesa/drivers/dri/i965/intel_pixel_read.c
> +++ b/src/mesa/drivers/dri/i965/intel_pixel_read.c
> @@ -132,6 +132,13 @@ intel_readpixels_tiled_memcpy(struct gl_context * ctx,
>     if (rb->NumSamples > 1)
>        return false;
>
> +   /* We can't handle copying from RGBX or BGRX because the tiled_memcpy
> +    * function doesn't set the last channel to 1.
> +    */
> +   if (rb->Format == MESA_FORMAT_B8G8R8X8_UNORM ||
> +       rb->Format == MESA_FORMAT_R8G8B8X8_UNORM)
> +      return false;
> +
>     if (!intel_get_memcpy(rb->Format, format, type, &mem_copy, &cpp))
>        return false;
>
> diff --git a/src/mesa/drivers/dri/i965/intel_tex_image.c b/src/mesa/drivers/dri/i965/intel_tex_image.c
> index 53efbbb..6eebfc4 100644
> --- a/src/mesa/drivers/dri/i965/intel_tex_image.c
> +++ b/src/mesa/drivers/dri/i965/intel_tex_image.c
> @@ -392,6 +392,13 @@ intel_gettexsubimage_tiled_memcpy(struct gl_context *ctx,
>         packing->Invert)
>        return false;
>
> +   /* We can't handle copying from RGBX or BGRX because the tiled_memcpy
> +    * function doesn't set the last channel to 1.
> +    */
> +   if (texImage->TexFormat == MESA_FORMAT_B8G8R8X8_UNORM ||
> +       texImage->TexFormat == MESA_FORMAT_R8G8B8X8_UNORM)
> +      return false;
> +
>     if (!intel_get_memcpy(texImage->TexFormat, format, type, &mem_copy, &cpp))
>        return false;
>
> --
> 2.2.2
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


Reviewed-by: Anuj Phogat <anuj.phogat at gmail.com>


More information about the mesa-dev mailing list