X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=ArmPlatformPkg%2FBds%2FBds.c;fp=ArmPlatformPkg%2FBds%2FBds.c;h=b84faf91b653306f814791873107c875b03db7ed;hb=ae19003981f8d9c11a14a48f4f0e511eab5bb995;hp=e2f97307f64afa419e860488d5784fff073df2cc;hpb=90152e593bf0f77c6cd01e08118e3c74dd8ee508;p=mirror_edk2.git diff --git a/ArmPlatformPkg/Bds/Bds.c b/ArmPlatformPkg/Bds/Bds.c index e2f97307f6..b84faf91b6 100644 --- a/ArmPlatformPkg/Bds/Bds.c +++ b/ArmPlatformPkg/Bds/Bds.c @@ -19,6 +19,8 @@ #include +#include + #define EFI_SET_TIMER_TO_SECOND 10000000 STATIC @@ -417,6 +419,25 @@ StartDefaultBootOnTimeout ( return EFI_SUCCESS; } +/** + An empty function to pass error checking of CreateEventEx (). + + @param Event Event whose notification function is being invoked. + @param Context Pointer to the notification function's context, + which is implementation-dependent. + +**/ +STATIC +VOID +EFIAPI +EmptyCallbackFunction ( + IN EFI_EVENT Event, + IN VOID *Context + ) +{ + return; +} + /** This function uses policy data from the platform to determine what operating system or system utility should be loaded and invoked. This function call @@ -449,6 +470,22 @@ BdsEntry ( UINT16 *BootNext; UINTN BootNextSize; CHAR16 BootVariableName[9]; + EFI_EVENT EndOfDxeEvent; + + // + // Signal EndOfDxe PI Event + // + Status = gBS->CreateEventEx ( + EVT_NOTIFY_SIGNAL, + TPL_NOTIFY, + EmptyCallbackFunction, + NULL, + &gEfiEndOfDxeEventGroupGuid, + &EndOfDxeEvent + ); + if (!EFI_ERROR (Status)) { + gBS->SignalEvent (EndOfDxeEvent); + } PERF_END (NULL, "DXE", NULL, 0);