A.2 Key Function Invocation
Name | Purpose |
---|---|
ResetHandler (*) | The reset vector invoked by silicon |
TempRamInit | Silicon initializes temporary memory |
TestPointTempMemoryFunction | Test temporary memory functionality |
SecStartup (*) | First C code execution, constructs PEI input |
TestPointEndOfSec | Verify state before switching to PEI |
PeiCore (*) | PEI entry point |
PeiDispatcher (*) | Calls the entry points of PEIM |
ReportPreMemFv | Installs firmware volumes required in pre-memory |
BoardDetect | Board detection of the motherboard type |
BoardDebugInit | Board specific initialization for debug device |
PlatformHookSerialPortInitialize | Board serial port initialization. Called from SEC or PEI |
TestPointDebugInitDone | Verify debug functionality |
BoardBootModeDetect | Board hook for EFI_BOOT_MODE detection |
BoardInitBeforeMemoryInit | Board specific initialization, e.g. GPIO |
SiliconPolicyInitPreMemory | Silicon pre memory policy initialization |
SiliconPolicyUpdatePreMemory | Board updates silicon policies |
SiliconPolicyDonePreMemory | Complete pre memory silicon policy data collection |
MemoryInit | Silicon initializes permanent memory |
InstallEfiMemory | Install permantent memory to core |
PeiCore (*) | PEI entry point (post memory entry) |
SecTemporaryRamDone (*) | Call SEC to tear down temporary memory |
ReportPostMemFv | Installs firmware volumes required in post-memory |
TestPointPostMemoryFvInfoFunctional | Test for Firmware Volume map |
BoardInitAfterMemoryInit | Board initialization after memory is installed |
SetCacheMtrr | Configure cache map for permanent memory |
TestPointPostMemoryMtrrAfterMemoryDiscoveredFunctional | Test post-memory cache map |
TestPointPostMemoryResourceFunctional | Test resources |
TestPointPostMemoryFvInfoFunctional | Test for Firmware Volume map |
BoardInitBeforeSiliconInit | Board initialization hook |
SiliconPolicyInitPostMemory | Silicon post memory policy initialization |
SiliconPolicyUpdatePostMemory | Board updates silicon policies |
SiliconPolicyDonePostMemory | Complete post memory silicon policy data collection |
BoardInitAfterSiliconInit | Board specific initialization after silicon is initialized |
DxeLoadCore (*) | DXE IPL locate and call DXE Core |
SetCacheMtrrAfterEndOfPei | Sets cache map in preparation for DXE |
TestPointEndOfPei | Verify expected state as we exit PEI phase |
TestPointPostMemoryMtrrEndOfPeiFunctional | Basic test for cache configuration before entering DXE |
PeimEntryMA (*) | Entrypoint for TPM2 PEIM |
IntelVTdPmrInitialize (*) | Entrypoint for VT-d PEIM |
DxeMain (*) | DXE entry point |
CoreStartImage (*) | Calls the entry points of DXE drivers |
SiliconPolicyInitLate | Silicon late policy initialization |
SiliconPolicyUpdateLate | Board updates silicon policies |
SiliconPolicyDoneLate | Complete late silicon policy data collection |
CoreAllEfiServicesAvailable (*) | Check if required architectural protocols are installed |
SmmIplEntry (*) | SMM IPL |
SmmMain (*) | SMM Core entrypoint |
PiCpuSmmEntry (*) | SMM CPU driver |
SmmRelocateBases (*) | Relocation |
_SmiEntryPoint (*) | SMI entry point |
SmmEntryPoint (*) | Dispatch SMI handlers |
PchSmmCoreDispatcher | Dispatch PCH child SMI handlers |
InitializeTcgSmm (*) | Entrypoint for TPM2 SMM |
MemoryClearCallback (*) | Callback function for MOR setting |
PlatformCreateAcpiTable | Create the minimum set of platform specific tables |
PlatformUpdateAcpiTable | Update platform specific data in ACPI tables - FADT. |
PlatformInstallAcpiTable | Install platform specific ACPI tables |
DriverEntry (*) | Entrypoint for TPM2 DXE |
IntelVTdInitialize(*) | Entrypoint for VT-d DXE |
UserPhysicalPresent (*) | Return if physical user is present for UEFI secure boot |
ProcessTcgPp | Process TPM PP request |
ProcessTcgMor | Process TPM MOR request |
BdsEntry (*) | BDS entry point |
PlatformBootManagerBeforeConsole (*) | Platform specific BDS functionality before console |
BoardInitAfterPciEnumeration | Board-specific hook on PCI enumeration completion |
TestPointPciEnumerationDone | Verify PCI |
ExitPmAuth | Signal key security events EndOfDxe and SmmReadyToLock |
TestPointEndOfDxe | Verify expected state after EndOfDxe |
TestPointDxeSmmReadyToLock | Verify expected state after SmmReadyToLock |
TestPointSmmEndOfDxe | Verify state after SmmEndOfDxe |
TestPointSmmEndOfDxe | Verify state after SmmEndOfDxe |
TestPointSmmReadyToLock | Verify state after SmmReadyToLock |
EfiBootManagerDispatchDeferredImages (*) | Dispatch deferred third party UEFI driver OPROMs |
PlatformBootManagerAfterConsole (*) | Platform specific BDS functionality after console |
BootBootOptions (*) | Attempt each boot option |
EfiSignalEventReadyToBoot (*) | Signals the ReadyToBoot event group |
BoardInitReadyToBoot | Board hook on ReadyToBoot event |
TestPointReadyToBoot | Verify state after ReadyToBoot event signal |
UefiMain (*) | UEFI Shell entry point |
CoreExitBootServices (*) | Dismantles UEFI boot services and enters runtime |
BoardInitEndOfFirmware | Board hook for ExitBootServices event |
TestPointExitBootServices | Verify state after ExitBootServices has been called |
RuntimeDriverSetVirtualAddressMap (*) | Set virtual address mode |
PlatformEnableAcpiCallback | Switch the system to ACPI mode |
BoardEnableAcpiCallback | Board hook for ACPI mode switch |
Table 72 Key Function Invocation
* In the common EDK II open source code.