volatile UINTN FvIndex;\r
volatile UINTN FvChildIndex;\r
UINTN ChildFvOffset;\r
+ EFI_PHYSICAL_ADDRESS FvHeaderAddress;\r
EFI_FIRMWARE_VOLUME_HEADER *FvHeader;\r
EFI_FIRMWARE_VOLUME_HEADER *ChildFvHeader;\r
EFI_FIRMWARE_VOLUME_HEADER *MigratedFvHeader;\r
Status = PeiServicesAllocatePages (\r
EfiBootServicesCode,\r
EFI_SIZE_TO_PAGES ((UINTN) FvHeader->FvLength),\r
- (EFI_PHYSICAL_ADDRESS *) &MigratedFvHeader\r
+ &FvHeaderAddress\r
);\r
ASSERT_EFI_ERROR (Status);\r
+ MigratedFvHeader = (EFI_FIRMWARE_VOLUME_HEADER *)(UINTN)FvHeaderAddress;\r
\r
//\r
// Allocate pool to save the raw PEIMs, which is used to keep consistent context across\r
Status = PeiServicesAllocatePages (\r
EfiBootServicesCode,\r
EFI_SIZE_TO_PAGES ((UINTN) FvHeader->FvLength),\r
- (EFI_PHYSICAL_ADDRESS *) &RawDataFvHeader\r
+ &FvHeaderAddress\r
);\r
ASSERT_EFI_ERROR (Status);\r
+ RawDataFvHeader = (EFI_FIRMWARE_VOLUME_HEADER *)(UINTN)FvHeaderAddress;\r
\r
DEBUG ((\r
DEBUG_VERBOSE,\r