MALI: eglInitialize() fails

Hello,

the eglInitialize() function fails on the wayland odroid xu3 latest r12p0 driver.

Here's how to reproduce the issue:

* start weston (using the drm backend) => it will get assigned to socket "wayland-0"

* from weston-terminal, start another weston instance (using the wayland backend) => it will get assigned to socket "wayland-1"

* in the second weston instance, start weston-simple-egl with WAYLAND_DISPLAY=wayland-0 => it will work and weston-simple-egl will run on the main weston instance

* in the second weston instance, start weston-simple-egl with WAYLAND_DISPLAY=wayland-1 => after binding the display, getting a correct screen, the code will fail at eglInitialize()

Is there any fix I can try?

Thanks.

  • This is the output of wayland-info, in case this helps:

    odroid@odroid:~$ WAYLAND_DISPLAY=wayland-0 weston-info
    interface: 'wl_compositor', version: 4, name: 1
    interface: 'wl_subcompositor', version: 1, name: 2
    interface: 'wp_viewporter', version: 1, name: 3
    interface: 'wp_presentation', version: 1, name: 4
            presentation clock id: 1 (CLOCK_MONOTONIC)
    interface: 'zwp_relative_pointer_manager_v1', version: 1, name: 5
    interface: 'zwp_pointer_constraints_v1', version: 1, name: 6
    interface: 'wl_data_device_manager', version: 3, name: 7
    interface: 'wl_shm', version: 1, name: 8
            formats: RGB565 XRGB8888 ARGB8888
    interface: 'mali_buffer_sharing', version: 4, name: 9
    interface: 'wl_seat', version: 5, name: 10
            name: default
            capabilities: pointer keyboard
            keyboard repeat rate: 40
            keyboard repeat delay: 400
    interface: 'wl_output', version: 3, name: 11
            x: 0, y: 0, scale: 1,
            physical_width: 530 mm, physical_height: 290 mm,
            make: 'ACR', model: 'V243HL',
            subpixel_orientation: unknown, output_transform: normal,
            mode:
                    width: 1920 px, height: 1080 px, refresh: 60.000 Hz,
                    flags: current preferred
            mode:
                    width: 1280 px, height: 1024 px, refresh: 60.020 Hz,
                    flags:
            mode:
                    width: 1440 px, height: 900 px, refresh: 59.901 Hz,
                    flags:
            mode:
                    width: 1280 px, height: 800 px, refresh: 59.910 Hz,
                    flags:
            mode:
                    width: 1152 px, height: 864 px, refresh: 75.000 Hz,
                    flags:
            mode:
                    width: 1024 px, height: 768 px, refresh: 60.004 Hz,
                    flags:
            mode:
                    width: 800 px, height: 600 px, refresh: 60.317 Hz,
                    flags:
            mode:
                    width: 800 px, height: 600 px, refresh: 56.250 Hz,
                    flags:
    interface: 'zwp_input_panel_v1', version: 1, name: 12
    interface: 'zwp_input_method_v1', version: 1, name: 13
    interface: 'zwp_text_input_manager_v1', version: 1, name: 14
    interface: 'zxdg_shell_v6', version: 1, name: 15
    interface: 'xdg_shell', version: 1, name: 16
    interface: 'wl_shell', version: 1, name: 17
    interface: 'weston_desktop_shell', version: 1, name: 18
    interface: 'weston_screenshooter', version: 1, name: 19
    
    odroid@odroid:~$
    
    odroid@odroid:~$ WAYLAND_DISPLAY=wayland-1 weston-info
    interface: 'wl_compositor', version: 4, name: 1
    interface: 'wl_subcompositor', version: 1, name: 2
    interface: 'wp_viewporter', version: 1, name: 3
    interface: 'wp_presentation', version: 1, name: 4
            presentation clock id: 4 (CLOCK_MONOTONIC_RAW)
    interface: 'zwp_relative_pointer_manager_v1', version: 1, name: 5
    interface: 'zwp_pointer_constraints_v1', version: 1, name: 6
    interface: 'wl_data_device_manager', version: 3, name: 7
    interface: 'wl_shm', version: 1, name: 8
            formats: RGB565 XRGB8888 ARGB8888
    interface: 'wl_seat', version: 5, name: 9
            name: default
            capabilities: pointer keyboard
            keyboard repeat rate: 40
            keyboard repeat delay: 400
    interface: 'mali_buffer_sharing', version: 4, name: 10
    interface: 'wl_output', version: 3, name: 11
            x: 0, y: 0, scale: 1,
            physical_width: 1024 mm, physical_height: 640 mm,
            make: 'wayland', model: 'none',
            subpixel_orientation: unknown, output_transform: normal,
            mode:
                    width: 1024 px, height: 640 px, refresh: 60.000 Hz,
                    flags: current preferred
    interface: 'zwp_input_panel_v1', version: 1, name: 12
    interface: 'zwp_input_method_v1', version: 1, name: 13
    interface: 'zwp_text_input_manager_v1', version: 1, name: 14
    interface: 'zxdg_shell_v6', version: 1, name: 15
    interface: 'xdg_shell', version: 1, name: 16
    interface: 'wl_shell', version: 1, name: 17
    interface: 'weston_desktop_shell', version: 1, name: 18
    interface: 'weston_screenshooter', version: 1, name: 19

  • Hi,

    Is there any fix for this issue?

    Thanks.

  • Hi marianmi,

    I'm the community manager for Graphics and Multimedia community and I see this is an issue you have had before. We try and answer as many questions as possible on here so apologies if there has been a delay in response or none at all. I have asked around and unfortunately the drivers available today do not have support for nested wayland compositors. This might explain why some of our community regulars haven't been able to answer your questions.

    Kind regards,

    Ben

  • Thanks for the reply

    Nested compositor has been used for the past year in webkit (and browsers based on webkit), and will gain more adoption as Wayland becomes default (Wayland already is default in Fedora, Ubuntu, etc). So it would be pretty good to have this feature for modern browser support under Wayland.

    There are also some bugs I mentioned on the discussion forum I run into with the current drivers.

    Lastly, the wayland drivers don't have dmabuf import support, but the newer X11/fbdev drivers (same T628 GPU) have it. Also, drivers for Mali T76x and Mali T8xx (released for RK boards) also support dmabuf import. Having dmabuf import greatly increases performance in video applications.

    Any of these 3 improvements (nested compositor, bug fixes, dmabuf import support) are welcomed and would impact the usage if mali GPU drastically with T628 under wayland. And wayland is getting default in more and more linux distributions. 

    Is there any plan to update the driver to provide any of these great features/fixes? I run kernel driver version r20p0 but binary driver only r12p0, it's a shame...

    Thanks.

  • Hi

    Is there any news on this?

    It would be great to have some more up-to-date and less buggy drivers for odroid available.

    Here's some of the things I'm running with the current version, which would benefit greatly from bug fixes (and dmabuf import too, which is missing!):

    - gnome3 https://www.youtube.com/watch?v=CXcoha4eNoo

    - webgl in wayland chrome experimental build (ubuntu 17.10)https://www.youtube.com/watch?v=euB1ZRPpFgs and https://www.youtube.com/watch?v=nT5XLdSAylU

    - game emulators https://www.youtube.com/watch?v=zfPvL-QkBTg

    All would get a boost from some updated drivers....

More questions in this forum