Hi

I've encountered a problem after using the patch from SBL (slimboot) https://github.com/slimbootloader/slimbootloader/pull/809
The SBL supports resource allocation above the 4GB, but it fails on  ASSERT [PciHostBridgeDxe] /home/andreyv/edk2/edk2/MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciRootBridgeIo.c(120): Bridge->Mem.Limit < 0x0000000100000000ULL

The proposed workaround for this is something like in function AdjustRootBridgeResource() of  UefiPayloadPkg\Library\PciHostBridgeLib\PciHostBridgeSupport.c :

VOID

AdjustRootBridgeResource (

  IN  PCI_ROOT_BRIDGE_APERTURE *Io,

  IN  PCI_ROOT_BRIDGE_APERTURE *Mem,

  IN  PCI_ROOT_BRIDGE_APERTURE *MemAbove4G,

  IN  PCI_ROOT_BRIDGE_APERTURE *PMem,

  IN  PCI_ROOT_BRIDGE_APERTURE *PMemAbove4G

)

{

   Io->Base = 0x1000;

   Io->Limit = 0xEFFF;

   Mem ->Base = 0x80000000;

   Mem ->Limit = 0xCFFFFFFF;

   PMem ->Base = MAX_UINT64;

   PMem ->Limit = 0;

   MemAbove4G->Base = MAX_UINT64;

   MemAbove4G->Limit = 0;

   PMemAbove4G->Base = 0x400000000ULL;

   PMemAbove4G->Limit = 0x7FFFFFFFFULL;

}

It is working in my board using SBL, but still with a following error

PciHostBridge driver failed to set EFI_MEMORY_UC to MMIO aperture - Out of Resources.

Can someone help to resolve this issue ?


Andrey