diff --git a/render/picture.c b/render/picture.c index 01f4f7a9d..a3670778e 100644 --- a/render/picture.c +++ b/render/picture.c @@ -325,6 +325,17 @@ PictureCreateDefaultFormats (ScreenPtr pScreen, int *nformatp) nformats = addFormat (formats, nformats, PICT_b8g8r8x8, pDepth->depth); } + if (pDepth->depth >= 30) + { + nformats = addFormat (formats, nformats, + PICT_a2r10g10b10, pDepth->depth); + nformats = addFormat (formats, nformats, + PICT_x2r10g10b10, pDepth->depth); + nformats = addFormat (formats, nformats, + PICT_a2b10g10r10, pDepth->depth); + nformats = addFormat (formats, nformats, + PICT_x2b10g10r10, pDepth->depth); + } break; } } diff --git a/render/picture.h b/render/picture.h index dfc2d9b05..8bd38b98e 100644 --- a/render/picture.h +++ b/render/picture.h @@ -68,6 +68,11 @@ typedef struct _Picture *PicturePtr; /* 32bpp formats */ typedef enum _PictFormatShort { + PICT_a2r10g10b10 = PIXMAN_a2r10g10b10, + PICT_x2r10g10b10 = PIXMAN_x2r10g10b10, + PICT_a2b10g10r10 = PIXMAN_a2b10g10r10, + PICT_x2b10g10r10 = PIXMAN_x2b10g10r10, + PICT_a8r8g8b8 = PIXMAN_a8r8g8b8, PICT_x8r8g8b8 = PIXMAN_x8r8g8b8, PICT_a8b8g8r8 = PIXMAN_a8b8g8r8,