AMI-Aptio-BIOS-Reversed / DxeIpl /
@Ajax Dong Ajax Dong authored on 6 Jun
..
DxeIpl.c Init 3 months ago
DxeIpl.h Init 3 months ago
DxeIpl.i64 Init 3 months ago
DxeIpl.md Init 3 months ago
DxeIplAllocPages.c Init 3 months ago
DxeIplAllocPagesBelow4G.c Init 3 months ago
DxeIplAllocatePages.c Init 3 months ago
DxeIplAllocateZeroPages.c Init 3 months ago
DxeIplCheckBootMode.c Init 3 months ago
DxeIplCopyMem.c Init 3 months ago
DxeIplCreatePageTables.c Init 3 months ago
DxeIplDebugPrint.c Init 3 months ago
DxeIplDebugPrintGuid.c Init 3 months ago
DxeIplDecodeCleanup.c Init 3 months ago
DxeIplDecodeData.c Init 3 months ago
DxeIplDecodeSetup.c Init 3 months ago
DxeIplDecompress.c Init 3 months ago
DxeIplDecompressLzma.c Init 3 months ago
DxeIplDecompressPages.c Init 3 months ago
DxeIplDiscoverDxeCore.c Init 3 months ago
DxeIplDxeIplPpiNotify.c Init 3 months ago
DxeIplEndOfPeiNotify.c Init 3 months ago
DxeIplEntry.c Init 3 months ago
DxeIplFreePages.c Init 3 months ago
DxeIplFvExtractSection.c Init 3 months ago
DxeIplFvFreePages.c Init 3 months ago
DxeIplFvGetFileSize.c Init 3 months ago
DxeIplFvIsAddrValid.c Init 3 months ago
DxeIplFvOpenDevice.c Init 3 months ago
DxeIplFvProcessSections.c Init 3 months ago
DxeIplFvReadSection.c Init 3 months ago
DxeIplFvSetError.c Init 3 months ago
DxeIplGetBootMode.c Init 3 months ago
DxeIplGetBootModeFromHob.c Init 3 months ago
DxeIplGetBootModeGuid.c Init 3 months ago
DxeIplGetDecompressAlgo.c Init 3 months ago
DxeIplGetFirstHob.c Init 3 months ago
DxeIplGetFvFromHob.c Init 3 months ago
DxeIplGetModuleBase.c Init 3 months ago
DxeIplGetNextFfsFile.c Init 3 months ago
DxeIplGetNextHob.c Init 3 months ago
DxeIplGetPeiBootMode.c Init 3 months ago
DxeIplGetPeiProtocol.c Init 3 months ago
DxeIplGetPeiServices.c Init 3 months ago
DxeIplGetPlatformBootMode.c Init 3 months ago
DxeIplGetPpiPtr.c Init 3 months ago
DxeIplHuffmanBuildTable.c Init 3 months ago
DxeIplInitGlobalFlags.c Init 3 months ago
DxeIplInstallPpi.c Init 3 months ago
DxeIplLocatePpi.c Init 3 months ago
DxeIplLocatePpiByGuid.c Init 3 months ago
DxeIplLzmaBitDecode.c Init 3 months ago
DxeIplLzmaDecodeBitTree.c Init 3 months ago
DxeIplLzmaDecodeCore1.c Init 3 months ago
DxeIplLzmaDecodeCore2.c Init 3 months ago
DxeIplLzmaDecodeLiteral.c Init 3 months ago
DxeIplLzmaDecodeMatch.c Init 3 months ago
DxeIplLzmaDecodeProp.c Init 3 months ago
DxeIplLzmaDecodeRange.c Init 3 months ago
DxeIplLzmaDecodeStream.c Init 3 months ago
DxeIplLzmaDecodeSymbol.c Init 3 months ago
DxeIplLzmaGetBit.c Init 3 months ago
DxeIplLzmaGetNumBits.c Init 3 months ago
DxeIplLzmaGetProp.c Init 3 months ago
DxeIplLzmaInitRange.c Init 3 months ago
DxeIplLzmaInitState.c Init 3 months ago
DxeIplLzmaNormalize.c Init 3 months ago
DxeIplLzmaRangeDecode.c Init 3 months ago
DxeIplMeasureFv.c Init 3 months ago
DxeIplNullStall.c Init 3 months ago
DxeIplOpenFv.c Init 3 months ago
DxeIplPeiEndCallback.c Init 3 months ago
DxeIplPpiNotifyCallback.c Init 3 months ago
DxeIplReadFvSection.c Init 3 months ago
DxeIplReportStatus.c Init 3 months ago
DxeIplReportStatusCode.c Init 3 months ago
DxeIplSetBootMode.c Init 3 months ago
DxeIplSetMem16.c Init 3 months ago
DxeIplSetMem32.c Init 3 months ago
DxeIplSetMem64.c Init 3 months ago
DxeIplTransferToDxeCore.c Init 3 months ago
DxeIplZeroMem.c Init 3 months ago
README.md Init 3 months ago
_ModuleEntryPoint.c Init 3 months ago
nullsub_2.c Init 3 months ago
README.md

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)