public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH 0/2] Boot Logo Support
@ 2022-07-10 19:13 Sean Rhodes
  2022-07-10 19:13 ` [PATCH 1/2] UefiPayloadPkg: Enable Boot Logo Sean Rhodes
  2022-07-10 19:13 ` [PATCH 2/2] UefiPayloadPkg: Load Boot Logo into ACPI table Sean Rhodes
  0 siblings, 2 replies; 7+ messages in thread
From: Sean Rhodes @ 2022-07-10 19:13 UTC (permalink / raw)
  To: devel; +Cc: Sean Rhodes

These two patches add support to show a Boot Logo, and load the logo
into the BGRT table.

This should ideally be handled by the bootloader, but in the case of
coreboot, the current framebuffer implementation to display images is;
11-years old, considered broken and can only handle jpg images.

Therefore, leverage edk2 existing support for this until coreboot can
handle this on it's own.

Sean Rhodes (2):
  UefiPayloadPkg: Enable Boot Logo
  UefiPayloadPkg: Load Boot Logo into ACPI table

 .../Library/PlatformBootManagerLib/PlatformBootManager.c     | 3 +++
 .../PlatformBootManagerLib/PlatformBootManagerLib.inf        | 1 +
 UefiPayloadPkg/UefiPayloadPkg.dsc                            | 5 +++++
 UefiPayloadPkg/UefiPayloadPkg.fdf                            | 3 +++
 4 files changed, 12 insertions(+)

-- 
2.34.1


^ permalink raw reply	[flat|nested] 7+ messages in thread
* [PATCH 1/2] UefiPayloadPkg: Enable Boot Logo
@ 2022-07-20  9:09 Sean Rhodes
  0 siblings, 0 replies; 7+ messages in thread
From: Sean Rhodes @ 2022-07-20  9:09 UTC (permalink / raw)
  To: devel; +Cc: Sean Rhodes, Guo Dong, Ray Ni

Cc: Guo Dong <guo.dong@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
---
 .../Library/PlatformBootManagerLib/PlatformBootManager.c    | 5 +++++
 .../PlatformBootManagerLib/PlatformBootManagerLib.inf       | 1 +
 UefiPayloadPkg/UefiPayloadPkg.dsc                           | 6 ++++++
 UefiPayloadPkg/UefiPayloadPkg.fdf                           | 4 ++++
 4 files changed, 16 insertions(+)

diff --git a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c
index b360e29dfe..2fadd3f130 100644
--- a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c
+++ b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c
@@ -252,6 +252,11 @@ PlatformBootManagerAfterConsole (
   Black.Blue = Black.Green = Black.Red = Black.Reserved = 0;
   White.Blue = White.Green = White.Red = White.Reserved = 0xFF;
 
+  if (&gEdkiiPlatformLogoProtocolGuid) {
+    gST->ConOut->ClearScreen (gST->ConOut);
+    BootLogoEnableLogo ();
+  }
+
   EfiBootManagerConnectAll ();
   EfiBootManagerRefreshAllBootOption ();
 
diff --git a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
index 9f58c460cd..7ec93420f2 100644
--- a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
+++ b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
@@ -39,6 +39,7 @@
   UefiRuntimeServicesTableLib
   UefiLib
   UefiBootManagerLib
+  BootLogoLib
   PcdLib
   DxeServicesLib
   MemoryAllocationLib
diff --git a/UefiPayloadPkg/UefiPayloadPkg.dsc b/UefiPayloadPkg/UefiPayloadPkg.dsc
index 5e947526b7..bdafe8ae99 100644
--- a/UefiPayloadPkg/UefiPayloadPkg.dsc
+++ b/UefiPayloadPkg/UefiPayloadPkg.dsc
@@ -40,6 +40,7 @@
   DEFINE SD_ENABLE                    = TRUE
   DEFINE PS2_MOUSE_ENABLE             = TRUE
   DEFINE SD_MMC_TIMEOUT               = 1000000
+  DEFINE BOOTSPLASH_IMAGE             = FALSE
 
   #
   # NULL:    NullMemoryTestDxe
@@ -221,6 +222,7 @@
   CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
   SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf
   UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf
+  BootLogoLib|MdeModulePkg/Library/BootLogoLib/BootLogoLib.inf
   CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf
   FrameBufferBltLib|MdeModulePkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf
 
@@ -419,6 +421,7 @@
 
   gUefiPayloadPkgTokenSpaceGuid.PcdDispatchModuleAbove4GMemory|$(ABOVE_4G_MEMORY)
   gUefiPayloadPkgTokenSpaceGuid.PcdBootManagerEscape|$(BOOT_MANAGER_ESCAPE)
+
   gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength|1800000
 
   gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.HmacSha256.Family                        | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
@@ -593,6 +596,9 @@
 !endif
   UefiCpuPkg/CpuDxe/CpuDxe.inf
   MdeModulePkg/Universal/BdsDxe/BdsDxe.inf
+!if $(BOOTSPLASH_IMAGE)
+  MdeModulePkg/Logo/LogoDxe.inf
+!endif
   MdeModulePkg/Application/UiApp/UiApp.inf {
     <LibraryClasses>
       NULL|MdeModulePkg/Library/DeviceManagerUiLib/DeviceManagerUiLib.inf
diff --git a/UefiPayloadPkg/UefiPayloadPkg.fdf b/UefiPayloadPkg/UefiPayloadPkg.fdf
index 5c055e61b3..6d54bb0e13 100644
--- a/UefiPayloadPkg/UefiPayloadPkg.fdf
+++ b/UefiPayloadPkg/UefiPayloadPkg.fdf
@@ -163,6 +163,10 @@ INF MdeModulePkg/Universal/EbcDxe/EbcDxe.inf
 INF UefiPayloadPkg/BlSupportDxe/BlSupportDxe.inf
 
 INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
+!if $(BOOTSPLASH_IMAGE)
+INF MdeModulePkg/Logo/LogoDxe.inf
+!endif
+
 #
 # PCI Support
 #
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread
* [PATCH 0/2] Introduce and use new boot logo position
@ 2021-01-06 15:08 Patrick Rudolph
  2021-01-06 15:08 ` [PATCH 1/2] UefiPayloadPkg: Enable boot logo Patrick Rudolph
  0 siblings, 1 reply; 7+ messages in thread
From: Patrick Rudolph @ 2021-01-06 15:08 UTC (permalink / raw)
  To: devel; +Cc: maurice.ma, guo.dong, benjamin.you

- Enable the boot logo for UefiPayloadPkg.
- Use Microsoft's recommended positioning for the boot logo as default

Tim Crawford (2):
  UefiPayloadPkg: Enable boot logo
  MdeModulePkg/BootLogoLib: Center logo 38.2% from top of screen

 MdeModulePkg/Include/Protocol/PlatformLogo.h                             | 3 ++-
 MdeModulePkg/Library/BootLogoLib/BootLogoLib.c                           | 4 ++++
 MdeModulePkg/Logo/Logo.c                                                 | 2 +-
 UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c      | 3 +++
 UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf | 1 +
 UefiPayloadPkg/UefiPayloadPkg.dsc                                        | 2 ++
 UefiPayloadPkg/UefiPayloadPkg.fdf                                        | 2 ++
 7 files changed, 15 insertions(+), 2 deletions(-)

-- 
2.26.2


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2022-07-20  9:09 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-07-10 19:13 [PATCH 0/2] Boot Logo Support Sean Rhodes
2022-07-10 19:13 ` [PATCH 1/2] UefiPayloadPkg: Enable Boot Logo Sean Rhodes
2022-07-10 19:13 ` [PATCH 2/2] UefiPayloadPkg: Load Boot Logo into ACPI table Sean Rhodes
  -- strict thread matches above, loose matches on Subject: below --
2022-07-20  9:09 [PATCH 1/2] UefiPayloadPkg: Enable Boot Logo Sean Rhodes
2021-01-06 15:08 [PATCH 0/2] Introduce and use new boot logo position Patrick Rudolph
2021-01-06 15:08 ` [PATCH 1/2] UefiPayloadPkg: Enable boot logo Patrick Rudolph
2021-01-06 22:30   ` Guo Dong
2021-01-07  7:20     ` Patrick Rudolph

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox