AMI-Aptio-BIOS-Reversed / PurleyRpPkg / Platform / Dxe / Setup / DxePlatform / Platform /
@Ajax Dong Ajax Dong authored 7 days ago
..
AllocateCopyPool.c Restructure the repo 7 days ago
AllocatePool.c Restructure the repo 7 days ago
AllocateZeroPool.c Restructure the repo 7 days ago
AsciiStrLen.c Restructure the repo 7 days ago
Assert.c Restructure the repo 7 days ago
BoolToString.c Restructure the repo 7 days ago
CalculateCrc.c Restructure the repo 7 days ago
CheckActionFlag.c Restructure the repo 7 days ago
CompareMem.c Restructure the repo 7 days ago
ConstructConfigHdr.c Restructure the repo 7 days ago
CopyMem.c Restructure the repo 7 days ago
CreateDevicePath.c Restructure the repo 7 days ago
DebugPrint.c Restructure the repo 7 days ago
DevicePathAppend.c Restructure the repo 7 days ago
DevicePathIsEnd.c Restructure the repo 7 days ago
DevicePathIsEndInstance.c Restructure the repo 7 days ago
DevicePathIsMultiInstance.c Restructure the repo 7 days ago
DevicePathNextNode.c Restructure the repo 7 days ago
DevicePathNodeLength.c Restructure the repo 7 days ago
DevicePathNodeOps.c Restructure the repo 7 days ago
DevicePathSubType.c Restructure the repo 7 days ago
DevicePathType.c Restructure the repo 7 days ago
DevicePathUtilities.c Restructure the repo 7 days ago
DriverEntryMain.c Restructure the repo 7 days ago
DriverInit.c Restructure the repo 7 days ago
DxePlatformDriverEntry.c Restructure the repo 7 days ago
ExtractConfig.c Restructure the repo 7 days ago
ExtractMeSpsConfig.c Restructure the repo 7 days ago
GetAllHandlesByProtocol.c Restructure the repo 7 days ago
GetAndSetSocketIioConfig.c Restructure the repo 7 days ago
GetDxeServicesTable.c Restructure the repo 7 days ago
GetManufacturingMode.c Restructure the repo 7 days ago
GetSetupString.c Restructure the repo 7 days ago
GetSetupVarSize.c Restructure the repo 7 days ago
GetTimerValue.c Restructure the repo 7 days ago
GetUint16AtIndex.c Restructure the repo 7 days ago
GetUint32.c Restructure the repo 7 days ago
GetVariableSize.c Restructure the repo 7 days ago
HiiCallbackHelper.c Restructure the repo 7 days ago
HiiConfigRouting.c Restructure the repo 7 days ago
HiiExtractConfig.c Restructure the repo 7 days ago
HiiFormActions.c Restructure the repo 7 days ago
HiiRouteConfig.c Restructure the repo 7 days ago
HiiStringPacker.c Restructure the repo 7 days ago
HiiStringToToken.c Restructure the repo 7 days ago
HiiStringToToken2.c Restructure the repo 7 days ago
HiiSubCallback.c Restructure the repo 7 days ago
InstallSetupVariables.c Restructure the repo 7 days ago
IoRead16.c Restructure the repo 7 days ago
IoRead32.c Restructure the repo 7 days ago
IoRead8.c Restructure the repo 7 days ago
IoWrite16.c Restructure the repo 7 days ago
IoWrite32.c Restructure the repo 7 days ago
IoWrite8.c Restructure the repo 7 days ago
LocateHandleBuffer.c Restructure the repo 7 days ago
LocateHiiSetup.c Restructure the repo 7 days ago
LocateHiiSetupConfig.c Restructure the repo 7 days ago
LocateProtocol.c Restructure the repo 7 days ago
MeExtractSpsConfigOnSetupEnter.c Restructure the repo 7 days ago
MeFirmwareUpdateHandler.c Restructure the repo 7 days ago
MeInitSpsInfo.c Restructure the repo 7 days ago
MeSetupConfiguration.c Restructure the repo 7 days ago
MigrateOldSetupVar.c Restructure the repo 7 days ago
MmIoRead32.c Restructure the repo 7 days ago
Platform.c Restructure the repo 7 days ago
Platform.h Recovering names 7 days ago
Platform.md Restructure the repo 7 days ago
PlatformSetupPolicy.c Restructure the repo 7 days ago
PopulateDiskInfoRecords.c Restructure the repo 7 days ago
PrintLibInternalSPrint.c Restructure the repo 7 days ago
PrintLibUnicodeVSPrint.c Restructure the repo 7 days ago
ProcessSetupConfig.c Restructure the repo 7 days ago
PublishInterface.c Restructure the repo 7 days ago
README.md Restructure the repo 7 days ago
ReadCpRcCfg.c Restructure the repo 7 days ago
ReadCpRcCfg2.c Restructure the repo 7 days ago
ReadCpuPciCfg.c Restructure the repo 7 days ago
ReadPciCfg.c Restructure the repo 7 days ago
RegisterHiiPackage.c Restructure the repo 7 days ago
SetMemRange.c Restructure the repo 7 days ago
SetSetupVariable.c Restructure the repo 7 days ago
SetUint8.c Restructure the repo 7 days ago
SetupActionDispatcher.c Restructure the repo 7 days ago
SetupActionHandler.c Restructure the repo 7 days ago
SetupBootOptionMaint.c Restructure the repo 7 days ago
SetupBufferOps.c Restructure the repo 7 days ago
SetupCallbackFinal.c Restructure the repo 7 days ago
SetupConfigAccessExtract.c Restructure the repo 7 days ago
SetupConfigExtract.c Restructure the repo 7 days ago
SetupConfigRoute.c Restructure the repo 7 days ago
SetupConfigRouting.c Restructure the repo 7 days ago
SetupDataMigrate.c Restructure the repo 7 days ago
SetupDisplayStrings.c Restructure the repo 7 days ago
SetupFormCallback.c Restructure the repo 7 days ago
SetupIfrBuilder.c Restructure the repo 7 days ago
SetupIfrConfigAccess.c Restructure the repo 7 days ago
SetupIfrExtractor.c Restructure the repo 7 days ago
SetupIfrKeywordHandle.c Restructure the repo 7 days ago
SetupIfrNavigator.c Restructure the repo 7 days ago
SetupIfrOptionLookup.c Restructure the repo 7 days ago
SetupIfrOptionValue.c Restructure the repo 7 days ago
SetupIfrPackLoader.c Restructure the repo 7 days ago
SetupIfrStringLoader.c Restructure the repo 7 days ago
SetupIfrSupplement.c Restructure the repo 7 days ago
SetupInfoRecordsDisplay.c Restructure the repo 7 days ago
SetupInfoRecordsWriter.c Restructure the repo 7 days ago
SetupKeywordHandler.c Restructure the repo 7 days ago
SetupOptionProcessor.c Restructure the repo 7 days ago
SetupOptionQuery.c Restructure the repo 7 days ago
SetupPlatform.c Restructure the repo 7 days ago
SetupPlatform.h Restructure the repo 7 days ago
SetupPlatform.md Restructure the repo 7 days ago
SetupPolicyInit.c Restructure the repo 7 days ago
SetupRecordsGetSet.c Restructure the repo 7 days ago
SetupRecordsList.c Restructure the repo 7 days ago
SetupRecordsNavigate.c Restructure the repo 7 days ago
SetupRouteHandler.c Restructure the repo 7 days ago
SetupValueChangeHandler.c Restructure the repo 7 days ago
SetupValueCheck.c Restructure the repo 7 days ago
SetupValueFormatter.c Restructure the repo 7 days ago
SetupValueSetter.c Restructure the repo 7 days ago
SetupVarMigrate.c Restructure the repo 7 days ago
SetupVarSizeCheck.c Restructure the repo 7 days ago
SetupVariableGet.c Restructure the repo 7 days ago
SetupVariableReadback.c Restructure the repo 7 days ago
SetupVariableSet.c Restructure the repo 7 days ago
StrAppendInfo.c Restructure the repo 7 days ago
StrCatS.c Restructure the repo 7 days ago
StrCmpS.c Restructure the repo 7 days ago
StrLen.c Restructure the repo 7 days ago
Uint64ToStr.c Restructure the repo 7 days ago
UnicodeStrToUpper.c Restructure the repo 7 days ago
UnicodeToString.c Restructure the repo 7 days ago
VariableServicesInit.c Restructure the repo 7 days ago
WritePciCfg.c Restructure the repo 7 days ago
WriteProtocolVar.c Restructure the repo 7 days ago
WriteS3BootScript.c Restructure the repo 7 days ago
ZeroMem.c Restructure the repo 7 days ago
_ModuleEntryPoint.c Restructure the repo 7 days ago
README.md

Platform

Index: 0340 | Size: 263,584 bytes | Arch: x64 | Phase: DXE

Overview

Platform is the central platform initialization DXE driver for the HR650X server, implementing 50 functions that cover low-level CPU, chipset, and memory configuration. It manages cache control, MSR (Model-Specific Register) access, interrupt state, I/O port operations, and memory-copy/zero-fill utilities. The driver includes string manipulation, CPUID feature detection, and platform-specific bring-up sequences.

Key Functions

  • DriverInit / ModuleEntryPoint -- Platform driver entry and dispatch
  • CpuDeadLoop -- Infinite loop for fault/assert conditions
  • DisableInterrupts / EnableInterrupts -- Global interrupt flag management
  • DisableCache -- Cache control for sensitive chipset configuration
  • CpuIdFeatureCheck -- CPU feature detection via CPUID instruction
  • ReadMsr / WriteMsr -- MSR read/write wrappers
  • IoRead32Stall -- MMIO read with stall for PCIe configuration
  • InternalZeroMem / InternalCopyMem / SetMem -- Optimized memory manipulation
  • AsciiStrCpyS -- Safe ASCII string copy
  • GetAndSetSocketIioConfig -- Socket IIO (Integrated IO) module setup

Dependencies

  • UEFI Boot Services / Runtime Services Table Library
  • CPU architectural protocols (MSR, CPUID, cache control)
  • Platform chipset registers (IIO, PCIe root ports)
  • MTRR (Memory Type Range Register) programming

Platform

HR650X, x86-64, PE32+ image, 7 sections (.text, .rdata, .data, .rsrc 163KB), subsystem 0x0B (EFI_BOOT_SERVICE_DRIVER)