dey-image-container: webkit/lvgl: modify weston startup

Standalone GPU and video tests perform as expected in the WebKit
container, but rendering degrades once Cog runs on top of Weston.
Align the container Weston startup with the native setup by
loading the default Weston options, enabling the systemd-notify
module and exporting WL_EGL_GBM_FENCE=0 before starting the compositor.

https://onedigi.atlassian.net/browse/DEL-10038
https://onedigi.atlassian.net/browse/DEL-10039

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
This commit is contained in:
Isaac Hermida 2026-03-27 14:16:30 +01:00
parent 682b2aec84
commit c0d042e953
3 changed files with 40 additions and 5 deletions

View File

@ -2,6 +2,16 @@
export XDG_RUNTIME_DIR="/run/user/0" export XDG_RUNTIME_DIR="/run/user/0"
export WAYLAND_DISPLAY="@WAYLAND_DISPLAY@" export WAYLAND_DISPLAY="@WAYLAND_DISPLAY@"
COMPATIBLE="$(tr '\0' ' ' </proc/device-tree/compatible 2>/dev/null || true)"
case "${COMPATIBLE}" in
*digi,ccmp15*|*digi,ccmp25*)
export WL_EGL_GBM_FENCE=0
;;
esac
[ -f /etc/default/weston ] && . /etc/default/weston
rm -rf "$XDG_RUNTIME_DIR" rm -rf "$XDG_RUNTIME_DIR"
mkdir -p "$XDG_RUNTIME_DIR" mkdir -p "$XDG_RUNTIME_DIR"
chmod 0700 "$XDG_RUNTIME_DIR" chmod 0700 "$XDG_RUNTIME_DIR"
@ -13,7 +23,12 @@ chmod 1777 /tmp/.X11-unix
rm -f /tmp/weston.log rm -f /tmp/weston.log
weston --backend=drm-backend.so --idle-time=0 --log=/tmp/weston.log & weston \
--backend=drm-backend.so \
--modules=systemd-notify.so \
--idle-time=0 \
--log=/tmp/weston.log \
${OPTARGS} &
while :; do while :; do
if [ -S "${XDG_RUNTIME_DIR}/${WAYLAND_DISPLAY}" ]; then if [ -S "${XDG_RUNTIME_DIR}/${WAYLAND_DISPLAY}" ]; then

View File

@ -2,6 +2,16 @@
export XDG_RUNTIME_DIR="/run/user/0" export XDG_RUNTIME_DIR="/run/user/0"
export WAYLAND_DISPLAY="@WAYLAND_DISPLAY@" export WAYLAND_DISPLAY="@WAYLAND_DISPLAY@"
COMPATIBLE="$(tr '\0' ' ' </proc/device-tree/compatible 2>/dev/null || true)"
case "${COMPATIBLE}" in
*digi,ccmp15*|*digi,ccmp25*)
export WL_EGL_GBM_FENCE=0
;;
esac
[ -f /etc/default/weston ] && . /etc/default/weston
rm -rf "$XDG_RUNTIME_DIR" rm -rf "$XDG_RUNTIME_DIR"
mkdir -p "$XDG_RUNTIME_DIR" mkdir -p "$XDG_RUNTIME_DIR"
chmod 0700 "$XDG_RUNTIME_DIR" chmod 0700 "$XDG_RUNTIME_DIR"
@ -13,7 +23,12 @@ chmod 1777 /tmp/.X11-unix
rm -f /tmp/weston.log rm -f /tmp/weston.log
weston --backend=drm-backend.so --idle-time=0 --log=/tmp/weston.log & weston \
--backend=drm-backend.so \
--modules=systemd-notify.so \
--idle-time=0 \
--log=/tmp/weston.log \
${OPTARGS} &
while :; do while :; do
if [ -S "${XDG_RUNTIME_DIR}/${WAYLAND_DISPLAY}" ]; then if [ -S "${XDG_RUNTIME_DIR}/${WAYLAND_DISPLAY}" ]; then

View File

@ -99,7 +99,11 @@ IMAGE_INSTALL = " \
# Container type customizations LVGL # Container type customizations LVGL
######################## ########################
CONTAINER_INIT_SCRIPT:container-lvgl = "/start-lvgl-demo.sh" CONTAINER_INIT_SCRIPT:container-lvgl = "/start-lvgl-demo.sh"
IMAGE_INSTALL:append:container-lvgl = " lvgl-demo weston" IMAGE_INSTALL:append:container-lvgl = " \
lvgl-demo \
weston \
weston-init \
"
DISTRO_FEATURES:remove:container-lvgl = " wayland" DISTRO_FEATURES:remove:container-lvgl = " wayland"
######################## ########################
@ -123,4 +127,5 @@ IMAGE_INSTALL:append:container-webkit = " \
wayland \ wayland \
wayland-protocols \ wayland-protocols \
weston \ weston \
weston-init \
" "