diff options
Diffstat (limited to 'IntelFrameworkModulePkg/Universal')
-rw-r--r-- | IntelFrameworkModulePkg/Universal/BdsDxe/BdsEntry.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/IntelFrameworkModulePkg/Universal/BdsDxe/BdsEntry.c b/IntelFrameworkModulePkg/Universal/BdsDxe/BdsEntry.c index f5431551f5..1cc383e3e5 100644 --- a/IntelFrameworkModulePkg/Universal/BdsDxe/BdsEntry.c +++ b/IntelFrameworkModulePkg/Universal/BdsDxe/BdsEntry.c @@ -143,6 +143,17 @@ BdsBootDeviceSelect ( // Parse the boot order to get boot option
//
BdsLibBuildOptionFromVar (&BootLists, L"BootOrder");
+
+ //
+ // When we didn't have chance to build boot option variables in the first
+ // full configuration boot (e.g.: Reset in the first page or in Device Manager),
+ // we have no boot options in the following mini configuration boot.
+ // Give the last chance to enumerate the boot options.
+ //
+ if (IsListEmpty (&BootLists)) {
+ BdsLibEnumerateAllBootOption (&BootLists);
+ }
+
Link = BootLists.ForwardLink;
//
|