ProcessModuleEntryPointList
|
BdsInitialize -> gEfiBdsArchProtocolGuid //After DxeCore finish DXE phase, gEfiBdsArchProtocolGuid->BdsEntry will be invoked to enter BDS phase
|
BdsEntry
|
PlatformBdsInit
|
PlatformBdsInitEx
|
LaunchDefaultBDSApps
|
Status = GetConfigString ("DefaultBDSBootApp", DefaultApp, &Size);
|
LaunchAppFromGuidedFv
|
gBS->LoadImage
|
gBS->StartImage
|
LinuxLoaderEntry
1、默认配置启动app 为LinuxLoader
boot_images/QcomPkg/SocPkg/KamortaPkg/LAB/uefiplat.cfg
## Default app to boot in platform BDS init
DefaultChargerApp = "QcomChargerApp"
DefaultBDSBootApp = "LinuxLoader"
2、edk2 abl侧 LinuxLoader.inf BASE_NAME = LinuxLoader,ENTRY_POINT = LinuxLoaderEntry
LinuxLoader.inf
[Defines]
INF_VERSION = 0x00010006
BASE_NAME = LinuxLoader
FILE_GUID = f536d559-459f-48fa-8bbc-43b554ecae8d
MODULE_TYPE = UEFI_APPLICATION
VERSION_STRING = 0.1
ENTRY_POINT = LinuxLoaderEntry
LinuxLoader做为一个UEFI_APPLICATION 应用被加载,入口函数为LinuxLoaderEntry