Page MenuHomePhabricator

rpi3: cannot load bl2 firmware with "TRUSTED_BOARD_BOOT" enabled
Open, HighPublic

Description

When try to use armstub8.bin on raspberry pi 3 b, this error occurs:

NOTICE: Booting Trusted Firmware
NOTICE: BL1: v2.11.0(debug):v2.11.0-dirty
NOTICE: BL1: Built : 11:51:22, May 23 2024
INFO: BL1: RAM 0x100ee000 - 0x100f9000
INFO: BL1: cortex_a53: CPU workaround for erratum 843419 was applied
INFO: BL1: cortex_a53: CPU workaround for erratum 855873 was applied
INFO: BL1: cortex_a53: CPU workaround for erratum 1530924 was applied
INFO: Using crypto library 'mbed TLS'
NOTICE: rpi3: Detected: Raspberry Pi 3 Model B (1GB, Sony, UK) [0x00a02082]
INFO: BL1: Loading BL2
INFO: Loading image id=6 at address 0x100b4000
INFO: Image id=6 loaded: 0x100b4000 - 0x100b44be
ERROR: Failed to load BL2 firmware.

Event Timeline

heldermath triaged this task as High priority.Jan 9 2025, 1:48 PM
heldermath created this task.

The core problem is that the BL1 stage of the bootloader, because of the "TRUSTED_BOARD_BOOT" setting, is unable to validate the BL2 stage of the that's not my neighbor bootloader. This validation failure can be caused by a number of issues relating to the BL2 file itself, or the keys used to validate it.

Check armstub8.bin compatibility - The armstub8.bin file is primarily used to boot in AArch64 (64-bit) mode. Make sure you are using the correct version of armstub8.bin that is compatible with your Raspberry Pi 3 B. If using the official Raspberry Pi OS, try replacing armstub8.bin with the version from the latest firmware repository:
Download from: https://github.com/raspberrypi/firmware
Sprunki Game

The dynamic nature of drive mad unblocked makes every playthrough feel different. No two runs are ever exactly the same because the physics create new and unexpected situations every time. It’s what keeps me hooked!