Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 12 Jun 2023 15:18:47 +0200
From:      =?UTF-8?q?Corvin=20K=C3=B6hne?= <corvink@FreeBSD.org>
To:        virtualization@freebsd.org
Cc:        =?UTF-8?q?Corvin=20K=C3=B6hne?= <corvink@FreeBSD.org>
Subject:   [PATCH 3/5] OvmfPkg: move QemuFwCfgAcpi into AcpiPlatformLib
Message-ID:  <20230612132558.349152-4-corvink@FreeBSD.org>
In-Reply-To: <20230612132558.349152-1-corvink@FreeBSD.org>
References:  <20230612132558.349152-1-corvink@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
This makes the InstallQemuFwcfgTables function reusable by bhyve.

Signed-off-by: Corvin Köhne <corvink@FreeBSD.org>
---
 OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf                 | 3 ---
 OvmfPkg/Library/AcpiPlatformLib/DxeAcpiPlatformLib.inf      | 5 +++++
 OvmfPkg/AcpiPlatformDxe/AcpiPlatform.h                      | 6 ------
 OvmfPkg/Include/Library/AcpiPlatformLib.h                   | 6 ++++++
 OvmfPkg/AcpiPlatformDxe/AcpiPlatform.c                      | 3 +++
 .../AcpiPlatformLib}/QemuFwCfgAcpi.c                        | 2 --
 6 files changed, 14 insertions(+), 11 deletions(-)
 rename OvmfPkg/{AcpiPlatformDxe => Library/AcpiPlatformLib}/QemuFwCfgAcpi.c (96%)

diff --git a/OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf b/OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
index 6001b9626970..622589e607e9 100644
--- a/OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
+++ b/OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
@@ -25,7 +25,6 @@ [Sources]
   AcpiPlatform.h
   CloudHvAcpi.c
   EntryPoint.c
-  QemuFwCfgAcpi.c
 
 [Packages]
   MdeModulePkg/MdeModulePkg.dec
@@ -41,12 +40,10 @@ [LibraryClasses]
   QemuFwCfgLib
   UefiDriverEntryPoint
   HobLib
-  TpmMeasurementLib
 
 [Protocols]
   gEfiAcpiTableProtocolGuid                     # PROTOCOL ALWAYS_CONSUMED
   gEfiPciIoProtocolGuid                         # PROTOCOL SOMETIMES_CONSUMED
-  gQemuAcpiTableNotifyProtocolGuid              # PROTOCOL PRODUCES
 
 [Guids]
   gRootBridgesConnectedEventGroupGuid
diff --git a/OvmfPkg/Library/AcpiPlatformLib/DxeAcpiPlatformLib.inf b/OvmfPkg/Library/AcpiPlatformLib/DxeAcpiPlatformLib.inf
index b6e55b618cbb..59fcb957d059 100644
--- a/OvmfPkg/Library/AcpiPlatformLib/DxeAcpiPlatformLib.inf
+++ b/OvmfPkg/Library/AcpiPlatformLib/DxeAcpiPlatformLib.inf
@@ -18,6 +18,7 @@ [Sources]
   BootScript.c
   DxeAcpiPlatformLib.c
   PciDecoding.c
+  QemuFwCfgAcpi.c
 
 [Packages]
   MdeModulePkg/MdeModulePkg.dec
@@ -30,6 +31,10 @@ [LibraryClasses]
   PcdLib
   QemuFwCfgS3Lib
   UefiBootServicesTableLib
+  TpmMeasurementLib
+
+[Protocols]
+  gQemuAcpiTableNotifyProtocolGuid              # PROTOCOL PRODUCES
 
 [Pcd]
   gEfiMdeModulePkgTokenSpaceGuid.PcdPciDisableBusEnumeration
diff --git a/OvmfPkg/AcpiPlatformDxe/AcpiPlatform.h b/OvmfPkg/AcpiPlatformDxe/AcpiPlatform.h
index c9f2755014a1..f4ae84b5a194 100644
--- a/OvmfPkg/AcpiPlatformDxe/AcpiPlatform.h
+++ b/OvmfPkg/AcpiPlatformDxe/AcpiPlatform.h
@@ -23,12 +23,6 @@ InstallCloudHvTables (
   IN   EFI_ACPI_TABLE_PROTOCOL  *AcpiProtocol
   );
 
-EFI_STATUS
-EFIAPI
-InstallQemuFwCfgTables (
-  IN   EFI_ACPI_TABLE_PROTOCOL  *AcpiProtocol
-  );
-
 EFI_STATUS
 EFIAPI
 InstallAcpiTables (
diff --git a/OvmfPkg/Include/Library/AcpiPlatformLib.h b/OvmfPkg/Include/Library/AcpiPlatformLib.h
index a79d698a8750..54c89d62b3bf 100644
--- a/OvmfPkg/Include/Library/AcpiPlatformLib.h
+++ b/OvmfPkg/Include/Library/AcpiPlatformLib.h
@@ -56,6 +56,12 @@ InstallAcpiTablesFromRsdp (
   IN EFI_ACPI_2_0_ROOT_SYSTEM_DESCRIPTION_POINTER  *Rsdp
   );
 
+EFI_STATUS
+EFIAPI
+InstallQemuFwCfgTables (
+  IN   EFI_ACPI_TABLE_PROTOCOL  *AcpiProtocol
+  );
+
 VOID
 EnablePciDecoding (
   OUT ORIGINAL_ATTRIBUTES  **OriginalAttributes,
diff --git a/OvmfPkg/AcpiPlatformDxe/AcpiPlatform.c b/OvmfPkg/AcpiPlatformDxe/AcpiPlatform.c
index b446bb487234..20c98bb67fa3 100644
--- a/OvmfPkg/AcpiPlatformDxe/AcpiPlatform.c
+++ b/OvmfPkg/AcpiPlatformDxe/AcpiPlatform.c
@@ -9,6 +9,9 @@
 
 #include <OvmfPlatforms.h> // CLOUDHV_DEVICE_ID
 #include <ConfidentialComputingGuestAttr.h>
+
+#include <Library/AcpiPlatformLib.h>
+
 #include "AcpiPlatform.h"
 
 /**
diff --git a/OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpi.c b/OvmfPkg/Library/AcpiPlatformLib/QemuFwCfgAcpi.c
similarity index 96%
rename from OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpi.c
rename to OvmfPkg/Library/AcpiPlatformLib/QemuFwCfgAcpi.c
index 3de039d57414..d9d0163ffd9f 100644
--- a/OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpi.c
+++ b/OvmfPkg/Library/AcpiPlatformLib/QemuFwCfgAcpi.c
@@ -22,8 +22,6 @@
 #include <Library/UefiBootServicesTableLib.h> // gBS
 #include <Library/TpmMeasurementLib.h>
 
-#include "AcpiPlatform.h"
-
 //
 // The user structure for the ordered collection that will track the fw_cfg
 // blobs under processing.
-- 
2.41.0




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20230612132558.349152-4-corvink>