]> git.proxmox.com Git - mirror_edk2.git/blobdiff - OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FwBlockServiceSmm.c
OvmfPkg/QemuFlashFvbServices: factor out SetPcdFlashNvStorageBaseAddresses
[mirror_edk2.git] / OvmfPkg / QemuFlashFvbServicesRuntimeDxe / FwBlockServiceSmm.c
index 1b74fc17b1ee8187e3c971b2fd25e6be0c54ffb4..33bc3e1137be4e4cc8e2ec3901d6414f3f3f900b 100644 (file)
@@ -74,3 +74,30 @@ MarkIoMemoryRangeForRuntimeAccess (
 \r
   return EFI_SUCCESS;\r
 }\r
+\r
+VOID\r
+SetPcdFlashNvStorageBaseAddresses (\r
+  VOID\r
+  )\r
+{\r
+  RETURN_STATUS PcdStatus;\r
+\r
+  //\r
+  // Set several PCD values to point to flash\r
+  //\r
+  PcdStatus = PcdSet64S (\r
+    PcdFlashNvStorageVariableBase64,\r
+    (UINTN) PcdGet32 (PcdOvmfFlashNvStorageVariableBase)\r
+    );\r
+  ASSERT_RETURN_ERROR (PcdStatus);\r
+  PcdStatus = PcdSet32S (\r
+    PcdFlashNvStorageFtwWorkingBase,\r
+    PcdGet32 (PcdOvmfFlashNvStorageFtwWorkingBase)\r
+    );\r
+  ASSERT_RETURN_ERROR (PcdStatus);\r
+  PcdStatus = PcdSet32S (\r
+    PcdFlashNvStorageFtwSpareBase,\r
+    PcdGet32 (PcdOvmfFlashNvStorageFtwSpareBase)\r
+    );\r
+  ASSERT_RETURN_ERROR (PcdStatus);\r
+}\r