]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ArmVirtPkg/ArmVirtQemu.dsc
ArmVirtPkg/ArmVirtQemu: limit ACPI support to v5.0 and higher
[mirror_edk2.git] / ArmVirtPkg / ArmVirtQemu.dsc
index e7bc56ef744911f6187bf60fc2771f72017aed82..f873883c4a3981b647567f48955d6dea00d84c1f 100644 (file)
   # support anything bigger, even if the host hardware does\r
   gEmbeddedTokenSpaceGuid.PcdPrePiCpuMemorySize|40\r
 \r
+  # Clearing BIT0 in this PCD prevents installing a 32-bit SMBIOS entry point,\r
+  # if the entry point version is >= 3.0. AARCH64 OSes cannot assume the\r
+  # presence of the 32-bit entry point anyway (because many AARCH64 systems\r
+  # don't have 32-bit addressable physical RAM), and the additional allocations\r
+  # below 4 GB needlessly fragment the memory map. So expose the 64-bit entry\r
+  # point only, for entry point versions >= 3.0.\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosEntryPointProvideMethod|0x2\r
+\r
+  # ACPI predates the AARCH64 architecture by 5 versions, so\r
+  # we only target OSes that support ACPI v5.0 or later\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiExposedTableVersions|0x20\r
+\r
 [PcdsDynamicDefault.common]\r
   ## If TRUE, OvmfPkg/AcpiPlatformDxe will not wait for PCI\r
   #  enumeration to complete before installing ACPI tables.\r
   #\r
   # PEI Phase modules\r
   #\r
-  ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf {\r
-    <LibraryClasses>\r
-      ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Pei/PeiArmPlatformGlobalVariableLib.inf\r
-  }\r
+  ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf\r
   MdeModulePkg/Core/Pei/PeiMain.inf\r
   MdeModulePkg/Universal/PCD/Pei/Pcd.inf\r
   ArmPlatformPkg/PlatformPei/PlatformPeim.inf\r
   # Platform Driver\r
   #\r
   ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.inf\r
+  ArmVirtPkg/HighMemDxe/HighMemDxe.inf\r
   OvmfPkg/VirtioBlkDxe/VirtioBlk.inf\r
   OvmfPkg/VirtioScsiDxe/VirtioScsi.inf\r
   OvmfPkg/VirtioNetDxe/VirtioNet.inf\r
   }\r
   OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf\r
 \r
-  #\r
-  # ACPI Support\r
-  #\r
-  MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf\r
-  OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf\r
-\r
   #\r
   # PCI support\r
   #\r
   MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf\r
   MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf\r
 \r
+[Components.AARCH64]\r
+  #\r
+  # ACPI Support\r
+  #\r
+  MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf\r
+  OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf\r
+\r
 [Components.ARM]\r
   #\r
   # The ARM/Linux kernel has no built in EFI boot stub (yet), so we still need\r