Embedded Academy
Open-source, animated courses on embedded systems. The first one follows three ARM boards from the first instruction in the boot ROM to PID 1.
Boot starts on the VideoCore GPU; the Arm cores wait in reset until the firmware releases them.
Stage 1 of 6
Boot ROM
(mask ROM) · loaded from inside the SoC
- The GPU-side VPU executes first. The Arm cores are still held in reset.
- Looks for the second-stage bootloader in the SPI EEPROM.
- If that image is corrupt, loads recovery.bin from the SD card to reflash it.
Sources: Raspberry Pi documentation: Raspberry Pi hardware, boot sequence and boot EEPROM
Where it runs
VPU boot ROM
(mask ROM)
VPU on-chip memoryWhere the EEPROM bootloader executes is not yet confirmed from a primary source.
LPDDR4 SDRAM0x0000_0000 · 1 to 8 GB, shared by GPU and Arm
Serial · 115200 8N1 · illustrative
(ROM is silent)
- linux-boot-arm Follow three ARM boards from the first instruction in the boot ROM to PID 1, and build every piece yourself.