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

SmiFlashDxe

Index Module Size Phase
121 SmiFlashDxe 6,144 bytes (PE32+) DXE_RUNTIME_DRIVER

Overview

SMM SPI Flash Protection driver that registers an "SFPFREC" (SMI Flash Protection / Firmware Recovery) SMI handler for SPI flash region management. Locates the flash descriptor HOB via the SMM configuration table, determines flash part size (1MB or 2MB), and sets up SMM communication for runtime flash protection operations.

Key Functions

  • SmiFlashEntryPoint -- Main SMI flash entry, scans HOBs for flash descriptor
  • ModuleEntryPoint -- UEFI entry, calls library constructor and SmiFlashEntryPoint
  • SmiHandlerFlashUnregister -- Unregisters the SFPFREC SMI handler
  • SmiHandlerUnload -- Driver unload, cleanup events
  • UefiBootServicesTableLibConstructor -- Boot services table setup
  • IsHobGuidMatch -- HOB GUID matching helper
  • DebugPrintWithLevel / DebugAssert -- SMM debug output via protocol

Dependencies

  • SMM System Table (configuration table for flash descriptor HOB lookup)
  • SMM Runtime Services (SmiHandlerRegister / SmiHandlerUnRegister)
  • SMM Debug Protocol
  • Flash Descriptor HOB (GUID: {01368881-C4AD-4B1D-B631-D57A8EC8DB6B})

Platform

Intel Purley (Xeon Scalable). x86-64 UEFI Runtime Driver.