[Mesa-dev] [PATCH 00/10] egl/android: Improve the Android EGL backend

Tomasz Figa tfiga at chromium.org
Fri Jul 15 07:53:46 UTC 2016


This series is a collection of various fixes and extensions we came up
with during our attempt to use Mesa for Android.

Fixes included in this series:
 - added mandatory EGL_MAX_PBUFFER_WIDTH and _HEIGHT attributes to EGL
 - fixed multiple issues with handling pbuffers in the backend,
 - found and fixed a DRI image leak,
 - made the implementation of DRI image loader .getBuffers callback
   conform better to the extension semantics.

New features added by this series:
 - possibility to build the Android EGL platform without drm_gralloc
 - support for creating EGL images from Android native buffers with
   YV12 pixel format (prime-only),
 - fallback to kms_swrast driver when no hardware driver can be loaded
   but there is still some usable DRI node present in the system.
 - more logging in case of errors to help diagnosing problems.

Testing was done using classic i965 (gen 8) and gallium softpipe drivers
on an internal build of Android, based on gralloc backed by a DRM render
node and sharing buffers by PRIME FDs.

Haixia Shi (1):

Nicolas Boichat (1):
  egl/android: Fix support for pbuffers

Tomasz Figa (8):
  egl/android: Check return value of dri2_get_dri_config()
  egl/android: Add some useful error messages
  egl/android: Stop leaking DRI images
  egl/android: Respect buffer mask in droid_image_get_buffers
  egl/android: Make drm_gralloc headers optional
  egl/android: Make get_fourcc() accept HAL formats
  egl/android: Add support for YV12 pixel format
  egl/android: Add fallback to kms_swrast driver

 src/egl/Android.mk                      |   1 +
 src/egl/drivers/dri2/egl_dri2.h         |   3 +
 src/egl/drivers/dri2/platform_android.c | 375 +++++++++++++++++++++++++-------
 3 files changed, 297 insertions(+), 82 deletions(-)


More information about the mesa-dev mailing list