]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkModulePkg/Universal/FirmwareVolume/FaultTolerantWriteLite/Dxe/FtwLite.c
Modify FtwLite and Variable DXE driver to use PCD instead of FlashMap HOB
[mirror_edk2.git] / EdkModulePkg / Universal / FirmwareVolume / FaultTolerantWriteLite / Dxe / FtwLite.c
index 0d20e88058d24f4dc4e8fa6cfb1e9fea071e7d90..f4c7e9199c9dbb8e23d83420f5e835c8383309ff 100644 (file)
@@ -632,10 +632,8 @@ InitializeFtwLite (
   UINTN                               Length;\r
   EFI_STATUS                          Status;\r
   UINTN                               Offset;\r
   UINTN                               Length;\r
   EFI_STATUS                          Status;\r
   UINTN                               Offset;\r
-  EFI_FLASH_MAP_ENTRY_DATA            *FlashMapEntry;\r
   EFI_FV_BLOCK_MAP_ENTRY              *FvbMapEntry;\r
   UINT32                              LbaIndex;\r
   EFI_FV_BLOCK_MAP_ENTRY              *FvbMapEntry;\r
   UINT32                              LbaIndex;\r
-  EFI_PEI_HOB_POINTERS                GuidHob;                  \r
 \r
   //\r
   // Allocate Private data of this driver,\r
 \r
   //\r
   // Allocate Private data of this driver,\r
@@ -668,29 +666,11 @@ InitializeFtwLite (
 \r
   FtwLiteDevice->FtwLastRecord      = NULL;\r
 \r
 \r
   FtwLiteDevice->FtwLastRecord      = NULL;\r
 \r
-  FtwLiteDevice->SpareAreaLength  = 0;\r
-  FtwLiteDevice->WorkSpaceLength  = 0;\r
+  FtwLiteDevice->WorkSpaceAddress = (EFI_PHYSICAL_ADDRESS) PcdGet32 (PcdFlashNvStorageFtwWorkingBase);\r
+  FtwLiteDevice->WorkSpaceLength  = (UINTN) PcdGet32 (PcdFlashNvStorageFtwWorkingSize);\r
 \r
 \r
-  GuidHob.Raw = GetHobList ();\r
-  while (NULL != (GuidHob.Raw = GetNextGuidHob (&gEfiFlashMapHobGuid, GuidHob.Raw))) {\r
-    FlashMapEntry = (EFI_FLASH_MAP_ENTRY_DATA *) GET_GUID_HOB_DATA (GuidHob.Guid);\r
-    //\r
-    // Get the FTW work space Flash Map SUB area\r
-    //\r
-    if ((FlashMapEntry->AreaType == EFI_FLASH_AREA_FTW_STATE) && (FlashMapEntry->NumEntries == 1)) {\r
-      FtwLiteDevice->WorkSpaceAddress = FlashMapEntry->Entries[0].Base;\r
-      FtwLiteDevice->WorkSpaceLength  = (UINTN) FlashMapEntry->Entries[0].Length;\r
-    }\r
-    //\r
-    // Get the FTW backup SUB area\r
-    //\r
-    if ((FlashMapEntry->AreaType == EFI_FLASH_AREA_FTW_BACKUP) && (FlashMapEntry->NumEntries == 1)) {\r
-      FtwLiteDevice->SpareAreaAddress = FlashMapEntry->Entries[0].Base;\r
-      FtwLiteDevice->SpareAreaLength  = (UINTN) FlashMapEntry->Entries[0].Length;\r
-    }\r
-\r
-    GuidHob.Raw = GET_NEXT_HOB (GuidHob);\r
-  }\r
+  FtwLiteDevice->SpareAreaAddress = (EFI_PHYSICAL_ADDRESS) PcdGet32 (PcdFlashNvStorageFtwSpareBase);\r
+  FtwLiteDevice->SpareAreaLength  = (UINTN) PcdGet32 (PcdFlashNvStorageFtwSpareSize);\r
 \r
   ASSERT ((FtwLiteDevice->WorkSpaceLength != 0) && (FtwLiteDevice->SpareAreaLength != 0));\r
 \r
 \r
   ASSERT ((FtwLiteDevice->WorkSpaceLength != 0) && (FtwLiteDevice->SpareAreaLength != 0));\r
 \r