BaseTools: Add reconnect request flag for question.

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
This commit is contained in:
Eric Dong 2015-05-27 02:25:48 +00:00 committed by ydong10
parent edf289685b
commit 366430c715
3 changed files with 15 additions and 6 deletions

View File

@ -6,7 +6,7 @@
@par Revision Reference: @par Revision Reference:
These definitions are from UEFI2.1. These definitions are from UEFI2.1.
Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR> Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials are licensed and made available This program and the accompanying materials are licensed and made available
under the terms and conditions of the BSD License which accompanies this under the terms and conditions of the BSD License which accompanies this
@ -715,10 +715,11 @@ typedef struct _EFI_IFR_QUESTION_HEADER {
UINT8 Flags; UINT8 Flags;
} EFI_IFR_QUESTION_HEADER; } EFI_IFR_QUESTION_HEADER;
#define EFI_IFR_FLAG_READ_ONLY 0x01 #define EFI_IFR_FLAG_READ_ONLY 0x01
#define EFI_IFR_FLAG_CALLBACK 0x04 #define EFI_IFR_FLAG_CALLBACK 0x04
#define EFI_IFR_FLAG_RESET_REQUIRED 0x10 #define EFI_IFR_FLAG_RESET_REQUIRED 0x10
#define EFI_IFR_FLAG_OPTIONS_ONLY 0x80 #define EFI_IFR_FLAG_RECONNECT_REQUIRED 0x40
#define EFI_IFR_FLAG_OPTIONS_ONLY 0x80
typedef struct _EFI_IFR_DEFAULTSTORE { typedef struct _EFI_IFR_DEFAULTSTORE {
EFI_IFR_OP_HEADER Header; EFI_IFR_OP_HEADER Header;

View File

@ -422,7 +422,11 @@ public:
if (_FLAG_TEST_AND_CLEAR (Flags, EFI_IFR_FLAG_RESET_REQUIRED)) { if (_FLAG_TEST_AND_CLEAR (Flags, EFI_IFR_FLAG_RESET_REQUIRED)) {
mHeader->Flags |= EFI_IFR_FLAG_RESET_REQUIRED; mHeader->Flags |= EFI_IFR_FLAG_RESET_REQUIRED;
} }
if (_FLAG_TEST_AND_CLEAR (Flags, EFI_IFR_FLAG_RECONNECT_REQUIRED)) {
mHeader->Flags |= EFI_IFR_FLAG_RECONNECT_REQUIRED;
}
// //
// Set LateCheck Flag to compatible for framework flag // Set LateCheck Flag to compatible for framework flag
// but it uses 0x20 as its flag, if in the future UEFI may take this flag // but it uses 0x20 as its flag, if in the future UEFI may take this flag

View File

@ -191,6 +191,7 @@ VfrParserStart (
#token InteractiveFlag("INTERACTIVE") "INTERACTIVE" #token InteractiveFlag("INTERACTIVE") "INTERACTIVE"
#token NVAccessFlag("NV_ACCESS") "NV_ACCESS" #token NVAccessFlag("NV_ACCESS") "NV_ACCESS"
#token ResetRequiredFlag("RESET_REQUIRED") "RESET_REQUIRED" #token ResetRequiredFlag("RESET_REQUIRED") "RESET_REQUIRED"
#token ReconnectRequiredFlag("RECONNECT_REQUIRED") "RECONNECT_REQUIRED"
#token LateCheckFlag("LATE_CHECK") "LATE_CHECK" #token LateCheckFlag("LATE_CHECK") "LATE_CHECK"
#token ReadOnlyFlag("READ_ONLY") "READ_ONLY" #token ReadOnlyFlag("READ_ONLY") "READ_ONLY"
#token OptionOnlyFlag("OPTIONS_ONLY") "OPTIONS_ONLY" #token OptionOnlyFlag("OPTIONS_ONLY") "OPTIONS_ONLY"
@ -1186,6 +1187,7 @@ questionheaderFlagsField[UINT8 & Flags] :
ReadOnlyFlag << $Flags |= 0x01; >> ReadOnlyFlag << $Flags |= 0x01; >>
| InteractiveFlag << $Flags |= 0x04; >> | InteractiveFlag << $Flags |= 0x04; >>
| ResetRequiredFlag << $Flags |= 0x10; >> | ResetRequiredFlag << $Flags |= 0x10; >>
| ReconnectRequiredFlag << $Flags |= 0x40; >>
| O:OptionOnlyFlag << | O:OptionOnlyFlag <<
if (mCompatibleMode) { if (mCompatibleMode) {
$Flags |= 0x80; $Flags |= 0x80;
@ -1842,6 +1844,7 @@ flagsField :
| ManufacturingFlag | ManufacturingFlag
| DefaultFlag | DefaultFlag
| ResetRequiredFlag | ResetRequiredFlag
| ReconnectRequiredFlag
| N:NVAccessFlag << | N:NVAccessFlag <<
if (!mCompatibleMode) { if (!mCompatibleMode) {
gCVfrErrorHandle.HandleWarning ( gCVfrErrorHandle.HandleWarning (
@ -3501,6 +3504,7 @@ oneofoptionFlagsField [UINT8 & HFlags, UINT8 & LFlags] :
| "OPTION_DEFAULT_MFG" << $LFlags |= 0x20; >> | "OPTION_DEFAULT_MFG" << $LFlags |= 0x20; >>
| InteractiveFlag << $HFlags |= 0x04; >> | InteractiveFlag << $HFlags |= 0x04; >>
| ResetRequiredFlag << $HFlags |= 0x10; >> | ResetRequiredFlag << $HFlags |= 0x10; >>
| ReconnectRequiredFlag << $HFlags |= 0x40; >>
| ManufacturingFlag << $LFlags |= 0x20; >> | ManufacturingFlag << $LFlags |= 0x20; >>
| DefaultFlag << $LFlags |= 0x10; >> | DefaultFlag << $LFlags |= 0x10; >>
| A:NVAccessFlag << | A:NVAccessFlag <<