X53Mint CpmOverride
AMD CPM 的 OEM 覆寫:PEI 填數十張硬體表,DXE 掛 OEM ACPI,SMM 補 OEM SMM。這是改 GPIO/PCIe/USB PHY 的第一站。
大綱
- PEI:
AmdCpm3OemInitPeim.inf、AmdCpmOem.h、Table/ - DXE:
AmdCpmOemInitDxe、AmdCpmOemAcpi(ASL:GPP PME、GPIO、I2C touch、PRx/PSx) - SMM:
AmdCpmOemSmm - Library:
GpioResetControlLib、AmdPbsConfigLib(PEI+DXE) - Features ASL:Modern Standby uPEP/NVMe D3、ACP Audio、PMF board
PEI Table/ 清單
| 檔案 | 主題 |
|---|---|
| AmdCpmGpioInitSettinggs.c / FwApplyGpioSettings.c | GPIO 初始與 FW 套用。 |
| AmdCpmPlatformDxioSettings.c | DXIO / PCIe lane 對應。 |
| AmdCpmPciDeviceSettings.c / IncompatiblePciDev.c / FwApprovedDeviceList.c / FwSkipPcieSettings.c | PCI 裝置白/黑名單與 skip。 |
| AmdCpmUsbPhySettings_VerA.c / Usb4ReservedResource.c / UcsiSettings.c | USB PHY、USB4 資源、UCSI。 |
| AmdCpmNvmeRtd3Settings.c | NVMe RTD3。 |
| AmdCpmWlanSettings.c / DisplayfeatureSettings.c / DevicePathSettings.c | WLAN、顯示、裝置路徑。 |
| AmdCpmPlatformIdSettings.c / GeventInitSettings.c / SaveContextSettings.c / PreInitSettings.c / MemEyeToolSettings.c | 板 ID、G-event、S3 context、預先初始化、MemEye。 |
詳細解釋
CPM(Common Platform Module)是 AMD 給 OEM 填表的層。表在 PEI 很早被消費,改錯 GPIO 會直接開不了機。DXE ACPI 則補 OS 看到的 Power Resource 與 touch 裝置。這與 Fixup 不同:CpmOverride 是正式 OEM 擴充點,Fixup 是對上游原始碼的補丁。