For historical reasons ovmf is quite conservative on address space usage, to play safe and avoid using more than 36 physical address bits (the guaranteed minimum) if possible. With devices (specifically GPUs) becoming larger and larger pci memory bars this becomes increasingly problematic.
This patch series address that by trying to figure what the physical address space size is (which is a bit tricky, see patch #1 for details). If that worked scale up the 64-bit mmio window and also pcie bridge windows dynamically with the available address space. v2: - fix pcie bridge window logic, track prefetchable and non-prefetchable default state separately (Laszlo). Gerd Hoffmann (4): OvmfPkg/PlatformInitLib: qemu cpuid physbits detection OvmfPkg/PlatformInitLib: detect physical address space OvmfPkg/PlatformInitLib: dynamic mmio window size OvmfPkg/PciHotPlugInitDxe: reserve more mmio space OvmfPkg/PciHotPlugInitDxe/PciHotPlugInit.inf | 1 + OvmfPkg/Library/PlatformInitLib/MemDetect.c | 143 ++++++++++++++++--- OvmfPkg/PciHotPlugInitDxe/PciHotPlugInit.c | 21 ++- 3 files changed, 145 insertions(+), 20 deletions(-) -- 2.37.3 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#94698): https://edk2.groups.io/g/devel/message/94698 Mute This Topic: https://groups.io/mt/94113622/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-