These changes are to support notify callbacks when enter/exit setup menu, since some driver may need to hook setup enter/exit points to do something.
We will signal setup enter/exit events for all setup menu enter/exit cases.Then the module which pay attention to these events can execute the callback. Cc: Eric Dong <eric.d...@intel.com> Cc: Liming Gao <liming....@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dandan Bi <dandan...@intel.com> --- .../BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf | 4 +++- MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootOption.c | 8 +++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf index def923b977d..e716e053777 100644 --- a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf +++ b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf @@ -1,9 +1,9 @@ ## @file # Boot Maintenance Manager Library used by UiApp. # -# Copyright (c) 2011 - 2017, Intel Corporation. All rights reserved.<BR> +# Copyright (c) 2011 - 2018, Intel Corporation. All rights reserved.<BR> # This program and the accompanying materials are licensed and made available under # the terms and conditions of the BSD License that accompanies this distribution. # The full text of the license may be found at # http://opensource.org/licenses/bsd-license.php. # @@ -80,10 +80,12 @@ ## SOMETIMES_CONSUMES ## Variable:L"ConOut" (The device path of console out device) ## SOMETIMES_CONSUMES ## Variable:L"ErrOut" (The device path of error out device) gEfiIfrTianoGuid ## SOMETIMES_CONSUMES ## GUID (Extended IFR Guid Opcode) gEfiIfrFrontPageGuid ## CONSUMES ## GUID gEfiIfrBootMaintenanceGuid ## CONSUMES ## GUID + gEdkiiSetupEnterGuid ## CONSUMES ## GUID + gEdkiiSetupExitGuid ## CONSUMES ## GUID [Protocols] gEfiSimpleFileSystemProtocolGuid ## CONSUMES gEfiLoadFileProtocolGuid ## CONSUMES gEfiHiiConfigAccessProtocolGuid ## CONSUMES diff --git a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootOption.c b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootOption.c index 8680a51d78c..e3363b469ce 100644 --- a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootOption.c +++ b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootOption.c @@ -3,11 +3,11 @@ Include file system navigation, system handle selection Boot option manipulation -Copyright (c) 2004 - 2016, Intel Corporation. All rights reserved.<BR> +Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.<BR> This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php @@ -926,18 +926,24 @@ BootFromFile ( ); // // Since current no boot from removable media directly is allowed */ // gST->ConOut->ClearScreen (gST->ConOut); + + // + // Signal exit setup event berfore reset the system or boot to another boot option. + // + EfiEventGroupSignal(&gEdkiiSetupExitGuid); // // Check whether need to reset system. // BmmSetupResetReminder (); BmmSetConsoleMode (FALSE); EfiBootManagerBoot (&BootOption); BmmSetConsoleMode (TRUE); + EfiEventGroupSignal(&gEdkiiSetupEnterGuid); FreePool(FileName); EfiBootManagerFreeLoadOption (&BootOption); } -- 2.14.3.windows.1 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel