<div dir="ltr">This patch has been pending for ages, can someone help to review? <div>Thank you.<br clear="all"><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div><font color="#000000" face="Helvetica">Best Regards,</font></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px"><b style="color:rgb(0,0,0);font-family:Helvetica;font-size:small">Lean Sheng Tan</b><br></div><br><font face="Times New Roman"><span style="font-size:12.8px"><img src="http://static.9elements.com/logo-signature.png" style="color:rgb(17,85,204);font-size:12.8px"></span></font><br><br><div style="color:rgb(0,0,0);font-family:"Times New Roman";font-size:medium"><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px"><span style="font-family:Helvetica;font-size:11px"><font color="#000000">9elements GmbH, Kortumstraße 19-21, 44787 Bochum, Germany</font></span></div><div><font style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px"><span style="font-size:11px">Email: <a href="mailto:sheng.tan@9elements.com" style="color:rgb(17,85,204)" target="_blank">sheng.tan@9elements.com</a><br></span></font><div><font><span style="color:rgb(34,34,34);font-family:Helvetica;font-size:11px"><font color="#000000">Phone:</font> </span><font color="#1155cc" face="Helvetica"><span style="font-size:11px"><u><a href="tel:+492346894188" target="_blank">+49 234 68 94 188</a></u></span></font></font></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px"><font><span style="font-size:11px;font-family:Helvetica"><font color="#000000">Mobile:</font> </span><font color="#1155cc" face="Helvetica"><span style="font-size:11px"><u><a href="tel:+4917676113842" target="_blank">+49 176 76 113842</a></u></span></font></font></div></div></div></div><br style="color:rgb(0,0,0);font-family:"Times New Roman";font-size:medium"><div style="font-size:medium;color:rgb(34,34,34);font-family:Helvetica;line-height:11px"><div><font color="#B4B7B8" size="1">Registered office: Bochum</font></div><div><font color="#B4B7B8" size="1">Commercial register: Amtsgericht Bochum, HRB 17519</font></div><div><font color="#B4B7B8" size="1">Management: Sebastian German, Eray Bazaar</font></div><div><br><a href="https://9elements.com/privacy" target="_blank"><font color="#B4B7B8" size="1">Data protection information according to Art. 13 GDPR</font></a></div></div></div></div></div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, 17 Feb 2023 at 13:59, Sheng Lean Tan via <a href="http://groups.io">groups.io</a> <sheng.tan=<a href="mailto:9elements.com@groups.io">9elements.com@groups.io</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hi all,<div>Could you help to review this? thanks.</div><div><br clear="all"><div><div dir="ltr"><div dir="ltr"><div><div><font color="#000000" face="Helvetica">Best Regards,</font></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px"><b style="color:rgb(0,0,0);font-family:Helvetica;font-size:small">Lean Sheng Tan</b><br></div><br><font face="Times New Roman"><span style="font-size:12.8px"><img src="http://static.9elements.com/logo-signature.png" style="color: rgb(17, 85, 204); font-size: 12.8px;"></span></font><br><br><div style="color:rgb(0,0,0);font-family:"Times New Roman";font-size:medium"><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px"><span style="font-family:Helvetica;font-size:11px"><font color="#000000">9elements GmbH, Kortumstraße 19-21, 44787 Bochum, Germany</font></span></div><div><font style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px"><span style="font-size:11px">Email: <a href="mailto:sheng.tan@9elements.com" style="color:rgb(17,85,204)" target="_blank">sheng.tan@9elements.com</a><br></span></font><div><font><span style="color:rgb(34,34,34);font-family:Helvetica;font-size:11px"><font color="#000000">Phone:</font> </span><font color="#1155cc" face="Helvetica"><span style="font-size:11px"><u><a href="tel:+492346894188" target="_blank">+49 234 68 94 188</a></u></span></font></font></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px"><font><span style="font-size:11px;font-family:Helvetica"><font color="#000000">Mobile:</font> </span><font color="#1155cc" face="Helvetica"><span style="font-size:11px"><u><a href="tel:+4917676113842" target="_blank">+49 176 76 113842</a></u></span></font></font></div></div></div></div><br style="color:rgb(0,0,0);font-family:"Times New Roman";font-size:medium"><div style="font-size:medium;color:rgb(34,34,34);font-family:Helvetica;line-height:11px"><div><font color="#B4B7B8" size="1">Registered office: Bochum</font></div><div><font color="#B4B7B8" size="1">Commercial register: Amtsgericht Bochum, HRB 17519</font></div><div><font color="#B4B7B8" size="1">Management: Sebastian German, Eray Bazaar</font></div><div><br><a href="https://9elements.com/privacy" target="_blank"><font color="#B4B7B8" size="1">Data protection information according to Art. 13 GDPR</font></a></div></div></div></div></div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, 21 Dec 2022 at 09:20, Sean Rhodes <sean@starlabs.systems> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">When set to true, the Logo is positioned according to the BGRT<br>
specification, 38.2% from the top of the screen. When set to false,<br>
no behaviour is changed and the logo is positioned centrally.<br>
<br>
Cc: Zhichao Gao <<a href="mailto:zhichao.gao@intel.com" target="_blank">zhichao.gao@intel.com</a>><br>
Cc: Ray Ni <<a href="mailto:ray.ni@intel.com" target="_blank">ray.ni@intel.com</a>><br>
Cc: Jian J Wang <<a href="mailto:jian.j.wang@intel.com" target="_blank">jian.j.wang@intel.com</a>><br>
Cc: Liming Gao <<a href="mailto:gaoliming@byosoft.com.cn" target="_blank">gaoliming@byosoft.com.cn</a>><br>
Signed-off-by: Sean Rhodes <sean@starlabs.systems><br>
---<br>
 MdeModulePkg/MdeModulePkg.dec |  6 ++++++<br>
 MdeModulePkg/Logo/LogoDxe.inf |  4 ++++<br>
 MdeModulePkg/Logo/Logo.c      | 28 +++++++++++++++++++++++++++-<br>
 MdeModulePkg/MdeModulePkg.uni |  6 ++++++<br>
 4 files changed, 43 insertions(+), 1 deletion(-)<br>
<br>
diff --git a/MdeModulePkg/MdeModulePkg.dec b/MdeModulePkg/MdeModulePkg.dec<br>
index be5e829ca9..c8bb51df3b 100644<br>
--- a/MdeModulePkg/MdeModulePkg.dec<br>
+++ b/MdeModulePkg/MdeModulePkg.dec<br>
@@ -2102,6 +2102,12 @@ [PcdsFixedAtBuild, PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx]<br>
   # @Prompt The shared bit mask when Intel Tdx is enabled.<br>
   gEfiMdeModulePkgTokenSpaceGuid.PcdTdxSharedBitMask|0x0|UINT64|0x10000025<br>
<br>
+  ## This PCD sets the position of the Boot Logo.<br>
+  #   TRUE  - The Logo is positioned following the recommendations from Microsoft.<br>
+  #   FALSE - The logo is positioned in the center of the screen.<br>
+  # @ Prompt This position of the boot logo<br>
+  gEfiMdeModulePkgTokenSpaceGuid.PcdFollowMicrosoftRecommended|FALSE|BOOLEAN|0x10000026<br>
+<br>
 [PcdsPatchableInModule]<br>
   ## Specify memory size with page number for PEI code when<br>
   #  Loading Module at Fixed Address feature is enabled.<br>
diff --git a/MdeModulePkg/Logo/LogoDxe.inf b/MdeModulePkg/Logo/LogoDxe.inf<br>
index 41215d25d8..ce29950089 100644<br>
--- a/MdeModulePkg/Logo/LogoDxe.inf<br>
+++ b/MdeModulePkg/Logo/LogoDxe.inf<br>
@@ -41,6 +41,7 @@ [LibraryClasses]<br>
   UefiBootServicesTableLib<br>
   UefiDriverEntryPoint<br>
   DebugLib<br>
+  PcdLib<br>
<br>
 [Protocols]<br>
   gEfiHiiDatabaseProtocolGuid        ## CONSUMES<br>
@@ -48,6 +49,9 @@ [Protocols]<br>
   gEfiHiiPackageListProtocolGuid     ## PRODUCES CONSUMES<br>
   gEdkiiPlatformLogoProtocolGuid     ## PRODUCES<br>
<br>
+[Pcd]<br>
+  gEfiMdeModulePkgTokenSpaceGuid.PcdFollowMicrosoftRecommended ## CONSUMES<br>
+<br>
 [Depex]<br>
   gEfiHiiDatabaseProtocolGuid AND<br>
   gEfiHiiImageExProtocolGuid<br>
diff --git a/MdeModulePkg/Logo/Logo.c b/MdeModulePkg/Logo/Logo.c<br>
index 8ab874d2da..96e34b2011 100644<br>
--- a/MdeModulePkg/Logo/Logo.c<br>
+++ b/MdeModulePkg/Logo/Logo.c<br>
@@ -13,6 +13,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent<br>
 #include <Protocol/HiiPackageList.h><br>
 #include <Library/UefiBootServicesTableLib.h><br>
 #include <Library/DebugLib.h><br>
+#include <Library/PcdLib.h><br>
<br>
 typedef struct {<br>
   EFI_IMAGE_ID                             ImageId;<br>
@@ -51,12 +52,14 @@ GetImage (<br>
   IN     EDKII_PLATFORM_LOGO_PROTOCOL        *This,<br>
   IN OUT UINT32                              *Instance,<br>
   OUT EFI_IMAGE_INPUT                        *Image,<br>
+  EFI_GRAPHICS_OUTPUT_PROTOCOL               *GraphicsOutput,<br>
   OUT EDKII_PLATFORM_LOGO_DISPLAY_ATTRIBUTE  *Attribute,<br>
   OUT INTN                                   *OffsetX,<br>
   OUT INTN                                   *OffsetY<br>
   )<br>
 {<br>
-  UINT32  Current;<br>
+  UINT32      Current;<br>
+  EFI_STATUS  Status;<br>
<br>
   if ((Instance == NULL) || (Image == NULL) ||<br>
       (Attribute == NULL) || (OffsetX == NULL) || (OffsetY == NULL))<br>
@@ -69,6 +72,29 @@ GetImage (<br>
     return EFI_NOT_FOUND;<br>
   }<br>
<br>
+  if (PcdGetBool (PcdFollowMicrosoftRecommended)) {<br>
+    //<br>
+    // Get current video resolution and text mode<br>
+    //<br>
+    Status = gBS->HandleProtocol (<br>
+                    gST->ConsoleOutHandle,<br>
+                    &gEfiGraphicsOutputProtocolGuid,<br>
+                    (VOID **)&GraphicsOutput<br>
+                    );<br>
+    if (!EFI_ERROR (Status)) {<br>
+      //<br>
+      // Center of LOGO is in the vertical position 38.2% when PcdBootLogoOnlyEnable is TRUE<br>
+      // Y = (VerticalResolution - LogoHeight) / 2<br>
+      // Y' = VerticalResolution * 0.382 - LogoHeight * 0.5<br>
+      // OffsetY + Y = Y'<br>
+      // OffsetY = Y' - Y = -0.118 * VerticalResolution<br>
+      //<br>
+      *Attribute = EdkiiPlatformLogoDisplayAttributeCenter;<br>
+      *OffsetX   = 0;<br>
+      *OffsetY   = -118 * (INTN)GraphicsOutput->Mode->Info->VerticalResolution / 1000;<br>
+    }<br>
+  }<br>
+<br>
   (*Instance)++;<br>
   *Attribute = mLogos[Current].Attribute;<br>
   *OffsetX   = mLogos[Current].OffsetX;<br>
diff --git a/MdeModulePkg/MdeModulePkg.uni b/MdeModulePkg/MdeModulePkg.uni<br>
index 33ce9f6198..09c1ac1cc1 100644<br>
--- a/MdeModulePkg/MdeModulePkg.uni<br>
+++ b/MdeModulePkg/MdeModulePkg.uni<br>
@@ -1338,3 +1338,9 @@<br>
 #string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdPcieResizableBarSupport_HELP #language en-US "Indicates if the PCIe Resizable BAR Capability Supported.<BR><BR>\n"<br>
                                                                                             "TRUE  - PCIe Resizable BAR Capability is supported.<BR>\n"<br>
                                                                                             "FALSE - PCIe Resizable BAR Capability is not supported.<BR>"<br>
+<br>
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdFollowMicrosoftRecommended_PROMPT #language en-US "The position of the Boot Logo"<br>
+<br>
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdFollowMicrosoftRecommend_HELP   #language en-US "Sets the position of the Logo. When set to true, the Logo is positioned following the recommendations"<br>
+                                                                                             " from Microsoft, 38.2% from the top of the screen."<br>
+<br>
-- <br>
2.37.2<br>
<br>
<br>
<br>
------------<br>
Groups.io Links: You receive all messages sent to this group.<br>
View/Reply Online (#97684): <a href="https://edk2.groups.io/g/devel/message/97684" rel="noreferrer" target="_blank">https://edk2.groups.io/g/devel/message/97684</a><br>
Mute This Topic: <a href="https://groups.io/mt/95802829/6757431" rel="noreferrer" target="_blank">https://groups.io/mt/95802829/6757431</a><br>
Group Owner: <a href="mailto:devel%2Bowner@edk2.groups.io" target="_blank">devel+owner@edk2.groups.io</a><br>
Unsubscribe: <a href="https://edk2.groups.io/g/devel/unsub" rel="noreferrer" target="_blank">https://edk2.groups.io/g/devel/unsub</a> [<a href="mailto:sheng.tan@9elements.com" target="_blank">sheng.tan@9elements.com</a>]<br>
------------<br>
<br>
<br>
</blockquote></div>




<p></p><p></p></blockquote></div>


<div width="1" style="color:white;clear:both">_._,_._,_</div>
<hr>


Groups.io Links:<p>


  
    You receive all messages sent to this group.
  
  


<p>
<a target="_blank" href="https://edk2.groups.io/g/devel/message/100724">View/Reply Online (#100724)</a> |


  

|

  <a target="_blank" href="https://groups.io/mt/95802829/1813853">Mute This Topic</a>

| <a href="https://edk2.groups.io/g/devel/post">New Topic</a><br>




<a href="https://edk2.groups.io/g/devel/editsub/1813853">Your Subscription</a> |
<a href="mailto:devel+owner@edk2.groups.io">Contact Group Owner</a> |

<a href="https://edk2.groups.io/g/devel/unsub">Unsubscribe</a>

 [edk2-devel-archive@redhat.com]<br>
<div width="1" style="color:white;clear:both">_._,_._,_</div>