ODROID boot chain
The ODROID-N2 comes with a SPI flash as well as a connector for an eMMC flash and an SD card slot. The SoC is an Amlogic S922X which can boot from all those storages, depending on GPIO configuration and a fallback flow in the mask ROM. For booting from SPI flash, the ODROID-N2 board has a switch, and comes with Petitboot preinstalled1.
The SPI flash boot flow is as follows:
flowchart LR maskrom["mask ROM"] spl["U-Boot SPL"] uboot["U-Boot main"] petitboot(["petitboot"]) maskrom-->spl-->uboot-->petitboot-->OS
- U-Boot SPL initializes DRAM and loads U-Boot main ("proper")
- U-Boot main is set up to directly load Linux with Petitboot, which implements LinuxBoot