[RFC 0/9] gbm_surface
Ander Conselvan de Oliveira
conselvan2 at gmail.com
Wed Dec 14 01:59:59 PST 2011
From: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira at intel.com>
Hi,
So, in London we discussed moving the drm compositor to a new
gbm_surface interface, which would allow the buffer management
to be handled by the egl implementation by calling eglSwapBuffers.
Here's a prototype implementation of such an interface in mesa and a
patch to wayland-demos moving compositor-drm to it. With the changes,
the compositor creates a gbm_surface for each output and from that it
creates egl surfaces.
The compositor is still responsible for the actual flipping. In order
to do that, the new interface includes a function for getting a bo for
a gbm_surface's front buffer. This change does not impact the ability
of scanning out a client buffer.
Thanks,
Ander
Ander Conselvan de Oliveira (9):
gbm: add gbm_surface interface
egl_dri2: make flush extension useable by drm platform
gbm: implement basic gbm_surface on dri backend
egl_dri2: use gbm_surface as the native window type in drm platform
gbm: creates hooks for dri2_loader_extension in dri backend
egl_dri2: implement get_buffers and swap_buffers in drm platform
gbm: implement gbm_surface_get_bo in dri backend
gbm: add a release_buffer callback to dri backend
egl_dri2: add triple buffering support to drm platform
src/egl/drivers/dri2/egl_dri2.h | 18 ++
src/egl/drivers/dri2/platform_drm.c | 340 ++++++++++++++++++++++++++++++++++-
src/gbm/backends/dri/gbm_dri.c | 147 +++++++++++++++-
src/gbm/backends/dri/gbm_driint.h | 31 +++-
src/gbm/main/gbm.c | 26 +++
src/gbm/main/gbm.h | 15 ++
src/gbm/main/gbmint.h | 14 ++
7 files changed, 588 insertions(+), 3 deletions(-)
--
1.7.4.1
More information about the wayland-devel
mailing list