OUT VARIABLE_STORE_INFO *StoreInfo\r
)\r
{\r
+ EFI_STATUS Status;\r
EFI_HOB_GUID_TYPE *GuidHob;\r
EFI_FIRMWARE_VOLUME_HEADER *FvHeader;\r
VARIABLE_STORE_HEADER *VariableStoreHeader;\r
EFI_PHYSICAL_ADDRESS NvStorageBase;\r
UINT32 NvStorageSize;\r
+ UINT64 NvStorageSize64;\r
FAULT_TOLERANT_WRITE_LAST_WRITE_DATA *FtwLastWriteData;\r
UINT32 BackUpOffset;\r
\r
// Emulated non-volatile variable mode is not enabled.\r
//\r
\r
- NvStorageSize = PcdGet32 (PcdFlashNvStorageVariableSize);\r
- NvStorageBase = (EFI_PHYSICAL_ADDRESS)(PcdGet64 (PcdFlashNvStorageVariableBase64) != 0 ?\r
- PcdGet64 (PcdFlashNvStorageVariableBase64) :\r
- PcdGet32 (PcdFlashNvStorageVariableBase)\r
- );\r
+ Status = GetVariableFlashNvStorageInfo (&NvStorageBase, &NvStorageSize64);\r
+ ASSERT_EFI_ERROR (Status);\r
+\r
+ Status = SafeUint64ToUint32 (NvStorageSize64, &NvStorageSize);\r
+ // This driver currently assumes the size will be UINT32 so assert the value is safe for now.\r
+ ASSERT_EFI_ERROR (Status);\r
+\r
ASSERT (NvStorageBase != 0);\r
\r
//\r