From: zwei4 <david.wei@intel.com>
To: edk2-devel@lists.01.org
Cc: David Wei <david.wei@intel.com>, Mike Wu <mike.wu@intel.com>,
Mang Guo <mang.guo@intel.com>
Subject: [Patch][edk2-platforms/devel-IntelAtomProcessorE3900] Logo Update.
Date: Mon, 10 Sep 2018 21:26:42 +0800 [thread overview]
Message-ID: <20180910132642.11372-1-david.wei@intel.com> (raw)
(1) Update EDK2 TianoCore logo to the latest.
(2) Extend logo showing period to the late stage of BDS.
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: David Wei <david.wei@intel.com>
CC: Mike Wu <mike.wu@intel.com>
CC: Mang Guo <mang.guo@intel.com>
---
.../AuroraGlacier/BoardInitPostMem/BoardInit.c | 2 +-
.../BoardInitPostMem/BoardInitPostMem.inf | 2 +-
.../BensonGlacier/BoardInitPostMem/BoardInit.c | 2 +-
.../BoardInitPostMem/BoardInitPostMem.inf | 2 +-
.../Board/LeafHill/BoardInitPostMem/BoardInit.c | 2 +-
.../LeafHill/BoardInitPostMem/BoardInitPostMem.inf | 2 +-
.../MinnowBoard3/BoardInitPostMem/BoardInit.c | 2 +-
.../BoardInitPostMem/BoardInitPostMem.inf | 2 +-
.../BoardInitPostMem/BoardInit.c | 2 +-
.../BoardInitPostMem/BoardInitPostMem.inf | 2 +-
.../Board/UP2/BoardInitPostMem/BoardInit.c | 2 +-
.../UP2/BoardInitPostMem/BoardInitPostMem.inf | 2 +-
.../Common/Binaries/Logo/Tianocore.bmp | Bin 0 -> 11958 bytes
.../Common/Library/DxeLogoLib/DxeLogoLib.inf | 1 -
.../Common/Library/DxeLogoLib/Logo.c | 299 ++++-----------------
.../PeiFspPolicyInitLib/PeiFspPolicyInitLib.inf | 1 -
.../PlatformBootManagerLib/PlatformBootManager.c | 10 +-
.../PlatformBootManagerLib.inf | 4 +-
Platform/BroxtonPlatformPkg/PlatformPkg.dec | 3 +-
Platform/BroxtonPlatformPkg/PlatformPkg.fdf | 13 +-
20 files changed, 83 insertions(+), 272 deletions(-)
create mode 100644 Platform/BroxtonPlatformPkg/Common/Binaries/Logo/Tianocore.bmp
diff --git a/Platform/BroxtonPlatformPkg/Board/AuroraGlacier/BoardInitPostMem/BoardInit.c b/Platform/BroxtonPlatformPkg/Board/AuroraGlacier/BoardInitPostMem/BoardInit.c
index 302edb8301..ce98086895 100644
--- a/Platform/BroxtonPlatformPkg/Board/AuroraGlacier/BoardInitPostMem/BoardInit.c
+++ b/Platform/BroxtonPlatformPkg/Board/AuroraGlacier/BoardInitPostMem/BoardInit.c
@@ -110,7 +110,7 @@ AuroraGlacierPostMemInitCallback (
//
BufferSize = sizeof (EFI_GUID);
PcdSetPtr(PcdBoardVbtFileGuid, &BufferSize, (UINT8 *)&gPeiAuroraGlacierVbtGuid);
- PcdSetPtr(PcdOemLogoFileGuid, &BufferSize, (UINT8 *)&gPeiLogoGuid);
+ PcdSetPtr(PcdOemLogoFileGuid, &BufferSize, (UINT8 *)PcdGetPtr(PcdTianoCoreLogoFileGuid));
//
// Set PcdSueCreek
diff --git a/Platform/BroxtonPlatformPkg/Board/AuroraGlacier/BoardInitPostMem/BoardInitPostMem.inf b/Platform/BroxtonPlatformPkg/Board/AuroraGlacier/BoardInitPostMem/BoardInitPostMem.inf
index 8fe5ea7e95..c619332cb1 100644
--- a/Platform/BroxtonPlatformPkg/Board/AuroraGlacier/BoardInitPostMem/BoardInitPostMem.inf
+++ b/Platform/BroxtonPlatformPkg/Board/AuroraGlacier/BoardInitPostMem/BoardInitPostMem.inf
@@ -64,6 +64,7 @@
gPlatformModuleTokenSpaceGuid.PcdResetType
gPlatformModuleTokenSpaceGuid.PcdBoardVbtFileGuid
gPlatformModuleTokenSpaceGuid.PcdOemLogoFileGuid
+ gPlatformModuleTokenSpaceGuid.PcdTianoCoreLogoFileGuid
gPlatformModuleTokenSpaceGuid.PcdSueCreek
gPlatformModuleTokenSpaceGuid.PcdMaxPkgCState
gPlatformModuleTokenSpaceGuid.PcdTi3100AudioCodecEnable
@@ -85,7 +86,6 @@
gEfiTpmDeviceInstanceTpm20DtpmGuid
gTpmDeviceInstanceTpm20PttPtpGuid
gPeiAuroraGlacierVbtGuid
- gPeiLogoGuid
[Ppis]
gBoardPostMemInitStartGuid
diff --git a/Platform/BroxtonPlatformPkg/Board/BensonGlacier/BoardInitPostMem/BoardInit.c b/Platform/BroxtonPlatformPkg/Board/BensonGlacier/BoardInitPostMem/BoardInit.c
index 60d2324d95..856d7739b0 100644
--- a/Platform/BroxtonPlatformPkg/Board/BensonGlacier/BoardInitPostMem/BoardInit.c
+++ b/Platform/BroxtonPlatformPkg/Board/BensonGlacier/BoardInitPostMem/BoardInit.c
@@ -110,7 +110,7 @@ BensonGlacierPostMemInitCallback (
//
BufferSize = sizeof (EFI_GUID);
PcdSetPtr(PcdBoardVbtFileGuid, &BufferSize, (UINT8 *)&gPeiBensonGlacierVbtGuid);
- PcdSetPtr(PcdOemLogoFileGuid, &BufferSize, (UINT8 *)&gPeiLogoGuid);
+ PcdSetPtr(PcdOemLogoFileGuid, &BufferSize, (UINT8 *)PcdGetPtr(PcdTianoCoreLogoFileGuid));
//
// Set PcdSueCreek
diff --git a/Platform/BroxtonPlatformPkg/Board/BensonGlacier/BoardInitPostMem/BoardInitPostMem.inf b/Platform/BroxtonPlatformPkg/Board/BensonGlacier/BoardInitPostMem/BoardInitPostMem.inf
index 782bf0d2bd..01d7f27898 100644
--- a/Platform/BroxtonPlatformPkg/Board/BensonGlacier/BoardInitPostMem/BoardInitPostMem.inf
+++ b/Platform/BroxtonPlatformPkg/Board/BensonGlacier/BoardInitPostMem/BoardInitPostMem.inf
@@ -64,6 +64,7 @@
gPlatformModuleTokenSpaceGuid.PcdResetType
gPlatformModuleTokenSpaceGuid.PcdBoardVbtFileGuid
gPlatformModuleTokenSpaceGuid.PcdOemLogoFileGuid
+ gPlatformModuleTokenSpaceGuid.PcdTianoCoreLogoFileGuid
gPlatformModuleTokenSpaceGuid.PcdSueCreek
gPlatformModuleTokenSpaceGuid.PcdMaxPkgCState
gPlatformModuleTokenSpaceGuid.PcdTi3100AudioCodecEnable
@@ -85,7 +86,6 @@
gEfiTpmDeviceInstanceTpm20DtpmGuid
gTpmDeviceInstanceTpm20PttPtpGuid
gPeiBensonGlacierVbtGuid
- gPeiLogoGuid
[Ppis]
gBoardPostMemInitStartGuid
diff --git a/Platform/BroxtonPlatformPkg/Board/LeafHill/BoardInitPostMem/BoardInit.c b/Platform/BroxtonPlatformPkg/Board/LeafHill/BoardInitPostMem/BoardInit.c
index 5c53ff135a..729b15f966 100644
--- a/Platform/BroxtonPlatformPkg/Board/LeafHill/BoardInitPostMem/BoardInit.c
+++ b/Platform/BroxtonPlatformPkg/Board/LeafHill/BoardInitPostMem/BoardInit.c
@@ -119,7 +119,7 @@ LeafHillPostMemInitCallback (
//
BufferSize = sizeof (EFI_GUID);
PcdSetPtr(PcdBoardVbtFileGuid, &BufferSize, (UINT8 *)&gPeiLeafHillVbtGuid);
- PcdSetPtr(PcdOemLogoFileGuid, &BufferSize, (UINT8 *)&gPeiLogoGuid);
+ PcdSetPtr(PcdOemLogoFileGuid, &BufferSize, (UINT8 *)PcdGetPtr(PcdTianoCoreLogoFileGuid));
//
// Set PcdSueCreek
diff --git a/Platform/BroxtonPlatformPkg/Board/LeafHill/BoardInitPostMem/BoardInitPostMem.inf b/Platform/BroxtonPlatformPkg/Board/LeafHill/BoardInitPostMem/BoardInitPostMem.inf
index 8afcd0f5c6..46a6f4b6ce 100644
--- a/Platform/BroxtonPlatformPkg/Board/LeafHill/BoardInitPostMem/BoardInitPostMem.inf
+++ b/Platform/BroxtonPlatformPkg/Board/LeafHill/BoardInitPostMem/BoardInitPostMem.inf
@@ -63,6 +63,7 @@
gPlatformModuleTokenSpaceGuid.PcdResetType
gPlatformModuleTokenSpaceGuid.PcdBoardVbtFileGuid
gPlatformModuleTokenSpaceGuid.PcdOemLogoFileGuid
+ gPlatformModuleTokenSpaceGuid.PcdTianoCoreLogoFileGuid
gPlatformModuleTokenSpaceGuid.PcdSueCreek
gPlatformModuleTokenSpaceGuid.PcdMaxPkgCState
gPlatformModuleTokenSpaceGuid.PcdeMMCHostMaxSpeed
@@ -85,7 +86,6 @@
gEfiTpmDeviceInstanceTpm20DtpmGuid
gTpmDeviceInstanceTpm20PttPtpGuid
gPeiLeafHillVbtGuid
- gPeiLogoGuid
[Ppis]
gBoardPostMemInitStartGuid
diff --git a/Platform/BroxtonPlatformPkg/Board/MinnowBoard3/BoardInitPostMem/BoardInit.c b/Platform/BroxtonPlatformPkg/Board/MinnowBoard3/BoardInitPostMem/BoardInit.c
index 104a4b293e..3323ee8744 100644
--- a/Platform/BroxtonPlatformPkg/Board/MinnowBoard3/BoardInitPostMem/BoardInit.c
+++ b/Platform/BroxtonPlatformPkg/Board/MinnowBoard3/BoardInitPostMem/BoardInit.c
@@ -125,7 +125,7 @@ MinnowBoard3PostMemInitCallback (
//
BufferSize = sizeof (EFI_GUID);
PcdSetPtr(PcdBoardVbtFileGuid, &BufferSize, (UINT8 *)&gPeiMinnowBoard3VbtGuid);
- PcdSetPtr(PcdOemLogoFileGuid, &BufferSize, (UINT8 *)&gPeiLogoGuid);
+ PcdSetPtr(PcdOemLogoFileGuid, &BufferSize, (UINT8 *)PcdGetPtr(PcdTianoCoreLogoFileGuid));
//
// Set PcdSueCreek
diff --git a/Platform/BroxtonPlatformPkg/Board/MinnowBoard3/BoardInitPostMem/BoardInitPostMem.inf b/Platform/BroxtonPlatformPkg/Board/MinnowBoard3/BoardInitPostMem/BoardInitPostMem.inf
index 382e90130c..15d7f46829 100644
--- a/Platform/BroxtonPlatformPkg/Board/MinnowBoard3/BoardInitPostMem/BoardInitPostMem.inf
+++ b/Platform/BroxtonPlatformPkg/Board/MinnowBoard3/BoardInitPostMem/BoardInitPostMem.inf
@@ -60,6 +60,7 @@
gPlatformModuleTokenSpaceGuid.PcdResetType
gPlatformModuleTokenSpaceGuid.PcdBoardVbtFileGuid
gPlatformModuleTokenSpaceGuid.PcdOemLogoFileGuid
+ gPlatformModuleTokenSpaceGuid.PcdTianoCoreLogoFileGuid
gPlatformModuleTokenSpaceGuid.PcdSueCreek
gPlatformModuleTokenSpaceGuid.PcdLogoDisplay
gPlatformModuleTokenSpaceGuid.PcdBtDevice
@@ -81,7 +82,6 @@
gEfiTpmDeviceInstanceTpm20DtpmGuid
gTpmDeviceInstanceTpm20PttPtpGuid
gPeiMinnowBoard3VbtGuid
- gPeiLogoGuid
[Ppis]
gBoardPostMemInitStartGuid
diff --git a/Platform/BroxtonPlatformPkg/Board/MinnowBoard3Module/BoardInitPostMem/BoardInit.c b/Platform/BroxtonPlatformPkg/Board/MinnowBoard3Module/BoardInitPostMem/BoardInit.c
index ee954c1950..421e71c6fd 100644
--- a/Platform/BroxtonPlatformPkg/Board/MinnowBoard3Module/BoardInitPostMem/BoardInit.c
+++ b/Platform/BroxtonPlatformPkg/Board/MinnowBoard3Module/BoardInitPostMem/BoardInit.c
@@ -120,7 +120,7 @@ MinnowBoard3ModulePostMemInitCallback (
//
BufferSize = sizeof (EFI_GUID);
PcdSetPtr(PcdBoardVbtFileGuid, &BufferSize, (UINT8 *)&gPeiMinnow3ModuleVbtGuid);
- PcdSetPtr(PcdOemLogoFileGuid, &BufferSize, (UINT8 *)&gPeiLogoGuid);
+ PcdSetPtr(PcdOemLogoFileGuid, &BufferSize, (UINT8 *)PcdGetPtr(PcdTianoCoreLogoFileGuid));
//
// Set PcdeMMCHostMaxSpeed
diff --git a/Platform/BroxtonPlatformPkg/Board/MinnowBoard3Module/BoardInitPostMem/BoardInitPostMem.inf b/Platform/BroxtonPlatformPkg/Board/MinnowBoard3Module/BoardInitPostMem/BoardInitPostMem.inf
index 13edbfee57..67708d2308 100644
--- a/Platform/BroxtonPlatformPkg/Board/MinnowBoard3Module/BoardInitPostMem/BoardInitPostMem.inf
+++ b/Platform/BroxtonPlatformPkg/Board/MinnowBoard3Module/BoardInitPostMem/BoardInitPostMem.inf
@@ -64,6 +64,7 @@
gPlatformModuleTokenSpaceGuid.PcdResetType
gPlatformModuleTokenSpaceGuid.PcdBoardVbtFileGuid
gPlatformModuleTokenSpaceGuid.PcdOemLogoFileGuid
+ gPlatformModuleTokenSpaceGuid.PcdTianoCoreLogoFileGuid
gPlatformModuleTokenSpaceGuid.PcdeMMCHostMaxSpeed
[Guids]
@@ -77,7 +78,6 @@
gEfiTpmDeviceInstanceTpm20DtpmGuid
gTpmDeviceInstanceTpm20PttPtpGuid
gPeiMinnow3ModuleVbtGuid
- gPeiLogoGuid
[Ppis]
gBoardPostMemInitStartGuid
diff --git a/Platform/BroxtonPlatformPkg/Board/UP2/BoardInitPostMem/BoardInit.c b/Platform/BroxtonPlatformPkg/Board/UP2/BoardInitPostMem/BoardInit.c
index bf607d6b11..8276be75c0 100644
--- a/Platform/BroxtonPlatformPkg/Board/UP2/BoardInitPostMem/BoardInit.c
+++ b/Platform/BroxtonPlatformPkg/Board/UP2/BoardInitPostMem/BoardInit.c
@@ -119,7 +119,7 @@ Up2PostMemInitCallback (
//
BufferSize = sizeof (EFI_GUID);
PcdSetPtr(PcdBoardVbtFileGuid, &BufferSize, (UINT8 *)&gPeiUp2VbtGuid);
- PcdSetPtr(PcdOemLogoFileGuid, &BufferSize, (UINT8 *)&gPeiLogoGuid);
+ PcdSetPtr(PcdOemLogoFileGuid, &BufferSize, (UINT8 *)PcdGetPtr(PcdTianoCoreLogoFileGuid));
//
// Set PcdSueCreek
diff --git a/Platform/BroxtonPlatformPkg/Board/UP2/BoardInitPostMem/BoardInitPostMem.inf b/Platform/BroxtonPlatformPkg/Board/UP2/BoardInitPostMem/BoardInitPostMem.inf
index be10d85965..a6e6a9ec47 100644
--- a/Platform/BroxtonPlatformPkg/Board/UP2/BoardInitPostMem/BoardInitPostMem.inf
+++ b/Platform/BroxtonPlatformPkg/Board/UP2/BoardInitPostMem/BoardInitPostMem.inf
@@ -63,6 +63,7 @@
gPlatformModuleTokenSpaceGuid.PcdResetType
gPlatformModuleTokenSpaceGuid.PcdBoardVbtFileGuid
gPlatformModuleTokenSpaceGuid.PcdOemLogoFileGuid
+ gPlatformModuleTokenSpaceGuid.PcdTianoCoreLogoFileGuid
gPlatformModuleTokenSpaceGuid.PcdSueCreek
gPlatformModuleTokenSpaceGuid.PcdMaxPkgCState
gPlatformModuleTokenSpaceGuid.PcdeMMCHostMaxSpeed
@@ -85,7 +86,6 @@
gEfiTpmDeviceInstanceTpm20DtpmGuid
gTpmDeviceInstanceTpm20PttPtpGuid
gPeiUp2VbtGuid
- gPeiLogoGuid
[Ppis]
gBoardPostMemInitStartGuid
diff --git a/Platform/BroxtonPlatformPkg/Common/Binaries/Logo/Tianocore.bmp b/Platform/BroxtonPlatformPkg/Common/Binaries/Logo/Tianocore.bmp
new file mode 100644
index 0000000000000000000000000000000000000000..dcf1c0be035f50b909a5efd0f77b10d03449305f
GIT binary patch
literal 11958
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
D4P6!L
literal 0
HcmV?d00001
diff --git a/Platform/BroxtonPlatformPkg/Common/Library/DxeLogoLib/DxeLogoLib.inf b/Platform/BroxtonPlatformPkg/Common/Library/DxeLogoLib/DxeLogoLib.inf
index 6a2a7f9b0a..41f0753c34 100644
--- a/Platform/BroxtonPlatformPkg/Common/Library/DxeLogoLib/DxeLogoLib.inf
+++ b/Platform/BroxtonPlatformPkg/Common/Library/DxeLogoLib/DxeLogoLib.inf
@@ -58,5 +58,4 @@
gEfiUgaDrawProtocolGuid ## SOMETIMES_CONSUMES
gEfiBootLogoProtocolGuid ## SOMETIMES_CONSUMES
gEfiUserManagerProtocolGuid ## CONSUMES
- gEfiOEMBadgingProtocolGuid ## CONSUMES
diff --git a/Platform/BroxtonPlatformPkg/Common/Library/DxeLogoLib/Logo.c b/Platform/BroxtonPlatformPkg/Common/Library/DxeLogoLib/Logo.c
index f8f7de3819..c147ca92c5 100644
--- a/Platform/BroxtonPlatformPkg/Common/Library/DxeLogoLib/Logo.c
+++ b/Platform/BroxtonPlatformPkg/Common/Library/DxeLogoLib/Logo.c
@@ -1,7 +1,7 @@
/** @file
BDS Lib functions which contain all the code to connect console device.
- Copyright (c) 2011 - 2016, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2011 - 2018, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
@@ -15,7 +15,6 @@
#include <PiDxe.h>
#include <Protocol/SimpleTextOut.h>
-#include <Protocol/OEMBadging.h>
#include <Protocol/GraphicsOutput.h>
#include <Protocol/UgaDraw.h>
#include <Library/BaseLib.h>
@@ -293,7 +292,6 @@ EnableQuietBoot (
)
{
EFI_STATUS Status;
- EFI_OEM_BADGING_PROTOCOL *Badging;
UINT32 SizeOfX;
UINT32 SizeOfY;
INTN DestX;
@@ -302,8 +300,6 @@ EnableQuietBoot (
UINTN ImageSize;
UINTN BltSize;
UINT32 Instance;
- EFI_BADGING_FORMAT Format;
- EFI_BADGING_DISPLAY_ATTRIBUTE Attribute;
UINTN CoordinateX;
UINTN CoordinateY;
UINTN Height;
@@ -315,7 +311,6 @@ EnableQuietBoot (
EFI_GRAPHICS_OUTPUT_PROTOCOL *GraphicsOutput;
EFI_BOOT_LOGO_PROTOCOL *BootLogo;
UINTN NumberOfLogos;
- EFI_GRAPHICS_OUTPUT_BLT_PIXEL *LogoBlt;
UINTN LogoDestX;
UINTN LogoDestY;
UINTN LogoHeight;
@@ -324,7 +319,6 @@ EnableQuietBoot (
UINTN NewDestY;
UINTN NewHeight;
UINTN NewWidth;
- UINT64 BufferSize;
UgaDraw = NULL;
//
@@ -353,8 +347,6 @@ EnableQuietBoot (
//
gST->ConOut->EnableCursor (gST->ConOut, FALSE);
- Badging = NULL;
- Status = gBS->LocateProtocol (&gEfiOEMBadgingProtocolGuid, NULL, (VOID **) &Badging);
if (GraphicsOutput != NULL) {
SizeOfX = GraphicsOutput->Mode->Info->HorizontalResolution;
@@ -380,279 +372,88 @@ EnableQuietBoot (
NewHeight = 0;
NewWidth = 0;
Instance = 0;
- while (1) {
- ImageData = NULL;
- ImageSize = 0;
- if (Badging != NULL) {
- //
- // Get image from OEMBadging protocol.
- //
- Status = Badging->GetImage (
- Badging,
- &Instance,
- &Format,
- &ImageData,
- &ImageSize,
- &Attribute,
- &CoordinateX,
- &CoordinateY
- );
- if (EFI_ERROR (Status)) {
- goto Done;
- }
-
- } else {
- //
- // Get the specified image from FV.
- //
- Status = GetSectionFromAnyFv (LogoFile, EFI_SECTION_RAW, 0, (VOID **) &ImageData, &ImageSize);
- if (EFI_ERROR (Status)) {
- return EFI_UNSUPPORTED;
- }
-
- CoordinateX = 0;
- CoordinateY = 0;
- Attribute = EfiBadgingDisplayAttributeCenter;
- }
-
- if (Blt != NULL) {
- FreePool (Blt);
- }
-
- //
- // Try BMP decoder
- //
- Blt = NULL;
- Status = ConvertBmpToGopBlt (
- ImageData,
- ImageSize,
- (VOID **) &Blt,
- &BltSize,
- &Height,
- &Width
- );
-
- if (EFI_ERROR (Status)) {
- FreePool (ImageData);
-
- if (Badging == NULL) {
- return Status;
- } else {
- continue;
- }
- }
- //
- // Calculate the display position according to Attribute.
- //
- switch (Attribute) {
- case EfiBadgingDisplayAttributeLeftTop:
- DestX = CoordinateX;
- DestY = CoordinateY;
- break;
-
- case EfiBadgingDisplayAttributeCenterTop:
- DestX = (SizeOfX - Width) / 2;
- DestY = CoordinateY;
- break;
-
- case EfiBadgingDisplayAttributeRightTop:
- DestX = (SizeOfX - Width - CoordinateX);
- DestY = CoordinateY;;
- break;
-
- case EfiBadgingDisplayAttributeCenterRight:
- DestX = (SizeOfX - Width - CoordinateX);
- DestY = (SizeOfY - Height) / 2;
- break;
-
- case EfiBadgingDisplayAttributeRightBottom:
- DestX = (SizeOfX - Width - CoordinateX);
- DestY = (SizeOfY - Height - CoordinateY);
- break;
+ ImageData = NULL;
+ ImageSize = 0;
- case EfiBadgingDisplayAttributeCenterBottom:
- DestX = (SizeOfX - Width) / 2;
- DestY = (SizeOfY - Height - CoordinateY);
- break;
-
- case EfiBadgingDisplayAttributeLeftBottom:
- DestX = CoordinateX;
- DestY = (SizeOfY - Height - CoordinateY);
- break;
-
- case EfiBadgingDisplayAttributeCenterLeft:
- DestX = CoordinateX;
- DestY = (SizeOfY - Height) / 2;
- break;
-
- case EfiBadgingDisplayAttributeCenter:
- DestX = (SizeOfX - Width) / 2;
- DestY = (SizeOfY - Height) / 2;
- break;
-
- default:
- DestX = CoordinateX;
- DestY = CoordinateY;
- break;
- }
-
- if ((DestX >= 0) && (DestY >= 0)) {
- if (GraphicsOutput != NULL) {
- Status = GraphicsOutput->Blt (
- GraphicsOutput,
- Blt,
- EfiBltBufferToVideo,
- 0,
- 0,
- (UINTN) DestX,
- (UINTN) DestY,
- Width,
- Height,
- Width * sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL)
- );
- } else if (UgaDraw != NULL && FeaturePcdGet (PcdUgaConsumeSupport)) {
- Status = UgaDraw->Blt (
- UgaDraw,
- (EFI_UGA_PIXEL *) Blt,
- EfiUgaBltBufferToVideo,
- 0,
- 0,
- (UINTN) DestX,
- (UINTN) DestY,
- Width,
- Height,
- Width * sizeof (EFI_UGA_PIXEL)
- );
- } else {
- Status = EFI_UNSUPPORTED;
- }
+ //
+ // Get the specified image from FV.
+ //
+ Status = GetSectionFromAnyFv (LogoFile, EFI_SECTION_RAW, 0, (VOID **) &ImageData, &ImageSize);
+ if (EFI_ERROR (Status)) {
+ return EFI_UNSUPPORTED;
+ }
- //
- // Report displayed Logo information.
- //
- if (!EFI_ERROR (Status)) {
- NumberOfLogos++;
-
- if (LogoWidth == 0) {
- //
- // The first Logo.
- //
- LogoDestX = (UINTN) DestX;
- LogoDestY = (UINTN) DestY;
- LogoWidth = Width;
- LogoHeight = Height;
- } else {
- //
- // Merge new logo with old one.
- //
- NewDestX = MIN ((UINTN) DestX, LogoDestX);
- NewDestY = MIN ((UINTN) DestY, LogoDestY);
- NewWidth = MAX ((UINTN) DestX + Width, LogoDestX + LogoWidth) - NewDestX;
- NewHeight = MAX ((UINTN) DestY + Height, LogoDestY + LogoHeight) - NewDestY;
-
- LogoDestX = NewDestX;
- LogoDestY = NewDestY;
- LogoWidth = NewWidth;
- LogoHeight = NewHeight;
- }
- }
- }
+ CoordinateX = 0;
+ CoordinateY = 0;
- FreePool (ImageData);
- if (Badging == NULL) {
- break;
- }
+ if (Blt != NULL) {
+ FreePool (Blt);
}
-Done:
- if (BootLogo == NULL || NumberOfLogos == 0) {
- //
- // No logo displayed.
- //
- if (Blt != NULL) {
- FreePool (Blt);
- }
+ //
+ // Try BMP decoder
+ //
+ Blt = NULL;
+ Status = ConvertBmpToGopBlt (
+ ImageData,
+ ImageSize,
+ (VOID **) &Blt,
+ &BltSize,
+ &Height,
+ &Width
+ );
+ if (EFI_ERROR (Status)) {
+ FreePool (ImageData);
return Status;
}
//
- // Advertise displayed Logo information.
+ // Calculate the display position according to Attribute.
//
- if (NumberOfLogos == 1) {
- //
- // Only one logo displayed, use its Blt buffer directly for BootLogo protocol.
- //
- LogoBlt = Blt;
- Status = EFI_SUCCESS;
- } else {
- //
- // More than one Logo displayed, get merged BltBuffer using VideoToBuffer operation.
- //
- if (Blt != NULL) {
- FreePool (Blt);
- }
- //
- // Ensure the LogoHeight * LogoWidth doesn't overflow
- //
- if (LogoHeight > DivU64x64Remainder ((UINTN) ~0, LogoWidth, NULL)) {
- return EFI_UNSUPPORTED;
- }
- BufferSize = MultU64x64 (LogoWidth, LogoHeight);
+ DestX = (SizeOfX - Width) / 2;
+ DestY = (SizeOfY - Height) / 2;
- //
- // Ensure the BufferSize * sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL) doesn't overflow
- //
- if (BufferSize > DivU64x32 ((UINTN) ~0, sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL))) {
- return EFI_UNSUPPORTED;
- }
-
- LogoBlt = AllocateZeroPool ((UINTN) BufferSize * sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL));
- if (LogoBlt == NULL) {
- return EFI_OUT_OF_RESOURCES;
- }
+ if ((DestX >= 0) && (DestY >= 0)) {
if (GraphicsOutput != NULL) {
Status = GraphicsOutput->Blt (
GraphicsOutput,
- LogoBlt,
- EfiBltVideoToBltBuffer,
- LogoDestX,
- LogoDestY,
+ Blt,
+ EfiBltBufferToVideo,
0,
0,
- LogoWidth,
- LogoHeight,
- LogoWidth * sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL)
+ (UINTN) DestX,
+ (UINTN) DestY,
+ Width,
+ Height,
+ Width * sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL)
);
} else if (UgaDraw != NULL && FeaturePcdGet (PcdUgaConsumeSupport)) {
Status = UgaDraw->Blt (
UgaDraw,
- (EFI_UGA_PIXEL *) LogoBlt,
- EfiUgaVideoToBltBuffer,
- LogoDestX,
- LogoDestY,
+ (EFI_UGA_PIXEL *) Blt,
+ EfiUgaBltBufferToVideo,
0,
0,
- LogoWidth,
- LogoHeight,
- LogoWidth * sizeof (EFI_UGA_PIXEL)
+ (UINTN) DestX,
+ (UINTN) DestY,
+ Width,
+ Height,
+ Width * sizeof (EFI_UGA_PIXEL)
);
} else {
Status = EFI_UNSUPPORTED;
}
}
-
- if (!EFI_ERROR (Status)) {
- BootLogo->SetBootLogo (BootLogo, LogoBlt, LogoDestX, LogoDestY, LogoWidth, LogoHeight);
- }
- FreePool (LogoBlt);
-
- return Status;
+
+ FreePool (ImageData);
+
+ return EFI_SUCCESS;
}
diff --git a/Platform/BroxtonPlatformPkg/Common/Library/PeiFspPolicyInitLib/PeiFspPolicyInitLib.inf b/Platform/BroxtonPlatformPkg/Common/Library/PeiFspPolicyInitLib/PeiFspPolicyInitLib.inf
index 36e1b1d514..54ae54f887 100644
--- a/Platform/BroxtonPlatformPkg/Common/Library/PeiFspPolicyInitLib/PeiFspPolicyInitLib.inf
+++ b/Platform/BroxtonPlatformPkg/Common/Library/PeiFspPolicyInitLib/PeiFspPolicyInitLib.inf
@@ -77,7 +77,6 @@
[Guids]
gEfiSetupVariableGuid
gEfiPlatformInfoGuid
- gPeiLogoGuid
[Pcd.common]
gEfiBxtTokenSpaceGuid.PcdScAcpiIoPortBaseAddress
diff --git a/Platform/BroxtonPlatformPkg/Common/Library/PlatformBootManagerLib/PlatformBootManager.c b/Platform/BroxtonPlatformPkg/Common/Library/PlatformBootManagerLib/PlatformBootManager.c
index 5201ac080d..78202281ac 100644
--- a/Platform/BroxtonPlatformPkg/Common/Library/PlatformBootManagerLib/PlatformBootManager.c
+++ b/Platform/BroxtonPlatformPkg/Common/Library/PlatformBootManagerLib/PlatformBootManager.c
@@ -28,6 +28,7 @@
#include <Library/PciLib.h>
#include <Library/TcgPhysicalPresenceLib.h>
#include <Library/Tcg2PhysicalPresenceLib.h>
+#include <Library/LogoLib.h>
#include <Library/HobLib.h>
#include <Guid/EventGroup.h>
#include <Guid/ImageAuthentication.h>
@@ -1009,9 +1010,16 @@ PlatformBootManagerAfterConsole (
EFI_BOOT_MODE LocalBootMode;
BOOLEAN RequireSoftECCInit;
EFI_GENERIC_MEMORY_TEST_PROTOCOL *GenMemoryTest;
-
+ EFI_GUID DxeLogoGuid;
+
DEBUG ((EFI_D_INFO, "PlatformBootManagerAfterConsole\n"));
+ //
+ // Show BIOS Logo
+ //
+ CopyMem (&DxeLogoGuid, PcdGetPtr (PcdOemLogoFileGuid), sizeof (EFI_GUID));
+ EnableQuietBoot (&DxeLogoGuid);
+
//
// Run memory test code at this point.
//
diff --git a/Platform/BroxtonPlatformPkg/Common/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf b/Platform/BroxtonPlatformPkg/Common/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
index 9f476a14d0..2ddc9e714d 100644
--- a/Platform/BroxtonPlatformPkg/Common/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
+++ b/Platform/BroxtonPlatformPkg/Common/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
@@ -54,7 +54,8 @@
gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoVerticalResolution
gEfiMdeModulePkgTokenSpaceGuid.PcdConInConnectOnDemand
gEfiMdePkgTokenSpaceGuid.PcdDefaultTerminalType
- gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid
+ gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid
+ gPlatformModuleTokenSpaceGuid.PcdOemLogoFileGuid
[LibraryClasses]
BaseLib
@@ -77,6 +78,7 @@
PciLib
Tcg2PhysicalPresenceLib
TcgPhysicalPresenceLib
+ LogoLib
[Protocols]
gEfiPciRootBridgeIoProtocolGuid
diff --git a/Platform/BroxtonPlatformPkg/PlatformPkg.dec b/Platform/BroxtonPlatformPkg/PlatformPkg.dec
index e42b6e78d7..8c7ca72ece 100644
--- a/Platform/BroxtonPlatformPkg/PlatformPkg.dec
+++ b/Platform/BroxtonPlatformPkg/PlatformPkg.dec
@@ -386,7 +386,8 @@
gPlatformModuleTokenSpaceGuid.PcdTemporaryRamSize|0x2000|UINT32|0x10001002
# @Prompt Stack size in the temporary RAM.
gPlatformModuleTokenSpaceGuid.PcdPeiTemporaryRamStackSize|0|UINT32|0x10001003
- gPlatformModuleTokenSpaceGuid.PcdLogoFileGuid|{0x1b, 0x9a, 0x3d, 0x71, 0x49, 0x88, 0x47, 0xc5, 0xb7, 0x2a, 0xb0, 0x7d, 0xc5, 0x10, 0x60, 0xc4 }|VOID*|0x10001004
+ gPlatformModuleTokenSpaceGuid.PcdLogoFileGuid|{0x1b, 0x9a, 0x3d, 0x71, 0x49, 0x88, 0x47, 0xc5, 0xb7, 0x2a, 0xb0, 0x7d, 0xc5, 0x10, 0x60, 0xc4 }|VOID*|0x10001004
+ gPlatformModuleTokenSpaceGuid.PcdTianoCoreLogoFileGuid|{ 0x99, 0x8b, 0xB2, 0x7B, 0xBB, 0x61, 0xD5, 0x11, 0x9A, 0x5D, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D }|VOID*|0x10001005
[PcdsFixedAtBuild]
## Specifies maximum number of PPIs provided by SecCore.
diff --git a/Platform/BroxtonPlatformPkg/PlatformPkg.fdf b/Platform/BroxtonPlatformPkg/PlatformPkg.fdf
index 2ea7e09582..04c3c671d2 100644
--- a/Platform/BroxtonPlatformPkg/PlatformPkg.fdf
+++ b/Platform/BroxtonPlatformPkg/PlatformPkg.fdf
@@ -244,8 +244,8 @@
INF $(PLATFORM_PACKAGE_COMMON)/PlatformSettings/PlatformPostMemPei/PlatformPostMemPei.inf
!if $(PEI_DISPLAY_ENABLE) == TRUE
- FILE FREEFORM = 7BB28B99-61BB-11D5-9A5D-0090273FC14D {
- SECTION RAW = MdeModulePkg/Logo/Logo.bmp
+ FILE FREEFORM = PCD(gPlatformModuleTokenSpaceGuid.PcdTianoCoreLogoFileGuid) {
+ SECTION RAW = $(PLATFORM_PACKAGE_COMMON)/Binaries/Logo/Tianocore.bmp
}
# VBT For Leaf Hill (File Guid is gPeiLeafHillVbtGuid)
@@ -611,12 +611,13 @@ APRIORI DXE {
INF $(PLATFORM_PACKAGE_COMMON)/Console/GraphicsOutputDxe/GraphicsOutputDxe.inf
- FILE FREEFORM = PCD(gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdLogoFile) {
- SECTION RAW = $(PLATFORM_PACKAGE_COMMON)/Binaries/Logo/Logo.bmp
-}
+ FILE FREEFORM = PCD(gPlatformModuleTokenSpaceGuid.PcdTianoCoreLogoFileGuid) {
+ SECTION RAW = $(PLATFORM_PACKAGE_COMMON)/Binaries/Logo/Tianocore.bmp
+ }
+
FILE FREEFORM = PCD(gPlatformModuleTokenSpaceGuid.PcdLogoFileGuid) {
SECTION RAW = $(PLATFORM_NAME)/Board/MinnowBoard3/Logo/MinnowBoardLogo.bmp
-}
+ }
INF $(PLATFORM_PACKAGE_COMMON)/PnpDxe/PnpDxe.inf
INF $(PLATFORM_PACKAGE_COMMON)/PlatformSettings/PlatformGpio/PlatformGpio.inf
--
2.14.1.windows.1
reply other threads:[~2018-09-10 13:26 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180910132642.11372-1-david.wei@intel.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox