1. boot process
-
When the Raspberry Pi is first turned on, the ARM core is off, and the GPU core is on.
-
At this point the SDRAM is disabled.
-
The GPU starts executing the first stage bootloader, which is stored in ROM on the SoC.
-
The first stage bootloader reads the SD card, and loads the second stage bootloader bootcode.bin into the L2 cache, and runs it.
-
bootcode.bin enables SDRAM, and reads the third stage bootloader loader.bin from the SD card into RAM, and runs it.
-
loader.bin reads the GPU firmware start.elf.
-
start.elf reads config.txt, cmdline.txt and kernel7.img.
2. minimum files pi3
bcm2710-rpi-3-b.dtb
bootcode.bin
fixup.dat
start.elf
kernel7.img
config.txt
3. minimum files pi4
bcm2711-rpi-4-b.dtb
(bcm2711-rpi-400.dtb)
(bcm2711-rpi-cm4.dtb)
(bcm2711-rpi-cm4-io.dtb)
(bcm2711-rpi-cm4s.dtb)
bootcode.bin
fixup4.dat
start4.elf
kernel8.img (which is a copy of the latest kernel file, sample: kernel-6.1.31-v8.1.el9.altarch.img)
config.txt