Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHookLib.c | 77 ++++++++++++++++++++++++++++++++++++++--------------------------------------- 1 file changed, 38 insertions(+), 39 deletions(-)
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: Michael Kubacki <michael.a.kubacki@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
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#66464): https://edk2.groups.io/g/devel/message/66464
Mute This Topic: https://groups.io/mt/77696748/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
Reviewed-by: Eric Dong <eric.dong@intel.com> -----Original Message----- From: Luo, Heng <heng.luo@intel.com> Sent: Wednesday, October 21, 2020 9:35 AM To: devel@edk2.groups.io Cc: Dong, Eric <eric.dong@intel.com>; Michael Kubacki <michael.a.kubacki@intel.com>; Chiu, Chasel <chasel.chiu@intel.com>; Desimone, Nathaniel L <nathaniel.l.desimone@intel.com> Subject: [PATCH] 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: Michael Kubacki <michael.a.kubacki@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 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#66820): https://edk2.groups.io/g/devel/message/66820 Mute This Topic: https://groups.io/mt/77696748/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
© 2016 - 2024 Red Hat, Inc.