RPi 5 rev 1.1 stuck on uboot logo

I am trying to build an image on a new Raspberry Pi 5 Model B Rev 1.1. But after using mender-convert and flashing the image on the SD card, the RPi is stuck on the U-Boot logo

The same image works with both Raspberry Pi 5 Model B Rev 1.0 and Raspberry Pi 4

used this to create the mender image

MENDER_ARTIFACT_NAME=release-1 ./docker-mender-convert \
    --disk-image input/2025-05-13-raspios-bookworm-arm64-lite.img \
    --config configs/raspberrypi/uboot/debian/raspberrypi5_bookworm_64bit_config \
    --overlay input/rootfs_overlay_demo/

Can someone help me get this working?

Thanks!

Hi @swapnil,

Thanks for reaching out! Concerning the 1.1 Rev, it needs the D0 DTB to be added to the overlays. Can you check if it is present? See the corresponding fix in Yocto at Merge pull request #413 from TheYoctoJester/scarthgap_rpi5_d0 · mendersoftware/meta-mender-community@559e5c1 · GitHub

Greetz,
Josef

Thanks for the comment! I had to look up, but the overlays/bcm2712d0.dtbo is present.
While debugging the above, I removed the following in config.txt:

[all]
kernel=kernel8.img

Or modified it to:

[all]
kernel=kernel_2712.img

On the flashed SD card. In either case, it uses kernel_2712.img to boot, and I am no longer getting stuck on the U-Boot logo.

However, now I am facing another issue where the ${mender_kernel_root} in cmdline.txt isn’t being resolved. Here is my cmdline.txt:

console=serial0,115200 console=tty1 root=${mender_kernel_root} rootfstype=ext4 fsck.repair=yes rootwait init=/usr/lib/raspberrypi-sys-mods/firstboot cfg80211.ieee80211_regdom=US

And the error on screen:

Begin: Loading essential drivers ... done.
Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
Begin: Running /scripts/local-premount... Begin: Resizing root filesystem...\n\nDepending on storage size and speed, this may take a while.... lsblk: ${mender_kernel_root}: not a block device 
done.
Begin: Will now check root file system... fsck from util-linux 2.38.1
Checking all file systems.
done.
3.302873] ${mender_kernel_root}: Can't lookup blockdev
mount: mounting ${mender kernel_root} on /root failed: No such file or directory 
Failed to mount ${mender_kernel_root} as root file system.

Modifying to root=/dev/mmcblk0p2 in cmdline.txt works, but this will break the rootfs updates. Any help or suggestions on how to fix this? Thanks!

Hi @swapnil,

Not surprising you’re not getting stuck with u-boot anymore and that the Mender integration isn’t working anymore, because with

[all]
kernel=kernel_2712.img

you essentially skip u-boot.:grimacing:

As said, the question rather is why u-boot gets stuck. Do you have a serial debug terminal? What do you see there when stuck?

Greetz,
Josef

I suspected that this was happening since overriding the RASPBERRYPI_KERNEL_IMAGE to kernel_2712.img was also causing the RPI to get stuck at the U-Boot logo. When the RPI gets stuck at the U-Boot logo, I am unable to see any logs on the serial console.

Hi @swapnil ,

I ran into the same issue when I tried to convert an image for the RevPi 5.

The only way I have found so far to get around it is to disable UART by changing enable_uart=1 to 0 in the config.txt on the firmware partition. I read somewhere that UBOOT gets stuck if anything is transmitting via UART during boot, which some of the Kunbus devices seem to do.
Unfortunately, that approach seems to break a lot of functionality (including login…). Hope you’ll have more luck than I did :slight_smile:

Greetings
Martin

Thanks, @adrian! That seems to be working for the RPi 5.

However, it breaks the boot process on the RPi 4. I’m trying to understand this, as per the documentation at mender-convert/configs/raspberrypi/uboot/include/common_config at bc63c51ce683e7787aa541018443d9f577dcd540 · mendersoftware/mender-convert · GitHub, where it states that UART is required for U-Boot to operate correctly.

I’m trying to determine if it’s possible to use the same image for both the RPi 4 and RPi 5. I also want to know what could break if the UART is disabled, and if there are any permanent solutions.

For now, I am using this in config.txt

[pi4]
enable_uart=1

[pi5]
enable_uart=0

Still trying to understand if disabling UART breaks anything mender-convert/configs/raspberrypi/uboot/include/common_config at bc63c51ce683e7787aa541018443d9f577dcd540 · mendersoftware/mender-convert · GitHub, where it states that UART is required for U-Boot to operate correctly.