[PATCH weston v2 0/8] Generic Wayland dmabuf protocol

Pekka Paalanen ppaalanen at gmail.com
Wed Jul 1 07:56:12 PDT 2015


From: Pekka Paalanen <pekka.paalanen at collabora.co.uk>

Hi all,

here is the v2 iteration of the Wayland protocol extension for generic sharing
of dmabufs between clients and the compositor.

The RFCv1 can be found at
http://lists.freedesktop.org/archives/wayland-devel/2014-December/019006.html

The related tracking bug is
https://bugs.freedesktop.org/show_bug.cgi?id=83881


The major changes compared to RFCv1 are:
- use drm_fourcc.h to define format codes
- support FB modifiers and y-flip
- simplified protocol
- improved documentation
- flags for interlaced buffer content

As you can see, we have dropped the "RFC" status from this series now. We think
this is in a good enough shape to be merged into Weston as an experimental
protocol and implementation. Obviously we are still lacking on:
- agreed ways to flush caches (what can we cache? EGLImages? DRM FBs?)
- enumerating supported formats
- supported FB modifiers?
- do all imports in compositor before-hand, not as-needed
  (the import as DRM FB)
- EGL doesn't support dmabuf import with modifiers yet
- a test application not specific to (Intel) hardware (vivid?)
- compositor-drm.c's import of dmabuf needs a rewrite to bypass GBM
  (to be done after atomic lands)
- compositor-drm.c support for multi-planar buffers

This patch series is also available at:
https://git.collabora.com/cgit/user/pq/weston.git/log/?h=dmabuf-v2

Cc: Daniel Stone <daniel at fooishbar.org>
Cc: Louis-Francis Ratté-Boulianne <lfrb at collabora.com>
Cc: Benjamin Gaignard <benjamin.gaignard at linaro.org>
Cc: Axel Davy <axel.davy at ens.fr>
Cc: linaro-mm-sig at lists.linaro.org
Cc: Daniel Vetter <daniel at ffwll.ch>
Cc: Thomas Hellstrom <thellstrom at vmware.com>
Cc: Rob Clark <robdclark at gmail.com>
Cc: George Kiagiadakis <george.kiagiadakis at collabora.com>

George Kiagiadakis (1):
  clients: add simple-dmabuf client

Louis-Francis Ratté-Boulianne (1):
  gl-renderer: introduce struct egl_image

Pekka Paalanen (6):
  protocol: add linux_dmabuf extension (v2)
  dmabuf: implement linux_dmabuf extension
  gl-renderer: add dmabuf import
  compositor-x11: init linux_dmabuf support
  compositor-drm: init linux_dmabuf support
  compositor-drm: dmabuf GBM import

 .gitignore                |   1 +
 Makefile.am               |  25 +-
 clients/simple-dmabuf.c   | 591 ++++++++++++++++++++++++++++++++++++++++++++++
 configure.ac              |  10 +
 protocol/linux-dmabuf.xml | 279 ++++++++++++++++++++++
 src/compositor-drm.c      |  49 +++-
 src/compositor-x11.c      |   7 +
 src/compositor.c          |  28 +++
 src/compositor.h          |   9 +
 src/gl-renderer.c         | 303 +++++++++++++++++++++++-
 src/linux-dmabuf.c        | 497 ++++++++++++++++++++++++++++++++++++++
 src/linux-dmabuf.h        |  84 +++++++
 src/weston-egl-ext.h      |  16 ++
 13 files changed, 1885 insertions(+), 14 deletions(-)
 create mode 100644 clients/simple-dmabuf.c
 create mode 100644 protocol/linux-dmabuf.xml
 create mode 100644 src/linux-dmabuf.c
 create mode 100644 src/linux-dmabuf.h

-- 
2.3.6


Thanks,
pq



More information about the wayland-devel mailing list