Thank you for providing that vclog file

Using your vclog binary, I found that vc4-pi5 overlay does NOT appear in
the bootloader log (see full output below):

**vclog output shows:**
- Loaded overlay 'bcm2712d0' ✓
- Loaded overlay 'dwc2' ✓  
- NO 'vc4-pi5' mentioned

**My config.txt has:**
dtoverlay=dwc2,dr_mode=host
dtoverlay=vc4-pi5
dtoverlay=dwc2

**System details:**
- Ubuntu Core 24, pi-kernel 6.8.0-1039.43 (snap 1047), 24/stable
- Raspberry Pi 5 Model B Rev 1.1, 16GB RAM
- File exists: /run/mnt/ubuntu-seed/overlays/vc4-pi5.dtbo (3.3KB)

**Additional symptoms:**
- dmesg shows bcm2708_fb (legacy framebuffer) errors
- vclog starts at 13726ms, missing early boot (0-7000ms where your log shows 
overlays loading)
- I CAN see vc4-pi5 mentioned during visible boot splash, but it doesn't appear 
in vclog output

**Questions:**
1. Does vclog only show a limited buffer? Your log starts at 0.57ms, mine 
starts at 13726ms
2. How can I capture the complete bootloader log including the 0-7 second range 
where overlays load?
3. Is there a difference between 8GB and 16GB Pi 5 models that affects overlay 
loading?
4. I think you answered this and only mentioned "classic" because you verified 
classis does not do that but Could you confirm you tested on Ubuntu Core 24 
(not classic Ubuntu)?
5. How much memory does the pi5 have that you are using? Mine has 16GB ram. 
This should not matter but I know there are some minor differences. 

I've added some various outputs below that may be useful. please let me
know of anything else you may need. I'm happy to help.

when I run the following commands
```
# First, verify the short-named overlay file exists
ls -lh /run/mnt/ubuntu-seed/overlays/vc4-pi5.dtbo

# Verify config.txt has the short overlay name
grep "vc4-pi5" /run/mnt/ubuntu-seed/config.txt

# Now check if the device tree changed - compare specific properties
# The developer's bootloader log shows "Loaded overlay 'vc4-pi5'" at 7.83 
seconds
# If it loaded, certain device tree properties should exist

# Check if the overlay added any fragment markers
find /sys/firmware/devicetree/base/ -name "*fragment*" 2>/dev/null

# Check the actual vc4 node structure
ls -la /sys/firmware/devicetree/base/axi/gpu/

# Most importantly - are the nodes STILL disabled after using the short name?
echo "=== HDMI0 status ==="
cat /sys/firmware/devicetree/base/soc/hdmi@7ef00700/status

echo "=== HDMI1 status ==="
cat /sys/firmware/devicetree/base/soc/hdmi@7ef05700/status

echo "=== HVS status ==="
cat /sys/firmware/devicetree/base/hvs@107c580000/status

echo "=== Pixelvalve0 status ==="
cat /sys/firmware/devicetree/base/soc/pixelvalve@7c410000/status 2>/dev/null || 
echo "not found"

# Check if /dev/dri exists now
echo "=== DRM device ==="
ls -la /dev/dri/ 2>&1

# Check if vc4 bound to anything
echo "=== VC4 module usage ==="
lsmod | grep vc4

# Check for any vc4 messages in dmesg
echo "=== DMESG VC4 ==="
sudo dmesg | grep -i vc4
```

I get the results
```
-rwxr-xr-x 1 root root 3.3K Oct 31 17:58 
/run/mnt/ubuntu-seed/overlays/vc4-pi5.dtbo
dtoverlay=vc4-pi5
total 0
drwxr-xr-x  2 root root  0 Nov  3 17:13 .
drwxr-xr-x 25 root root  0 Nov  3 15:51 ..
-r--r--r--  1 root root 19 Nov  3 17:13 compatible
-r--r--r--  1 root root  4 Nov  3 17:13 name
-r--r--r--  1 root root  4 Nov  3 17:13 phandle
=== HDMI0 status ===
disabled=== HDMI1 status ===
disabled=== HVS status ===
disabled=== Pixelvalve0 status ===
disabled=== DRM device ===
ls: cannot access '/dev/dri/': No such file or directory
=== VC4 module usage ===
vc4                   479232  0
snd_soc_core          376832  2 vc4,snd_soc_hdmi_codec
drm_display_helper    225280  1 vc4
cec                    90112  2 vc4,drm_display_helper
drm_dma_helper         24576  1 vc4
=== DMESG VC4 ===
```

Here are my actual vclogs
```
$ sudo ./vclog --msg | head -100
013726.220: Initial voltage 800000 temp 38379
013926.653: avs_2712: AVS pred 9033 903300 temp 37280
013930.262: vpred 903 mV +0
013938.916: FB framebuffer_swap 1
013940.785: Select resolution HDMI0/2 hotplug 0 max_mode 2
013947.675: Select resolution HDMI1/2 hotplug 1 max_mode 2
013954.595: FB0 disp 1 max-fb 1 1920x1080 stride 3840 base 0x3f800000
016111.255: dtb_file 'bcm2712-rpi-5-b.dtb'
016540.052: Loaded overlay 'bcm2712d0'
016811.573: dtparam: audio=on
016820.348: Unknown dtparam 'audio' - ignored
016823.259: dtparam: i2c_arm=on
016839.346: dtparam: spi=on
017062.159: Loaded overlay 'dwc2'
020594.266: BSC_A no ACK
020595.497: BSC_A no ACK
020599.422: BSC_A no ACK
020648.153: Starting OS 20648 ms
020653.762: 00000040: -> 00000480
020655.611: 00000030: -> 00100080
020660.324: 00000034: -> 00100080
020665.036: 00000038: -> 00100080
020669.749: 0000003c: -> 00100080
020779.321: sdram: sdram refresh 2081->4162 (2)
080752.549: initial_turbo of 60 deactivated
```

These are the actual errors i get in my journal logs.
```
$ sudo journalctl -b 0 -u snap.*
Nov 03 15:51:59 localhost systemd[1]: Started snap.ubuntu-frame.daemon.service 
- Service for snap application ubuntu-frame.daemon.
Nov 03 15:51:59 localhost systemd[1]: Started 
snap.wpe-webkit-mir-kiosk.daemon.service - Service for snap application 
wpe-webkit-mir-kiosk.daemon.
Nov 03 15:51:59 localhost systemd[1]: Started 
snap.wpe-webkit-mir-kiosk.restart-watcher.service - Service for snap 
application wpe-webkit-mir-kiosk.restart-watcher.
Nov 03 15:52:01 localhost ubuntu-frame.daemon[1648]: ++ snapctl get display
Nov 03 15:52:01 localhost wpe-webkit-mir-kiosk.restart-watcher[1482]: Wayland 
socket not available, waiting one second
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: + '[' -z '' ']'
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1723]: + initialise-display-config
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1724]: + sh -c 'sleep 5; mkdir 
"/run/user/007"; rmdir "/run/user/007"'
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: + disown
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: + exec nohup 
/snap/ubuntu-frame/17237/bin/run-frame 
/snap/ubuntu-frame/17237/bin/gpu-2404-wrapper /snap/ubuntu-frame/17237/usr>
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: + [ 
/snap/ubuntu-frame/17237/bin/gpu-2404-wrapper = --help ]
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1731]: + dirname 
/run/user/0/snap.ubuntu-frame
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1726]: Setting up watches.
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1726]: Watches established.
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: + 
XDG_RUNTIME_DIR=/run/user/0
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: + export XDG_RUNTIME_DIR
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: + mkdir -p /run/user/0 -m 
700
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: + [ -n  ]
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: + exec 
/snap/ubuntu-frame/17237/bin/gpu-2404-wrapper 
/snap/ubuntu-frame/17237/usr/local/bin/frame
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1770]: 
/snap/ubuntu-frame/17237/gpu-2404/bin/gpu-2404-provider-wrapper: line 27: cd: 
/snap/ubuntu-frame/17237/gpu-2404/bin/../X11/loc>
Nov 03 15:52:02 localhost wpe-webkit-mir-kiosk.daemon[1472]: WARNING: 
audio-playback interface not connected! Please run: 
/snap/wpe-webkit-mir-kiosk/current/bin/setup.sh
Nov 03 15:52:02 localhost wpe-webkit-mir-kiosk.daemon[1786]: Setting up watches.
Nov 03 15:52:02 localhost wpe-webkit-mir-kiosk.daemon[1786]: Watches 
established.
Nov 03 15:52:02 localhost wpe-webkit-mir-kiosk.restart-watcher[1482]: Wayland 
socket not available, waiting one second
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.829251] <information> mirserver: Starting
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.835781] < - debug - > mirserver: Using Linux VT subsystem for session 
management
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.837674] <information> mircommon: Loading modules from: 
/snap/ubuntu-frame/17237/usr/lib/aarch64-linux-gnu>
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.837870] <information> mircommon: Loading module: 
/snap/ubuntu-frame/17237/usr/lib/aarch64-linux-gnu/mir/s>
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.837950] <information> mircommon: Loading module: 
/snap/ubuntu-frame/17237/usr/lib/aarch64-linux-gnu/mir/s>
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.837991] <information> mircommon: Loading module: 
/snap/ubuntu-frame/17237/usr/lib/aarch64-linux-gnu/mir/s>
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.838013] <information> mircommon: Loading module: 
/snap/ubuntu-frame/17237/usr/lib/aarch64-linux-gnu/mir/s>
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.838031] <information> mircommon: Loading module: 
/snap/ubuntu-frame/17237/usr/lib/aarch64-linux-gnu/mir/s>
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.838047] <information> mircommon: Loading module: 
/snap/ubuntu-frame/17237/usr/lib/aarch64-linux-gnu/mir/s>
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.842787] <information> mirserver: Found display driver: mir:x11 
(version 2.23.0)
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.844884] <information> mirserver: (Unsupported by system environment)
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.845742] <information> mirserver: Found display driver: mir:egl-generic 
(version 2.23.0)
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.846459] <information> mirserver: Found display driver: mir:gbm-kms 
(version 2.23.0)
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.846973] <information> gbm-kms: Unsupported: No DRM devices detected
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.847080] <information> mirserver: (Unsupported by system environment)
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.847946] <information> mirserver: Found display driver: 
mir:eglstream-kms (version 2.23.0)
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.854317] < - debug - > eglstream: Found EGLDeviceEXT with device 
extensions: EGL_MESA_device_software EGL_>
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.854884] <information> eglstream: Failed to query DRM node for 
EGLDevice: Failed to determine DRM device n>
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.854950] < - debug - > eglstream: EGLDeviceEXTs found, but none are 
suitable for Mir
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.854975] <information> mirserver: (Unsupported by system environment)
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.855651] <information> mirserver: Found display driver: mir:atomic-kms 
(version 2.23.0)
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.855901] <information> atomic-kms: Unsupported: No DRM devices detected
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: [2025-11-03 
15:52:02.855925] <information> mirserver: (Unsupported by system environment)
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: ERROR: 
./src/server/graphics/default_configuration.cpp(200): Throw in function virtual 
const std::vector<std::shared_ptr<mir::>
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: Dynamic exception type: 
boost::wrapexcept<std::runtime_error>
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: std::exception::what: 
Exception while creating graphics platform
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: ERROR: 
./src/server/graphics/platform_probe.cpp(250): Throw in function 
std::vector<std::pair<mir::graphics::SupportedDevice, >
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: Dynamic exception type: 
boost::wrapexcept<std::runtime_error>
Nov 03 15:52:02 localhost ubuntu-frame.daemon[1468]: std::exception::what: 
Failed to find any platforms for current system
Nov 03 15:52:02 localhost systemd[1]: snap.ubuntu-frame.daemon.service: Main 
process exited, code=exited, status=1/FAILURE
Nov 03 15:52:02 localhost systemd[1]: snap.ubuntu-frame.daemon.service: Failed 
with result 'exit-code'.
Nov 03 15:52:02 localhost systemd[1]: snap.ubuntu-frame.daemon.service: 
Consumed 1.606s CPU time.
Nov 03 15:52:03 localhost wpe-webkit-mir-kiosk.restart-watcher[1482]: Wayland 
socket not available, waiting one second
```

Here are all of my snaps on my setup 
```
$ sudo snap list
Name                  Version                          Rev    Tracking       
Publisher       Notes
console-conf          24.04.1+git45g5f9fae19+g7598200  80     24/stable      
canonical**     -
core22                20250923                         2140   latest/stable  
canonical**     base
core24                20251001                         1226   latest/stable  
canonical**     base
libinput              22.04                            91     latest/stable  
alangriffiths*  -
mesa-2404             24.2.8-snap185                   917    latest/stable  
canonical**     -
mesa-core22           23.2.1                           500    latest/stable  
canonical**     -
pi                    24-3                             151    24/stable      
canonical**     gadget
pi-kernel             6.8.0-1039.43                    1047   24/stable      
canonical**     kernel
snapd                 2.72                             25585  latest/stable  
canonical**     snapd
ubuntu-frame          393-mir2.23.0                    17237  24/stable      
canonical**     -
wpe-webkit-mir-kiosk  2.38.5                           104    22/stable      
glancr          -
```

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2128161

Title:
  pi-kernel VC4-KMS not working with CM5

To manage notifications about this bug go to:
https://bugs.launchpad.net/canonical-kernel-snaps/+bug/2128161/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to