[Mesa-dev] [PATCH 8/9] egl: add EGL_platform_device support

Marek Olšák maraeo at gmail.com
Tue May 7 23:53:27 UTC 2019


Acked-by: Marek Olšák <marek.olsak at amd.com>

Marek

On Mon, May 6, 2019 at 11:02 AM Emil Velikov <emil.l.velikov at gmail.com>
wrote:

> This new 'platform' is added by default with no guards.
>
> It is effectively a copy of the surfaceless one, with updated function
> names and brand new probe function.
>
> Due to the reuse, some of the ifdef HAVE_SURFACELESS_PLATFORM guards
> have been dropped.
>
> A worthy mention are the changes in _egFindDisplay, since the original
> and dup'd fd are required, we make use of the plat_opt argument.
>
> Note that no hacks for eglGetDisplay are added - the API works only with
> the eglGetPlatformDisplay* API.
>
> v2:
>  - s/_eglCompareDeviceDisplay/_eglSameDeviceDisplay/ (Eric)
>  - let ^^ return bool (Eric)
>  - fixup meson build, move files() further up (Eric)
>  - copy from plat. surfaceless w/o the visual cleanups
>  - close and free when destroying the dpy
>  - sprinkle a few _eglDeviceSupports
>  - split fd handling into separate function
>  - use directly the render node if no FD is given (Mathias)
>
> v3:
>  - s/dpy/disp/g
>  - drop swap_buffers* callbacks
>  - drop loader_set_logger()
>  - drop local define
>  - re-introduce _eglGetDRMDeviceRenderNode()
>  - EGL_WARN on ForceSoftware with HW device - continue using the HW device
>  - bail out for "EGL_MESA_device_software" until it's fixed
>  - wire-up the Android build
>
> v4:
>  - use new style _eglFindDisplay()
>  - split hw vs sw code paths
>  - don't close the internal fd (already handled in FiniDisplay())
>  - make swrast work (bit hacky bit will do for now)
>  - Android for real, drop autotools
>  - Correct HW + LIBGL_ALWAYS_SOFTWARE check
>  - use the dri2_create_drawable() helper
>
> Cc: Mathias Fröhlich <Mathias.Froehlich at gmx.net>
> Cc: Marek Olšák <maraeo at gmail.com>
> Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
> ---
>  src/egl/Android.mk                     |   1 +
>  src/egl/drivers/dri2/egl_dri2.c        |   3 +
>  src/egl/drivers/dri2/egl_dri2.h        |  13 +-
>  src/egl/drivers/dri2/platform_device.c | 432 +++++++++++++++++++++++++
>  src/egl/main/eglapi.c                  |  13 +-
>  src/egl/main/egldevice.c               |  16 +
>  src/egl/main/egldevice.h               |   3 +
>  src/egl/main/egldisplay.c              |  64 ++++
>  src/egl/main/egldisplay.h              |   7 +-
>  src/egl/main/eglglobals.c              |   1 +
>  src/egl/meson.build                    |   1 +
>  11 files changed, 543 insertions(+), 11 deletions(-)
>  create mode 100644 src/egl/drivers/dri2/platform_device.c
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20190507/5b65971d/attachment.html>


More information about the mesa-dev mailing list