VirtualBox

Changeset 88484 in vbox for trunk/include/VBox


Ignore:
Timestamp:
Apr 13, 2021 5:50:44 AM (4 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
143743
Message:

Intel IOMMU: bugref:9967 Main: Use the same I/O APIC PCI address reservation as we do on AMD, as it keeps things simpler than moving PCI devices/slots around again.
Also for now don't opt out of x2APIC (seems Linux VMs are configured with x2APIC by default, so let's try get things working with x2APIC).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/iommu-intel.h

    r88403 r88484  
    18311831
    18321832/**
     1833 * ACPI Device Scope Structure - PCI device path.
     1834 * In accordance with the Intel spec.
     1835 */
     1836typedef struct ACPIDEVSCOPEPATH
     1837{
     1838    /** PCI device number. */
     1839    uint8_t     uDevice;
     1840    /** PCI function number.   */
     1841    uint8_t     uFunction;
     1842} ACPIDEVSCOPEPATH;
     1843AssertCompileSize(ACPIDEVSCOPEPATH, 2);
     1844
     1845
     1846/**
    18331847 * Device Scope Structure.
    18341848 * In accordance with the Intel spec.
     
    18381852{
    18391853    /** Type, see ACPIDMARDEVSCOPE_TYPE_XXX. */
    1840     uint8_t         uType;
     1854    uint8_t             uType;
    18411855    /** Length (must be 6 + size of auPath field).  */
    1842     uint8_t         cbLength;
     1856    uint8_t             cbLength;
    18431857    /** Reserved (MBZ). */
    1844     uint8_t         abRsvd[2];
     1858    uint8_t             abRsvd[2];
    18451859    /** Enumeration ID (for I/O APIC, HPET and ACPI namespace devices). */
    1846     uint8_t         idEnum;
     1860    uint8_t             idEnum;
    18471861    /** First bus number for this device. */
    1848     uint8_t         uStartBusNum;
     1862    uint8_t             uStartBusNum;
    18491863    /** Hierarchical path from the Host Bridge to the device. */
    1850     uint16_t        auPath[1];
     1864    ACPIDEVSCOPEPATH    Path;
    18511865} ACPIDMARDEVSCOPE;
    18521866#pragma pack()
     
    18541868AssertCompileMemberOffset(ACPIDMARDEVSCOPE, idEnum,       4);
    18551869AssertCompileMemberOffset(ACPIDMARDEVSCOPE, uStartBusNum, 5);
    1856 AssertCompileMemberOffset(ACPIDMARDEVSCOPE, auPath,       6);
     1870AssertCompileMemberOffset(ACPIDMARDEVSCOPE, Path,         6);
    18571871
    18581872/** ACPI DMAR revision (not the OEM revision field).
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette