egl/wayland: Add opaque-equivalent FourCCs
Add a mapping for the opaque version of an alphaful format (e.g. ARGB8888 -> XRGB8888) to better support EGL_EXT_present_opaque. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27709> (cherry picked from commit c74f4803911d8cbc9e9617ed79ea9480f335addd)
This commit is contained in:
parent
b067a61c07
commit
b137afc1e6
2 changed files with 17 additions and 1 deletions
|
|
@ -484,7 +484,7 @@
|
||||||
"description": "egl/wayland: Add opaque-equivalent FourCCs",
|
"description": "egl/wayland: Add opaque-equivalent FourCCs",
|
||||||
"nominated": false,
|
"nominated": false,
|
||||||
"nomination_type": 3,
|
"nomination_type": 3,
|
||||||
"resolution": 4,
|
"resolution": 1,
|
||||||
"main_sha": null,
|
"main_sha": null,
|
||||||
"because_sha": null,
|
"because_sha": null,
|
||||||
"notes": null
|
"notes": null
|
||||||
|
|
|
||||||
|
|
@ -73,6 +73,7 @@ static const struct dri2_wl_visual {
|
||||||
*/
|
*/
|
||||||
int alt_dri_image_format;
|
int alt_dri_image_format;
|
||||||
int bpp;
|
int bpp;
|
||||||
|
int opaque_wl_drm_format;
|
||||||
int rgba_shifts[4];
|
int rgba_shifts[4];
|
||||||
unsigned int rgba_sizes[4];
|
unsigned int rgba_sizes[4];
|
||||||
} dri2_wl_visuals[] = {
|
} dri2_wl_visuals[] = {
|
||||||
|
|
@ -83,6 +84,7 @@ static const struct dri2_wl_visual {
|
||||||
__DRI_IMAGE_FORMAT_ABGR16161616F,
|
__DRI_IMAGE_FORMAT_ABGR16161616F,
|
||||||
0,
|
0,
|
||||||
64,
|
64,
|
||||||
|
WL_DRM_FORMAT_XBGR16F,
|
||||||
{0, 16, 32, 48},
|
{0, 16, 32, 48},
|
||||||
{16, 16, 16, 16},
|
{16, 16, 16, 16},
|
||||||
},
|
},
|
||||||
|
|
@ -93,6 +95,7 @@ static const struct dri2_wl_visual {
|
||||||
__DRI_IMAGE_FORMAT_XBGR16161616F,
|
__DRI_IMAGE_FORMAT_XBGR16161616F,
|
||||||
0,
|
0,
|
||||||
64,
|
64,
|
||||||
|
WL_DRM_FORMAT_XBGR16F,
|
||||||
{0, 16, 32, -1},
|
{0, 16, 32, -1},
|
||||||
{16, 16, 16, 0},
|
{16, 16, 16, 0},
|
||||||
},
|
},
|
||||||
|
|
@ -103,6 +106,7 @@ static const struct dri2_wl_visual {
|
||||||
__DRI_IMAGE_FORMAT_XRGB2101010,
|
__DRI_IMAGE_FORMAT_XRGB2101010,
|
||||||
__DRI_IMAGE_FORMAT_XBGR2101010,
|
__DRI_IMAGE_FORMAT_XBGR2101010,
|
||||||
32,
|
32,
|
||||||
|
WL_DRM_FORMAT_XRGB2101010,
|
||||||
{20, 10, 0, -1},
|
{20, 10, 0, -1},
|
||||||
{10, 10, 10, 0},
|
{10, 10, 10, 0},
|
||||||
},
|
},
|
||||||
|
|
@ -113,6 +117,7 @@ static const struct dri2_wl_visual {
|
||||||
__DRI_IMAGE_FORMAT_ARGB2101010,
|
__DRI_IMAGE_FORMAT_ARGB2101010,
|
||||||
__DRI_IMAGE_FORMAT_ABGR2101010,
|
__DRI_IMAGE_FORMAT_ABGR2101010,
|
||||||
32,
|
32,
|
||||||
|
WL_DRM_FORMAT_XRGB2101010,
|
||||||
{20, 10, 0, 30},
|
{20, 10, 0, 30},
|
||||||
{10, 10, 10, 2},
|
{10, 10, 10, 2},
|
||||||
},
|
},
|
||||||
|
|
@ -123,6 +128,7 @@ static const struct dri2_wl_visual {
|
||||||
__DRI_IMAGE_FORMAT_XBGR2101010,
|
__DRI_IMAGE_FORMAT_XBGR2101010,
|
||||||
__DRI_IMAGE_FORMAT_XRGB2101010,
|
__DRI_IMAGE_FORMAT_XRGB2101010,
|
||||||
32,
|
32,
|
||||||
|
WL_DRM_FORMAT_XBGR2101010,
|
||||||
{0, 10, 20, -1},
|
{0, 10, 20, -1},
|
||||||
{10, 10, 10, 0},
|
{10, 10, 10, 0},
|
||||||
},
|
},
|
||||||
|
|
@ -133,6 +139,7 @@ static const struct dri2_wl_visual {
|
||||||
__DRI_IMAGE_FORMAT_ABGR2101010,
|
__DRI_IMAGE_FORMAT_ABGR2101010,
|
||||||
__DRI_IMAGE_FORMAT_ARGB2101010,
|
__DRI_IMAGE_FORMAT_ARGB2101010,
|
||||||
32,
|
32,
|
||||||
|
WL_DRM_FORMAT_XBGR2101010,
|
||||||
{0, 10, 20, 30},
|
{0, 10, 20, 30},
|
||||||
{10, 10, 10, 2},
|
{10, 10, 10, 2},
|
||||||
},
|
},
|
||||||
|
|
@ -143,6 +150,7 @@ static const struct dri2_wl_visual {
|
||||||
__DRI_IMAGE_FORMAT_XRGB8888,
|
__DRI_IMAGE_FORMAT_XRGB8888,
|
||||||
__DRI_IMAGE_FORMAT_NONE,
|
__DRI_IMAGE_FORMAT_NONE,
|
||||||
32,
|
32,
|
||||||
|
WL_DRM_FORMAT_XRGB8888,
|
||||||
{16, 8, 0, -1},
|
{16, 8, 0, -1},
|
||||||
{8, 8, 8, 0},
|
{8, 8, 8, 0},
|
||||||
},
|
},
|
||||||
|
|
@ -153,6 +161,7 @@ static const struct dri2_wl_visual {
|
||||||
__DRI_IMAGE_FORMAT_ARGB8888,
|
__DRI_IMAGE_FORMAT_ARGB8888,
|
||||||
__DRI_IMAGE_FORMAT_NONE,
|
__DRI_IMAGE_FORMAT_NONE,
|
||||||
32,
|
32,
|
||||||
|
WL_DRM_FORMAT_XRGB8888,
|
||||||
{16, 8, 0, 24},
|
{16, 8, 0, 24},
|
||||||
{8, 8, 8, 8},
|
{8, 8, 8, 8},
|
||||||
},
|
},
|
||||||
|
|
@ -163,6 +172,7 @@ static const struct dri2_wl_visual {
|
||||||
__DRI_IMAGE_FORMAT_ABGR8888,
|
__DRI_IMAGE_FORMAT_ABGR8888,
|
||||||
__DRI_IMAGE_FORMAT_NONE,
|
__DRI_IMAGE_FORMAT_NONE,
|
||||||
32,
|
32,
|
||||||
|
WL_DRM_FORMAT_XBGR8888,
|
||||||
{0, 8, 16, 24},
|
{0, 8, 16, 24},
|
||||||
{8, 8, 8, 8},
|
{8, 8, 8, 8},
|
||||||
},
|
},
|
||||||
|
|
@ -173,6 +183,7 @@ static const struct dri2_wl_visual {
|
||||||
__DRI_IMAGE_FORMAT_XBGR8888,
|
__DRI_IMAGE_FORMAT_XBGR8888,
|
||||||
__DRI_IMAGE_FORMAT_NONE,
|
__DRI_IMAGE_FORMAT_NONE,
|
||||||
32,
|
32,
|
||||||
|
WL_DRM_FORMAT_XBGR8888,
|
||||||
{0, 8, 16, -1},
|
{0, 8, 16, -1},
|
||||||
{8, 8, 8, 0},
|
{8, 8, 8, 0},
|
||||||
},
|
},
|
||||||
|
|
@ -183,6 +194,7 @@ static const struct dri2_wl_visual {
|
||||||
__DRI_IMAGE_FORMAT_RGB565,
|
__DRI_IMAGE_FORMAT_RGB565,
|
||||||
__DRI_IMAGE_FORMAT_NONE,
|
__DRI_IMAGE_FORMAT_NONE,
|
||||||
16,
|
16,
|
||||||
|
WL_DRM_FORMAT_RGB565,
|
||||||
{11, 5, 0, -1},
|
{11, 5, 0, -1},
|
||||||
{5, 6, 5, 0},
|
{5, 6, 5, 0},
|
||||||
},
|
},
|
||||||
|
|
@ -193,6 +205,7 @@ static const struct dri2_wl_visual {
|
||||||
__DRI_IMAGE_FORMAT_ARGB1555,
|
__DRI_IMAGE_FORMAT_ARGB1555,
|
||||||
__DRI_IMAGE_FORMAT_ABGR1555,
|
__DRI_IMAGE_FORMAT_ABGR1555,
|
||||||
16,
|
16,
|
||||||
|
WL_DRM_FORMAT_XRGB1555,
|
||||||
{10, 5, 0, 15},
|
{10, 5, 0, 15},
|
||||||
{5, 5, 5, 1},
|
{5, 5, 5, 1},
|
||||||
},
|
},
|
||||||
|
|
@ -203,6 +216,7 @@ static const struct dri2_wl_visual {
|
||||||
__DRI_IMAGE_FORMAT_XRGB1555,
|
__DRI_IMAGE_FORMAT_XRGB1555,
|
||||||
__DRI_IMAGE_FORMAT_XBGR1555,
|
__DRI_IMAGE_FORMAT_XBGR1555,
|
||||||
16,
|
16,
|
||||||
|
WL_DRM_FORMAT_XRGB1555,
|
||||||
{10, 5, 0, -1},
|
{10, 5, 0, -1},
|
||||||
{5, 5, 5, 0},
|
{5, 5, 5, 0},
|
||||||
},
|
},
|
||||||
|
|
@ -213,6 +227,7 @@ static const struct dri2_wl_visual {
|
||||||
__DRI_IMAGE_FORMAT_ARGB4444,
|
__DRI_IMAGE_FORMAT_ARGB4444,
|
||||||
__DRI_IMAGE_FORMAT_XBGR4444,
|
__DRI_IMAGE_FORMAT_XBGR4444,
|
||||||
16,
|
16,
|
||||||
|
WL_DRM_FORMAT_XRGB4444,
|
||||||
{8, 4, 0, 12},
|
{8, 4, 0, 12},
|
||||||
{4, 4, 4, 4},
|
{4, 4, 4, 4},
|
||||||
},
|
},
|
||||||
|
|
@ -223,6 +238,7 @@ static const struct dri2_wl_visual {
|
||||||
__DRI_IMAGE_FORMAT_XRGB4444,
|
__DRI_IMAGE_FORMAT_XRGB4444,
|
||||||
__DRI_IMAGE_FORMAT_XBGR4444,
|
__DRI_IMAGE_FORMAT_XBGR4444,
|
||||||
16,
|
16,
|
||||||
|
WL_DRM_FORMAT_XRGB4444,
|
||||||
{8, 4, 0, -1},
|
{8, 4, 0, -1},
|
||||||
{4, 4, 4, 0},
|
{4, 4, 4, 0},
|
||||||
},
|
},
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue