From: "Dandan Bi" <dandan.bi@intel.com>
To: devel@edk2.groups.io
Cc: Bob Feng <bob.c.feng@intel.com>, Liming Gao <liming.gao@intel.com>
Subject: [patch] BaseTools/VfrCompile: clean Framework Vfr support
Date: Fri, 10 May 2019 13:44:23 +0800 [thread overview]
Message-ID: <20190510054423.19900-1-dandan.bi@intel.com> (raw)
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1464
This commit is to do the cleanup which are missing in
previous commit 1b72fd5121b5b31918be0a9a0868a39070d4c8d4
BaseTools/VfrCompile: Remove framework VFR support
Cc: Bob Feng <bob.c.feng@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
---
BaseTools/Source/C/VfrCompile/VfrSyntax.g | 272 +++++-----------------
1 file changed, 55 insertions(+), 217 deletions(-)
diff --git a/BaseTools/Source/C/VfrCompile/VfrSyntax.g b/BaseTools/Source/C/VfrCompile/VfrSyntax.g
index 24b30e3825..127cb8b2b2 100644
--- a/BaseTools/Source/C/VfrCompile/VfrSyntax.g
+++ b/BaseTools/Source/C/VfrCompile/VfrSyntax.g
@@ -652,16 +652,10 @@ vfrFormSetDefinition :
break;
}
SET_LINE_INFO (*FSObj, L);
FSObj->SetGuid (&Guid);
- //
- // for framework vfr to store formset guid used by varstore and efivarstore
- //
- if (mCompatibleMode) {
- memcpy (&mFormsetGuid, &Guid, sizeof (EFI_GUID));
- }
FSObj->SetFormSetTitle (_STOSID(S1->getText(), S1->getLine()));
FSObj->SetHelp (_STOSID(S2->getText(), S2->getLine()));
>>
{
FC:Class "=" classDefinition[C] "," << {CIfrClass CObj;SET_LINE_INFO (CObj, FC); CObj.SetClass(C);} >>
@@ -1004,16 +998,10 @@ vfrStatementVarStoreLinear :
| U64:"UINT64" "," << TypeName = U64->getText(); LineNum = U64->getLine(); >>
| D:"EFI_HII_DATE" "," << TypeName = D->getText(); LineNum = D->getLine(); >>
| T:"EFI_HII_TIME" "," << TypeName = T->getText(); LineNum = T->getLine(); >>
| R:"EFI_HII_REF" "," << TypeName = R->getText(); LineNum = R->getLine(); >>
)
- { Key "=" FID:Number "," << // Key is used to assign Varid in Framework VFR but no use in UEFI2.1 VFR
- if (mCompatibleMode) {
- VarStoreId = _STOU16(FID->getText(), FID->getLine());
- }
- >>
- }
{
VarId "=" ID:Number "," <<
_PCATCH(
(INTN)(VarStoreId = _STOU16(ID->getText(), ID->getLine())) != 0,
(INTN)TRUE,
@@ -1023,15 +1011,12 @@ vfrStatementVarStoreLinear :
>>
}
Name "=" SN:StringIdentifier ","
Uuid "=" guidDefinition[Guid]
<<
- if (mCompatibleMode) {
- StoreName = TypeName;
- } else {
- StoreName = SN->getText();
- }
+
+ StoreName = SN->getText();
_PCATCH(gCVfrDataStorage.DeclareBufferVarStore (
StoreName,
&Guid,
&gCVfrVarDataTypeDB,
TypeName,
@@ -1241,13 +1226,10 @@ vfrStatementDisableIfFormSet :
;
vfrStatementSuppressIfFormSet :
<< CIfrSuppressIf SIObj;>>
L:SuppressIf <<
- if (mCompatibleMode) {
- _PCATCH (VFR_RETURN_UNSUPPORTED, L);
- }
SIObj.SetLineNo(L->getLine());
>>
{ FLAGS "=" flagsField ( "\|" flagsField )* "," }
vfrStatementExpression[0] ";"
vfrFormSetList
@@ -1338,38 +1320,30 @@ vfrQuestionHeader[CIfrQuestionHeader & QHObj, EFI_QUESION_TYPE QType = QUESTION_
questionheaderFlagsField[UINT8 & Flags] :
ReadOnlyFlag << $Flags |= 0x01; >>
| InteractiveFlag << $Flags |= 0x04; >>
| ResetRequiredFlag << $Flags |= 0x10; >>
| ReconnectRequiredFlag << $Flags |= 0x40; >>
- | O:OptionOnlyFlag <<
- if (mCompatibleMode) {
- $Flags |= 0x80;
- } else {
- gCVfrErrorHandle.HandleWarning (
- VFR_WARNING_OBSOLETED_FRAMEWORK_OPCODE,
- O->getLine(),
- O->getText()
- );
- }
+ | O:OptionOnlyFlag <<
+ gCVfrErrorHandle.HandleWarning (
+ VFR_WARNING_OBSOLETED_FRAMEWORK_OPCODE,
+ O->getLine(),
+ O->getText()
+ );
>>
- | N:NVAccessFlag <<
- if (!mCompatibleMode) {
- gCVfrErrorHandle.HandleWarning (
- VFR_WARNING_OBSOLETED_FRAMEWORK_OPCODE,
- N->getLine(),
- N->getText()
- );
- }
+ | N:NVAccessFlag <<
+ gCVfrErrorHandle.HandleWarning (
+ VFR_WARNING_OBSOLETED_FRAMEWORK_OPCODE,
+ N->getLine(),
+ N->getText()
+ );
>>
- | L:LateCheckFlag <<
- if (!mCompatibleMode) {
- gCVfrErrorHandle.HandleWarning (
- VFR_WARNING_OBSOLETED_FRAMEWORK_OPCODE,
- L->getLine(),
- L->getText()
- );
- }
+ | L:LateCheckFlag <<
+ gCVfrErrorHandle.HandleWarning (
+ VFR_WARNING_OBSOLETED_FRAMEWORK_OPCODE,
+ L->getLine(),
+ L->getText()
+ );
>>
;
vfrStorageVarId[EFI_VARSTORE_INFO & Info, CHAR8 *&QuestVarIdStr, BOOLEAN CheckFlag = TRUE] :
<<
@@ -1392,22 +1366,10 @@ vfrStorageVarId[EFI_VARSTORE_INFO & Info, CHAR8 *&QuestVarIdStr, BOOLEAN CheckFl
_STRCAT(&VarIdStr, I1->getText());
_STRCAT(&VarIdStr, "]");
>>
<<
VfrReturnCode = gCVfrDataStorage.GetVarStoreId(SName, &$Info.mVarStoreId);
- if (mCompatibleMode && VfrReturnCode == VFR_RETURN_UNDEFINED) {
- gCVfrDataStorage.DeclareBufferVarStore (
- SName,
- &mFormsetGuid,
- &gCVfrVarDataTypeDB,
- SName,
- EFI_VARSTORE_ID_INVALID,
- FALSE,
- FALSE
- );
- VfrReturnCode = gCVfrDataStorage.GetVarStoreId(SName, &$Info.mVarStoreId, &mFormsetGuid);
- }
if (CheckFlag || VfrReturnCode == VFR_RETURN_SUCCESS) {
_PCATCH(VfrReturnCode, SN1);
_PCATCH(gCVfrDataStorage.GetNameVarStoreInfo (&$Info, Idx), SN1);
}
@@ -1417,21 +1379,10 @@ vfrStorageVarId[EFI_VARSTORE_INFO & Info, CHAR8 *&QuestVarIdStr, BOOLEAN CheckFl
|
(
SN2:StringIdentifier << SName = SN2->getText(); _STRCAT(&VarIdStr, SName); >>
<<
VfrReturnCode = gCVfrDataStorage.GetVarStoreId(SName, &$Info.mVarStoreId);
- if (mCompatibleMode && VfrReturnCode == VFR_RETURN_UNDEFINED) {
- gCVfrDataStorage.DeclareBufferVarStore (
- SName,
- &mFormsetGuid,
- &gCVfrVarDataTypeDB,
- SName,
- EFI_VARSTORE_ID_INVALID,
- FALSE
- );
- VfrReturnCode = gCVfrDataStorage.GetVarStoreId(SName, &$Info.mVarStoreId, &mFormsetGuid);
- }
if (CheckFlag || VfrReturnCode == VFR_RETURN_SUCCESS) {
_PCATCH(VfrReturnCode, SN2);
VarStoreType = gCVfrDataStorage.GetVarStoreType ($Info.mVarStoreId);
if (VarStoreType == EFI_VFR_VARSTORE_BUFFER || VarStoreType == EFI_VFR_VARSTORE_BUFFER_BITS) {
_PCATCH(gCVfrDataStorage.GetBufferVarStoreDataTypeName(Info.mVarStoreId, &TName), SN2);
@@ -1449,11 +1400,10 @@ vfrStorageVarId[EFI_VARSTORE_INFO & Info, CHAR8 *&QuestVarIdStr, BOOLEAN CheckFl
>>
SF:StringIdentifier << _STRCAT(&VarIdStr, SF->getText()); _STRCAT(&VarStr, SF->getText()); >>
{
OpenBracket I2:Number CloseBracket <<
Idx = _STOU32(I2->getText(), I2->getLine());
- if (mCompatibleMode) Idx --;
if (Idx > 0) {
//
// Idx == 0, [0] can be ignored.
// Array[0] is same to Array for unify the varid name to cover [0]
//
@@ -1531,11 +1481,10 @@ vfrQuestionDataFieldName [EFI_QUESTION_ID &QId, UINT32 &Mask, CHAR8 *&VarIdStr,
>>
SF:StringIdentifier << _STRCAT (&VarIdStr, SF->getText()); >>
{
OpenBracket I2:Number CloseBracket <<
Idx = _STOU32(I2->getText(), I2->getLine());
- if (mCompatibleMode) Idx --;
if (Idx > 0) {
//
// Idx == 0, [0] can be ignored.
// Array[0] is same to Array
//
@@ -1739,25 +1688,10 @@ vfrFormDefinition :
vfrStatementExtension |
vfrStatementModal |
vfrStatementRefreshEvent ";"
)*
E:EndForm <<
- if (mCompatibleMode) {
- //
- // Add Label for Framework Vfr
- //
- CIfrLabel LObj1;
- LObj1.SetLineNo(E->getLine());
- LObj1.SetNumber (0xffff); //add end label for UEFI, label number hardcode 0xffff
- CIfrLabel LObj2;
- LObj2.SetLineNo(E->getLine());
- LObj2.SetNumber (0x0); //add dummy label for UEFI, label number hardcode 0x0
- CIfrLabel LObj3;
- LObj3.SetLineNo(E->getLine());
- LObj3.SetNumber (0xffff); //add end label for UEFI, label number hardcode 0xffff
- }
-
{CIfrEnd EObj; EObj.SetLineNo (E->getLine()); mLastFormEndAddr = EObj.GetObjBinAddr<CHAR8>(); gAdjustOpcodeOffset = EObj.GetObjBinOffset ();}
>>
";"
;
@@ -1999,17 +1933,15 @@ vfrStatementConditionalNew :
vfrStatementGrayOutIfStatNew |
vfrStatementInconsistentIfStat //to be compatible for framework
;
vfrStatementSuppressIfStat :
- <<mCompatibleMode>>? vfrStatementSuppressIfStatOld
- | vfrStatementSuppressIfStatNew
+ vfrStatementSuppressIfStatNew
;
vfrStatementGrayOutIfStat :
- <<mCompatibleMode>>? vfrStatementGrayOutIfStatOld
- | vfrStatementGrayOutIfStatNew
+ vfrStatementGrayOutIfStatNew
;
vfrStatementInvalid :
(
vfrStatementInvalidHidden |
@@ -2024,27 +1956,23 @@ flagsField :
| InteractiveFlag
| ManufacturingFlag
| DefaultFlag
| ResetRequiredFlag
| ReconnectRequiredFlag
- | N:NVAccessFlag <<
- if (!mCompatibleMode) {
- gCVfrErrorHandle.HandleWarning (
- VFR_WARNING_OBSOLETED_FRAMEWORK_OPCODE,
- N->getLine(),
- N->getText()
- );
- }
+ | N:NVAccessFlag <<
+ gCVfrErrorHandle.HandleWarning (
+ VFR_WARNING_OBSOLETED_FRAMEWORK_OPCODE,
+ N->getLine(),
+ N->getText()
+ );
>>
- | L:LateCheckFlag <<
- if (!mCompatibleMode) {
- gCVfrErrorHandle.HandleWarning (
- VFR_WARNING_OBSOLETED_FRAMEWORK_OPCODE,
- L->getLine(),
- L->getText()
- );
- }
+ | L:LateCheckFlag <<
+ gCVfrErrorHandle.HandleWarning (
+ VFR_WARNING_OBSOLETED_FRAMEWORK_OPCODE,
+ L->getLine(),
+ L->getText()
+ );
>>
;
vfrStatementValue :
<< CIfrValue VObj; >>
@@ -2455,38 +2383,17 @@ vfrCheckBoxFlags [CIfrCheckBox & CBObj, UINT32 LineNum] :
<< _PCATCH(CBObj.SetFlags (HFlags, LFlags), LineNum); >>
;
checkboxFlagsField[UINT8 & LFlags, UINT8 & HFlags] :
N:Number <<
- if (mCompatibleMode) {
- //
- // set question flag
- //
- $LFlags |= _STOU8(N->getText(), N->getLine());
- } else {
- _PCATCH(_STOU8(N->getText(), N->getLine()) == 0 ? VFR_RETURN_SUCCESS : VFR_RETURN_UNSUPPORTED, N->getLine());
- }
+ _PCATCH(_STOU8(N->getText(), N->getLine()) == 0 ? VFR_RETURN_SUCCESS : VFR_RETURN_UNSUPPORTED, N->getLine());
>>
| D:"DEFAULT" <<
- if (mCompatibleMode) {
- //
- // set question Default flag
- //
- $LFlags |= 0x01;
- } else {
- _PCATCH (VFR_RETURN_UNSUPPORTED, D);
- }
+ _PCATCH (VFR_RETURN_UNSUPPORTED, D);
>>
| M:"MANUFACTURING" <<
- if (mCompatibleMode) {
- //
- // set question MFG flag
- //
- $LFlags |= 0x02;
- } else {
- _PCATCH (VFR_RETURN_UNSUPPORTED, M);
- }
+ _PCATCH (VFR_RETURN_UNSUPPORTED, M);
>>
| "CHECKBOX_DEFAULT" << $LFlags |= 0x01; >>
| "CHECKBOX_DEFAULT_MFG" << $LFlags |= 0x02; >>
| questionheaderFlagsField[HFlags]
;
@@ -3502,13 +3409,11 @@ vfrStatementDisableIfStat :
;
vfrStatementInconsistentIfStat :
<< CIfrInconsistentIf IIObj; >>
L:InconsistentIf <<
- if (!mCompatibleMode) {
- _PCATCH (VFR_RETURN_UNSUPPORTED, L);
- }
+ _PCATCH (VFR_RETURN_UNSUPPORTED, L);
IIObj.SetLineNo(L->getLine());
>>
Prompt "=" "STRING_TOKEN" "\(" S:Number "\)" "," << IIObj.SetError (_STOSID(S->getText(), S->getLine())); >>
{ FLAGS "=" flagsField ( "\|" flagsField )* "," }
vfrStatementExpression[0]
@@ -3553,44 +3458,10 @@ vfrStatementGrayOutIfStatNew :
";"
( vfrStatementStatList )*
E: EndIf ";" << CRT_END_OP (E); >>
;
-vfrStatementSuppressIfStatOld :
- <<
- CIfrSuppressIf SIObj;
- BOOLEAN GrayOutExist = FALSE;
- >>
- L:SuppressIf << SIObj.SetLineNo(L->getLine()); >>
- { FLAGS "=" flagsField ( "\|" flagsField )* "," }
- vfrStatementExpression[0]
- ";"
- {
- vfrStatementsuppressIfGrayOutIf
- << GrayOutExist = TRUE; >>
- }
- ( vfrStatementStatListOld )*
- E: EndIf ";" << if (GrayOutExist) CRT_END_OP (E); CRT_END_OP (E);>>
- ;
-
-vfrStatementGrayOutIfStatOld :
- <<
- CIfrGrayOutIf GOIObj;
- BOOLEAN SuppressExist = FALSE;
- >>
- L:GrayOutIf << GOIObj.SetLineNo(L->getLine()); >>
- { FLAGS "=" flagsField ( "\|" flagsField )* "," }
- vfrStatementExpression[0]
- ";"
- {
- vfrStatementgrayoutIfSuppressIf
- << SuppressExist = TRUE; >>
- }
- ( vfrStatementStatListOld )*
- E: EndIf ";" << if (SuppressExist) CRT_END_OP (E); CRT_END_OP (E); >>
- ;
-
vfrImageTag :
<< CIfrImage IObj; >>
L:Image "=" "IMAGE_TOKEN" "\(" S1:Number "\)" << IObj.SetImageId (_STOSID(S1->getText(), S1->getLine())); IObj.SetLineNo(L->getLine()); >>
;
@@ -3859,13 +3730,11 @@ vfrStatementOneOfOption :
}
}
>>
{
"," Key "=" KN:Number <<
- if (!mCompatibleMode) {
- _PCATCH (VFR_RETURN_UNSUPPORTED, KN);
- }
+ _PCATCH (VFR_RETURN_UNSUPPORTED, KN);
//
// Guid Option Key
//
CIfrOptionKey IfrOptionKey (
gCurrentQuestion->QUESTION_ID(),
@@ -3898,46 +3767,29 @@ oneofoptionFlagsField [UINT8 & HFlags, UINT8 & LFlags] :
| InteractiveFlag << $HFlags |= 0x04; >>
| ResetRequiredFlag << $HFlags |= 0x10; >>
| ReconnectRequiredFlag << $HFlags |= 0x40; >>
| ManufacturingFlag << $LFlags |= 0x20; >>
| DefaultFlag << $LFlags |= 0x10; >>
- | A:NVAccessFlag <<
- if (mCompatibleMode) {
- $HFlags |= 0x08;
- } else {
- gCVfrErrorHandle.HandleWarning (
- VFR_WARNING_OBSOLETED_FRAMEWORK_OPCODE,
- A->getLine(),
- A->getText()
- );
- }
+ | A:NVAccessFlag <<
+ gCVfrErrorHandle.HandleWarning (
+ VFR_WARNING_OBSOLETED_FRAMEWORK_OPCODE,
+ A->getLine(),
+ A->getText()
+ );
>>
- | L:LateCheckFlag <<
- if (mCompatibleMode) {
- $HFlags |= 0x20;
- } else {
- gCVfrErrorHandle.HandleWarning (
- VFR_WARNING_OBSOLETED_FRAMEWORK_OPCODE,
- L->getLine(),
- L->getText()
- );
- }
+ | L:LateCheckFlag <<
+ gCVfrErrorHandle.HandleWarning (
+ VFR_WARNING_OBSOLETED_FRAMEWORK_OPCODE,
+ L->getLine(),
+ L->getText()
+ );
>>
;
vfrStatementLabel :
L:Label
N:Number <<
- if (mCompatibleMode) {
- //
- // Add end Label for Framework Vfr
- //
- CIfrLabel LObj1;
- LObj1.SetLineNo(L->getLine());
- LObj1.SetNumber (0xffff); //add end label for UEFI, label number hardcode 0xffff
- }
-
{
CIfrLabel LObj2;
LObj2.SetLineNo(L->getLine());
LObj2.SetNumber (_STOU16(N->getText(), N->getLine()));
}
@@ -3970,13 +3822,11 @@ vfrStatementBanner :
//
// keep some syntax for compatibility but not generate any IFR object
//
vfrStatementInvalidHidden :
L:Hidden <<
- if (!mCompatibleMode) {
- _PCATCH (VFR_RETURN_UNSUPPORTED, L);
- }
+ _PCATCH (VFR_RETURN_UNSUPPORTED, L);
>>
Value "=" Number ","
Key "=" Number ";"
;
@@ -3989,13 +3839,11 @@ vfrStatementInvalidInconsistentIf :
";"
;
vfrStatementInvalidInventory :
L:Inventory <<
- if (!mCompatibleMode) {
- _PCATCH (VFR_RETURN_UNSUPPORTED, L);
- }
+ _PCATCH (VFR_RETURN_UNSUPPORTED, L);
>>
Help "=" "STRING_TOKEN" "\(" Number "\)" ","
Text "=" "STRING_TOKEN" "\(" Number "\)" ","
{
Text "=" "STRING_TOKEN" "\(" Number "\)"
@@ -4004,19 +3852,15 @@ vfrStatementInvalidInventory :
;
vfrStatementInvalidSaveRestoreDefaults :
(
L:Save <<
- if (!mCompatibleMode) {
- _PCATCH (VFR_RETURN_UNSUPPORTED, L);
- }
+ _PCATCH (VFR_RETURN_UNSUPPORTED, L);
>>
|
K:Restore <<
- if (!mCompatibleMode) {
- _PCATCH (VFR_RETURN_UNSUPPORTED, K);
- }
+ _PCATCH (VFR_RETURN_UNSUPPORTED, K);
>>
)
Defaults ","
FormId "=" Number ","
Prompt "=" "STRING_TOKEN" "\(" Number "\)" ","
@@ -4317,13 +4161,11 @@ vareqvalExp [UINT32 & RootLevel, UINT32 & ExpOpCount] :
UINT32 LineNo;
EFI_VFR_RETURN_CODE VfrReturnCode = VFR_RETURN_SUCCESS;
EFI_VARSTORE_ID VarStoreId = EFI_VARSTORE_ID_INVALID;
>>
L:VarEqVal <<
- if (!mCompatibleMode) {
_PCATCH (VFR_RETURN_UNSUPPORTED, L);
- }
>>
VK:Var
OpenParen
VN:Number <<
VarIdStr = NULL; _STRCAT(&VarIdStr, VK->getText()); _STRCAT(&VarIdStr, VN->getText());
@@ -4996,14 +4838,10 @@ private:
// Whether the question already has default value.
//
UINT16 mUsedDefaultArray[EFI_IFR_MAX_DEFAULT_TYPE];
UINT16 mUsedDefaultCount;
-//
-// For framework vfr compatibility
-//
- BOOLEAN mCompatibleMode;
EFI_GUID mFormsetGuid;
VOID _CRT_OP (IN BOOLEAN);
VOID _SAVE_CURRQEST_VARINFO (IN EFI_VARSTORE_INFO &);
--
2.18.0.windows.1
next reply other threads:[~2019-05-10 5:44 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-10 5:44 Dandan Bi [this message]
2019-05-10 7:36 ` [edk2-devel] [patch] BaseTools/VfrCompile: clean Framework Vfr support Liming Gao
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190510054423.19900-1-dandan.bi@intel.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox