From 35126af96ce8dcb184aba5caf87f476bf20790dc Mon Sep 17 00:00:00 2001 From: Satya Yarlagadda Date: Wed, 13 Jul 2016 21:02:46 +0800 Subject: [PATCH] IntelFsp2Pkg BaseFspPlatformLib: Remove Boot Loader tempram Migration In FSP2.0, Boot loader should migrate its temp ram before calling the tempramexit API to tear down the tempram. so, we don't need the function to migrate the BL TempRam in the IntelFsp2Pkg. Cc: Giri P Mudusuru Cc: Jiewen Yao Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Satya Yarlagadda Reviewed-by: Giri P Mudusuru Reviewed-by: Jiewen Yao --- IntelFsp2Pkg/Include/Library/FspPlatformLib.h | 9 --- .../BaseFspPlatformLib/FspPlatformMemory.c | 67 ------------------- 2 files changed, 76 deletions(-) diff --git a/IntelFsp2Pkg/Include/Library/FspPlatformLib.h b/IntelFsp2Pkg/Include/Library/FspPlatformLib.h index 9247bd5221..61e77bdda1 100644 --- a/IntelFsp2Pkg/Include/Library/FspPlatformLib.h +++ b/IntelFsp2Pkg/Include/Library/FspPlatformLib.h @@ -38,15 +38,6 @@ FspGetSystemMemorySize ( IN OUT UINT64 *HighMemoryLength ); -/** - Migrate BootLoader data before destroying CAR. - -**/ -VOID -EFIAPI -FspMigrateTemporaryMemory ( - VOID - ); /** Set a new stack frame for the continuation function. diff --git a/IntelFsp2Pkg/Library/BaseFspPlatformLib/FspPlatformMemory.c b/IntelFsp2Pkg/Library/BaseFspPlatformLib/FspPlatformMemory.c index d6684f3b06..edb8d67223 100644 --- a/IntelFsp2Pkg/Library/BaseFspPlatformLib/FspPlatformMemory.c +++ b/IntelFsp2Pkg/Library/BaseFspPlatformLib/FspPlatformMemory.c @@ -120,70 +120,3 @@ FspGetSystemMemorySize ( Hob.Raw = GET_NEXT_HOB (Hob); } } - -/** - Migrate BootLoader data before destroying CAR. - -**/ -VOID -EFIAPI -FspMigrateTemporaryMemory ( - VOID - ) -{ - UINT32 BootLoaderTempRamStart; - UINT32 BootLoaderTempRamEnd; - UINT32 BootLoaderTempRamSize; - UINT32 OffsetGap; - UINT32 FspParamPtr; - VOID *BootLoaderTempRamHob; - UINT32 MemoryInitUpdPtr; - VOID *PlatformDataPtr; - - // - // Get the temporary memory range used by the BootLoader - // - BootLoaderTempRamStart = GetFspCarBase (); - BootLoaderTempRamSize = GetFspCarSize () - PcdGet32(PcdFspTemporaryRamSize); - - BootLoaderTempRamEnd = BootLoaderTempRamStart + BootLoaderTempRamSize; - - // - // Build a Boot Loader Temporary Memory GUID HOB - // - BootLoaderTempRamHob = (VOID *)AllocatePages (EFI_SIZE_TO_PAGES (BootLoaderTempRamSize)); - ASSERT(BootLoaderTempRamHob != NULL); - - DEBUG ((DEBUG_INFO, "FSP_BOOT_LOADER_TEMPORARY_MEMORY_HOB\n")); - DEBUG ((DEBUG_INFO, "FspBootLoaderTemporaryMemory Base : %x\n", BootLoaderTempRamStart)); - DEBUG ((DEBUG_INFO, "FspBootLoaderTemporaryMemory Size : %x\n", BootLoaderTempRamSize)); - - CopyMem (BootLoaderTempRamHob, (VOID *)BootLoaderTempRamStart, BootLoaderTempRamSize); - OffsetGap = (UINT32)BootLoaderTempRamHob - BootLoaderTempRamStart; - - // - // Fix the FspMemoryinit Parameter Pointers to the new location. - // - FspParamPtr = GetFspApiParameter (); - if ((VOID *)FspParamPtr != NULL && FspParamPtr >= BootLoaderTempRamStart && - FspParamPtr < BootLoaderTempRamEnd) { - SetFspApiParameter (FspParamPtr + OffsetGap); - } - - // - // Update UPD pointer in FSP Global Data - // - MemoryInitUpdPtr = (UINT32)((UINT32 *)GetFspMemoryInitUpdDataPointer ()); - if (MemoryInitUpdPtr >= BootLoaderTempRamStart && MemoryInitUpdPtr < BootLoaderTempRamEnd) { - SetFspMemoryInitUpdDataPointer ((VOID *)(MemoryInitUpdPtr + OffsetGap)); - } - - // - // Update Platform data pointer in FSP Global Data - // - PlatformDataPtr = GetFspPlatformDataPointer (); - if (((UINT32)PlatformDataPtr >= BootLoaderTempRamStart) && - ((UINT32)PlatformDataPtr < BootLoaderTempRamEnd)) { - SetFspPlatformDataPointer ((UINT8 *)PlatformDataPtr + OffsetGap); - } -} -- 2.39.2