Where is eglGetConfigs getting its configs from?

chris.laplante at agilent.com chris.laplante at agilent.com
Thu Nov 4 22:41:58 UTC 2021


Hello,

Can anyone please explain how eglGetConfigs actually works? i.e. what information is it consulting in order to determine the configs to return? Unfortunately we are using a processor (Xilinx Zynq UltraScale) with a GPU (Mali-400 MP2) whose EGL implementation is closed-source. So I cannot look at the source code for eglGetConfigs.

My expectation was that eglGetConfigs would simply enumerate DRM framebuffers in the system. However, the only framebuffer in our system (a Xilinx Framebuffer Read IP core in the FPGA) is using XRGB8888 colors and the list that Weston reports makes no sense. See below for /var/log/weston.log contents. Some component of the system seems to be finding RGB565 and ARGB8888 framebuffers somewhere.

I should also note that the /sys/kernel/debug/dri/0/framebuffer file is empty, however I'm not sure if that's important.

The contents of /etc/xdg/weston/weston.ini  are as follows:
[core]
gbm-format=xrgb8888
debug=1
require-input=false


Any help is appreciated because I'm at a loss.

Thanks,
Chris



Date: 2021-11-04 UTC
[01:36:24.711] weston 9.0.0
               https://wayland.freedesktop.org
               Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/
               Build: 9.0.0
[01:36:24.711] Command line: /usr/bin/weston --log=/var/log/weston.log
[01:36:24.711] OS: Linux, 5.10.0-xilinx-v2021.1, #1 SMP Wed Jul 7 19:07:31 UTC 2021, aarch64
[01:36:24.711] Using config file '/etc/xdg/weston/weston.ini'
[01:36:24.711] Output repaint window is 7 ms maximum.
[01:36:24.711] Loading module '/usr/lib/libweston-9/drm-backend.so'
[01:36:24.722] initializing drm backend
[01:36:24.723] using /dev/dri/card0
[01:36:24.723] DRM: supports atomic modesetting
[01:36:24.723] DRM: does not support GBM modifiers
[01:36:24.723] DRM: supports picture aspect ratio
[01:36:24.723] Loading module '/usr/lib/libweston-9/gl-renderer.so'
[01:36:24.724] EGL client extensions: EGL_EXT_client_extensions
               EGL_EXT_platform_base EGL_KHR_platform_gbm
               EGL_KHR_platform_wayland
[01:36:24.725] EGL version: 1.4 Linux-r9p0-01rel0
[01:36:24.725] EGL vendor: ARM
[01:36:24.725] EGL client APIs: OpenGL_ES
[01:36:24.725] EGL extensions: EGL_KHR_image EGL_KHR_image_base
               EGL_KHR_image_pixmap EGL_EXT_image_dma_buf_import
               EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image
               EGL_KHR_gl_renderbuffer_image EGL_KHR_fence_sync
               EGL_KHR_wait_sync EGL_KHR_swap_buffers_with_damage
               EGL_EXT_swap_buffers_with_damage EGL_KHR_lock_surface
               EGL_KHR_lock_surface2 EGL_EXT_create_context_robustness
               EGL_ANDROID_blob_cache EGL_KHR_create_context
               EGL_WL_bind_wayland_display EGL_KHR_partial_update
               EGL_KHR_create_context_no_error
[01:36:24.725] warning: Disabling render GPU timeline and explicit synchronization due to missing EGL_ANDROID_native_fence_sync extension
[01:36:24.725] Bad/unknown DRM format code 0x00000000.
[01:36:24.725] No EGLConfig matches { win|pbf; XRGB8888 }.
[01:36:24.725] All available EGLConfigs:
               id:   5 rgba: 5 6 5 0 buf: 16 dep: 24 stcl: 8 int: 0-10 type: win|pix|pbf|swap_preserved vis_id: RGB565 (0x36314752)
               id:   3 rgba: 5 6 5 0 buf: 16 dep: 24 stcl: 8 int: 0-10 type: win|pix|pbf|ms_resolve_box|swap_preserved vis_id: RGB565 (0x36314752)
               id:   4 rgba: 5 6 5 0 buf: 16 dep: 24 stcl: 8 int: 0-10 type: win|pix|pbf|ms_resolve_box|swap_preserved vis_id: RGB565 (0x36314752)
               id:  19 rgba: 5 5 5 1 buf: 16 dep: 24 stcl: 8 int: 0-10 type: pbf|swap_preserved vis_id: 0
               id:  18 rgba: 5 5 5 1 buf: 16 dep: 24 stcl: 8 int: 0-10 type: pbf|swap_preserved vis_id: 0
               id:  20 rgba: 5 5 5 1 buf: 16 dep: 24 stcl: 8 int: 0-10 type: pbf|swap_preserved vis_id: 0
               id:  21 rgba: 4 4 4 4 buf: 16 dep: 24 stcl: 8 int: 0-10 type: pbf|swap_preserved vis_id: 0
               id:  22 rgba: 4 4 4 4 buf: 16 dep: 24 stcl: 8 int: 0-10 type: pbf|swap_preserved vis_id: 0
               id:  23 rgba: 4 4 4 4 buf: 16 dep: 24 stcl: 8 int: 0-10 type: pbf|swap_preserved vis_id: 0
               id:   9 rgba: 8 8 8 8 buf: 32 dep: 24 stcl: 8 int: 0-10 type: win|pix|pbf|swap_preserved vis_id: ARGB8888 (0x34325241)
               id:  38 rgba: 8 8 8 0 buf: 24 dep: 24 stcl: 8 int: 0-10 type: win|pix|pbf|swap_preserved vis_id: ARGB8888 (0x34325241)
               id:  41 rgba: 8 8 8 0 buf: 24 dep: 24 stcl: 8 int: 0-10 type: win|pix|pbf|ms_resolve_box|swap_preserved vis_id: ARGB8888 (0x34325241)
               id:  42 rgba: 8 8 8 0 buf: 24 dep: 24 stcl: 8 int: 0-10 type: win|pix|pbf|ms_resolve_box|swap_preserved vis_id: ARGB8888 (0x34325241)
               id:  12 rgba: 8 8 8 8 buf: 32 dep: 24 stcl: 8 int: 0-10 type: win|pix|pbf|ms_resolve_box|swap_preserved vis_id: ARGB8888 (0x34325241)
               id:  15 rgba: 8 8 8 8 buf: 32 dep: 24 stcl: 8 int: 0-10 type: win|pix|pbf|ms_resolve_box|swap_preserved vis_id: ARGB8888 (0x34325241)
               id:  13 rgba: 0 0 0 0 buf:  8 dep:  0 stcl: 0 int: 0-0 type: pix vis_id: 0
               id:  14 rgba: 0 0 0 8 buf: 16 dep:  0 stcl: 0 int: 0-0 type: pix vis_id: 0
               id:  28 rgba: 5 6 5 0 buf: 16 dep:  0 stcl: 0 int: 0-10 type: win|swap_preserved vis_id: RGB565 (0x36314752)
               id:  35 rgba: 5 5 5 1 buf: 16 dep:  0 stcl: 0 int: 0-10 type: swap_preserved vis_id: 0
               id:  34 rgba: 8 8 8 8 buf: 32 dep:  0 stcl: 0 int: 0-10 type: win|swap_preserved vis_id: ARGB8888 (0x34325241)
               id:  27 rgba: 8 8 8 8 buf: 32 dep:  0 stcl: 0 int: 0-10 type: win|swap_preserved vis_id: ARGB8888 (0x34325241)
[01:36:24.726] failed to choose EGL config
[01:36:24.726] failed to initialize egl
[01:36:24.726] fatal: failed to create compositor backend

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20211104/2fc1ac3a/attachment.htm>


More information about the wayland-devel mailing list