Mesa (master): Add support for RGBA8 and RGBX8 textures in intel_texsubimage_tiled_memcpy

Jason Ekstrand jekstrand at kemper.freedesktop.org
Fri Jul 18 01:20:42 UTC 2014


Module: Mesa
Branch: master
Commit: f14d217f5c72651b9f24a83b11ace16837db4603
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=f14d217f5c72651b9f24a83b11ace16837db4603

Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date:   Thu Jul 17 14:40:23 2014 -0700

Add support for RGBA8 and RGBX8 textures in intel_texsubimage_tiled_memcpy

Reviewed-by: Matt Turner <mattst88 at gmail.com>
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Chad Versace <chad.versace at linux.intel.com>

---

 src/mesa/drivers/dri/i965/intel_tex_subimage.c |   11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/src/mesa/drivers/dri/i965/intel_tex_subimage.c b/src/mesa/drivers/dri/i965/intel_tex_subimage.c
index 04cbc4c..c73cf10 100644
--- a/src/mesa/drivers/dri/i965/intel_tex_subimage.c
+++ b/src/mesa/drivers/dri/i965/intel_tex_subimage.c
@@ -585,6 +585,17 @@ intel_texsubimage_tiled_memcpy(struct gl_context * ctx,
       } else if (format == GL_RGBA) {
          mem_copy = rgba8_copy;
       }
+   } else if ((texImage->TexFormat == MESA_FORMAT_R8G8B8A8_UNORM) ||
+              (texImage->TexFormat == MESA_FORMAT_R8G8B8X8_UNORM)) {
+      cpp = 4;
+      if (format == GL_BGRA) {
+         /* Copying from RGBA to BGRA is the same as BGRA to RGBA so we can
+          * use the same function.
+          */
+         mem_copy = rgba8_copy;
+      } else if (format == GL_RGBA) {
+         mem_copy = memcpy;
+      }
    }
    if (!mem_copy)
       return false;




More information about the mesa-commit mailing list