]> git.proxmox.com Git - mirror_edk2.git/commitdiff
ArmVirtPkg/Kvmtool: Enable ACPI support
authorSami Mujawar <sami.mujawar@arm.com>
Tue, 20 Apr 2021 12:53:10 +0000 (13:53 +0100)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Tue, 1 Feb 2022 17:39:34 +0000 (17:39 +0000)
A Configuration Manager that uses the Dynamic Tables framework
to generate ACPI tables for Kvmtool Guests has been provided.
This Configuration Manager uses the FdtHwInfoParser module to
parse the Kvmtool Device Tree and generate the required
Configuration Manager objects for generating the ACPI tables.

Therefore, enable ACPI table generation for Kvmtool.

Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3742
Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
Signed-off-by: Pierre Gondois <Pierre.Gondois@arm.com>
Reviewed-by: Ard Biesheuvel <ardb@kernel.org>
ArmVirtPkg/ArmVirtKvmTool.dsc
ArmVirtPkg/ArmVirtKvmTool.fdf

index 4a54d13735e9d83905b507b76e47ca389a503516..4b6090ab60750f810b66301387447fec494e4e3c 100644 (file)
 \r
 !include ArmVirtPkg/ArmVirt.dsc.inc\r
 \r
 \r
 !include ArmVirtPkg/ArmVirt.dsc.inc\r
 \r
+!if $(ARCH) == AARCH64\r
+!include DynamicTablesPkg/DynamicTables.dsc.inc\r
+!endif\r
+\r
 !include MdePkg/MdeLibs.dsc.inc\r
 \r
 [LibraryClasses.common]\r
 !include MdePkg/MdeLibs.dsc.inc\r
 \r
 [LibraryClasses.common]\r
@@ -71,6 +75,9 @@
   PlatformHookLib|ArmVirtPkg/Library/Fdt16550SerialPortHookLib/Fdt16550SerialPortHookLib.inf\r
   SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf\r
 \r
   PlatformHookLib|ArmVirtPkg/Library/Fdt16550SerialPortHookLib/Fdt16550SerialPortHookLib.inf\r
   SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf\r
 \r
+  HwInfoParserLib|DynamicTablesPkg/Library/FdtHwInfoParserLib/FdtHwInfoParserLib.inf\r
+  DynamicPlatRepoLib|DynamicTablesPkg/Library/Common/DynamicPlatRepoLib/DynamicPlatRepoLib.inf\r
+\r
 [LibraryClasses.common.SEC, LibraryClasses.common.PEI_CORE, LibraryClasses.common.PEIM]\r
   PciExpressLib|MdePkg/Library/BasePciExpressLib/BasePciExpressLib.inf\r
   PlatformHookLib|ArmVirtPkg/Library/Fdt16550SerialPortHookLib/EarlyFdt16550SerialPortHookLib.inf\r
 [LibraryClasses.common.SEC, LibraryClasses.common.PEI_CORE, LibraryClasses.common.PEIM]\r
   PciExpressLib|MdePkg/Library/BasePciExpressLib/BasePciExpressLib.inf\r
   PlatformHookLib|ArmVirtPkg/Library/Fdt16550SerialPortHookLib/EarlyFdt16550SerialPortHookLib.inf\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoHorizontalResolution|640\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoVerticalResolution|480\r
 \r
   gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoHorizontalResolution|640\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoVerticalResolution|480\r
 \r
-  ## Force DTB\r
-  gArmVirtTokenSpaceGuid.PcdForceNoAcpi|TRUE\r
-\r
   # Setup Flash storage variables\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase|0\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize|0x40000\r
   # Setup Flash storage variables\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase|0\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize|0x40000\r
   }\r
   OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf\r
   OvmfPkg/Virtio10Dxe/Virtio10.inf\r
   }\r
   OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf\r
   OvmfPkg/Virtio10Dxe/Virtio10.inf\r
+\r
+!if $(ARCH) == AARCH64\r
+  #\r
+  # ACPI Support\r
+  #\r
+  ArmVirtPkg/KvmtoolCfgMgrDxe/ConfigurationManagerDxe.inf\r
+!endif\r
index 14a5fce43a0928d6d78b1af5d7bc3a16b6f07918..9e006e83ee5c875120b62d2d137c821ae04719e1 100644 (file)
@@ -1,5 +1,5 @@
 #\r
 #\r
-#  Copyright (c) 2018 - 2021, ARM Limited. All rights reserved.\r
+#  Copyright (c) 2018 - 2022, ARM Limited. All rights reserved.\r
 #\r
 #  SPDX-License-Identifier: BSD-2-Clause-Patent\r
 #\r
 #\r
 #  SPDX-License-Identifier: BSD-2-Clause-Patent\r
 #\r
@@ -201,6 +201,19 @@ READ_LOCK_STATUS   = TRUE
   INF OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf\r
   INF OvmfPkg/Virtio10Dxe/Virtio10.inf\r
 \r
   INF OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf\r
   INF OvmfPkg/Virtio10Dxe/Virtio10.inf\r
 \r
+!if $(ARCH) == AARCH64\r
+  #\r
+  # ACPI Support\r
+  #\r
+  INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf\r
+  #\r
+  # Dynamic Table fdf\r
+  #\r
+  !include DynamicTablesPkg/DynamicTables.fdf.inc\r
+\r
+  INF ArmVirtPkg/KvmtoolCfgMgrDxe/ConfigurationManagerDxe.inf\r
+!endif\r
+\r
   #\r
   # TianoCore logo (splash screen)\r
   #\r
   #\r
   # TianoCore logo (splash screen)\r
   #\r