TianoCore EDK2 master
Loading...
Searching...
No Matches
ReturnStatus.c
Go to the documentation of this file.
1
6#include <PiPei.h>
7#include <Library/BaseLib.h>
8#include <Library/DebugLib.h>
9#include <Library/PcdLib.h>
11#include <FspEas.h>
13
20VOID
21EFIAPI
23 IN EFI_STATUS FspResetType
24 )
25{
26 volatile BOOLEAN LoopUntilReset;
27
28 LoopUntilReset = TRUE;
29 DEBUG ((DEBUG_INFO, "FSP returning control to Bootloader with reset required return status %x\n", FspResetType));
30 if (GetFspGlobalDataPointer ()->FspMode == FSP_IN_API_MODE) {
35 do {
36 SetFspApiReturnStatus (FspResetType);
38 DEBUG ((DEBUG_ERROR, "!!!ERROR: FSP has requested BootLoader for reset. But BootLoader has not honored the reset\n"));
39 DEBUG ((DEBUG_ERROR, "!!!ERROR: Please add support in BootLoader to honor the reset request from FSP\n"));
40 } while (LoopUntilReset);
41 }
42}
VOID EFIAPI SetFspApiReturnStatus(IN UINTN ReturnStatus)
Definition: FspCommonLib.c:160
FSP_GLOBAL_DATA *EFIAPI GetFspGlobalDataPointer(VOID)
Definition: FspCommonLib.c:73
EFI_STATUS EFIAPI Pei2LoaderSwitchStack(VOID)
#define TRUE
Definition: Base.h:301
#define IN
Definition: Base.h:279
#define DEBUG(Expression)
Definition: DebugLib.h:434
VOID EFIAPI FspApiReturnStatusReset(IN EFI_STATUS FspResetType)
Definition: ReturnStatus.c:22
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:29