3.3 Modules
The architecture requires the following modules. Only modules found in the BoardPkg should be modified for board porting. MinPlatformPkg and other common package contents must not be directly modified. BoardPkg and SiliconPkg modules will have multiple instances to support different boards and different silicon.
3.3.1 UEFI Components
These components are required. They enable orderly board porting and add the support for extensibility in later stages. The libraries consumed are the subset of libraries required by this specification. Some libraries are defined in this specification, and some are defined in EDK II documentation.
Item |
Producing Package |
Libraries Consumed |
---|---|---|
SecCore.efi | UefiCpuPkg | PlatformSecLib, SerialPortLib |
PeiCore.efi | MdeModulePkg | |
PcdPeim.efi | MdeModulePkg | |
ReportStatusCodeRouterPei.efi | MdeModulePkg | |
StatusCodeHandlerPei.efi | MdeModulePkg | SerialPortLib |
ReportFvPei.efi | MinPlatformPkg | ReportFvLib, TestPointCheckLib |
SiliconPolicyPeiPreMemory.efi | MinPlatformPkg | SiliconPolicyInitLib, |
SiliconPolicyUpdateLib | ||
PlatformInitPreMemory.efi | MinPlatformPkg | BoardInitLib, TestPointCheckLib |
Table 7 Stage I UEFI Components Platform Architecture Libraries
3.3.2 Platform Architecture Libraries
Board porting will require creation of libraries identified as produced by the BoardPkg. Depending on the board, there may be existing libraries that are sufficient for a board, so it is important to assess the utility of existing library instances when developing board support.
Item |
API Definition Package |
Producing Package |
Description |
---|---|---|---|
BoardInitLib | MinPlatformPkg | BoardPkg | Board initialization library. |
ReportFvLib | MinPlatformPkg | MinPlatformPkg | Installs platform firmware volumes. |
SerialPortLib | MdeModulePkg | BoardPkg | SIO vendor specific initialization to enable serial port. |
SiliconPolicyInitLib | IntelSiliconPkg | SiliconPkg | Provides default silicon configuration policy data. |
SiliconPolicyUpdateLib | IntelSiliconPkg | BoardPkg | Provides board updates to silicon configuration policy data. |
PlatformSecLib | UefiCpuPkg | MinPlatformPkg | Reset vector and SEC initialization code. |
TestPointCheckLib | MinPlatformPkg | MinPlatformPkg | Test point check library. It is called by PlatformInit module to perform stage-specific checks. |
TestPointLib | MinPlatformPkg | MinPlatformPkg | Test point library. It provides helper functionality for TestPointCheck lib. |