X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=EdkModulePkg%2FCore%2FDxeIplPeim%2FX64%2FDxeLoadFunc.c;h=83b00bb486d7af4f28160d720bf8c7d39b0deece;hp=02de14987f6db9fcca0e2871725c9a8519fcf53f;hb=3d109491d637eeb71df8278700b0e1b1863444d3;hpb=ed09422e6b32d60f0591c1dcd41146472585378d diff --git a/EdkModulePkg/Core/DxeIplPeim/X64/DxeLoadFunc.c b/EdkModulePkg/Core/DxeIplPeim/X64/DxeLoadFunc.c index 02de14987f..83b00bb486 100644 --- a/EdkModulePkg/Core/DxeIplPeim/X64/DxeLoadFunc.c +++ b/EdkModulePkg/Core/DxeIplPeim/X64/DxeLoadFunc.c @@ -24,7 +24,8 @@ 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; @@ -43,6 +44,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,