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

PchSmbusSmm

Index

0185

Size

2384h (9,092 bytes)

Phase

DXE SMM (System Management Mode driver)

Source Package

PurleySktPkg/SouthClusterLbg/Smbus/Smm

Overview

PchSmbusSmm is an SMM driver that provides SMBus controller management within System Management Mode on the Lewisburg PCH. It handles SMBus operations that must execute at the SMM privilege level, such as access to SPD (Serial Presence Detect) data for DIMMs, thermal sensor monitoring, and platform management controller communication during system low-power states or error conditions.

Key Functions

  • ModuleEntryPoint (0x4B4): Entry point; initializes the SMBus SMM driver and registers for SMBus-related SMI events.
  • sub_560: SMM initialization routine; configures PCH SMBus controller registers for SMM-mode access.
  • sub_958: Core SMBus transaction handler that executes SMBus protocol operations (read/write, block, and PEC modes) within SMM context.
  • sub_C00: SMM library protocol teardown and cleanup.
  • sub_BC0 / sub_EAC: Debug and ASSERT output routines for status validation.
  • sub_E38: Error handling for SMBus transaction failures within SMM.

Strings

  • Build path: PurleySktPkg\SouthClusterLbg\Smbus\Smm\PchSmbusEntry.c
  • "Buffer != ((void *) 0)" (null pointer assertions)
  • AutoGen.c debug assertions (lines 430, 445)

Libraries Referenced

  • SmmMemoryAllocationLib
  • DxeHobLib
  • SmmMmPciBaseLib (CpRcPkg)
  • DxePcdLib

Platform

Intel Purley with Lewisburg PCH (HR650X server platform)