Commit e74c9473 authored by Adam Jackson's avatar Adam Jackson 🎧 Committed by Adam Jackson

egl/wayland: Add FP16 format support

Reviewed-by: Kevin Strasser's avatarKevin Strasser <kevin.strasser@intel.com>
parent cb8bbbef
......@@ -83,7 +83,7 @@ struct zwp_linux_dmabuf_v1;
#include "util/u_vector.h"
#include "util/bitset.h"
#define EGL_DRI2_MAX_FORMATS 8
#define EGL_DRI2_MAX_FORMATS 10
struct wl_buffer;
......
......@@ -51,6 +51,13 @@
#include "wayland-drm-client-protocol.h"
#include "linux-dmabuf-unstable-v1-client-protocol.h"
/* cheesy workaround until wayland 1.18 is released */
#if WAYLAND_VERSION_MAJOR > 1 || \
(WAYLAND_VERSION_MAJOR == 1 && WAYLAND_VERSION_MINOR < 18)
#define WL_SHM_FORMAT_ABGR16161616F 0x48344241
#define WL_SHM_FORMAT_XBGR16161616F 0x48344258
#endif
/*
* The index of entries in this table is used as a bitmask in
* dri2_dpy->formats, which tracks the formats supported by our server.
......@@ -72,6 +79,20 @@ static const struct dri2_wl_visual {
int rgba_shifts[4];
unsigned int rgba_sizes[4];
} dri2_wl_visuals[] = {
{
"ABGR16F",
WL_DRM_FORMAT_ABGR16F, WL_SHM_FORMAT_ABGR16161616F,
__DRI_IMAGE_FORMAT_ABGR16161616F, 0, 64,
{ 0, 16, 32, 48 },
{ 16, 16, 16, 16 },
},
{
"XBGR16F",
WL_DRM_FORMAT_XBGR16F, WL_SHM_FORMAT_XBGR16161616F,
__DRI_IMAGE_FORMAT_XBGR16161616F, 0, 64,
{ 0, 16, 32, -1 },
{ 16, 16, 16, 0 },
},
{
"XRGB2101010",
WL_DRM_FORMAT_XRGB2101010, WL_SHM_FORMAT_XRGB2101010,
......
......@@ -100,6 +100,8 @@
<entry name="yvu422" value="0x36315659"/>
<entry name="yuv444" value="0x34325559"/>
<entry name="yvu444" value="0x34325659"/>
<entry name="abgr16f" value="0x48344241"/>
<entry name="xbgr16f" value="0x48344258"/>
</enum>
<!-- Call this request with the magic received from drmGetMagic().
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment