StandaloneMmPkg: fix pointer/int casts against 32bit architectures
Use intermediate (UINTN) cast when casting int from/to pointer. This is needed as UINT64 values cast from/to 32bit pointer for 32bit architectures. Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jiewen Yao <Jiewen.yao@intel.com> Reviewed-by: Sami Mujawar <sami.mujawar@arm.com>
This commit is contained in:
committed by
mergify[bot]
parent
ca1773878d
commit
b7f0226a46
@@ -72,14 +72,14 @@ CreateHobListFromBootInfo (
|
||||
|
||||
// Create a hoblist with a PHIT and EOH
|
||||
HobStart = HobConstructor (
|
||||
(VOID *) PayloadBootInfo->SpMemBase,
|
||||
(VOID *) (UINTN) PayloadBootInfo->SpMemBase,
|
||||
(UINTN) PayloadBootInfo->SpMemLimit - PayloadBootInfo->SpMemBase,
|
||||
(VOID *) PayloadBootInfo->SpHeapBase,
|
||||
(VOID *) (PayloadBootInfo->SpHeapBase + PayloadBootInfo->SpHeapSize)
|
||||
(VOID *) (UINTN) PayloadBootInfo->SpHeapBase,
|
||||
(VOID *) (UINTN) (PayloadBootInfo->SpHeapBase + PayloadBootInfo->SpHeapSize)
|
||||
);
|
||||
|
||||
// Check that the Hoblist starts at the bottom of the Heap
|
||||
ASSERT (HobStart == (VOID *) PayloadBootInfo->SpHeapBase);
|
||||
ASSERT (HobStart == (VOID *) (UINTN) PayloadBootInfo->SpHeapBase);
|
||||
|
||||
// Build a Boot Firmware Volume HOB
|
||||
BuildFvHob (PayloadBootInfo->SpImageBase, PayloadBootInfo->SpImageSize);
|
||||
@@ -190,9 +190,9 @@ CreateHobListFromBootInfo (
|
||||
MmramRanges[3].RegionState = EFI_CACHEABLE | EFI_ALLOCATED;
|
||||
|
||||
// Base and size of heap memory shared by all cpus
|
||||
MmramRanges[4].PhysicalStart = (EFI_PHYSICAL_ADDRESS) HobStart;
|
||||
MmramRanges[4].CpuStart = (EFI_PHYSICAL_ADDRESS) HobStart;
|
||||
MmramRanges[4].PhysicalSize = HobStart->EfiFreeMemoryBottom - (EFI_PHYSICAL_ADDRESS) HobStart;
|
||||
MmramRanges[4].PhysicalStart = (EFI_PHYSICAL_ADDRESS) (UINTN) HobStart;
|
||||
MmramRanges[4].CpuStart = (EFI_PHYSICAL_ADDRESS) (UINTN) HobStart;
|
||||
MmramRanges[4].PhysicalSize = HobStart->EfiFreeMemoryBottom - (EFI_PHYSICAL_ADDRESS) (UINTN) HobStart;
|
||||
MmramRanges[4].RegionState = EFI_CACHEABLE | EFI_ALLOCATED;
|
||||
|
||||
// Base and size of heap memory shared by all cpus
|
||||
|
@@ -328,7 +328,7 @@ _ModuleEntryPoint (
|
||||
|
||||
// Locate PE/COFF File information for the Standalone MM core module
|
||||
Status = LocateStandaloneMmCorePeCoffData (
|
||||
(EFI_FIRMWARE_VOLUME_HEADER *) PayloadBootInfo->SpImageBase,
|
||||
(EFI_FIRMWARE_VOLUME_HEADER *) (UINTN) PayloadBootInfo->SpImageBase,
|
||||
&TeData,
|
||||
&TeDataSize
|
||||
);
|
||||
|
Reference in New Issue
Block a user