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

SmbusRecovery

Index

0181

Size

3344h (13,124 bytes)

Phase

DXE SMM (System Management Mode driver)

Source Package

PurleySktPkg/Smm/Ras/SmbusRecovery

Overview

SmbusRecovery is an SMM driver that provides SMBus error recovery capability. It monitors SMBus controllers for error conditions and implements recovery mechanisms to restore SMBus functionality after protocol violations, timeouts, or other bus errors. This is part of the RAS (Reliability, Availability, Serviceability) subsystem on the Purley platform.

Key Functions

  • ModuleEntryPoint (0x4B4): Entry point; registers SMI handlers for SMBus error events and initializes recovery state tracking.
  • sub_560: Initializes SMBus error detection registers and configures SMI trigger conditions for bus error events.
  • sub_84C: Main recovery logic; detects SMBus error conditions per socket/segment and executes the recovery sequence.
  • sub_CD4 (24 callees): Dispatcher for SMBus recovery operations across different controller instances.
  • sub_AF0: Helper that queries SMBus controller status registers to identify the type of error condition.

Strings

  • "SMBUS Error Recovery is not enabled in setup"
  • "In SMBUS Recovery Module EntryPoint"
  • "Smbus Recovery in Progress"
  • "Smbus Error present on SktId 0x%x, SegmentId 0x%x"
  • "The value of SmbCmd.Bits.smb_ckovrd is 0x%x"

Platform

Intel Purley (HR650X server platform)