]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkNt32Pkg/Pei/FlashMap/FlashMap.c
Variable PEIM use to PCD entry to get the base address of NV Storegae region.
[mirror_edk2.git] / EdkNt32Pkg / Pei / FlashMap / FlashMap.c
index a8f7ba06adf9b4699cc0d8317b5353a2f03c380e..54dc137a765cac4200b84db1dcc0db800a70113c 100644 (file)
@@ -136,14 +136,14 @@ Returns:
   //\r
   // Install FlashMap PPI\r
   //\r
-  Status = PeiCoreInstallPpi (&mPpiListFlashMap);\r
+  Status = PeiServicesInstallPpi (&mPpiListFlashMap);\r
   ASSERT_EFI_ERROR (Status);\r
 \r
 \r
   //\r
   // Get the Fwh Information PPI\r
   //\r
-  Status = PeiCoreLocatePpi (\r
+  Status = PeiServicesLocatePpi (\r
             &gNtFwhPpiGuid, // GUID\r
             0,              // INSTANCE\r
             &PpiDescriptor, // EFI_PEI_PPI_DESCRIPTOR\r
@@ -202,6 +202,12 @@ Returns:
                         &gEfiFirmwareVolumeBlockProtocolGuid,\r
                         sizeof (EFI_GUID)\r
                         );\r
+\r
+      //\r
+      // We also update a PCD entry so that any driver that depend on\r
+      // PCD entry PcdFlashNvStorageVariableBase will get the information.\r
+      //\r
+      PcdSet32 (PcdFlashNvStorageVariableBase, (UINT32) FlashHobData.SubAreaData.Base);\r
       break;\r
 \r
     default:\r
@@ -249,7 +255,7 @@ GetAreaInfo (
   EFI_PEI_HOB_POINTERS          Hob;\r
   EFI_HOB_FLASH_MAP_ENTRY_TYPE  *FlashMapEntry;\r
 \r
-  Status = PeiCoreGetHobList (&Hob.Raw);\r
+  Status = PeiServicesGetHobList (&Hob.Raw);\r
   while (!END_OF_HOB_LIST (Hob)) {\r
     if (Hob.Header->HobType == EFI_HOB_TYPE_GUID_EXTENSION && CompareGuid (&Hob.Guid->Name, &gEfiFlashMapHobGuid)) {\r
       FlashMapEntry = (EFI_HOB_FLASH_MAP_ENTRY_TYPE *) Hob.Raw;\r