summaryrefslogtreecommitdiff
path: root/ArmVirtPkg
diff options
context:
space:
mode:
authorArd Biesheuvel <ard.biesheuvel@linaro.org>2016-04-08 11:45:00 +0200
committerArd Biesheuvel <ard.biesheuvel@linaro.org>2016-04-12 16:57:20 +0200
commita06d0bb58eb919d43a6b8f1ef0625241d3ed7531 (patch)
tree446e306f938ccad28c6220ab0cc55eedf019d34d /ArmVirtPkg
parent33ac45661ada95134cc2fcd266f89da391c86b93 (diff)
downloadedk2-platforms-a06d0bb58eb919d43a6b8f1ef0625241d3ed7531.tar.xz
ArmVirtPkg/BaseCachingPciExpressLib: depend on PciPcdProducerLib
Make BaseCachingPciExpressLib depend on PciPcdProducerLib, so that we have a chance to populate PcdPciExpressBaseAddress based on the contents of the device tree. Also update the platforms under ArmVirtPkg that support PCI to use the special MAX_UINT64 value as the build time default for PcdPciExpressBaseAddress. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Diffstat (limited to 'ArmVirtPkg')
-rw-r--r--ArmVirtPkg/ArmVirtQemu.dsc6
-rw-r--r--ArmVirtPkg/ArmVirtQemuKernel.dsc6
-rw-r--r--ArmVirtPkg/Library/BaseCachingPciExpressLib/BaseCachingPciExpressLib.inf2
3 files changed, 12 insertions, 2 deletions
diff --git a/ArmVirtPkg/ArmVirtQemu.dsc b/ArmVirtPkg/ArmVirtQemu.dsc
index bb99426226..f2eccf8cca 100644
--- a/ArmVirtPkg/ArmVirtQemu.dsc
+++ b/ArmVirtPkg/ArmVirtQemu.dsc
@@ -66,6 +66,7 @@
!if $(SECURE_BOOT_ENABLE) == TRUE
FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf
!endif
+ PciPcdProducerLib|ArmVirtPkg/Library/FdtPciPcdProducerLib/FdtPciPcdProducerLib.inf
[LibraryClasses.common.UEFI_DRIVER]
UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
@@ -219,7 +220,10 @@
gArmPlatformTokenSpaceGuid.PcdPciIoTranslation|0x0
gArmPlatformTokenSpaceGuid.PcdPciMmio32Base|0x0
gArmPlatformTokenSpaceGuid.PcdPciMmio32Size|0x0
- gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x0
+
+ # set PcdPciExpressBaseAddress to MAX_UINT64, which signifies that this
+ # PCD and PcdPciDisableBusEnumeration above have not been assigned yet
+ gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xFFFFFFFFFFFFFFFF
#
# Set video resolution for boot options and for text setup.
diff --git a/ArmVirtPkg/ArmVirtQemuKernel.dsc b/ArmVirtPkg/ArmVirtQemuKernel.dsc
index d6c73d9608..107627e6a6 100644
--- a/ArmVirtPkg/ArmVirtQemuKernel.dsc
+++ b/ArmVirtPkg/ArmVirtQemuKernel.dsc
@@ -65,6 +65,7 @@
!if $(SECURE_BOOT_ENABLE) == TRUE
FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf
!endif
+ PciPcdProducerLib|ArmVirtPkg/Library/FdtPciPcdProducerLib/FdtPciPcdProducerLib.inf
[LibraryClasses.common.UEFI_DRIVER]
UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
@@ -204,7 +205,10 @@
gArmPlatformTokenSpaceGuid.PcdPciIoTranslation|0x0
gArmPlatformTokenSpaceGuid.PcdPciMmio32Base|0x0
gArmPlatformTokenSpaceGuid.PcdPciMmio32Size|0x0
- gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x0
+
+ # set PcdPciExpressBaseAddress to MAX_UINT64, which signifies that this
+ # PCD and PcdPciDisableBusEnumeration above have not been assigned yet
+ gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xFFFFFFFFFFFFFFFF
#
# Set video resolution for boot options and for text setup.
diff --git a/ArmVirtPkg/Library/BaseCachingPciExpressLib/BaseCachingPciExpressLib.inf b/ArmVirtPkg/Library/BaseCachingPciExpressLib/BaseCachingPciExpressLib.inf
index f6a346d49f..b32554a111 100644
--- a/ArmVirtPkg/Library/BaseCachingPciExpressLib/BaseCachingPciExpressLib.inf
+++ b/ArmVirtPkg/Library/BaseCachingPciExpressLib/BaseCachingPciExpressLib.inf
@@ -33,6 +33,7 @@
PciExpressLib.c
[Packages]
+ ArmVirtPkg/ArmVirtPkg.dec
MdePkg/MdePkg.dec
[LibraryClasses]
@@ -40,6 +41,7 @@
PcdLib
DebugLib
IoLib
+ PciPcdProducerLib
[Pcd]
gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress ## CONSUMES