TIDUEY9 April 2021
The secondary bootloader primarily is responsible for updating the application meta image in the SFLASH by receiving the image over a serial interface. It then loads and runs the updated application meta image.
The ROM(primary) bootloader always loads the SBL. Application can choose to either update or load and run the application meta image.
For safety applications, the SBL may be used to perform some of destructive tests like PBIST and STC that needs to be run during boot time. These DIAG may cause core reset during the execution which is main reason to move these tests to SBL. These tests are validated before loading the main application. In-case of failure the SBL aborts and exit.