X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=EdkModulePkg%2FCore%2FDxeIplPeim%2FX64%2FDxeLoadFunc.c;h=53febd563d5f614bddf5e3bcdd5ac139802d1cdd;hb=1d67f00e73e8078f3f4baa2090b5d394c9b32d6b;hp=02de14987f6db9fcca0e2871725c9a8519fcf53f;hpb=657d3918fe7831c1a7722869b025478746540657;p=mirror_edk2.git diff --git a/EdkModulePkg/Core/DxeIplPeim/X64/DxeLoadFunc.c b/EdkModulePkg/Core/DxeIplPeim/X64/DxeLoadFunc.c index 02de14987f..53febd563d 100644 --- a/EdkModulePkg/Core/DxeIplPeim/X64/DxeLoadFunc.c +++ b/EdkModulePkg/Core/DxeIplPeim/X64/DxeLoadFunc.c @@ -24,11 +24,13 @@ Abstract: VOID HandOffToDxeCore ( IN EFI_PHYSICAL_ADDRESS DxeCoreEntryPoint, - IN EFI_PEI_HOB_POINTERS HobList + IN EFI_PEI_HOB_POINTERS HobList, + IN EFI_PEI_PPI_DESCRIPTOR *EndOfPeiSignal ) { VOID *BaseOfStack; VOID *TopOfStack; + EFI_STATUS Status; // // Allocate 128KB for the Stack @@ -43,6 +45,12 @@ HandOffToDxeCore ( TopOfStack = (VOID *) ((UINTN) BaseOfStack + EFI_SIZE_TO_PAGES (STACK_SIZE) * EFI_PAGE_SIZE - CPU_STACK_ALIGNMENT); TopOfStack = ALIGN_POINTER (TopOfStack, CPU_STACK_ALIGNMENT); + // + // End of PEI phase singal + // + Status = PeiServicesInstallPpi (EndOfPeiSignal); + ASSERT_EFI_ERROR (Status); + SwitchStack ( (SWITCH_STACK_ENTRY_POINT)(UINTN)DxeCoreEntryPoint, HobList.Raw,