summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKristian Høgsberg <krh@bitplanet.net>2012-01-11 14:50:29 -0500
committerKristian Høgsberg <krh@bitplanet.net>2012-03-27 09:32:00 -0400
commitaf6cea4fc0035c413733001ff2268741ff1dae5d (patch)
tree6539c4b09d6d08169be210d5ca02680ac505f466
parent95356d1bc17bb70ac8468679b4ec70669500dc9a (diff)
xwayland: Use new wl_drm format codes
-rw-r--r--hw/xfree86/xwayland/drm.xml64
-rw-r--r--hw/xfree86/xwayland/xwayland-cursor.c2
-rw-r--r--hw/xfree86/xwayland/xwayland-drm.c4
-rw-r--r--hw/xfree86/xwayland/xwayland.c4
4 files changed, 66 insertions, 8 deletions
diff --git a/hw/xfree86/xwayland/drm.xml b/hw/xfree86/xwayland/drm.xml
index f63bebdca..89fd8f088 100644
--- a/hw/xfree86/xwayland/drm.xml
+++ b/hw/xfree86/xwayland/drm.xml
@@ -37,9 +37,67 @@
</enum>
<enum name="format">
- <entry name="argb32" value="0"/>
- <entry name="premultiplied_argb32" value="1"/>
- <entry name="xrgb32" value="2"/>
+ <!-- The drm format codes match the #defines in drm_fourcc.h.
+ The formats actually supported by the compositor will be
+ reported by the format event. -->
+ <entry name="c8" value="0x20203843"/>
+ <entry name="rgb332" value="0x38424752"/>
+ <entry name="bgr233" value="0x38524742"/>
+ <entry name="xrgb4444" value="0x32315258"/>
+ <entry name="xbgr4444" value="0x32314258"/>
+ <entry name="rgbx4444" value="0x32315852"/>
+ <entry name="bgrx4444" value="0x32315842"/>
+ <entry name="argb4444" value="0x32315241"/>
+ <entry name="abgr4444" value="0x32314241"/>
+ <entry name="rgba4444" value="0x32314152"/>
+ <entry name="bgra4444" value="0x32314142"/>
+ <entry name="xrgb1555" value="0x35315258"/>
+ <entry name="xbgr1555" value="0x35314258"/>
+ <entry name="rgbx5551" value="0x35315852"/>
+ <entry name="bgrx5551" value="0x35315842"/>
+ <entry name="argb1555" value="0x35315241"/>
+ <entry name="abgr1555" value="0x35314241"/>
+ <entry name="rgba5551" value="0x35314152"/>
+ <entry name="bgra5551" value="0x35314142"/>
+ <entry name="rgb565" value="0x36314752"/>
+ <entry name="bgr565" value="0x36314742"/>
+ <entry name="rgb888" value="0x34324752"/>
+ <entry name="bgr888" value="0x34324742"/>
+ <entry name="xrgb8888" value="0x34325258"/>
+ <entry name="xbgr8888" value="0x34324258"/>
+ <entry name="rgbx8888" value="0x34325852"/>
+ <entry name="bgrx8888" value="0x34325842"/>
+ <entry name="argb8888" value="0x34325241"/>
+ <entry name="abgr8888" value="0x34324241"/>
+ <entry name="rgba8888" value="0x34324152"/>
+ <entry name="bgra8888" value="0x34324142"/>
+ <entry name="xrgb2101010" value="0x30335258"/>
+ <entry name="xbgr2101010" value="0x30334258"/>
+ <entry name="rgbx1010102" value="0x30335852"/>
+ <entry name="bgrx1010102" value="0x30335842"/>
+ <entry name="argb2101010" value="0x30335241"/>
+ <entry name="abgr2101010" value="0x30334241"/>
+ <entry name="rgba1010102" value="0x30334152"/>
+ <entry name="bgra1010102" value="0x30334142"/>
+ <entry name="yuyv" value="0x56595559"/>
+ <entry name="yvyu" value="0x55595659"/>
+ <entry name="uyvy" value="0x59565955"/>
+ <entry name="vyuy" value="0x59555956"/>
+ <entry name="ayuv" value="0x56555941"/>
+ <entry name="nv12" value="0x3231564e"/>
+ <entry name="nv21" value="0x3132564e"/>
+ <entry name="nv16" value="0x3631564e"/>
+ <entry name="nv61" value="0x3136564e"/>
+ <entry name="yuv410" value="0x39565559"/>
+ <entry name="yvu410" value="0x39555659"/>
+ <entry name="yuv411" value="0x31315559"/>
+ <entry name="yvu411" value="0x31315659"/>
+ <entry name="yuv420" value="0x32315559"/>
+ <entry name="yvu420" value="0x32315659"/>
+ <entry name="yuv422" value="0x36315559"/>
+ <entry name="yvu422" value="0x36315659"/>
+ <entry name="yuv444" value="0x34325559"/>
+ <entry name="yvu444" value="0x34325659"/>
</enum>
<!-- Call this request with the magic received from drmGetMagic().
diff --git a/hw/xfree86/xwayland/xwayland-cursor.c b/hw/xfree86/xwayland/xwayland-cursor.c
index 7f25109eb..4bf316ace 100644
--- a/hw/xfree86/xwayland/xwayland-cursor.c
+++ b/hw/xfree86/xwayland/xwayland-cursor.c
@@ -124,7 +124,7 @@ xwl_realize_cursor(DeviceIntPtr device, ScreenPtr screen, CursorPtr cursor)
buffer = wl_shm_create_buffer(xwl_screen->shm, fd,
cursor->bits->width, cursor->bits->height,
cursor->bits->width * 4,
- WL_SHM_FORMAT_ARGB32);
+ WL_SHM_FORMAT_ARGB8888);
close(fd);
dixSetPrivate(&cursor->devPrivates, &xwl_cursor_private_key, buffer);
diff --git a/hw/xfree86/xwayland/xwayland-drm.c b/hw/xfree86/xwayland/xwayland-drm.c
index 54ef50388..7451ae81e 100644
--- a/hw/xfree86/xwayland/xwayland-drm.c
+++ b/hw/xfree86/xwayland/xwayland-drm.c
@@ -166,9 +166,9 @@ xwl_create_window_buffer_drm(struct xwl_window *xwl_window,
break;
if (screen->visuals[i].nplanes == 32)
- format = WL_DRM_FORMAT_PREMULTIPLIED_ARGB32;
+ format = WL_DRM_FORMAT_ARGB8888;
else
- format = WL_DRM_FORMAT_XRGB32;
+ format = WL_DRM_FORMAT_XRGB8888;
xwl_window->buffer =
wl_drm_create_buffer(xwl_window->xwl_screen->drm,
diff --git a/hw/xfree86/xwayland/xwayland.c b/hw/xfree86/xwayland/xwayland.c
index e3c7edaab..05871137f 100644
--- a/hw/xfree86/xwayland/xwayland.c
+++ b/hw/xfree86/xwayland/xwayland.c
@@ -244,9 +244,9 @@ xwl_create_window_buffer_shm(struct xwl_window *xwl_window,
break;
if (screen->visuals[i].nplanes == 32)
- format = WL_SHM_FORMAT_PREMULTIPLIED_ARGB32;
+ format = WL_SHM_FORMAT_ARGB8888;
else
- format = WL_SHM_FORMAT_XRGB32;
+ format = WL_SHM_FORMAT_XRGB8888;
xwl_window->buffer =
wl_shm_create_buffer(xwl_window->xwl_screen->shm, fd,