Newer
Older
AMI-Aptio-BIOS-Reversed / DxeIpl / README.md
@Ajax Dong Ajax Dong 2 days ago 1 KB Init

DxeIpl

Index: 0080 | Size: 90 KB (source) | Arch: x64 | Phase: PEI (DXE IPL)

Overview

DxeIpl (DXE Initial Program Load) is the PEI module responsible for transitioning from the PEI phase to the DXE phase. It discovers the DXE Foundation firmware volume, decompresses LZMA-compressed sections, sets up long-mode page tables, and transfers control to the DXE core entry point. This module bridges PEI and DXE by building the HOB list, initializing page tables for x64 long mode, and calling the DXE core.

Key Functions

  • DXE core discovery and load (DxeLoadCore, DxeLoadCoreByGuid)
  • LZMA and other decompression algorithm support (LzmaDecompress, LzmaUncompress)
  • x64 long-mode page table creation and identity mapping
  • HOB list hand-off to DXE core
  • Firmware Volume discovery via FV HOBs and FV info PPIs
  • CPU mode switching from PEI 32-bit to DXE 64-bit
  • Security (SEC) verification of loaded DXE core image

Protocols / PPIs / Dependencies

  • EFI_PEI_LOAD_FILE_PPI (produces)
  • EFI_PEI_DECOMPRESS_PPI
  • Firmware Volume PPI
  • PeiServicesTablePointer PPI
  • Security PPI (for image verification)

Platform

HR650X (Purley platform)