X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=ArmPlatformPkg%2FLibrary%2FPlatformIntelBdsLib%2FIntelBdsPlatform.c;h=ceb4f076e2a6fcf6d9baabdba2247bdc01760381;hp=9ba95d9896664a4edbfc6108d04ca910d8892db2;hb=50e8d3936c485af18fe1e946b814d4466517d34a;hpb=3d175bcb6eeb0bccffd7470f0b2af82311944155 diff --git a/ArmPlatformPkg/Library/PlatformIntelBdsLib/IntelBdsPlatform.c b/ArmPlatformPkg/Library/PlatformIntelBdsLib/IntelBdsPlatform.c index 9ba95d9896..ceb4f076e2 100644 --- a/ArmPlatformPkg/Library/PlatformIntelBdsLib/IntelBdsPlatform.c +++ b/ArmPlatformPkg/Library/PlatformIntelBdsLib/IntelBdsPlatform.c @@ -31,6 +31,24 @@ PlatformIntelBdsConstructor ( 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 + ) +{ +} + // // BDS Platform Functions // @@ -45,6 +63,24 @@ PlatformBdsInit ( VOID ) { + EFI_EVENT EndOfDxeEvent; + EFI_STATUS Status; + + // + // Signal EndOfDxe PI Event + // + Status = gBS->CreateEventEx ( + EVT_NOTIFY_SIGNAL, + TPL_CALLBACK, + EmptyCallbackFunction, + NULL, + &gEfiEndOfDxeEventGroupGuid, + &EndOfDxeEvent + ); + if (!EFI_ERROR (Status)) { + gBS->SignalEvent (EndOfDxeEvent); + gBS->CloseEvent (EndOfDxeEvent); + } } STATIC @@ -311,6 +347,18 @@ PlatformBdsPolicyBehavior ( Status = PlatformBdsConnectConsole (); ASSERT_EFI_ERROR (Status); + + // + // Show the splash screen. + // + EnableQuietBoot (PcdGetPtr (PcdLogoFile)); + + // + // Connect _all_ devices, to pick up plug-in and removable devices + // TODO: do this more cleanly, permitting faster boot times when boot config + // is known + // + BdsLibConnectAll (); } /**