case GL_RGB10_A2:
case GL_RGBA12:
case GL_RGBA16:
- case GL_RGBA4:
- case GL_RGBA2:
- case GL_RGB5_A1:
return &_mesa_texformat_argb8888;
-/* return &_mesa_texformat_rgba8888_rev; */
- case 3:
- case GL_RGB:
- case GL_COMPRESSED_RGB:
case GL_RGB8:
case GL_RGB10:
case GL_RGB12:
case GL_RGB16:
- case GL_RGB5:
- case GL_RGB4:
- case GL_R3_G3_B2:
- /* Broadwater doesn't support RGB textures, so these must be
+ /* Broadwater doesn't support RGB888 textures, so these must be
* stored as ARGB.
*/
return &_mesa_texformat_argb8888;
+ case 3:
+ case GL_COMPRESSED_RGB:
+ case GL_RGB:
+ if (format == GL_RGB &&
+ type == GL_UNSIGNED_SHORT_5_6_5)
+ return &_mesa_texformat_rgb565;
+ else
+ return &_mesa_texformat_argb8888;
+
+
+ case GL_RGB5:
+ case GL_RGB5_A1:
+ return &_mesa_texformat_argb1555;
+
+ case GL_R3_G3_B2:
+ case GL_RGBA2:
+ case GL_RGBA4:
+ case GL_RGB4:
+ return &_mesa_texformat_argb4444;
+
case GL_ALPHA:
case GL_ALPHA4:
case GL_ALPHA8:
return BRW_SURFACEFORMAT_L8A8_UNORM;
case MESA_FORMAT_RGB888:
- return BRW_SURFACEFORMAT_R8G8B8_UNORM;
+ assert(0); /* not supported for sampling */
+ return BRW_SURFACEFORMAT_R8G8B8_UNORM;
case MESA_FORMAT_ARGB8888:
return BRW_SURFACEFORMAT_B8G8R8A8_UNORM;
case MESA_FORMAT_RGBA8888_REV:
return BRW_SURFACEFORMAT_R8G8B8A8_UNORM;
+ case MESA_FORMAT_RGB565:
+ return BRW_SURFACEFORMAT_B5G6R5_UNORM;
+
+ case MESA_FORMAT_ARGB1555:
+ return BRW_SURFACEFORMAT_B5G5R5A1_UNORM;
+
+ case MESA_FORMAT_ARGB4444:
+ return BRW_SURFACEFORMAT_B4G4R4A4_UNORM;
+
case MESA_FORMAT_YCBCR_REV:
return BRW_SURFACEFORMAT_YCRCB_NORMAL;