Most embedded x86/x86_64 designs, and some ARM designs, have firmware based on the Universal Extensible Firmware Interface (UEFI) standard. You can take a look at the UEFI website at http://www.uefi.org/ for more information. The boot sequence is fundamentally the same as that described in the preceding section:
- Phase 1: The processor loads the platform initialization firmware from flash memory. In some designs, it is loaded directly from NOR flash memory, while in others, there is ROM code on-chip which loads the firmware from SPI flash memory into some on-chip static RAM.
- Phase 2: The platform initialization firmware performs the role of SPL. It initializes the DRAM controller and other system interfaces, so as to be able to load an EFI boot manager from the EFI System Partition (ESP) on a local disk, or from a network server via PXE boot. The ESP...