We are trying to evaluate galcore vs etnaviv gpu drivers on IMX8M Plus on dahlia board, but weston always fails to start
on any upstream reference images with etnaviv gpu driver.
[FAILED] Failed to start Weston, a Wayland compositor, as a system service.
See 'systemctl status weston.service' for details.
[DEPEND] Dependency failed for Start a wayland application.
root@verdin-imx8mp-15678795:~# tdx-info
Software summary
------------------------------------------------------------
Bootloader: U-Boot
Kernel version: 6.12.59-7.5.0-devel #1 SMP PREEMPT Mon Nov 24 09:36:08 UTC 2025
Kernel command line: root=PARTUUID=d0713e5a-02 ro rootwait console=tty1 console=ttymxc2,115200
Distro name: NAME="TDX Wayland with XWayland Upstream"
Distro version: VERSION_ID=7.5.0-devel-202512-build.16
Distro variant: -
Hostname: verdin-imx8mp-15678795
------------------------------------------------------------
Hardware info
------------------------------------------------------------
HW model: Toradex Verdin iMX8M Plus on Dahlia Board
Toradex version: 0058 V1.1B
Serial number: 15678795
Processor arch: aarch64
------------------------------------------------------------
verdin-imx8mp-15678795 login: root
root@verdin-imx8mp-15678795:~# dmesg | grep -iE "etnaviv|galcore|gpu|drm"
[ 3.893116] systemd[1]: Starting Load Kernel Module drm...
[ 5.881158] etnaviv etnaviv: bound 38000000.gpu (ops gpu_ops [etnaviv])
[ 5.904396] etnaviv etnaviv: bound 38008000.gpu (ops gpu_ops [etnaviv])
[ 5.911648] etnaviv etnaviv: bound 38500000.npu (ops gpu_ops [etnaviv])
[ 5.918463] etnaviv-gpu 38000000.gpu: model: GC7000, revision: 6204
[ 5.932008] etnaviv-gpu 38008000.gpu: model: GC520, revision: 5341
[ 5.945694] etnaviv-gpu 38500000.npu: model: GC8000, revision: 8002
[ 5.952043] etnaviv-gpu 38500000.npu: etnaviv has been instantiated on a NPU, for which the UAPI is still experimental
[ 6.009800] [drm] Initialized etnaviv 1.4.0 for etnaviv on minor 0
[ 6.136300] [drm] Initialized imx-lcdif 1.0.0 for 32fc6000.display-controller on minor 1
[ 6.335719] imx-lcdif 32fc6000.display-controller: [drm] fb0: imx-lcdifdrmfb frame buffer device
[ 6.569756] samsung-dsim 32e60000.dsi: [drm:samsung_dsim_host_attach [samsung_dsim]] Attached lt8912 device (lanes:4 bpp:24 mode-flags:0xa01)
[ 6.630612] [drm] Initialized imx-lcdif 1.0.0 for 32e80000.display-controller on minor 2
[ 6.638894] imx-lcdif 32e80000.display-controller: [drm] Cannot find any crtc or sizes
root@verdin-imx8mp-15678795:~# ls /sys/kernel/debug/dri/ -al
total 0
drwxr-xr-x 5 root root 0 May 29 19:05 .
drwx------ 47 root root 0 Jan 1 1970 ..
lrwxrwxrwx 1 root root 0 May 29 19:05 0 -> etnaviv
lrwxrwxrwx 1 root root 0 May 29 19:05 1 -> 32fc6000.display-controller
lrwxrwxrwx 1 root root 0 May 29 19:05 128 -> etnaviv
lrwxrwxrwx 1 root root 0 May 29 19:05 2 -> 32e80000.display-controller
drwxr-xr-x 5 root root 0 May 29 19:05 32e80000.display-controller
drwxr-xr-x 5 root root 0 May 29 19:05 32fc6000.display-controller
drwxr-xr-x 2 root root 0 May 29 19:05 etnaviv
root@verdin-imx8mp-15678795:~# cat /sys/kernel/debug/dri/32e80000.display-controller/state
plane[32]: plane-0
crtc=(null)
fb=0
crtc-pos=0x0+0+0
src-pos=0.000000x0.000000+0.000000+0.000000
rotation=1
normalized-zpos=0
color-encoding=ITU-R BT.601 YCbCr
color-range=YCbCr limited range
color_mgmt_changed=0
crtc[36]: crtc-0
enable=0
active=0
self_refresh_active=0
planes_changed=0
mode_changed=0
active_changed=0
connectors_changed=0
color_mgmt_changed=0
plane_mask=0
connector_mask=0
encoder_mask=0
mode: "": 0 0 0 0 0 0 0 0 0 0 0x0 0x0
connector[38]: HDMI-A-2
crtc=(null)
self_refresh_aware=0
max_requested_bpc=0
colorspace=Default
broadcast_rgb=Automatic
is_limited_range=n
output_bpc=0
output_format=RGB
tmds_char_rate=0
root@verdin-imx8mp-15678795:~# cat /sys/kernel/debug/dri/32fc6000.display-controller/state
plane[32]: plane-0
crtc=crtc-0
fb=41
allocated by = [fbcon]
refcount=2
format=XR24 little-endian (0x34325258)
modifier=0x0
size=1920x1080
layers:
size[0]=1920x1080
pitch[0]=7680
offset[0]=0
obj[0]:
name=0
refcount=3
start=00100000
size=8294400
imported=no
dma_addr=0x00000000cb900000
vaddr=000000005afc3189
crtc-pos=1920x1080+0+0
src-pos=1920.000000x1080.000000+0.000000+0.000000
rotation=1
normalized-zpos=0
color-encoding=ITU-R BT.601 YCbCr
color-range=YCbCr limited range
color_mgmt_changed=0
crtc[36]: crtc-0
enable=1
active=1
self_refresh_active=0
planes_changed=1
mode_changed=0
active_changed=0
connectors_changed=0
color_mgmt_changed=0
plane_mask=1
connector_mask=1
encoder_mask=1
mode: "1920x1080": 60 148500 1920 2008 2052 2200 1080 1084 1089 1125 0x48 0x5
connector[38]: HDMI-A-1
crtc=crtc-0
self_refresh_aware=0
max_requested_bpc=0
colorspace=Default
broadcast_rgb=Automatic
is_limited_range=n
output_bpc=0
output_format=RGB
tmds_char_rate=0
root@verdin-imx8mp-15678795:~# cat /var/log/weston.log
Date: 2025-05-29 UTC
[19:05:10.613] weston 13.0.1
https://wayland.freedesktop.org
Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/
Build: 13.0.1
[19:05:10.614] Command line: /usr/bin/weston --modules=systemd-notify.so --debug --log=/var/log/weston.log
[19:05:10.614] OS: Linux, 6.12.59-7.5.0-devel, #1 SMP PREEMPT Mon Nov 24 09:36:08 UTC 2025, aarch64
[19:05:10.614] Flight recorder: enabled
[19:05:10.614] Using config file '/etc/xdg/weston/weston.ini'
[19:05:10.615] Output repaint window is 7 ms maximum.
[19:05:10.616] Loading module '/usr/lib/libweston-13/drm-backend.so'
[19:05:10.630] initializing drm backend
[19:05:10.630] Trying libseat launcher...
[19:05:10.630] [c/debug/seatd/0.8.0/libseat/backend/seatd.c:64] Could not connect to socket /run/seatd.sock: No such file or directory
[19:05:10.630] [c/debug/seatd/0.8.0/libseat/libseat.c:76] Backend 'seatd' failed to open seat, skipping
[19:05:10.654] [c/debug/seatd/0.8.0/libseat/libseat.c:73] Seat opened with backend 'logind'
[19:05:10.655] libseat: session control granted
[19:05:10.668] using /dev/dri/card2
[19:05:10.668] DRM: supports atomic modesetting
[19:05:10.668] DRM: supports GBM modifiers
[19:05:10.668] DRM: does not support async page flipping
[19:05:10.668] DRM: supports picture aspect ratio
[19:05:10.760] Loading module '/usr/lib/libweston-13/gl-renderer.so'
[19:05:10.789] Using rendering device: /dev/dri/renderD128
[19:05:10.789] EGL version: 1.4
[19:05:10.789] EGL vendor: Mesa Project
[19:05:10.790] EGL client APIs: OpenGL OpenGL_ES
[19:05:10.790] EGL features:
EGL Wayland extension: yes
context priority: no
buffer age: yes
partial update: no
swap buffers with damage: no
configless context: yes
surfaceless context: yes
dmabuf support: modifiers
[19:05:10.811] GL version: OpenGL ES 2.0 Mesa 24.0.7
[19:05:10.811] GLSL version: OpenGL ES GLSL ES 1.0.16
[19:05:10.811] GL vendor: Mesa
[19:05:10.811] GL renderer: Vivante GC7000 rev 6204
[19:05:10.812] warning: Disabling render GPU timeline due to missing GL_EXT_disjoint_timer_query extension
[19:05:10.852] GL ES 2.0 - renderer features:
read-back format: ARGB8888
glReadPixels supports y-flip: yes
wl_shm 10 bpc formats: yes
wl_shm 16 bpc formats: no
wl_shm half-float formats: no
internal R and RG formats: yes
OES_EGL_image_external: yes
[19:05:10.852] Using GL renderer
[19:05:10.869] event0 - gpio-keys: is tagged by udev as: Keyboard
[19:05:10.869] event0 - gpio-keys: device is a keyboard
[19:05:10.874] event1 - 30370000.snvs:snvs-powerkey: is tagged by udev as: Keyboard
[19:05:10.874] event1 - 30370000.snvs:snvs-powerkey: device is a keyboard
[19:05:10.879] event2 - audio-hdmi HDMI Jack: is tagged by udev as: Switch
[19:05:10.880] event2 - not using input device '/dev/input/event2'
[19:05:10.911] libinput: configuring device "gpio-keys".
[19:05:10.911] libinput: configuring device "30370000.snvs:snvs-powerkey".
[19:05:10.912] DRM: head 'HDMI-A-2' found, connector 38 is disconnected.
[19:05:10.912] Registered plugin API 'weston_drm_output_api_v1' of size 40
[19:05:10.912] Color manager: no-op
[19:05:10.913] event0 - gpio-keys: device removed
[19:05:10.914] event1 - 30370000.snvs:snvs-powerkey: device removed
Any help is appreciated, thanks in advance