summaryrefslogtreecommitdiffstats
path: root/Vlv2TbltDevicePkg
diff options
context:
space:
mode:
Diffstat (limited to 'Vlv2TbltDevicePkg')
-rw-r--r--Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c19
-rw-r--r--Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.h15
2 files changed, 32 insertions, 2 deletions
diff --git a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
index b0ada79f02..e7e4a91925 100644
--- a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
+++ b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
@@ -2051,7 +2051,11 @@ PlatformBdsEnterFrontPageWithHotKey (
goto Exit;
}
}
-
+ //
+ // Install BM HiiPackages.
+ // Keep BootMaint HiiPackage, so that it can be covered by global setting.
+ //
+ InitBMPackage ();
do {
BdsSetConsoleMode (TRUE);
@@ -2113,11 +2117,20 @@ PlatformBdsEnterFrontPageWithHotKey (
break;
case FRONT_PAGE_KEY_BOOT_MANAGER:
+ //
+ // Remove the installed BootMaint HiiPackages when exit.
+ //
+ FreeBMPackage ();
//
// User chose to run the Boot Manager
//
CallBootManager ();
+
+ //
+ // Reinstall BootMaint HiiPackages after exiting from Boot Manager.
+ //
+ InitBMPackage ();
break;
case FRONT_PAGE_KEY_DEVICE_MANAGER:
@@ -2145,6 +2158,10 @@ PlatformBdsEnterFrontPageWithHotKey (
//Will leave browser, check any reset required change is applied? if yes, reset system
//
SetupResetReminder ();
+ //
+ // Remove the installed BootMaint HiiPackages when exit.
+ //
+ FreeBMPackage ();
Exit:
//
diff --git a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.h b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.h
index 63972b51b8..46262472fe 100644
--- a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.h
+++ b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.h
@@ -391,7 +391,20 @@ PlatformBdsEnterFrontPageWithHotKey (
UpdateFrontPageStrings (
VOID
);
-
+
+
+ EFI_STATUS
+ InitBMPackage (
+ VOID
+ );
+
+
+ VOID
+ FreeBMPackage (
+ VOID
+ );
+
+
EFI_STATUS
CallFrontPage (
VOID