]> git.proxmox.com Git - mirror_edk2.git/blobdiff - UnixPkg/UnixFirmwareVolumePei/UnixFwh.c
Port UnixPkg to also support X64. Currently only supports Unix x86_64 ABI. In the...
[mirror_edk2.git] / UnixPkg / UnixFirmwareVolumePei / UnixFwh.c
index 694f2f180b3484d18cf2ccc78b9e49d67f026350..b135f6dc28557bc73691b61294e2f674912a4cee 100644 (file)
@@ -1,7 +1,7 @@
 /*++\r
 \r
-Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
-All rights reserved. This program and the accompanying materials                          \r
+Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>\r
+This program and the accompanying materials                          \r
 are licensed and made available under the terms and conditions of the BSD License         \r
 which accompanies this distribution.  The full text of the license may be found at        \r
 http://opensource.org/licenses/bsd-license.php                                            \r
@@ -50,8 +50,9 @@ Returns:
 {\r
   EFI_STATUS                  Status;\r
   EFI_PEI_PPI_DESCRIPTOR      *PpiDescriptor;\r
-  UNIX_FWH_PPI               *FwhPpi;\r
+  UNIX_FWH_PPI                *FwhPpi;\r
   EFI_PHYSICAL_ADDRESS        FdBase;\r
+  EFI_PHYSICAL_ADDRESS        FdFixUp;\r
   EFI_FIRMWARE_VOLUME_HEADER  *FvHeader;\r
   UINT64                      FdSize;\r
   UINTN                       Index;\r
@@ -75,7 +76,7 @@ Returns:
     //\r
     // Get information about all the FD's in the system\r
     //\r
-    Status = FwhPpi->UnixFwh (Index, &FdBase, &FdSize);\r
+    Status = FwhPpi->UnixFwh (Index, &FdBase, &FdSize, &FdFixUp);\r
     if (!EFI_ERROR (Status)) {\r
       //\r
       // Assume the FD starts with an FV header\r
@@ -116,7 +117,7 @@ Returns:
           PcdGet32 (PcdFlashNvStorageFtwSpareSize) +\r
           PcdGet32 (PcdUnixFlashNvStorageEventLogSize);\r
 \r
-        BuildFvHob (FdBase + PcdGet32 (PcdUnixFlashNvStorageVariableBase), FdSize);\r
+        BuildFvHob (FdFixUp + PcdGet64 (PcdUnixFlashNvStorageVariableBase), FdSize);\r
       } else {\r
         //\r
         // For other FD's just map them in.\r