egl/wayland: Support RGB888/BGR888 formats

Signed-off-by: Ryan Mckeever <ryan.mckeever@collabora.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34889>
This commit is contained in:
Ryan Mckeever
2025-05-15 20:53:31 -07:00
committed by Marge Bot
parent c86b3e1ae9
commit a4d5012a66
2 changed files with 16 additions and 0 deletions
+12
View File
@@ -127,6 +127,12 @@ static const struct dri2_wl_visual {
PIPE_FORMAT_NONE,
WL_DRM_FORMAT_XRGB8888,
},
{
WL_DRM_FORMAT_RGB888,
PIPE_FORMAT_B8G8R8_UNORM,
PIPE_FORMAT_NONE,
WL_DRM_FORMAT_RGB888,
},
{
WL_DRM_FORMAT_ABGR8888,
PIPE_FORMAT_RGBA8888_UNORM,
@@ -139,6 +145,12 @@ static const struct dri2_wl_visual {
PIPE_FORMAT_NONE,
WL_DRM_FORMAT_XBGR8888,
},
{
WL_DRM_FORMAT_BGR888,
PIPE_FORMAT_R8G8B8_UNORM,
PIPE_FORMAT_NONE,
WL_DRM_FORMAT_BGR888,
},
{
WL_DRM_FORMAT_RGB565,
PIPE_FORMAT_B5G6R5_UNORM,
@@ -114,6 +114,8 @@ drm_create_buffer(struct wl_client *client, struct wl_resource *resource,
case WL_DRM_FORMAT_XRGB2101010:
case WL_DRM_FORMAT_ARGB8888:
case WL_DRM_FORMAT_XRGB8888:
case WL_DRM_FORMAT_BGR888:
case WL_DRM_FORMAT_RGB888:
case WL_DRM_FORMAT_YUYV:
case WL_DRM_FORMAT_RGB565:
break;
@@ -230,6 +232,8 @@ bind_drm(struct wl_client *client, void *data, uint32_t version, uint32_t id)
wl_resource_post_event(resource, WL_DRM_FORMAT, WL_DRM_FORMAT_ARGB8888);
wl_resource_post_event(resource, WL_DRM_FORMAT, WL_DRM_FORMAT_XRGB8888);
wl_resource_post_event(resource, WL_DRM_FORMAT, WL_DRM_FORMAT_BGR888);
wl_resource_post_event(resource, WL_DRM_FORMAT, WL_DRM_FORMAT_RGB888);
wl_resource_post_event(resource, WL_DRM_FORMAT, WL_DRM_FORMAT_RGB565);
wl_resource_post_event(resource, WL_DRM_FORMAT, WL_DRM_FORMAT_YUV410);
wl_resource_post_event(resource, WL_DRM_FORMAT, WL_DRM_FORMAT_YUV411);