-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Description
I was trying to get to u-boot prompt and do some hacking with uefi bootloaders and kernel on my RPi 5, so I set up for a minimal environment to get to u-boot prompts on the 3-pin JST connector debug port.
Boot partition content:
bcm2712-rpi-5-b.dtb config.txt u-boot.bin
My u-boot is compiled with rpi_arm64_defconf
config.txt content:
arm_64bit=1
kernel=u-boot.bin
However it seems that with device tree files provided in this repo I could not get the console prompt from u-boot. Serial output stuck at
NOTICE: BL31: v2.6(release):v2.6-240-gfc45bc492
NOTICE: BL31: Built : 12:55:13, Dec 4 2024
Further examination shows that some hardware devices were initialized correctly but some are not, since when I connected a monitor it showed a u-boot logo correctly. Also when I get the SD card out and check contents again, the u-boot uefi var file ubootefi.var has been created on the boot partition, signalling that u-boot is somewhat working.
I then tested u-boot compiled with CONFIG_SERIAL_PROBE_ALL=y, CONFIG_REQUIRE_SERIAL_CONSOLE=y. With these u-boot went into a boot loop. I think it's not getting the serial port properly setup from the device tree passed from EEPROM firmware so without a serial console it just tried to reset.
I did a bit more searches and landed upon this mailing list post that has the exact symptom as me. So I downloaded a RPi OS image and extracted the device tree from there and that indeed fixed everything.
I suggest there might be a version drift or file corruption for the device tree file in this repo. But the OS image seems to carry the correct one.