[edk2-devel] [PATCH] UefiPayloadPkg/PlatformBootManager: Connect console after EndOfDxe

Patrick Rudolph posted 1 patch 3 years, 9 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/edk2 tags/patchew/20210202083352.581971-1-patrick.rudolph@9elements.com
UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[edk2-devel] [PATCH] UefiPayloadPkg/PlatformBootManager: Connect console after EndOfDxe
Posted by Patrick Rudolph 3 years, 9 months ago
Currently the console is connected before EndOfDxe causing OptionsROMs
to be loaded, but their drivers aren't used and thus no GOP is installed.

To make use of 3rdparty OptionROMs connect the console after EndOfDxe.

Tested on Intel CFL board using Nvidia Quadro GPU.

Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
---
 UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c
index c5c6af0abc..7fa3a048b7 100644
--- a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c
+++ b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c
@@ -157,8 +157,6 @@ PlatformBootManagerBeforeConsole (
   EFI_INPUT_KEY                Down;
   EFI_BOOT_MANAGER_LOAD_OPTION BootOption;
 
-  PlatformConsoleInit ();
-
   //
   // Register ENTER as CONTINUE key
   //
@@ -192,6 +190,8 @@ PlatformBootManagerBeforeConsole (
   // Dispatch deferred images after EndOfDxe event and ReadyToLock installation.
   //
   EfiBootManagerDispatchDeferredImages ();
+
+  PlatformConsoleInit ();
 }
 
 /**
-- 
2.26.2



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#71052): https://edk2.groups.io/g/devel/message/71052
Mute This Topic: https://groups.io/mt/80310284/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] [PATCH] UefiPayloadPkg/PlatformBootManager: Connect console after EndOfDxe
Posted by Wang, Sunny (HPS SW) 3 years, 9 months ago
Hi Patrick,

I'm not familiar with UefiPayloadPkg. However, since we may want to enable the trusted console as earlier as possible, you may still need to keep the PlatformConsoleInit() call at the beginning of PlatformBootManagerBeforeConsole() to support the platform that has trusted/on-board Consoles.   

Regards,
Sunny Wang

-----Original Message-----
From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Patrick Rudolph
Sent: Tuesday, February 2, 2021 4:34 PM
To: devel@edk2.groups.io
Cc: aiden.park@intel.com; benjamin.you@intel.com; philipp.deppenwiese@9elements.com; maurice.ma@intel.com; guo.dong@intel.com
Subject: [edk2-devel] [PATCH] UefiPayloadPkg/PlatformBootManager: Connect console after EndOfDxe

Currently the console is connected before EndOfDxe causing OptionsROMs to be loaded, but their drivers aren't used and thus no GOP is installed.

To make use of 3rdparty OptionROMs connect the console after EndOfDxe.

Tested on Intel CFL board using Nvidia Quadro GPU.

Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
---
 UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c
index c5c6af0abc..7fa3a048b7 100644
--- a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c
+++ b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.
+++ c
@@ -157,8 +157,6 @@ PlatformBootManagerBeforeConsole (
   EFI_INPUT_KEY                Down;
   EFI_BOOT_MANAGER_LOAD_OPTION BootOption;
 
-  PlatformConsoleInit ();
-
   //
   // Register ENTER as CONTINUE key
   //
@@ -192,6 +190,8 @@ PlatformBootManagerBeforeConsole (
   // Dispatch deferred images after EndOfDxe event and ReadyToLock installation.
   //
   EfiBootManagerDispatchDeferredImages ();
+
+  PlatformConsoleInit ();
 }
 
 /**
--
2.26.2








-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#71103): https://edk2.groups.io/g/devel/message/71103
Mute This Topic: https://groups.io/mt/80310284/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] [PATCH] UefiPayloadPkg/PlatformBootManager: Connect console after EndOfDxe
Posted by Patrick Rudolph 3 years, 9 months ago
Hi Sunny,
none of the other packages are doing this before EndOfDxe. And there's
no point in having trusted console as earlier as possible, as nothing
is displayed in PlatformBootManagerBeforeConsole().
Please explain your use case. I don't see one here.

Kind Regards,
Patrick Rudolph

On Wed, Feb 3, 2021 at 10:32 AM Wang, Sunny (HPS SW) <sunnywang@hpe.com> wrote:
>
> Hi Patrick,
>
> I'm not familiar with UefiPayloadPkg. However, since we may want to enable the trusted console as earlier as possible, you may still need to keep the PlatformConsoleInit() call at the beginning of PlatformBootManagerBeforeConsole() to support the platform that has trusted/on-board Consoles.
>
> Regards,
> Sunny Wang
>
> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Patrick Rudolph
> Sent: Tuesday, February 2, 2021 4:34 PM
> To: devel@edk2.groups.io
> Cc: aiden.park@intel.com; benjamin.you@intel.com; philipp.deppenwiese@9elements.com; maurice.ma@intel.com; guo.dong@intel.com
> Subject: [edk2-devel] [PATCH] UefiPayloadPkg/PlatformBootManager: Connect console after EndOfDxe
>
> Currently the console is connected before EndOfDxe causing OptionsROMs to be loaded, but their drivers aren't used and thus no GOP is installed.
>
> To make use of 3rdparty OptionROMs connect the console after EndOfDxe.
>
> Tested on Intel CFL board using Nvidia Quadro GPU.
>
> Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
> ---
>  UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c
> index c5c6af0abc..7fa3a048b7 100644
> --- a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c
> +++ b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.
> +++ c
> @@ -157,8 +157,6 @@ PlatformBootManagerBeforeConsole (
>    EFI_INPUT_KEY                Down;
>    EFI_BOOT_MANAGER_LOAD_OPTION BootOption;
>
> -  PlatformConsoleInit ();
> -
>    //
>    // Register ENTER as CONTINUE key
>    //
> @@ -192,6 +190,8 @@ PlatformBootManagerBeforeConsole (
>    // Dispatch deferred images after EndOfDxe event and ReadyToLock installation.
>    //
>    EfiBootManagerDispatchDeferredImages ();
> +
> +  PlatformConsoleInit ();
>  }
>
>  /**
> --
> 2.26.2
>
>
>
> 
>
>


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#71107): https://edk2.groups.io/g/devel/message/71107
Mute This Topic: https://groups.io/mt/80310284/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] [PATCH] UefiPayloadPkg/PlatformBootManager: Connect console after EndOfDxe
Posted by Guo Dong 3 years, 9 months ago
Trusted console is required for TCG Physical Presence and only trusted console could 
be connected before EndOfDxe. Since TCG Physical Presence is not enabled yet in
the UefiPayloadPkg, I think it is ok to have this change. 

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

> -----Original Message-----
> From: Patrick Rudolph <patrick.rudolph@9elements.com>
> Sent: Wednesday, February 3, 2021 3:26 AM
> To: Wang, Sunny (HPS SW) <sunnywang@hpe.com>
> Cc: devel@edk2.groups.io; Park, Aiden <aiden.park@intel.com>; You, Benjamin
> <benjamin.you@intel.com>; philipp.deppenwiese@9elements.com; Ma,
> Maurice <maurice.ma@intel.com>; Dong, Guo <guo.dong@intel.com>
> Subject: Re: [edk2-devel] [PATCH] UefiPayloadPkg/PlatformBootManager:
> Connect console after EndOfDxe
> 
> Hi Sunny,
> none of the other packages are doing this before EndOfDxe. And there's
> no point in having trusted console as earlier as possible, as nothing
> is displayed in PlatformBootManagerBeforeConsole().
> Please explain your use case. I don't see one here.
> 
> Kind Regards,
> Patrick Rudolph
> 
> On Wed, Feb 3, 2021 at 10:32 AM Wang, Sunny (HPS SW)
> <sunnywang@hpe.com> wrote:
> >
> > Hi Patrick,
> >
> > I'm not familiar with UefiPayloadPkg. However, since we may want to enable
> the trusted console as earlier as possible, you may still need to keep the
> PlatformConsoleInit() call at the beginning of
> PlatformBootManagerBeforeConsole() to support the platform that has
> trusted/on-board Consoles.
> >
> > Regards,
> > Sunny Wang
> >
> > -----Original Message-----
> > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Patrick
> Rudolph
> > Sent: Tuesday, February 2, 2021 4:34 PM
> > To: devel@edk2.groups.io
> > Cc: aiden.park@intel.com; benjamin.you@intel.com;
> philipp.deppenwiese@9elements.com; maurice.ma@intel.com;
> guo.dong@intel.com
> > Subject: [edk2-devel] [PATCH] UefiPayloadPkg/PlatformBootManager:
> Connect console after EndOfDxe
> >
> > Currently the console is connected before EndOfDxe causing OptionsROMs to
> be loaded, but their drivers aren't used and thus no GOP is installed.
> >
> > To make use of 3rdparty OptionROMs connect the console after EndOfDxe.
> >
> > Tested on Intel CFL board using Nvidia Quadro GPU.
> >
> > Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
> > ---
> >  UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c |
> 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git
> a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c
> b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c
> > index c5c6af0abc..7fa3a048b7 100644
> > ---
> a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c
> > +++
> b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.
> > +++ c
> > @@ -157,8 +157,6 @@ PlatformBootManagerBeforeConsole (
> >    EFI_INPUT_KEY                Down;
> >    EFI_BOOT_MANAGER_LOAD_OPTION BootOption;
> >
> > -  PlatformConsoleInit ();
> > -
> >    //
> >    // Register ENTER as CONTINUE key
> >    //
> > @@ -192,6 +190,8 @@ PlatformBootManagerBeforeConsole (
> >    // Dispatch deferred images after EndOfDxe event and ReadyToLock
> installation.
> >    //
> >    EfiBootManagerDispatchDeferredImages ();
> > +
> > +  PlatformConsoleInit ();
> >  }
> >
> >  /**
> > --
> > 2.26.2
> >
> >
> >
> > 
> >
> >


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#71379): https://edk2.groups.io/g/devel/message/71379
Mute This Topic: https://groups.io/mt/80310284/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] [PATCH] UefiPayloadPkg/PlatformBootManager: Connect console after EndOfDxe
Posted by Wang, Sunny (HPS SW) 3 years, 9 months ago
Sorry for the delay.
Thanks for clarifying and further checking this, Dong.
I think some platforms in https://github.com/tianocore/edk2-platforms would do this before EndOfDxe. 
Yeah, I agree with Dong. If UefiPayloadPkg doesn't support trusted console and may not support it in the future, I also think it's fine to have this change. 

Reviewed-by: Sunny Wang < sunnywang@hpe.com>

Regards,
Sunny Wang

-----Original Message-----
From: Dong, Guo <guo.dong@intel.com> 
Sent: Saturday, February 6, 2021 7:16 AM
To: Patrick Rudolph <patrick.rudolph@9elements.com>; Wang, Sunny (HPS SW) <sunnywang@hpe.com>
Cc: devel@edk2.groups.io; Park, Aiden <aiden.park@intel.com>; You, Benjamin <benjamin.you@intel.com>; philipp.deppenwiese@9elements.com; Ma, Maurice <maurice.ma@intel.com>
Subject: RE: [edk2-devel] [PATCH] UefiPayloadPkg/PlatformBootManager: Connect console after EndOfDxe


Trusted console is required for TCG Physical Presence and only trusted console could be connected before EndOfDxe. Since TCG Physical Presence is not enabled yet in the UefiPayloadPkg, I think it is ok to have this change. 

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

> -----Original Message-----
> From: Patrick Rudolph <patrick.rudolph@9elements.com>
> Sent: Wednesday, February 3, 2021 3:26 AM
> To: Wang, Sunny (HPS SW) <sunnywang@hpe.com>
> Cc: devel@edk2.groups.io; Park, Aiden <aiden.park@intel.com>; You, 
> Benjamin <benjamin.you@intel.com>; philipp.deppenwiese@9elements.com; 
> Ma, Maurice <maurice.ma@intel.com>; Dong, Guo <guo.dong@intel.com>
> Subject: Re: [edk2-devel] [PATCH] UefiPayloadPkg/PlatformBootManager:
> Connect console after EndOfDxe
> 
> Hi Sunny,
> none of the other packages are doing this before EndOfDxe. And there's 
> no point in having trusted console as earlier as possible, as nothing 
> is displayed in PlatformBootManagerBeforeConsole().
> Please explain your use case. I don't see one here.
> 
> Kind Regards,
> Patrick Rudolph
> 
> On Wed, Feb 3, 2021 at 10:32 AM Wang, Sunny (HPS SW) 
> <sunnywang@hpe.com> wrote:
> >
> > Hi Patrick,
> >
> > I'm not familiar with UefiPayloadPkg. However, since we may want to 
> > enable
> the trusted console as earlier as possible, you may still need to keep 
> the
> PlatformConsoleInit() call at the beginning of
> PlatformBootManagerBeforeConsole() to support the platform that has 
> trusted/on-board Consoles.
> >
> > Regards,
> > Sunny Wang
> >
> > -----Original Message-----
> > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of 
> > Patrick
> Rudolph
> > Sent: Tuesday, February 2, 2021 4:34 PM
> > To: devel@edk2.groups.io
> > Cc: aiden.park@intel.com; benjamin.you@intel.com;
> philipp.deppenwiese@9elements.com; maurice.ma@intel.com; 
> guo.dong@intel.com
> > Subject: [edk2-devel] [PATCH] UefiPayloadPkg/PlatformBootManager:
> Connect console after EndOfDxe
> >
> > Currently the console is connected before EndOfDxe causing 
> > OptionsROMs to
> be loaded, but their drivers aren't used and thus no GOP is installed.
> >
> > To make use of 3rdparty OptionROMs connect the console after EndOfDxe.
> >
> > Tested on Intel CFL board using Nvidia Quadro GPU.
> >
> > Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
> > ---
> >  UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c 
> > |
> 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git
> a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c
> b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c
> > index c5c6af0abc..7fa3a048b7 100644
> > ---
> a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c
> > +++
> b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.
> > +++ c
> > @@ -157,8 +157,6 @@ PlatformBootManagerBeforeConsole (
> >    EFI_INPUT_KEY                Down;
> >    EFI_BOOT_MANAGER_LOAD_OPTION BootOption;
> >
> > -  PlatformConsoleInit ();
> > -
> >    //
> >    // Register ENTER as CONTINUE key
> >    //
> > @@ -192,6 +190,8 @@ PlatformBootManagerBeforeConsole (
> >    // Dispatch deferred images after EndOfDxe event and ReadyToLock
> installation.
> >    //
> >    EfiBootManagerDispatchDeferredImages ();
> > +
> > +  PlatformConsoleInit ();
> >  }
> >
> >  /**
> > --
> > 2.26.2
> >
> >
> >
> > 
> >
> >


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#71495): https://edk2.groups.io/g/devel/message/71495
Mute This Topic: https://groups.io/mt/80310284/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-