6.4 Required Functions

The following functions are required to exist and to execute in the given order. The component that provides the function is not specified because it is not required by the architecture.
The required functions for Stage IV are organized by phase and subsystem (e.g. ACPI, SMM, etc). See Appendix: Full Functions Map for a complete ordering for all stages.

6.4.1 Required DXE Functions

Name
Purpose
PlatformCreateAcpiTable
Create the minimum set of platform-specific ACPI tables
PlatformUpdateAcpiTable
Update data in platform-specific in ACPI tables
PlatformInstallAcpiTable
Install platform-specific ACPI tables
CoreExitBootServices (*)
Dismantles UEFI boot services and enter UEFI run time
BoardInitEndOfFirmware
Board hook for the ExitBootServices event
TestPointExitBootServices
Test to verify state after ExitBootServices has been invoked
RuntimeDriverSetVirtualAddressMap (*)
Sets virtual address mode

Table 45 Stage IV DXE Functions

* In the common EDK II open source code.

6.4.2 DXE Interfaces

Component
Name
Consumer
Purpose
BoardInitLib
BoardNotificationInit
Platform
Board specific initialization hook at DXE phase

Table 46 Stage IV DXE Interfaces

6.4.3 Required SMM Functions

Name
Purpose
SmmIplEntry (*)
SMM IPL
SmmMain (*)
SMM Core entry point
PiCpuSmmEntry (*)
SMM CPU driver
SmmRelocateBases (*)
Relocation
_SmiEntryPoint (*)
SMI entry point
SmmEntryPoint (*)
Dispatch SMI handlers
PchSmmCoreDispatcher
Dispatch PCH child SMI handlers
TestPointSmmEndOfDxe
Verify state after SmmEndOfDxe
TestPointSmmEndOfDxe
Verify state after SmmEndOfDxe
TestPointSmmReadyToLock
Verify state after SmmReadyToLock
PlatformEnableAcpiCallback
Switch the system to ACPI mode
BoardEnableAcpiCallback
Board hook for ACPI mode switch

Table 47 Stage IV SMM Functions

* In the common EDK II open source code.

6.4.4 SMM Interfaces

Component
Name
Consumer
Purpose
BoardAcpiLib
BoardEnableEcAcpiMode ()
Platform
Board specific ENABLE_ACPI_MODE action
BoardDisableEcAcpiMode ()
Platform
Board specific DISABLE_ACPI_MODE action

Table 48 Stage IV SMM Interfaces