Booting user defined applications on a SOC involves multiples steps as listed
below,
- Firstly, there are multiple
steps involved to convert a user application, created using a compiler+linker
toolchain, into a binary format that is designed to be booted by the SOC
- Next, we need to flash this binary file to the on-board serial
flash.
- Finally, when the SOC is powered on, the previously flashed binary is
executed.
- After powering on the device in functional mode, the boot flow takes
place mainly in two steps
- ROM boot: In which the RBL boots an SBL reading from the
sFlash.
- SBL boot: In which the secondary bootloader boots the application
reading from the sFlash.
- Note, that a system application
(i.e. metaimage) itself can consist of multiple CPU specific application
binaries that all collaborate together to realize the overall system goal.