Newer
Older
AMI-Aptio-BIOS-Reversed / AmiModulePkg / AmiStatusCode / StatusCodeDxe / README.md
@Ajax Dong Ajax Dong 2 days ago 1 KB Restructure the repo

StatusCodeDxe

Index Module Size Phase
0254 StatusCodeDxe 31,744 bytes DXE (Runtime Driver)

StatusCodeDxe is a DXE driver from AmiModulePkg that implements the system status code reporting infrastructure. It routes status code events from firmware components to registered listeners including serial output, Port 80 POST code display, video console, and BMC. The driver provides deferred buffered reporting, ASSERT/error formatting, and a progress display mechanism during DXE and BDS phases.

Key Functions

  • _ModuleEntryPoint -- UEFI entry point; dispatches to StatusCodeDxeEntryPoint
  • StatusCodeDxeEntryPoint -- Main driver initialization; registers status code protocol notifiers
  • IoRead32 / IoWrite32 / IoWrite8 / IoRead8 -- Port 80 I/O access for POST code display
  • ExtendedDecodeEnable -- Enables extended IO decode for PCI/PCIe bridges
  • sub_2B60 -- BMC status code reporting via IPMI
  • sub_1E00 -- Serial status code output formatter
  • sub_20C0 -- Video console progress display

Dependencies

  • UEFI Boot Services (gBS)
  • UEFI Runtime Services (gRT)
  • Status Code Protocol (gStatusCodeProtocol)
  • AMI Status Code Policy Protocol (gAmiStatusCodePolicy)
  • IPMI Transport Protocol (for BMC reporting)
  • ReportStatusCodeLib
  • SerialPortLib

Platform

  • Format: PE32+
  • Machine: x86-64
  • Subsystem: EFI Runtime Driver (0x0C)
  • Sections: .text, .rdata, .data, section_3, .xdata, .reloc
  • Source: AmiModulePkg\AmiStatusCode\StatusCodeDxe.c