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

PchSmiDispatcher

Index

0184

Size

ED44h (60,740 bytes)

Phase

DXE SMM (System Management Mode driver)

Source Package

PurleySktPkg/SouthClusterLbg/PchSmiDispatcher/Smm

Overview

PchSmiDispatcher is the central SMI dispatch framework for the Lewisburg PCH. It provides the core SMI handling infrastructure including SMI handler registration, dispatch logic, software SMI (SW SMI) management, IO trap handling, periodic timer SMIs, eSPI SMI, and TCO (Total Cost of Ownership) watchdog SMIs. This is a foundational PCH SMM driver that other drivers depend on for SMI routing.

Key Functions

  • ModuleEntryPoint (0x504): Entry point; initializes the SMI dispatch database and registers core SMI handlers.
  • sub_5B8 (53 callees): Main SMM initialization dispatcher; configures all SMI sources and installs the SMI dispatch protocol.
  • sub_BB8 (32 callees): SMI dispatch core logic; handles SMI source routing, SW SMI generation, and handler callback management.
  • sub_AE8: Cleanup and error handling on SMI dispatch failures.

Source Files Referenced

  • PchSmmCore.c (core SMM dispatch logic)
  • PchSmiDispatch.c (SMI dispatch protocol implementation)
  • PchSmmEspi.c (eSPI SMI handling)
  • PchSmmPeriodicTimer.c (periodic timer SMI)
  • IoTrap.c (IO trap management)
  • PchxSmmHelpers.c (SMM helper utilities)

Strings

  • "Register is not allowed if the SmmReadyToLock event has been triggered!"
  • "CR has Bad Signature" (linked list corruption detection)
  • Extensive ASSERT coverage with 44 assert sites

Platform

Intel Purley with Lewisburg PCH (HR650X server platform)