Skip to content

Browser window shown but no web page rendered #560

@trohsb

Description

@trohsb

I've been trying to get this working on my Raspberry Pi CM5 + CM5 IO Board.

I log in via ssh and execute the following

export XDG_RUNTIME_DIR=/run/user/1000
export WAYLAND_DISPLAY=wayland-1
cog -P wl https://www.example.com

A window is opened but its just white as can be seen in the following screen shot.

Image

The same for when I start a weston-terminal

Image

cog output:

root@raspberrypi5:~# cog -P wl https://www.example.com
Cog-Core-Message: 12:43:08.328: <https://www.example.com/> Load started.
Cog-Core-Message: 12:43:08.368: <https://www.example.com/> Loading...
Cog-Core-Message: 12:43:08.438: <https://www.example.com/> Loaded successfully.

Environment Variables:

export EDITOR="vi"
export HOME="/home/root"
export LOGNAME="root"
export OLDPWD
export OPIEDIR
export PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin"
export PS1="\\u@\\h:\\w\\\$ "
export PWD="/home/root"
export QPEDIR
export QTDIR
export SHELL="/bin/sh"
export SHLVL="1"
export SSH_CLIENT="192.168.1.204 60304 22"
export SSH_CONNECTION="192.168.1.204 60304 192.168.1.190 22"
export SSH_TTY="/dev/pts/0"
export TERM="xterm-256color"
export USER="root"
export WAYLAND_DISPLAY="wayland-1"
export XDG_RUNTIME_DIR="/run/user/1000" 

Weston log:

root@raspberrypi5:~# cat /tmp/weston.log 
Date: 2018-03-09 UTC
[12:41:15.526] weston 13.0.1
               https://wayland.freedesktop.org
               Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/
               Build: 13.0.1
[12:41:15.527] Command line: weston --log=/tmp/weston.log
[12:41:15.527] OS: Linux, 6.12.25-v8-16k, #1 SMP PREEMPT Wed Apr 30 10:08:58 UTC 2025, aarch64
[12:41:15.527] Flight recorder: enabled
[12:41:15.527] Using config file '/etc/xdg/weston/weston.ini'
[12:41:15.528] Output repaint window is 7 ms maximum.
[12:41:15.528] Loading module '/usr/lib/libweston-13/drm-backend.so'
[12:41:15.533] initializing drm backend
[12:41:15.533] Trying libseat launcher...
[12:41:15.536] [c/debug/seatd/0.8.0/libseat/libseat.c:73] Seat opened with backend 'seatd'
[12:41:15.536] [c/debug/seatd/0.8.0/libseat/backend/seatd.c:212] Enabling seat
[12:41:15.536] libseat: session control granted
[12:41:15.537] using /dev/dri/card0
[12:41:15.537] DRM: supports atomic modesetting
[12:41:15.537] DRM: supports GBM modifiers
[12:41:15.537] DRM: does not support async page flipping
[12:41:15.537] DRM: supports picture aspect ratio
[12:41:15.578] Loading module '/usr/lib/libweston-13/gl-renderer.so'
[12:41:15.590] Using rendering device: /dev/dri/renderD128
[12:41:15.590] EGL version: 1.4
[12:41:15.590] EGL vendor: Mesa Project
[12:41:15.590] EGL client APIs: OpenGL OpenGL_ES 
[12:41:15.590] 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
[12:41:15.620] GL version: OpenGL ES 3.1 Mesa 24.0.7
[12:41:15.620] GLSL version: OpenGL ES GLSL ES 3.10
[12:41:15.620] GL vendor: Broadcom
[12:41:15.620] GL renderer: V3D 7.1.10
[12:41:15.620] warning: Disabling render GPU timeline due to missing GL_EXT_disjoint_timer_query extension
[12:41:15.639] 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
[12:41:15.639] Using GL renderer
[12:41:15.654] event0  - pwr_button: is tagged by udev as: Keyboard
[12:41:15.654] event0  - pwr_button: device is a keyboard
[12:41:15.655] event1  - vc4-hdmi-0: is tagged by udev as: Keyboard Pointingstick
[12:41:15.655] event1  - vc4-hdmi-0: device is a pointer
[12:41:15.655] event1  - vc4-hdmi-0: device is a keyboard
[12:41:15.656] event2  - vc4-hdmi-0 HDMI Jack: is tagged by udev as: Switch
[12:41:15.701] event2  - not using input device '/dev/input/event2'
[12:41:15.701] event3  - vc4-hdmi-1: is tagged by udev as: Keyboard Pointingstick
[12:41:15.702] event3  - vc4-hdmi-1: device is a pointer
[12:41:15.702] event3  - vc4-hdmi-1: device is a keyboard
[12:41:15.702] event4  - vc4-hdmi-1 HDMI Jack: is tagged by udev as: Switch
[12:41:15.753] event4  - not using input device '/dev/input/event4'
[12:41:15.762] libinput: configuring device "pwr_button".
[12:41:15.762] libinput: configuring device "vc4-hdmi-0".
[12:41:15.762] libinput: configuring device "vc4-hdmi-1".
[12:41:15.813] DRM: head 'HDMI-A-1' found, connector 33 is connected, EDID make 'PHG', model 'Video Grabbe', serial ''
               Supported EOTF modes: SDR
[12:41:15.814] DRM: head 'HDMI-A-2' found, connector 42 is disconnected.
[12:41:15.815] Registered plugin API 'weston_drm_output_api_v1' of size 40
[12:41:15.815] Color manager: no-op
[12:41:15.815] Output 'HDMI-A-1' attempts EOTF mode: SDR
[12:41:15.815] Output 'HDMI-A-1' using color profile: stock sRGB color profile
[12:41:15.815] Chosen EGL config details: id:  25 rgba: 8 8 8 0 buf: 24 dep:  0 stcl: 0 int: 1-1 type: win vis_id: XRGB8888 (0x34325258)
[12:41:15.815] Output HDMI-A-1 (crtc 92) video modes:
               [email protected], preferred, current, 148.5 MHz
               [email protected] 16:9, 148.5 MHz
               [email protected] 16:9, 148.4 MHz
               [email protected], 74.2 MHz
               [email protected] 16:9, 74.2 MHz
               [email protected] 16:9, 74.2 MHz
               [email protected], 27.0 MHz
               [email protected] 4:3, 27.0 MHz
               [email protected] 4:3, 25.2 MHz
               [email protected], 25.2 MHz
               [email protected] 4:3, 25.2 MHz
[12:41:15.815] associating input device event0 with output HDMI-A-1 (none by udev)
[12:41:15.815] associating input device event1 with output HDMI-A-1 (none by udev)
[12:41:15.815] associating input device event3 with output HDMI-A-1 (none by udev)
[12:41:15.815] Output 'HDMI-A-1' enabled with head(s) HDMI-A-1
[12:41:15.815] Compositor capabilities:
               arbitrary surface rotation: yes
               screen capture uses y-flip: yes
               cursor planes: yes
               arbitrary resolutions: no
               view mask clipping: yes
               explicit sync: yes
               color operations: no
               presentation clock: CLOCK_MONOTONIC, id 1
               presentation clock resolution: 0.000000001 s
[12:41:15.816] Loading module '/usr/lib/weston/desktop-shell.so'
[12:41:15.816] Loading module '/usr/lib/libweston-13/xwayland.so'
[12:41:15.840] Registered plugin API 'weston_xwayland_v3' of size 32
[12:41:15.840] Registered plugin API 'weston_xwayland_surface_v1' of size 16
[12:41:15.840] xserver listening on display :0
[12:41:15.840] launching '/usr/libexec/weston-keyboard'
[12:41:15.841] launching '/usr/libexec/weston-desktop-shell'
[12:41:15.924] Warning: computed repaint delay for output [HDMI-A-1] is abnormal: -15734 msec

wayland-info output:

root@raspberrypi5:~# wayland-info  
interface: 'wl_compositor',                              version:  5, name:  1
interface: 'wl_subcompositor',                           version:  1, name:  2
interface: 'wp_viewporter',                              version:  1, name:  3
interface: 'zxdg_output_manager_v1',                     version:  2, name:  4
        xdg_output_v1
                output: 20
                name: 'HDMI-A-1'
                logical_x: 0, logical_y: 0
                logical_width: 1920, logical_height: 1080
interface: 'wp_presentation',                            version:  1, name:  5
        presentation clock id: 1 (CLOCK_MONOTONIC)
interface: 'wp_single_pixel_buffer_manager_v1',          version:  1, name:  6
interface: 'wp_tearing_control_manager_v1',              version:  1, name:  7
interface: 'zwp_relative_pointer_manager_v1',            version:  1, name:  8
interface: 'zwp_pointer_constraints_v1',                 version:  1, name:  9
interface: 'zwp_input_timestamps_manager_v1',            version:  1, name: 10
interface: 'weston_capture_v1',                          version:  1, name: 11
interface: 'wl_data_device_manager',                     version:  3, name: 12
interface: 'wl_shm',                                     version:  1, name: 13
        formats (fourcc):
        0x30334258 = 'XB30'
        0x30334241 = 'AB30'
        0x34324241 = 'AB24'
        0x56555958 = 'XYUV'
        0x56595559 = 'YUYV'
        0x3231564e = 'NV12'
        0x34325559 = 'YU24'
        0x32315559 = 'YU12'
        0x36314752 = 'RG16'
                 1 = 'XR24'
                 0 = 'AR24'
interface: 'wl_drm',                                     version:  2, name: 14
interface: 'wl_seat',                                    version:  7, name: 15
        name: default
        capabilities: keyboard
        keyboard repeat rate: 40
        keyboard repeat delay: 400
interface: 'zwp_linux_dmabuf_v1',                        version:  4, name: 16
        main device: 0xE280 (/dev/dri/card1 or /dev/dri/renderD128)
        tranche
                target device: 0xE280 (/dev/dri/card1 or /dev/dri/renderD128)
                flags: none
                formats (fourcc) and modifiers (names):
                0x48344241 = 'AB4H'; 0x00ffffffffffffff = INVALID
                0x48344241 = 'AB4H'; 0x0700000000000006 = BROADCOM_UIF
                0x48344241 = 'AB4H'; 0x0000000000000000 = LINEAR
                0x38344241 = 'AB48'; 0x00ffffffffffffff = INVALID
                0x38344241 = 'AB48'; 0x0700000000000006 = BROADCOM_UIF
                0x38344241 = 'AB48'; 0x0000000000000000 = LINEAR
                0x30335241 = 'AR30'; 0x00ffffffffffffff = INVALID
                0x30335241 = 'AR30'; 0x0700000000000006 = BROADCOM_UIF
                0x30335241 = 'AR30'; 0x0000000000000000 = LINEAR
                0x30335258 = 'XR30'; 0x00ffffffffffffff = INVALID
                0x30335258 = 'XR30'; 0x0700000000000006 = BROADCOM_UIF
                0x30335258 = 'XR30'; 0x0000000000000000 = LINEAR
                0x30334241 = 'AB30'; 0x00ffffffffffffff = INVALID
                0x30334241 = 'AB30'; 0x0700000000000006 = BROADCOM_UIF
                0x30334241 = 'AB30'; 0x0000000000000000 = LINEAR
                0x30334258 = 'XB30'; 0x00ffffffffffffff = INVALID
                0x30334258 = 'XB30'; 0x0700000000000006 = BROADCOM_UIF
                0x30334258 = 'XB30'; 0x0000000000000000 = LINEAR
                0x34325241 = 'AR24'; 0x00ffffffffffffff = INVALID
                0x34325241 = 'AR24'; 0x0700000000000006 = BROADCOM_UIF
                0x34325241 = 'AR24'; 0x0000000000000000 = LINEAR
                0x34324241 = 'AB24'; 0x00ffffffffffffff = INVALID
                0x34324241 = 'AB24'; 0x0700000000000006 = BROADCOM_UIF
                0x34324241 = 'AB24'; 0x0000000000000000 = LINEAR
                0x34325258 = 'XR24'; 0x00ffffffffffffff = INVALID
                0x34325258 = 'XR24'; 0x0700000000000006 = BROADCOM_UIF
                0x34325258 = 'XR24'; 0x0000000000000000 = LINEAR
                0x34324258 = 'XB24'; 0x00ffffffffffffff = INVALID
                0x34324258 = 'XB24'; 0x0700000000000006 = BROADCOM_UIF
                0x34324258 = 'XB24'; 0x0000000000000000 = LINEAR
                0x36314752 = 'RG16'; 0x00ffffffffffffff = INVALID
                0x36314752 = 'RG16'; 0x0700000000000006 = BROADCOM_UIF
                0x36314752 = 'RG16'; 0x0000000000000000 = LINEAR
                0x39565559 = 'YUV9'; 0x00ffffffffffffff = INVALID
                0x39565559 = 'YUV9'; 0x0700000000000006 = BROADCOM_UIF
                0x39565559 = 'YUV9'; 0x0000000000000000 = LINEAR
                0x31315559 = 'YU11'; 0x00ffffffffffffff = INVALID
                0x31315559 = 'YU11'; 0x0700000000000006 = BROADCOM_UIF
                0x31315559 = 'YU11'; 0x0000000000000000 = LINEAR
                0x32315559 = 'YU12'; 0x00ffffffffffffff = INVALID
                0x32315559 = 'YU12'; 0x0700000000000006 = BROADCOM_UIF
                0x32315559 = 'YU12'; 0x0000000000000000 = LINEAR
                0x36315559 = 'YU16'; 0x00ffffffffffffff = INVALID
                0x36315559 = 'YU16'; 0x0700000000000006 = BROADCOM_UIF
                0x36315559 = 'YU16'; 0x0000000000000000 = LINEAR
                0x34325559 = 'YU24'; 0x00ffffffffffffff = INVALID
                0x34325559 = 'YU24'; 0x0700000000000006 = BROADCOM_UIF
                0x34325559 = 'YU24'; 0x0000000000000000 = LINEAR
                0x39555659 = 'YVU9'; 0x00ffffffffffffff = INVALID
                0x39555659 = 'YVU9'; 0x0700000000000006 = BROADCOM_UIF
                0x39555659 = 'YVU9'; 0x0000000000000000 = LINEAR
                0x31315659 = 'YV11'; 0x00ffffffffffffff = INVALID
                0x31315659 = 'YV11'; 0x0700000000000006 = BROADCOM_UIF
                0x31315659 = 'YV11'; 0x0000000000000000 = LINEAR
                0x32315659 = 'YV12'; 0x00ffffffffffffff = INVALID
                0x32315659 = 'YV12'; 0x0700000000000006 = BROADCOM_UIF
                0x32315659 = 'YV12'; 0x0000000000000000 = LINEAR
                0x36315659 = 'YV16'; 0x00ffffffffffffff = INVALID
                0x36315659 = 'YV16'; 0x0700000000000006 = BROADCOM_UIF
                0x36315659 = 'YV16'; 0x0000000000000000 = LINEAR
                0x34325659 = 'YV24'; 0x00ffffffffffffff = INVALID
                0x34325659 = 'YV24'; 0x0700000000000006 = BROADCOM_UIF
                0x34325659 = 'YV24'; 0x0000000000000000 = LINEAR
                0x3231564e = 'NV12'; 0x00ffffffffffffff = INVALID
                0x3231564e = 'NV12'; 0x0700000000000006 = BROADCOM_UIF
                0x3231564e = 'NV12'; 0x0000000000000000 = LINEAR
                0x3231564e = 'NV12'; 0x0700000000000004 = BROADCOM_SAND128
                0x3132564e = 'NV21'; 0x00ffffffffffffff = INVALID
                0x3132564e = 'NV21'; 0x0700000000000006 = BROADCOM_UIF
                0x3132564e = 'NV21'; 0x0000000000000000 = LINEAR
                0x30313050 = 'P010'; 0x00ffffffffffffff = INVALID
                0x30313050 = 'P010'; 0x0700000000000006 = BROADCOM_UIF
                0x30313050 = 'P010'; 0x0000000000000000 = LINEAR
                0x32313050 = 'P012'; 0x00ffffffffffffff = INVALID
                0x32313050 = 'P012'; 0x0700000000000006 = BROADCOM_UIF
                0x32313050 = 'P012'; 0x0000000000000000 = LINEAR
                0x36313050 = 'P016'; 0x00ffffffffffffff = INVALID
                0x36313050 = 'P016'; 0x0700000000000006 = BROADCOM_UIF
                0x36313050 = 'P016'; 0x0000000000000000 = LINEAR
                0x3631564e = 'NV16'; 0x00ffffffffffffff = INVALID
                0x3631564e = 'NV16'; 0x0700000000000006 = BROADCOM_UIF
                0x3631564e = 'NV16'; 0x0000000000000000 = LINEAR
                0x3631564e = 'NV16'; 0x0700000000000004 = BROADCOM_SAND128
                0x56555958 = 'XYUV'; 0x00ffffffffffffff = INVALID
                0x56555958 = 'XYUV'; 0x0700000000000006 = BROADCOM_UIF
                0x56555958 = 'XYUV'; 0x0000000000000000 = LINEAR
                0x56595559 = 'YUYV'; 0x00ffffffffffffff = INVALID
                0x56595559 = 'YUYV'; 0x0700000000000006 = BROADCOM_UIF
                0x56595559 = 'YUYV'; 0x0000000000000000 = LINEAR
                0x55595659 = 'YVYU'; 0x00ffffffffffffff = INVALID
                0x55595659 = 'YVYU'; 0x0700000000000006 = BROADCOM_UIF
                0x55595659 = 'YVYU'; 0x0000000000000000 = LINEAR
                0x59565955 = 'UYVY'; 0x00ffffffffffffff = INVALID
                0x59565955 = 'UYVY'; 0x0700000000000006 = BROADCOM_UIF
                0x59565955 = 'UYVY'; 0x0000000000000000 = LINEAR
                0x59555956 = 'VYUY'; 0x00ffffffffffffff = INVALID
                0x59555956 = 'VYUY'; 0x0700000000000006 = BROADCOM_UIF
                0x59555956 = 'VYUY'; 0x0000000000000000 = LINEAR
interface: 'weston_direct_display_v1',                   version:  1, name: 17
interface: 'zwp_linux_explicit_synchronization_v1',      version:  2, name: 18
interface: 'weston_content_protection',                  version:  1, name: 19
interface: 'wl_output',                                  version:  4, name: 20
        name: HDMI-A-1
        description: Video Grabbe
        x: 0, y: 0, scale: 1,
        physical_width: 850 mm, physical_height: 480 mm,
        make: 'PHG', model: 'Video Grabbe',
        subpixel_orientation: unknown, output_transform: normal,
        mode:
                width: 1920 px, height: 1080 px, refresh: 60.000 Hz,
                flags: current preferred
        mode:
                width: 1920 px, height: 1080 px, refresh: 60.000 Hz,
                flags:
        mode:
                width: 1920 px, height: 1080 px, refresh: 59.940 Hz,
                flags:
        mode:
                width: 1280 px, height: 720 px, refresh: 60.000 Hz,
                flags:
        mode:
                width: 1280 px, height: 720 px, refresh: 60.000 Hz,
                flags:
        mode:
                width: 1280 px, height: 720 px, refresh: 59.940 Hz,
                flags:
        mode:
                width: 720 px, height: 480 px, refresh: 60.000 Hz,
                flags:
        mode:
                width: 720 px, height: 480 px, refresh: 59.940 Hz,
                flags:
        mode:
                width: 640 px, height: 480 px, refresh: 60.000 Hz,
                flags:
        mode:
                width: 640 px, height: 480 px, refresh: 59.940 Hz,
                flags:
        mode:
                width: 640 px, height: 480 px, refresh: 59.940 Hz,
                flags:
interface: 'zwp_input_panel_v1',                         version:  1, name: 21
interface: 'zwp_input_method_v1',                        version:  1, name: 22
interface: 'zwp_text_input_manager_v1',                  version:  1, name: 23
interface: 'xdg_wm_base',                                version:  5, name: 24
interface: 'weston_desktop_shell',                       version:  1, name: 25

My configs:

local.conf

MACHINE = "raspberrypi5" 
# MACHINE_FEATURES:append = " vc4graphics"
# GPU_MEM_256 = "128"
# GPU_MEM_512 = "196"
# GPU_MEM_1024 = "396"
DISTRO_FEATURES:append = " opengl egl wayland"
EXTRA_IMAGE_FEATURES = "debug-tweaks"
IMAGE_FEATURES:append = " ssh-server-dropbear hwcodecs"
PREFERRED_PROVIDER_virtual/wpebackend = "wpebackend-fdo"
IMAGE_INSTALL:append = " wpewebkit cog"

PACKAGECONFIG_pn-cog = "wl"

LICENSE_FLAGS_ACCEPTED += "synaptics-killswitch"

SSTATE_DIR = "/home/ben/personal/yocto/sstate-cache"
DL_DIR = "/home/ben/personal/yocto/downloads"

bblayers.conf

POKY_BBLAYERS_CONF_VERSION = "2"

BBPATH = "${TOPDIR}"
BBFILES ?= ""

BBLAYERS ?= " \
  /home/ben/personal/yocto-rpi-wpe/poky/meta \
  /home/ben/personal/yocto-rpi-wpe/poky/meta-poky \
  /home/ben/personal/yocto-rpi-wpe/poky/meta-yocto-bsp \
  /home/ben/personal/yocto-rpi-wpe/meta-openembedded/meta-oe \
  /home/ben/personal/yocto-rpi-wpe/meta-openembedded/meta-python \
  /home/ben/personal/yocto-rpi-wpe/meta-openembedded/meta-multimedia \
  /home/ben/personal/yocto-rpi-wpe/meta-raspberrypi \
  /home/ben/personal/yocto-rpi-wpe/meta-webkit \
  "

The ouput from bitbake

bitbake core-image-weston
WARNING: Host distribution "ubuntu-25.04" has not been validated with this version of the build system; you may possibly experience unexpected failures. It is recommended that you use a tested distribution.
Loading cache: 100% |########################################################################################################################| Time: 0:00:01
Loaded 4504 entries from dependency cache.
NOTE: Resolving any missing task queue dependencies

Build Configuration:
BB_VERSION           = "2.8.0"
BUILD_SYS            = "x86_64-linux"
NATIVELSBSTRING      = "universal"
TARGET_SYS           = "aarch64-poky-linux"
MACHINE              = "raspberrypi5"
DISTRO               = "poky"
DISTRO_VERSION       = "5.0.11"
TUNE_FEATURES        = "aarch64 crypto cortexa76"
TARGET_FPU           = ""
meta                 
meta-poky            
meta-yocto-bsp       = "scarthgap:e711b2f39a94879812e5d7f721018f911f25ce38"
meta-oe              
meta-python          
meta-multimedia      = "scarthgap:e8fd97d86af86cdcc5a6eb3f301cbaf6a2084943"
meta-raspberrypi     = "scarthgap:1f2045321afd6ef20b457266ac3e97c8577eb1c4"
meta-webkit          = "master:c2ff9fad3831a259256fc2643798f3c6829d15fc"

Sstate summary: Wanted 1393 Local 643 Mirrors 0 Missed 750 Current 2987 (46% match, 82% complete)################################            | ETA:  0:00:00
Initialising tasks: 100% |###################################################################################################################| Time: 0:00:06
NOTE: Executing Tasks
NOTE: Tasks Summary: Attempted 8934 tasks of which 7631 didn't need to be rerun and all succeeded.

Summary: There was 1 WARNING message.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions