]> git.proxmox.com Git - mirror_edk2.git/commitdiff
BaseTools: Add reconnect request flag for question.
authorEric Dong <eric.dong@intel.com>
Wed, 27 May 2015 02:25:48 +0000 (02:25 +0000)
committerydong10 <ydong10@Edk2>
Wed, 27 May 2015 02:25:48 +0000 (02:25 +0000)
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17514 6f19259b-4bc3-4df7-8a09-765794883524

BaseTools/Source/C/Include/Common/UefiInternalFormRepresentation.h
BaseTools/Source/C/VfrCompile/VfrFormPkg.h
BaseTools/Source/C/VfrCompile/VfrSyntax.g

index d17b633c2e715a463c831af7276243577e6b9c18..8c2edf20f3618f845a939a3875fc6339c45197fb 100644 (file)
@@ -6,7 +6,7 @@
   @par Revision Reference:\r
   These definitions are from UEFI2.1.\r
 \r
-  Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>\r
+  Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>\r
 \r
   This program and the accompanying materials are licensed and made available\r
   under the terms and conditions of the BSD License which accompanies this\r
@@ -715,10 +715,11 @@ typedef struct _EFI_IFR_QUESTION_HEADER {
   UINT8                    Flags;\r
 } EFI_IFR_QUESTION_HEADER;\r
 \r
-#define EFI_IFR_FLAG_READ_ONLY         0x01\r
-#define EFI_IFR_FLAG_CALLBACK          0x04\r
-#define EFI_IFR_FLAG_RESET_REQUIRED    0x10\r
-#define EFI_IFR_FLAG_OPTIONS_ONLY      0x80\r
+#define EFI_IFR_FLAG_READ_ONLY          0x01\r
+#define EFI_IFR_FLAG_CALLBACK           0x04\r
+#define EFI_IFR_FLAG_RESET_REQUIRED     0x10\r
+#define EFI_IFR_FLAG_RECONNECT_REQUIRED 0x40\r
+#define EFI_IFR_FLAG_OPTIONS_ONLY       0x80\r
 \r
 typedef struct _EFI_IFR_DEFAULTSTORE {\r
   EFI_IFR_OP_HEADER        Header;\r
index d2ff72c15551d10e9b34d48e4ead8f4e4b66e1eb..84300a75841b39a10ce85a0edc451563b8dd6173 100644 (file)
@@ -422,7 +422,11 @@ public:
     if (_FLAG_TEST_AND_CLEAR (Flags, EFI_IFR_FLAG_RESET_REQUIRED)) {\r
       mHeader->Flags |= EFI_IFR_FLAG_RESET_REQUIRED;\r
     }\r
-    \r
+\r
+    if (_FLAG_TEST_AND_CLEAR (Flags, EFI_IFR_FLAG_RECONNECT_REQUIRED)) {\r
+      mHeader->Flags |= EFI_IFR_FLAG_RECONNECT_REQUIRED;\r
+    }\r
+\r
     //\r
     //  Set LateCheck Flag to compatible for framework flag\r
     //  but it uses 0x20 as its flag, if in the future UEFI may take this flag\r
index 17a62b409ae6c9f7610d1b879c28f0f311b0d002..fba8967fd2a2685654884e1915286cc1a9a20f47 100644 (file)
@@ -191,6 +191,7 @@ VfrParserStart (
 #token InteractiveFlag("INTERACTIVE")           "INTERACTIVE"\r
 #token NVAccessFlag("NV_ACCESS")                "NV_ACCESS"\r
 #token ResetRequiredFlag("RESET_REQUIRED")      "RESET_REQUIRED"\r
+#token ReconnectRequiredFlag("RECONNECT_REQUIRED") "RECONNECT_REQUIRED"\r
 #token LateCheckFlag("LATE_CHECK")              "LATE_CHECK"\r
 #token ReadOnlyFlag("READ_ONLY")                "READ_ONLY"\r
 #token OptionOnlyFlag("OPTIONS_ONLY")           "OPTIONS_ONLY"\r
@@ -1186,6 +1187,7 @@ questionheaderFlagsField[UINT8 & Flags] :
     ReadOnlyFlag                                    << $Flags |= 0x01; >>\r
   | InteractiveFlag                                 << $Flags |= 0x04; >>\r
   | ResetRequiredFlag                               << $Flags |= 0x10; >>\r
+  | ReconnectRequiredFlag                           << $Flags |= 0x40; >>\r
   | O:OptionOnlyFlag                                << \r
                                                        if (mCompatibleMode) {\r
                                                          $Flags |= 0x80;\r
@@ -1842,6 +1844,7 @@ flagsField :
   | ManufacturingFlag \r
   | DefaultFlag \r
   | ResetRequiredFlag \r
+  | ReconnectRequiredFlag\r
   | N:NVAccessFlag                                     << \r
                                                           if (!mCompatibleMode) {\r
                                                             gCVfrErrorHandle.HandleWarning (\r
@@ -3501,6 +3504,7 @@ oneofoptionFlagsField [UINT8 & HFlags, UINT8 & LFlags] :
   | "OPTION_DEFAULT_MFG"                               << $LFlags |= 0x20; >>\r
   | InteractiveFlag                                    << $HFlags |= 0x04; >>\r
   | ResetRequiredFlag                                  << $HFlags |= 0x10; >>\r
+  | ReconnectRequiredFlag                              << $HFlags |= 0x40; >>\r
   | ManufacturingFlag                                  << $LFlags |= 0x20; >>\r
   | DefaultFlag                                        << $LFlags |= 0x10; >>\r
   | A:NVAccessFlag                                     << \r