public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Guo Dong" <guo.dong@intel.com>
To: "Lin, MarsX" <marsx.lin@intel.com>,
	"devel@edk2.groups.io" <devel@edk2.groups.io>
Cc: "Ni, Ray" <ray.ni@intel.com>,
	"Rhodes, Sean" <sean@starlabs.systems>,
	"Lu, James" <james.lu@intel.com>, "Guo, Gua" <gua.guo@intel.com>
Subject: Re: [PATCH] UefiPayloadPkg: remove the change that get platform specific logic
Date: Wed, 4 Jan 2023 23:15:33 +0000	[thread overview]
Message-ID: <CY5PR11MB626077201C4CB8CD4F6BBB2D9EF59@CY5PR11MB6260.namprd11.prod.outlook.com> (raw)
In-Reply-To: <eb54c0f53198e0271232cce879d0c974263e5856.1672731465.git.marsx.lin@intel.com>


Reviewed-by: Guo Dong <guo.dong@intel.com>

-----Original Message-----
From: Lin, MarsX <marsx.lin@intel.com> 
Sent: Tuesday, January 3, 2023 12:45 AM
To: devel@edk2.groups.io
Cc: Lin, MarsX <marsx.lin@intel.com>; Dong, Guo <guo.dong@intel.com>; Ni, Ray <ray.ni@intel.com>; Rhodes, Sean <sean@starlabs.systems>; Lu, James <james.lu@intel.com>; Guo, Gua <gua.guo@intel.com>
Subject: [PATCH] UefiPayloadPkg: remove the change that get platform specific logic

From: MarsX Lin <marsx.lin@intel.com>

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

Since UefiPayloadPkg had supported multiple firmware volume, remove the platform specific logic via protocol

Cc: Guo Dong <guo.dong@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Sean Rhodes <sean@starlabs.systems>
Cc: James Lu <james.lu@intel.com>
Cc: Gua Guo <gua.guo@intel.com>

Signed-off-by: MarsX Lin <marsx.lin@intel.com>
---
 .../Protocol/PlatformBootManagerOverride.h    | 84 -------------------
 .../PlatformBootManager.c                     | 27 ------
 .../PlatformBootManagerLib.inf                |  1 -
 UefiPayloadPkg/UefiPayloadPkg.dec             |  2 -
 4 files changed, 114 deletions(-)
 delete mode 100644 UefiPayloadPkg/Include/Protocol/PlatformBootManagerOverride.h

diff --git a/UefiPayloadPkg/Include/Protocol/PlatformBootManagerOverride.h b/UefiPayloadPkg/Include/Protocol/PlatformBootManagerOverride.h
deleted file mode 100644
index 878ddc044b..0000000000
--- a/UefiPayloadPkg/Include/Protocol/PlatformBootManagerOverride.h
+++ /dev/null
@@ -1,84 +0,0 @@
-/** @file-  This file defines the Univeral Payload Platform BootManager Protocol.--  Copyright (c) 2021, Intel Corporation. All rights reserved.<BR>-  SPDX-License-Identifier: BSD-2-Clause-Patent-**/--#ifndef __PLATFORM_BOOT_MANAGER_OVERRIDE_H__-#define __PLATFORM_BOOT_MANAGER_OVERRIDE_H__--/**-  Do the platform specific action before the console is connected.--  Such as:-    Update console variable;-    Register new Driver#### or Boot####;-    Signal ReadyToLock event.--  This function will override the default behavior in PlatformBootManagerLib-**/-typedef-VOID-(EFIAPI *UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_BEFORE_CONSOLE)(-  VOID-  );--/**-  Do the platform specific action after the console is connected.--  Such as:-    Dynamically switch output mode;-    Signal console ready platform customized event;-    Run diagnostics like memory testing;-    Connect certain devices;-    Dispatch aditional option roms.--  This function will override the default behavior in PlatformBootManagerLib-**/-typedef-VOID-(EFIAPI *UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_AFTER_CONSOLE)(-  VOID-  );--/**-  This function is called each second during the boot manager waits the timeout.-  This function will override the default behavior in PlatformBootManagerLib--  @param TimeoutRemain  The remaining timeout.-**/-typedef-VOID-(EFIAPI *UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_WAIT_CALLBACK)(-  UINT16          TimeoutRemain-  );--/**-  The function is called when no boot option could be launched,-  including platform recovery options and options pointing to applications-  built into firmware volumes.--  If this function returns, BDS attempts to enter an infinite loop.-  This function will override the default behavior in PlatformBootManagerLib-**/-typedef-VOID-(EFIAPI *UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_UNABLE_TO_BOOT)(-  VOID-  );--///-/// Provides an interface to override the default behavior in PlatformBootManagerLib,-/// so platform can provide its own platform specific logic through this protocol-///-typedef struct {-  UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_BEFORE_CONSOLE    BeforeConsole;-  UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_AFTER_CONSOLE     AfterConsole;-  UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_WAIT_CALLBACK     WaitCallback;-  UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_UNABLE_TO_BOOT    UnableToBoot;-} UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_PROTOCOL;--extern GUID  gUniversalPayloadPlatformBootManagerOverrideProtocolGuid;--#endifdiff --git a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c
index a92a260a6e..62637ae6aa 100644
--- a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c
+++ b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.
+++ c
@@ -9,12 +9,9 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
  #include "PlatformBootManager.h" #include "PlatformConsole.h"-#include <Protocol/PlatformBootManagerOverride.h> #include <Guid/BootManagerMenu.h> #include <Library/HobLib.h> -UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_PROTOCOL  *mUniversalPayloadPlatformBootManagerOverrideInstance = NULL;- /**   Signal EndOfDxe event and install SMM Ready to lock protocol. @@ -167,17 +164,6 @@ PlatformBootManagerBeforeConsole (
   EFI_INPUT_KEY                 CustomKey;   EFI_INPUT_KEY                 Down;   EFI_BOOT_MANAGER_LOAD_OPTION  BootOption;-  EFI_STATUS                    Status;--  Status = gBS->LocateProtocol (&gUniversalPayloadPlatformBootManagerOverrideProtocolGuid, NULL, (VOID **)&mUniversalPayloadPlatformBootManagerOverrideInstance);-  if (EFI_ERROR (Status)) {-    mUniversalPayloadPlatformBootManagerOverrideInstance = NULL;-  }--  if (mUniversalPayloadPlatformBootManagerOverrideInstance != NULL) {-    mUniversalPayloadPlatformBootManagerOverrideInstance->BeforeConsole ();-    return;-  }    //   // Register ENTER as CONTINUE key@@ -246,11 +232,6 @@ PlatformBootManagerAfterConsole (
   EDKII_PLATFORM_LOGO_PROTOCOL   *PlatformLogo;   EFI_STATUS                     Status; -  if (mUniversalPayloadPlatformBootManagerOverrideInstance != NULL) {-    mUniversalPayloadPlatformBootManagerOverrideInstance->AfterConsole ();-    return;-  }-   Black.Blue = Black.Green = Black.Red = Black.Reserved = 0;   White.Blue = White.Green = White.Red = White.Reserved = 0xFF; @@ -297,10 +278,6 @@ PlatformBootManagerWaitCallback (
   UINT16  TimeoutRemain   ) {-  if (mUniversalPayloadPlatformBootManagerOverrideInstance != NULL) {-    mUniversalPayloadPlatformBootManagerOverrideInstance->WaitCallback (TimeoutRemain);-  }-   return; } @@ -317,10 +294,6 @@ PlatformBootManagerUnableToBoot (
   VOID   ) {-  if (mUniversalPayloadPlatformBootManagerOverrideInstance != NULL) {-    mUniversalPayloadPlatformBootManagerOverrideInstance->UnableToBoot ();-  }-   return; } diff --git a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
index 7ec93420f2..f9626175e2 100644
--- a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
+++ b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManagerL
+++ ib.inf
@@ -60,7 +60,6 @@
   gEfiBootLogoProtocolGuid        ## CONSUMES   gEfiDxeSmmReadyToLockProtocolGuid   gEfiSmmAccess2ProtocolGuid-  gUniversalPayloadPlatformBootManagerOverrideProtocolGuid   gEfiSerialIoProtocolGuid   gEfiPciRootBridgeIoProtocolGuid diff --git a/UefiPayloadPkg/UefiPayloadPkg.dec b/UefiPayloadPkg/UefiPayloadPkg.dec
index 1ccfc32548..7d61d6eeae 100644
--- a/UefiPayloadPkg/UefiPayloadPkg.dec
+++ b/UefiPayloadPkg/UefiPayloadPkg.dec
@@ -52,8 +52,6 @@
   #   gPlatformGOPPolicyGuid                  = { 0xec2e931b, 0x3281, 0x48a5, { 0x81, 0x07, 0xdf, 0x8a, 0x8b, 0xed, 0x3c, 0x5d } } -  gUniversalPayloadPlatformBootManagerOverrideProtocolGuid = { 0xdb3fc2df, 0x7376, 0x4a8d, { 0x82, 0xab, 0x91, 0x54, 0xa1, 0x36, 0xa6, 0x5a } }- ################################################################################ # # PCD Declarations section - list of all PCDs Declared by this Package-- 
2.33.0.windows.2


      reply	other threads:[~2023-01-04 23:15 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-03  7:44 [PATCH] UefiPayloadPkg: remove the change that get platform specific logic marsx.lin
2023-01-04 23:15 ` Guo Dong [this message]

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=CY5PR11MB626077201C4CB8CD4F6BBB2D9EF59@CY5PR11MB6260.namprd11.prod.outlook.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