when the pi5 starts booting, it will initially be executing a boot rom on the VPU
under normal conditions, that rom will load a tagged blob from the SPI flash chip, and execute it
that blob will bring the lpddr4 controller online, then load bootmain.elf from SPI flash, and execute it
bootmain.elf then reads bootconf.txt (held in SPI), and then tries to boot from whatever BOOT_ORDER says to boot from
for baremetal usage, the device BOOT_ORDER points to should have at least 2 files
config.txt with a kernel=whatever.img
and your whatever.img, the aarch64 kernel
under normal conditions, BOOT_ORDER would say to boot from SD or USB, so you can just drop those 2 files on an SD card or USB stick
and at that point, your kernel is running on the arm core, so booting is basically done, and its now just a matter of doing whatever you want to do with the system
under normal conditions, that rom will load a tagged blob from the SPI flash chip, and execute it
that blob will bring the lpddr4 controller online, then load bootmain.elf from SPI flash, and execute it
bootmain.elf then reads bootconf.txt (held in SPI), and then tries to boot from whatever BOOT_ORDER says to boot from
for baremetal usage, the device BOOT_ORDER points to should have at least 2 files
config.txt with a kernel=whatever.img
and your whatever.img, the aarch64 kernel
under normal conditions, BOOT_ORDER would say to boot from SD or USB, so you can just drop those 2 files on an SD card or USB stick
and at that point, your kernel is running on the arm core, so booting is basically done, and its now just a matter of doing whatever you want to do with the system
Statistics: Posted by cleverca22 — Thu Jul 04, 2024 6:58 am