Improve logging of required GL driver features, particularly missing ones
Edit: old title was “error: color operations capability missing. Is GL-renderer not in use?” when GL-renderer is in use.
I realize that color management is experimental. Nevertheless, I'm interested to try it out and am hitting a perplexing error.
When color-management is enable in Weston 12.0.92, it errors out on startup and seems to indicate that GL-renderer may not be in use. In fact, GL-renderer is in use. Weston configuration file and log below. What might be causing this failure? How can I troubleshoot and correct the problem?
weston.ini
[core]
idle_time=0
renderer=gl
color-management=true
backend=drm
[output]
eotf-mode=st2084
icc_profile=test-icc-profile.icm
_weston.log_
weston 12.0.92
https://wayland.freedesktop.org
Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/
Build: 12.0.92+
Command line: weston -c /home/osmc/weston.ini --log=weston.log
OS: Linux, 5.15.92-1-osmc, #1 SMP PREEMPT Tue Jul 25 00:03:42 UTC 2023, aarch64
Flight recorder: enabled
Using config file '/home/osmc/weston.ini'
Output repaint window is 7 ms maximum.
Loading module '/usr/lib/libweston-13/color-lcms.so'
Loading module '/usr/lib/libweston-13/drm-backend.so'
initializing drm backend
Trying libseat launcher...
[libseat/libseat.c:73] Seat opened with backend 'seatd'
[libseat/backend/seatd.c:212] Enabling seat
libseat: session control granted
using /dev/dri/card1
DRM: supports atomic modesetting
DRM: supports GBM modifiers
DRM: does not support async page flipping
DRM: supports picture aspect ratio
Loading module '/usr/lib/libweston-13/gl-renderer.so'
Using rendering device: /dev/dri/card1
EGL version: 1.4
EGL vendor: Mesa Project
EGL client APIs: OpenGL OpenGL_ES
warning: Disabling render GPU timeline and explicit synchronization due to missing EGL_ANDROID_native_fence_sync extension
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
GL version: OpenGL ES 3.1 Mesa 23.2.1
GLSL version: OpenGL ES GLSL ES 3.10
GL vendor: Broadcom
GL renderer: V3D 4.2
GL ES 3.1 - 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
Using GL renderer
event0 - Logitech Wireless Keyboard PID:4023: is tagged by udev as: Keyboard
event0 - Logitech Wireless Keyboard PID:4023: device is a keyboard
event1 - Logitech Wireless Mouse: is tagged by udev as: Mouse
event1 - Logitech Wireless Mouse: device is a pointer
libinput: configuring device "Logitech Wireless Keyboard PID:4023".
EGL client APIs: OpenGL OpenGL_ES
warning: Disabling render GPU timeline and explicit synchronization due to missing EGL_ANDROID_native_fence_sync extension
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
GL version: OpenGL ES 3.1 Mesa 23.2.1
GLSL version: OpenGL ES GLSL ES 3.10
GL vendor: Broadcom
GL renderer: V3D 4.2
GL ES 3.1 - 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
Using GL renderer
event0 - Logitech Wireless Keyboard PID:4023: is tagged by udev as: Keyboard
event0 - Logitech Wireless Keyboard PID:4023: device is a keyboard
event1 - Logitech Wireless Mouse: is tagged by udev as: Mouse
event1 - Logitech Wireless Mouse: device is a pointer
libinput: configuring device "Logitech Wireless Keyboard PID:4023".
libinput: configuring device "Logitech Wireless Mouse".
DRM: EDID for the following head fails conformity:
Block 1, CTA-861 Extension Block:
Video Capability Data Block: IT video formats are always underscanned, but bit 7 of Byte 3 of the CTA-861 Extension header is set to overscanned.
DRM: head 'HDMI-A-1' found, connector 32 is connected, EDID make 'LG Electronics', model 'LG HDR 4K', serial 'XXXXXXXXXXXX'
Supported EOTF modes: SDR, traditional gamma HDR, ST2084, HLG
DRM: head 'HDMI-A-2' found, connector 42 is disconnected.
Registered plugin API 'weston_drm_output_api_v1' of size 20
color-lcms: error: color operations capability missing. Is GL-renderer not in use?
event0 - Logitech Wireless Keyboard PID:4023: device removed
event1 - Logitech Wireless Mouse: device removed
Edited by Pekka Paalanen