-
Notifications
You must be signed in to change notification settings - Fork 222
Description
Describe the bug
With BOOT_ORDER=0xf147 and loading pieeprom-2025-08-27.bin (the default when using the latest rpi-usbboot) onto the EEPROM, the CM4 fails to boot (bootloader logs pasted below). The HTTP boot was expected to 404 and then try the next option. Using older firmware (pieeprom-2025-05-16.bin, for example) succeeds. Removing HTTP boot from the order (BOOT_ORDER=0xf14) with pieeprom-2025-08-27.bin also succeeds.
Steps to reproduce the behaviour
git clone https://github.com/raspberrypi/usbboot
cd usbboot
git submodule init
git submodule update
make
Set the boot.conf in recovery/ with the as listed below.
cd recovery
./update-pieeprom.sh
cd ..
./rpiboot -d recovery
./rpiboot
Power cycle the CM4 and let rpiboot finish.
Normally, here is where you would flash an OS image, but that's not actually necessary to see the bug. Remove the EMMC_DISABLE / nRPIBOOT jumper and power cycle with the Pi connected to a network where the HTTP_HOST address will resolve (but should 404. The Pi will boot from a valid image with HTTP boot at this stage). At this point, I see the console output listed below with the fatal firmware error.
Device (s)
Raspberry Pi CM4
Bootloader configuration.
Contents of boot.conf:
[all]
BOOT_UART=1
WAKE_ON_GPIO=1
POWER_OFF_ON_HALT=0
SECURE_BOOT=0
NET_BOOT_MAX_RETRIES=3
BOOT_ORDER=0xf147
HTTP_HOST=raspberry-pi-boot-server
HTTP_PATH=firmware/rpi
[cm4]
ENABLE_SELF_UPDATE=1
MAX_RESTARTS=16
System
No response
Bootloader logs
0.53 RPi: BOOTSYS release VERSION:000d3ca2 DATE: 2025/08/27 TIME: 19:57:12
0.53 BOOTMODE: 0x06 partition 0 build-ts BUILD_TIMESTAMP=1756321032 serial 45e32b4f boardrev c03141 stc 537873
0.54 PM_RSTS 00001000
0.54 POWER_OFF_ON_HALT: 0 WAIT_FOR_POWER_BUTTON 0 power-on-reset 1
0.56 part 00000000 reset_info 00000000
0.56 uSD voltage 3.3V
0.59 Initialising SDRAM rank 2 total-size: 32 Gbit 3200 (0x15 0x00)
0.59 DDR 3200 1 0 32 152 BL:3
2.21 OTP boardrev c03141 bootrom 48b0 48b0
2.21 Customer key hash 0000000000000000000000000000000000000000000000000000000000000000
2.21 VC-JTAG unlocked
2.49 RPi: BOOTLOADER release VERSION:000d3ca2 DATE: 2025/08/27 TIME: 19:57:12
2.50 BOOTMODE: 0x06 partition 0 build-ts BUILD_TIMESTAMP=1756321032 serial 45e32b4f boardrev c03141 stc 2500859
2.36 Boot mode: HTTP (07) order f14
2.53 GENET: RESET_PHY 1
2.53 CTL 1140 PHY ID 600d 84a2
2.54 MII_CONTROL 1140
2.54 MII APD 0021 SCTL3 0021 IDDQ 0000
2.24 NETWORK: 2c:cf:67:39:ec:8e wait for link TFTP: 0.0.0.0
5.45 LINK STATUS: speed: 1000 full duplex
5.53 Link ready
5.45 GENET START: 64 16 32
5.46 GENET: UMAC_START 0x2ccf6739 0xec8e0000
5.47 RX: 0 IP: 0 IPV4: 0 MAC: 0 UDP: 0 UDP RECV: 0 IP_CSUM_ERR: 0 UDP_CSUM_ERR: 0
5.82 DHCP src: 94:83:c4:42:e1:7d 10.40.9.3
5.83 YI_ADDR 10.40.9.2
5.85 SI_ADDR 10.40.9.3
5.48 OPTIONS:-
op: 53 len: 1 DHCP recv OFFER (2) expect OFFER 5.49
op: 54 len: 4 10.40.9.3 5.49
op: 51 len: 4 5.49
op: 58 len: 4 5.50
op: 59 len: 4 5.50
op: 1 len: 4 255.255.255.0 5.50
op: 28 len: 4 10.40.9.255 5.51
op: 6 len: 4 10.40.9.3 5.51
op: 3 len: 4 10.40.9.1 5.51
5.17 NET 10.40.9.2 255.255.255.0 gw 10.40.9.1 tftp 0.0.0.0
5.22 DHCP src: 94:83:c4:42:e1:7d 10.40.9.3
5.26 YI_ADDR 10.40.9.2
5.28 SI_ADDR 10.40.9.3
5.53 OPTIONS:-
op: 53 len: 1 DHCP recv ACK (5) expect ACK 5.53
op: 54 len: 4 10.40.9.3 5.53
op: 51 len: 4 5.54
op: 58 len: 4 5.54
op: 59 len: 4 5.54
op: 1 len: 4 255.255.255.0 5.54
op: 28 len: 4 10.40.9.255 5.55
op: 15 len: 31 5.55
op: 72 len: 4 5.55
op: 42 len: 4 5.55
op: 6 len: 4 10.40.9.3 5.56
op: 3 len: 4 10.40.9.1 5.56
5.66 NET 10.40.9.2 255.255.255.0 gw 10.40.9.1 tftp 0.0.0.0
5.57 RX: 6 IP: 0 IPV4: 6 MAC: 6 UDP: 6 UDP RECV: 2 IP_CSUM_ERR: 0 UDP_CSUM_ERR: 0
5.79 Loading boot.img ...
5.83 Failed to parse root cert
5.84 init_mbedtls failed -19584
5.87 Unexpected error @ 0x000a9146
5.59 USB-OTG disconnect
5.93 BOOT ERROR: code 45 - 'Fatal firmware error'
USB boot
No response
NVMe boot
No response
Network (TFTP boot)
No response