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

SmmGenericSio

  • Index: 0196
  • Size: 16,740 bytes (16.3 KB)
  • Phase: SMM (System Management Mode)
  • PE Format: PE32+ x86-64, 6 sections (.text, .rdata, .data, section_3, .xdata, .reloc)

Overview

SMM driver for generic Super I/O (SIO) controller management. Part of the AmiModulePkg/GenericSio package. This driver provides SMM-based access to Super I/O configuration registers typically located in the I/O address space (e.g., 0x2E/0x2F or 0x4E/0x4F). It manages logical device enable/disable, configuration of LDN (Logical Device Number) assignments, and GPIO pin configuration. The driver supports common SIO chips (Nuvoton, ITE, Fintek) and provides SMM-protected access to SIO resources.

Key Functions

  • ModuleEntryPoint -- Standard SMM driver entry; library init and SIO configuration
  • sub_594 -- AutoGen library constructor
  • sub_1570 -- Core SMM Generic SIO initialization (chip detection, logical device config)
  • sub_18BC -- Library destructor
  • sub_3B0 -- Manual unload handler
  • sub_1A5C -- Error handler for SIO init failures

Protocols

  • SmmBase2 Protocol -- SMM service entry point
  • SmmIo Protocol -- SMM I/O access for SIO configuration port communication
  • GenericSio Protocol -- SIO programming interface

Platform

  • Build: HR6N0XMLK DEBUG_VS2015 X64
  • Source: AmiModulePkg/GenericSio/SmmGenericSio
  • Part of: HR650X BIOS SMM infrastructure (indices 0195-0199, 0201-0203)