Vlv2TbltDevicePkg: Display logo on BOOT_ON_FLASH_UPDATE

https://bugzilla.tianocore.org/show_bug.cgi?id=911

Update PlatformBdsLib to show boot logo when the boot
mode is BOOT_ON_FLASH_UPDATE.

Cc: David Wei <david.wei@intel.com>
Cc: Mang Guo <mang.guo@intel.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com>
Reviewed-by: David Wei <david.wei@intel.com>
This commit is contained in:
Kinney, Michael D
2018-03-27 16:52:36 -07:00
parent 98a88a76dd
commit af7bc37a00

View File

@@ -1,6 +1,6 @@
/** @file /** @file
Copyright (c) 2004 - 2016, Intel Corporation. All rights reserved.<BR> Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials are licensed and made available under This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution. the terms and conditions of the BSD License that accompanies this distribution.
@@ -1871,6 +1871,7 @@ PlatformBdsPolicyBehavior (
// //
PlatformBdsConnectConsole (gPlatformConsole); PlatformBdsConnectConsole (gPlatformConsole);
PlatformBdsDiagnostics (EXTENSIVE, FALSE, BaseMemoryTest); PlatformBdsDiagnostics (EXTENSIVE, FALSE, BaseMemoryTest);
EnableQuietBoot (PcdGetPtr(PcdLogoFile));
DEBUG((DEBUG_INFO, "ProcessCapsules Before EndOfDxe......\n")); DEBUG((DEBUG_INFO, "ProcessCapsules Before EndOfDxe......\n"));
ProcessCapsules (); ProcessCapsules ();
@@ -2642,6 +2643,8 @@ PlatformBdsEnterFrontPageWithHotKey (
{ {
EFI_STATUS Status; EFI_STATUS Status;
EFI_STATUS LogoStatus;
EFI_BOOT_LOGO_PROTOCOL *BootLogo;
EFI_GRAPHICS_OUTPUT_PROTOCOL *GraphicsOutput; EFI_GRAPHICS_OUTPUT_PROTOCOL *GraphicsOutput;
EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *SimpleTextOut; EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *SimpleTextOut;
UINTN BootTextColumn; UINTN BootTextColumn;
@@ -2721,6 +2724,14 @@ PlatformBdsEnterFrontPageWithHotKey (
gST->ConOut->EnableCursor (gST->ConOut, TRUE); gST->ConOut->EnableCursor (gST->ConOut, TRUE);
gST->ConOut->ClearScreen (gST->ConOut); gST->ConOut->ClearScreen (gST->ConOut);
//
// Boot Logo is corrupted, report it using Boot Logo protocol.
//
LogoStatus = gBS->LocateProtocol (&gEfiBootLogoProtocolGuid, NULL, (VOID **) &BootLogo);
if (!EFI_ERROR (LogoStatus) && (BootLogo != NULL)) {
BootLogo->SetBootLogo (BootLogo, NULL, 0, 0, 0, 0);
}
if (EFI_ERROR (Status)) { if (EFI_ERROR (Status)) {
// //
// Timeout or user press enter to continue // Timeout or user press enter to continue
@@ -2728,6 +2739,7 @@ PlatformBdsEnterFrontPageWithHotKey (
goto Exit; goto Exit;
} }
} }
// //
// Install BM HiiPackages. // Install BM HiiPackages.
// Keep BootMaint HiiPackage, so that it can be covered by global setting. // Keep BootMaint HiiPackage, so that it can be covered by global setting.