| Field | Value |
|---|---|
| Index | 0131 |
| Module | PciBus |
| Size | 161156 bytes (161.2 KB) |
| PE File | PciBus.efi |
| Phase | DXE |
| Source | AmiModulePkg/PCI/PciBus/ |
| SHA-256 | bfd754305209... |
| Sections | 6 (.text, .rdata, .data, section_3, .xdata, .reloc) |
PciBus is the largest DXE driver in this set, implementing AMI's PCI bus enumeration and resource allocation for the UEFI platform. It manages the full PCI/PCIe bus hierarchy: device enumeration, bridge setup, Base Address Register (BAR) allocation, PCI Express link configuration (Gen2/Gen3/Gen4), SR-IOV capability handling, Option ROM loading and execution, and IOMMU/DMA protection initialization. The driver integrates with the S3 boot script library for PCI configuration restore across suspend/resume cycles.
PciBusEntryPoint() -- DXE driver entry point; initializes protocol registrationProcessDriverInit() -- Driver initialization; configures DMA protection and CPU flagsPciBusDriverBindingSupported() -- Tests if a controller is a PCI root bridgePciBusDriverBindingStart() -- Enumerates the PCI bus hierarchy beneath a root bridgePciBusDriverBindingStop() -- Stops the driver and releases PCI resourcesPciBusResourceAlloc() -- Allocates PCI bus resources (MMIO, I/O, bus numbers)PciBusBarHandling() -- Programs PCI Base Address RegistersPciBusOptionRomLoad() -- Loads and executes PCI Option ROMsPciBusS3BootScript() -- Generates S3 boot script for PCI configuration save/restorePciBusIommuInit() -- Initializes IOMMU/DMA protectionPciBusPcieGenConfig() -- Configures PCIe Gen2/Gen3/Gen4 link parametersAmiPciExpressLib -- AMI PCI Express libraryAmiPciExpressGen2Lib -- AMI PCI Express Gen2 configurationAmiPciExpressGen3Lib -- AMI PCI Express Gen3 configurationAmiSriovLib -- AMI SR-IOV (Single Root I/O Virtualization) libraryAmiPciBusLib -- AMI PCI bus common libraryPiDxeS3BootScriptLib -- S3 boot script library for PCI config save/restoreSbPciHotPlugLib -- Southbridge PCI hot-plug libraryEFI_PCI_IO_PROTOCOL -- PCI I/O protocol (produced)EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL -- Root bridge I/O protocol (consumed)EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL -- Host bridge resource allocation