Print an error and stop in case VirtMmCommunicationDxe
initialization fails.

Signed-off-by: Gerd Hoffmann <kra...@redhat.com>
---
 OvmfPkg/VirtMmCommunicationDxe/VirtMmCommunication.inf |  1 +
 OvmfPkg/VirtMmCommunicationDxe/VirtMmCommunication.c   | 10 ++++++++++
 2 files changed, 11 insertions(+)

diff --git a/OvmfPkg/VirtMmCommunicationDxe/VirtMmCommunication.inf 
b/OvmfPkg/VirtMmCommunicationDxe/VirtMmCommunication.inf
index 1403e92e1d6d..08fadefa5275 100644
--- a/OvmfPkg/VirtMmCommunicationDxe/VirtMmCommunication.inf
+++ b/OvmfPkg/VirtMmCommunicationDxe/VirtMmCommunication.inf
@@ -36,6 +36,7 @@ [LibraryClasses]
 [FeaturePcd]
   gEfiMdeModulePkgTokenSpaceGuid.PcdEnableVariableRuntimeCache           ## 
CONSUMES
   gEfiMdeModulePkgTokenSpaceGuid.PcdVariableCollectStatistics            ## 
CONSUMES
+  gUefiOvmfPkgTokenSpaceGuid.PcdQemuVarsRequire                          ## 
CONSUMES
 
 [Protocols]
   gEfiMmCommunication2ProtocolGuid              ## PRODUCES
diff --git a/OvmfPkg/VirtMmCommunicationDxe/VirtMmCommunication.c 
b/OvmfPkg/VirtMmCommunicationDxe/VirtMmCommunication.c
index 7b4ebe1257c6..c33561b39f9b 100644
--- a/OvmfPkg/VirtMmCommunicationDxe/VirtMmCommunication.c
+++ b/OvmfPkg/VirtMmCommunicationDxe/VirtMmCommunication.c
@@ -376,5 +376,15 @@ VirtMmCommunication2Initialize (
   FreePages (mCommunicateBuffer, EFI_SIZE_TO_PAGES (MAX_BUFFER_SIZE));
 
 ReturnErrorStatus:
+  if (FeaturePcdGet (PcdQemuVarsRequire)) {
+    DEBUG ((
+      DEBUG_ERROR,
+      "ERROR: qemu uefi variable service is not available, use \n"
+      "  'qemu-system-x86_64 -device uefi-vars-isa' or\n"
+      "  'qemu-system-aarch64 -machine virt,x-uefi-vars=on'\n"
+      ));
+    CpuDeadLoop ();
+  }
+
   return EFI_INVALID_PARAMETER;
 }
-- 
2.42.0



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#111680): https://edk2.groups.io/g/devel/message/111680
Mute This Topic: https://groups.io/mt/102767937/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to