[Mesa-dev] [PATCH 3/6] dri/common: Add support for creating ARGB2101010 configs

Kristian Høgsberg krh at bitplanet.net
Sun Sep 15 00:16:45 PDT 2013


This extends the common dri driver infrastructure with the ability to create
__DRIconfigs for 10 bits/channel + 2 bit alphs formats.  This still has
to be supported and requested by a driver, so this doesn't enable anthing yet.

Signed-off-by: Kristian Høgsberg <krh at bitplanet.net>
---
 src/mesa/drivers/dri/common/utils.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/src/mesa/drivers/dri/common/utils.c b/src/mesa/drivers/dri/common/utils.c
index c9fc218..f3780d9 100644
--- a/src/mesa/drivers/dri/common/utils.c
+++ b/src/mesa/drivers/dri/common/utils.c
@@ -189,6 +189,10 @@ driCreateConfigs(gl_format format,
       { 0x00FF0000, 0x0000FF00, 0x000000FF, 0x00000000 },
       /* MESA_FORMAT_ARGB8888 */
       { 0x00FF0000, 0x0000FF00, 0x000000FF, 0xFF000000 },
+      /* MESA_FORMAT_XRGB2101010_UNORM */
+      { 0x3FF00000, 0x000FFC00, 0x000003FF, 0x00000000 },
+      /* MESA_FORMAT_ARGB2101010 */
+      { 0x3FF00000, 0x000FFC00, 0x000003FF, 0xC0000000 },
    };
 
    const uint32_t * masks;
@@ -214,6 +218,12 @@ driCreateConfigs(gl_format format,
    case MESA_FORMAT_SARGB8:
       masks = masks_table[2];
       break;
+   case MESA_FORMAT_XRGB2101010_UNORM:
+      masks = masks_table[3];
+      break;
+   case MESA_FORMAT_ARGB2101010:
+      masks = masks_table[4];
+      break;
    default:
       fprintf(stderr, "[%s:%u] Unknown framebuffer type %s (%d).\n",
               __FUNCTION__, __LINE__,
-- 
1.8.3.1



More information about the mesa-dev mailing list