Enable Pre-OS Payload Support
Pre-OS payload support is an additional feature supported by SBL via OS Loader payload in which OS Loader will load both the main OS and a pre-OS payload into memory and will pass control to the pre-OS payload instead of the main OS. After the pre-OS payload finishes execution it is expected that the pre-OS payload will pass control to the main OS that OS Loader previously loaded into memory.
Pre-OS payload support can only be enabled or disabled at build time.
In BoardConfig.py
change/add the following entry:
self.ENABLE_PRE_OS_CHECKER = 1
A pre-OS payload binary needs to be provided in the Platform/<Platform_Foo>/Binaries/
directory and named as PreOsChecker.bin
.
When this is enabled the OS Loader payload should be used in FV format so that PreOsChecker.bin
is included into the payload per the BootloaderCorePkg/BootloaderCorePkg.fdf
[FV.OsLoader] section.
To use OS Loader payload as an FV in SBL run the BuildLoader.py
command with the -p
argument as given below:
python BuildLoader.py build <platform_name> -p OsLoader.Fv:LLDR:Lz4