* [Patch V2] BoardModulePkg: Early connect PCI Root Bridge in BoardBdsHookLib
@ 2020-10-26 1:07 Heng Luo
2020-10-26 3:17 ` Chiu, Chasel
2020-10-26 21:49 ` Nate DeSimone
0 siblings, 2 replies; 3+ messages in thread
From: Heng Luo @ 2020-10-26 1:07 UTC (permalink / raw)
To: devel; +Cc: Eric Dong, Chasel Chiu, Nate DeSimone
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3016
Trigger PCI Bus scanning at BdsBeforeConsoleAfterTrustedConsoleCallback().
Move the call to EnumUsbKeyboard() to after PciEnumComplete.
Cc: Eric Dong <eric.dong@intel.com>
Cc: Chasel Chiu <chasel.chiu@intel.com>
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
Signed-off-by: Heng Luo <heng.luo@intel.com>
---
Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHookLib.c | 77 ++++++++++++++++++++++++++++++++++++++---------------------------------------
1 file changed, 38 insertions(+), 39 deletions(-)
diff --git a/Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHookLib.c b/Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHookLib.c
index 9d42a8c27f..d7612fb80a 100644
--- a/Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHookLib.c
+++ b/Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHookLib.c
@@ -1141,11 +1141,6 @@ BdsPciEnumCompleteCallback (
gBootMode = GetBootModeHob ();
- //
- // Connect Root Bridge to make PCI BAR resource allocated and all PciIo created
- //
- ConnectRootBridge (FALSE);
-
//
// Fill ConIn/ConOut in Full Configuration boot mode
//
@@ -1180,6 +1175,42 @@ BdsPciEnumCompleteCallback (
}
}
+ //
+ // Enumerate USB keyboard
+ //
+ EnumUsbKeyboard ();
+
+ //
+ // For trusted console it must be handled here.
+ //
+ UpdateGraphicConOut (TRUE);
+
+ //
+ // Register Boot Options
+ //
+ RegisterDefaultBootOption ();
+
+ //
+ // Register Static Hot keys
+ //
+ RegisterStaticHotkey ();
+
+ //
+ // Process Physical Preo
+ //
+ PERF_START_EX(NULL,"EventRec", NULL, AsmReadTsc(), 0x7010);
+ if (PcdGetBool (PcdTpm2Enable)) {
+ ProcessTcgPp ();
+ ProcessTcgMor ();
+ }
+ PERF_END_EX(NULL,"EventRec", NULL, AsmReadTsc(), 0x7011);
+
+ //
+ // Perform memory test
+ // We should make all UEFI memory and GCD information populated before ExitPmAuth.
+ // SMM may consume these information.
+ //
+ MemoryTest((EXTENDMEM_COVERAGE_LEVEL) PcdGet32 (PcdPlatformMemoryCheckLevel));
}
/**
@@ -1265,41 +1296,9 @@ BdsBeforeConsoleAfterTrustedConsoleCallback (
DEBUG ((DEBUG_INFO, "Event gBdsEventBeforeConsoleBeforeEndOfDxeGuid callback starts\n"));
//
- // Enumerate USB keyboard
- //
- EnumUsbKeyboard ();
-
- //
- // For trusted console it must be handled here.
- //
- UpdateGraphicConOut (TRUE);
-
- //
- // Register Boot Options
- //
- RegisterDefaultBootOption ();
-
- //
- // Register Static Hot keys
- //
- RegisterStaticHotkey ();
-
- //
- // Process Physical Preo
- //
- PERF_START_EX(NULL,"EventRec", NULL, AsmReadTsc(), 0x7010);
- if (PcdGetBool (PcdTpm2Enable)) {
- ProcessTcgPp ();
- ProcessTcgMor ();
- }
- PERF_END_EX(NULL,"EventRec", NULL, AsmReadTsc(), 0x7011);
-
- //
- // Perform memory test
- // We should make all UEFI memory and GCD information populated before ExitPmAuth.
- // SMM may consume these information.
+ // Connect Root Bridge to make PCI BAR resource allocated and all PciIo created
//
- MemoryTest((EXTENDMEM_COVERAGE_LEVEL) PcdGet32 (PcdPlatformMemoryCheckLevel));
+ ConnectRootBridge (FALSE);
}
--
2.24.0.windows.2
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [Patch V2] BoardModulePkg: Early connect PCI Root Bridge in BoardBdsHookLib
2020-10-26 1:07 [Patch V2] BoardModulePkg: Early connect PCI Root Bridge in BoardBdsHookLib Heng Luo
@ 2020-10-26 3:17 ` Chiu, Chasel
2020-10-26 21:49 ` Nate DeSimone
1 sibling, 0 replies; 3+ messages in thread
From: Chiu, Chasel @ 2020-10-26 3:17 UTC (permalink / raw)
To: Luo, Heng, devel@edk2.groups.io; +Cc: Dong, Eric, Desimone, Nathaniel L
Reviewed-by: Chasel Chiu <chasel.chiu@intel.com>
> -----Original Message-----
> From: Luo, Heng <heng.luo@intel.com>
> Sent: Monday, October 26, 2020 9:07 AM
> To: devel@edk2.groups.io
> Cc: Dong, Eric <eric.dong@intel.com>; Chiu, Chasel <chasel.chiu@intel.com>;
> Desimone, Nathaniel L <nathaniel.l.desimone@intel.com>
> Subject: [Patch V2] BoardModulePkg: Early connect PCI Root Bridge in
> BoardBdsHookLib
>
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3016
>
> Trigger PCI Bus scanning at BdsBeforeConsoleAfterTrustedConsoleCallback().
> Move the call to EnumUsbKeyboard() to after PciEnumComplete.
>
> Cc: Eric Dong <eric.dong@intel.com>
> Cc: Chasel Chiu <chasel.chiu@intel.com>
> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
> Signed-off-by: Heng Luo <heng.luo@intel.com>
> ---
> Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHookLib.c
> | 77 ++++++++++++++++++++++++++++++++++++++-----------------------------------
> ----
> 1 file changed, 38 insertions(+), 39 deletions(-)
>
> diff --git
> a/Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHookLib
> .c
> b/Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHookLib
> .c
> index 9d42a8c27f..d7612fb80a 100644
> ---
> a/Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHookLib
> .c
> +++
> b/Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHookLib
> .c
> @@ -1141,11 +1141,6 @@ BdsPciEnumCompleteCallback (
>
>
> gBootMode = GetBootModeHob ();
>
>
>
> - //
>
> - // Connect Root Bridge to make PCI BAR resource allocated and all PciIo
> created
>
> - //
>
> - ConnectRootBridge (FALSE);
>
> -
>
> //
>
> // Fill ConIn/ConOut in Full Configuration boot mode
>
> //
>
> @@ -1180,6 +1175,42 @@ BdsPciEnumCompleteCallback (
> }
>
> }
>
>
>
> + //
>
> + // Enumerate USB keyboard
>
> + //
>
> + EnumUsbKeyboard ();
>
> +
>
> + //
>
> + // For trusted console it must be handled here.
>
> + //
>
> + UpdateGraphicConOut (TRUE);
>
> +
>
> + //
>
> + // Register Boot Options
>
> + //
>
> + RegisterDefaultBootOption ();
>
> +
>
> + //
>
> + // Register Static Hot keys
>
> + //
>
> + RegisterStaticHotkey ();
>
> +
>
> + //
>
> + // Process Physical Preo
>
> + //
>
> + PERF_START_EX(NULL,"EventRec", NULL, AsmReadTsc(), 0x7010);
>
> + if (PcdGetBool (PcdTpm2Enable)) {
>
> + ProcessTcgPp ();
>
> + ProcessTcgMor ();
>
> + }
>
> + PERF_END_EX(NULL,"EventRec", NULL, AsmReadTsc(), 0x7011);
>
> +
>
> + //
>
> + // Perform memory test
>
> + // We should make all UEFI memory and GCD information populated before
> ExitPmAuth.
>
> + // SMM may consume these information.
>
> + //
>
> + MemoryTest((EXTENDMEM_COVERAGE_LEVEL) PcdGet32
> (PcdPlatformMemoryCheckLevel));
>
> }
>
>
>
> /**
>
> @@ -1265,41 +1296,9 @@ BdsBeforeConsoleAfterTrustedConsoleCallback (
> DEBUG ((DEBUG_INFO, "Event gBdsEventBeforeConsoleBeforeEndOfDxeGuid
> callback starts\n"));
>
>
>
> //
>
> - // Enumerate USB keyboard
>
> - //
>
> - EnumUsbKeyboard ();
>
> -
>
> - //
>
> - // For trusted console it must be handled here.
>
> - //
>
> - UpdateGraphicConOut (TRUE);
>
> -
>
> - //
>
> - // Register Boot Options
>
> - //
>
> - RegisterDefaultBootOption ();
>
> -
>
> - //
>
> - // Register Static Hot keys
>
> - //
>
> - RegisterStaticHotkey ();
>
> -
>
> - //
>
> - // Process Physical Preo
>
> - //
>
> - PERF_START_EX(NULL,"EventRec", NULL, AsmReadTsc(), 0x7010);
>
> - if (PcdGetBool (PcdTpm2Enable)) {
>
> - ProcessTcgPp ();
>
> - ProcessTcgMor ();
>
> - }
>
> - PERF_END_EX(NULL,"EventRec", NULL, AsmReadTsc(), 0x7011);
>
> -
>
> - //
>
> - // Perform memory test
>
> - // We should make all UEFI memory and GCD information populated before
> ExitPmAuth.
>
> - // SMM may consume these information.
>
> + // Connect Root Bridge to make PCI BAR resource allocated and all PciIo
> created
>
> //
>
> - MemoryTest((EXTENDMEM_COVERAGE_LEVEL) PcdGet32
> (PcdPlatformMemoryCheckLevel));
>
> + ConnectRootBridge (FALSE);
>
> }
>
>
>
>
>
> --
> 2.24.0.windows.2
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Patch V2] BoardModulePkg: Early connect PCI Root Bridge in BoardBdsHookLib
2020-10-26 1:07 [Patch V2] BoardModulePkg: Early connect PCI Root Bridge in BoardBdsHookLib Heng Luo
2020-10-26 3:17 ` Chiu, Chasel
@ 2020-10-26 21:49 ` Nate DeSimone
1 sibling, 0 replies; 3+ messages in thread
From: Nate DeSimone @ 2020-10-26 21:49 UTC (permalink / raw)
To: Luo, Heng, devel@edk2.groups.io; +Cc: Dong, Eric, Chiu, Chasel
Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
> -----Original Message-----
> From: Luo, Heng <heng.luo@intel.com>
> Sent: Sunday, October 25, 2020 6:07 PM
> To: devel@edk2.groups.io
> Cc: Dong, Eric <eric.dong@intel.com>; Chiu, Chasel <chasel.chiu@intel.com>;
> Desimone, Nathaniel L <nathaniel.l.desimone@intel.com>
> Subject: [Patch V2] BoardModulePkg: Early connect PCI Root Bridge in
> BoardBdsHookLib
>
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3016
>
> Trigger PCI Bus scanning at BdsBeforeConsoleAfterTrustedConsoleCallback().
> Move the call to EnumUsbKeyboard() to after PciEnumComplete.
>
> Cc: Eric Dong <eric.dong@intel.com>
> Cc: Chasel Chiu <chasel.chiu@intel.com>
> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
> Signed-off-by: Heng Luo <heng.luo@intel.com>
> ---
>
> Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHookLi
> b.c | 77 ++++++++++++++++++++++++++++++++++++++-----------------------
> ----------------
> 1 file changed, 38 insertions(+), 39 deletions(-)
>
> diff --git
> a/Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHook
> Lib.c
> b/Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHook
> Lib.c
> index 9d42a8c27f..d7612fb80a 100644
> ---
> a/Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHook
> Lib.c
> +++
> b/Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHook
> Lib.c
> @@ -1141,11 +1141,6 @@ BdsPciEnumCompleteCallback (
>
>
> gBootMode = GetBootModeHob ();
>
>
>
> - //
>
> - // Connect Root Bridge to make PCI BAR resource allocated and all PciIo
> created
>
> - //
>
> - ConnectRootBridge (FALSE);
>
> -
>
> //
>
> // Fill ConIn/ConOut in Full Configuration boot mode
>
> //
>
> @@ -1180,6 +1175,42 @@ BdsPciEnumCompleteCallback (
> }
>
> }
>
>
>
> + //
>
> + // Enumerate USB keyboard
>
> + //
>
> + EnumUsbKeyboard ();
>
> +
>
> + //
>
> + // For trusted console it must be handled here.
>
> + //
>
> + UpdateGraphicConOut (TRUE);
>
> +
>
> + //
>
> + // Register Boot Options
>
> + //
>
> + RegisterDefaultBootOption ();
>
> +
>
> + //
>
> + // Register Static Hot keys
>
> + //
>
> + RegisterStaticHotkey ();
>
> +
>
> + //
>
> + // Process Physical Preo
>
> + //
>
> + PERF_START_EX(NULL,"EventRec", NULL, AsmReadTsc(), 0x7010);
>
> + if (PcdGetBool (PcdTpm2Enable)) {
>
> + ProcessTcgPp ();
>
> + ProcessTcgMor ();
>
> + }
>
> + PERF_END_EX(NULL,"EventRec", NULL, AsmReadTsc(), 0x7011);
>
> +
>
> + //
>
> + // Perform memory test
>
> + // We should make all UEFI memory and GCD information populated
> before ExitPmAuth.
>
> + // SMM may consume these information.
>
> + //
>
> + MemoryTest((EXTENDMEM_COVERAGE_LEVEL) PcdGet32
> (PcdPlatformMemoryCheckLevel));
>
> }
>
>
>
> /**
>
> @@ -1265,41 +1296,9 @@ BdsBeforeConsoleAfterTrustedConsoleCallback (
> DEBUG ((DEBUG_INFO, "Event
> gBdsEventBeforeConsoleBeforeEndOfDxeGuid callback starts\n"));
>
>
>
> //
>
> - // Enumerate USB keyboard
>
> - //
>
> - EnumUsbKeyboard ();
>
> -
>
> - //
>
> - // For trusted console it must be handled here.
>
> - //
>
> - UpdateGraphicConOut (TRUE);
>
> -
>
> - //
>
> - // Register Boot Options
>
> - //
>
> - RegisterDefaultBootOption ();
>
> -
>
> - //
>
> - // Register Static Hot keys
>
> - //
>
> - RegisterStaticHotkey ();
>
> -
>
> - //
>
> - // Process Physical Preo
>
> - //
>
> - PERF_START_EX(NULL,"EventRec", NULL, AsmReadTsc(), 0x7010);
>
> - if (PcdGetBool (PcdTpm2Enable)) {
>
> - ProcessTcgPp ();
>
> - ProcessTcgMor ();
>
> - }
>
> - PERF_END_EX(NULL,"EventRec", NULL, AsmReadTsc(), 0x7011);
>
> -
>
> - //
>
> - // Perform memory test
>
> - // We should make all UEFI memory and GCD information populated
> before ExitPmAuth.
>
> - // SMM may consume these information.
>
> + // Connect Root Bridge to make PCI BAR resource allocated and all PciIo
> created
>
> //
>
> - MemoryTest((EXTENDMEM_COVERAGE_LEVEL) PcdGet32
> (PcdPlatformMemoryCheckLevel));
>
> + ConnectRootBridge (FALSE);
>
> }
>
>
>
>
>
> --
> 2.24.0.windows.2
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-10-26 21:49 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-10-26 1:07 [Patch V2] BoardModulePkg: Early connect PCI Root Bridge in BoardBdsHookLib Heng Luo
2020-10-26 3:17 ` Chiu, Chasel
2020-10-26 21:49 ` Nate DeSimone
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox