Skip to main content

Module ivrs

Module ivrs 

Source
Expand description

IVRS (I/O Virtualization Reporting Structure) types for AMD IOMMU discovery.

The IVRS ACPI table describes AMD IOMMU hardware to the guest OS. It contains one or more IVHD (I/O Virtualization Hardware Definition) blocks, each describing a single IOMMU instance: its PCI BDF, MMIO base, capabilities, and the set of devices behind it.

Reference: AMD I/O Virtualization Technology (IOMMU) Specification, Doc #48882, Rev 3.11, §5.

Structs§

IvInfo
IVinfo bitfield for the IVRS table header (AMD IOMMU spec §5.2.1, Table 84).
IvhdDeviceEntry4
IVHD 4-byte device entry (§5.2.2.7, Table 93).
IvhdSpecialDeviceEntry8
IVHD 8-byte special device entry (§5.2.2.8, Table 96).
IvhdType11
IVHD type 11h header (§5.2.2.3, Table 99).
Ivrs
IVRS fixed table header (follows the standard ACPI Header).

Constants§

IVHD_DEV_ALL
IVHD device entry type: all devices (§5.2.2.7, Table 93).
IVHD_DEV_RANGE_END
IVHD device entry type: end of device range (§5.2.2.7, Table 93).
IVHD_DEV_RANGE_START
IVHD device entry type: start of device range (§5.2.2.7, Table 93).
IVHD_DEV_SELECT
IVHD device entry type: select single device (§5.2.2.7, Table 93).
IVHD_DEV_SPECIAL
IVHD device entry type: special device (§5.2.2.8, Table 96).
IVHD_DTE_SETTING_EINT_PASS
IVHD_DTE_SETTING_INIT_PASS
DTE setting: INITPass, EIntPass, NMIPass for fixed interrupt passthrough.
IVHD_DTE_SETTING_NMI_PASS
IVHD_SPECIAL_HPET
IVHD special device variety: HPET (§5.2.2.8, Table 96).
IVHD_SPECIAL_IOAPIC
IVHD special device variety: IOAPIC (§5.2.2.8, Table 96).
IVHD_TYPE_10
IVHD type 10h: Full-featured IVHD (§5.2.2.2).
IVHD_TYPE_11
IVHD type 11h: Extended IVHD with EFR (§5.2.2.3).
IVHD_TYPE_40
IVHD type 40h: Maximum performance IVHD with EFR (same layout as 11h).
IVRS_REVISION
IVRS table revision (AMD IOMMU spec §5.2.1).