summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Dong <eric.dong@intel.com>2014-05-14 01:52:31 +0000
committerydong10 <ydong10@6f19259b-4bc3-4df7-8a09-765794883524>2014-05-14 01:52:31 +0000
commit7da62bc02d70f11d6294efc71ccebb65199655d0 (patch)
treeb444acabb17f976c1249ca0e77c7bddd891cea20
parent0ff8108177f541921ea6354ba6c6a3ffe6a1f333 (diff)
downloadedk2-platforms-7da62bc02d70f11d6294efc71ccebb65199655d0.tar.xz
Based on request, export ResetRequired info used by browser.
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Eric Dong <eric.dong@intel.com> Reviewed-by: Gao, Liming <liming,gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15525 6f19259b-4bc3-4df7-8a09-765794883524
-rw-r--r--MdeModulePkg/Include/Protocol/FormBrowserEx2.h20
-rw-r--r--MdeModulePkg/Universal/SetupBrowserDxe/Setup.c22
-rw-r--r--MdeModulePkg/Universal/SetupBrowserDxe/Setup.h13
3 files changed, 52 insertions, 3 deletions
diff --git a/MdeModulePkg/Include/Protocol/FormBrowserEx2.h b/MdeModulePkg/Include/Protocol/FormBrowserEx2.h
index df583ef860..1ccc5bd964 100644
--- a/MdeModulePkg/Include/Protocol/FormBrowserEx2.h
+++ b/MdeModulePkg/Include/Protocol/FormBrowserEx2.h
@@ -2,7 +2,7 @@
Extension Form Browser Protocol provides the services that can be used to
register the different hot keys for the standard Browser actions described in UEFI specification.
-Copyright (c) 2013, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2013 - 2014, 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
@@ -23,7 +23,8 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
typedef struct _EDKII_FORM_BROWSER_EXTENSION2_PROTOCOL EDKII_FORM_BROWSER_EXTENSION2_PROTOCOL;
-#define BROWSER_EXTENSION2_VERSION_1 0x10000
+#define BROWSER_EXTENSION2_VERSION_1 0x10000
+#define BROWSER_EXTENSION2_VERSION_1_1 0x10001
/**
Check whether the browser data has been modified.
@@ -54,6 +55,19 @@ EFI_STATUS
IN UINT16 DefaultId
);
+/**
+ Check whether required reset when exit the browser
+
+ @retval TRUE Browser required to reset after exit.
+ @retval FALSE Browser not need to reset after exit.
+
+**/
+typedef
+BOOLEAN
+(EFIAPI *IS_RESET_REQUIRED) (
+ VOID
+ );
+
#define FORM_ENTRY_INFO_SIGNATURE SIGNATURE_32 ('f', 'e', 'i', 's')
typedef struct {
@@ -101,6 +115,8 @@ struct _EDKII_FORM_BROWSER_EXTENSION2_PROTOCOL {
/// A list of type QUESTION_ATTRIBUTE_OVERRIDE.
///
LIST_ENTRY OverrideQestListHead;
+
+ IS_RESET_REQUIRED IsResetRequired;
};
extern EFI_GUID gEdkiiFormBrowserEx2ProtocolGuid;
diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c b/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c
index fb988d9ed6..3f2f1b5468 100644
--- a/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c
+++ b/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c
@@ -28,12 +28,15 @@ SETUP_DRIVER_PRIVATE_DATA mPrivateData = {
SaveReminder
},
{
- BROWSER_EXTENSION2_VERSION_1,
+ BROWSER_EXTENSION2_VERSION_1_1,
SetScope,
RegisterHotKey,
RegiserExitHandler,
IsBrowserDataModified,
ExecuteAction,
+ {NULL,NULL},
+ {NULL,NULL},
+ IsResetRequired
}
};
@@ -5288,3 +5291,20 @@ SaveReminder (
return DataSavedAction;
}
+
+/**
+ Check whether the Reset Required for the browser
+
+ @retval TRUE Browser required to reset after exit.
+ @retval FALSE Browser not need to reset after exit.
+
+**/
+BOOLEAN
+EFIAPI
+IsResetRequired (
+ VOID
+ )
+{
+ return gResetRequired;
+}
+
diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/Setup.h b/MdeModulePkg/Universal/SetupBrowserDxe/Setup.h
index 5dedda4e91..d21a6cd9c7 100644
--- a/MdeModulePkg/Universal/SetupBrowserDxe/Setup.h
+++ b/MdeModulePkg/Universal/SetupBrowserDxe/Setup.h
@@ -1354,6 +1354,19 @@ SaveReminder (
);
/**
+ Check whether the Reset Required for the browser
+
+ @retval TRUE Browser required to reset after exit.
+ @retval FALSE Browser not need to reset after exit.
+
+**/
+BOOLEAN
+EFIAPI
+IsResetRequired (
+ VOID
+ );
+
+/**
Find the registered HotKey based on KeyData.
@param[in] KeyData A pointer to a buffer that describes the keystroke