This repository is a recovered source-oriented view of a Lenovo HR650X server
BIOS built on AMI Aptio V and Intel Purley platform code. It is not a pristine
vendor source tree. The current layout combines decompiled C, reconstructed
headers, generated function inventories, IDA artifacts, and analyst notes that
were regrouped by package path where debug/assert/PDB/source-path evidence was
available.
Use this document as the top-level map for the firmware. For provenance of the
package layout itself, see original_layout_recovery.md
and original_layout_evidence.json.
HR6N0XMLK, DEBUG_VS2015, IA32 PEI| Package | Role in this tree |
|---|---|
MdePkg, MdeModulePkg, UefiCpuPkg |
UEFI PI core services, DXE/PEI/SMM infrastructure, CPU and common library code. |
AmiModulePkg |
AMI platform services: setup, NVRAM, flash, secure boot, TCG, CSM, PCI, terminal, storage, generic event log, and runtime support. |
AmiIpmiPkg |
IPMI and BMC integration across PEI, DXE, and SMM. |
AmiNetworkPkg |
UEFI network stack, PXE/HTTP/iSCSI, BMC LAN setup, and Redfish-related modules. |
AmiTsePkg |
AMI text/setup environment and Aptio setup UI. |
AmiCryptoPkg |
Crypto service initialization in PEI/DXE/SMM-facing components. |
LenovoServerPkg |
Lenovo HR650X server integration: setup defaults, POST/status handling, system inventory, SMBIOS updates, ready-to-boot hooks, and OEM platform policy. |
PurleyPlatPkg, PurleySktPkg, PurleyRpPkg |
Intel Purley platform, socket, south-cluster, ME/SPS, RAS, FPGA, SKU, board, and riser/platform-update logic. |
CpPlatPkg, CpRcPkg |
Configuration/register access, WHEA, and platform support code used by the Purley server stack. |
Build/GuidArtifacts |
GUID-named recovered artifacts whose original module identity remains incomplete or ambiguous. |
The firmware follows the standard UEFI PI boot shape:
Boot#### variables, and launchExitBootServices.The recovered core anchors are:
MdeModulePkg/Core/Pei/PeiMain/PeiCore/README.md for PEI dispatch, PPIs,MdeModulePkg/Core/DxeIplPeim/README.md andMdeModulePkg/Core/DxeIplPeim/DxeIpl.md for DXE core discovery, LZMAMdeModulePkg/Core/Dxe/SectionExtraction/CoreSectionExtraction/README.md forMdeModulePkg/Core/PiSmmCore/PiSmmIpl/README.md andMdeModulePkg/Core/PiSmmCore/PiSmmCore/README.md for SMM loading, SMRAMPurleySktPkg/Override/IA32FamilyCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm/README.mdPurley PEI/DXE modules initialize CPU, memory, PCH, GPIO, PCIe/IIO, FPGA, ME/SPS,
watchdog, and board-specific SKU data. The tree contains both generic Intel/AMI
infrastructure and Lenovo/Purley board overlays. Important areas include:
PurleySktPkg/SouthClusterLbg/SiInit/Pei/SiInitPreMemPurleySktPkg/SouthClusterLbg/SiInit/Pei/SiInitPurleySktPkg/Me/Heci/*PurleySktPkg/Me/Sps/*PurleySktPkg/Smm/*PurleyRpPkg/Uba/UbaMain/Dxe/Type*LenovoServerPkg/POSTStatus/*LenovoServerPkg/OemPlatformEarlyPhasePeiLenovoServerPkg/OemPlatformDxePhaseThe firmware contains multiple security layers:
EFI_TCG2_PROTOCOL, extend PCRs,SecureBootSetup, provisions PK/KEK/db/dbx/dbt/dbrSetupMode.Primary evidence:
PurleyPlatPkg/BootGuard/ExtendBtGSupportToDxe/Pei/BootGuardPei/README.mdAmiModulePkg/TCG2/Common/TcgDxe/Tcg2Dxe/README.mdAmiModulePkg/SecureBoot/SecureBootDXE/README.mdAmiModulePkg/Flash/SmiFlash/README.mdAmiModulePkg/SecureFlash/SecSMIFlash/README.mdBMC/IPMI behaviour is a first-class part of the firmware. The IPMI stack spans
PEI, DXE, and SMM:
Primary evidence:
AmiIpmiPkg/Ipmi/PeiIpmiInitialize/PeiIpmiBmcInitialize/PeiIpmiBmcInitialize/README.mdAmiIpmiPkg/Ipmi/IpmiInitialize/DxeIpmiBmcInitialize/DxeIpmiBmcInitialize/README.mdAmiIpmiPkg/Ipmi/SmmIpmiBmcInitialize/README.mdAmiIpmiPkg/Ipmi/DxeSelStatusCode/README.mdAmiIpmiPkg/Ipmi/SmmBmcElog/README.mdLenovoServerPkg/SystemInventory/SystemInventory/README.mdSetup behaviour is split between AMI UI infrastructure, Lenovo setup forms and
defaults, platform setup-update modules, and BDS boot-option handling:
AmiTsePkg/EDK/MiniSetup/AMITSE implements the Aptio setup UI, menu databaseLenovoServerPkg/Setup, ServerMgmtSetup, SocketSetup, andSetupDefaults define HR650X-specific setup variables and defaults.PurleyRpPkg/Uba/UbaMain/Dxe/Type*/SetupConfigUpdateDxe modules specializeBoot####,BootOrder, BootNext, Timeout, and setup variables.Primary evidence:
AmiTsePkg/EDK/MiniSetup/AMITSE/README.mdLenovoServerPkg/Setup/README.mdLenovoServerPkg/ServerMgmtSetup/README.mdLenovoServerPkg/SetupDefaults/SetupDefaultLoad/README.mdPurleyRpPkg/Uba/UbaMain/Dxe/TypeNeonCityEPRP/SetupConfigUpdateDxe/README.md.c, .h, and sidecar.md files before making security conclusions.