REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1464
Currently Framework compatibility support is not needed and PcdFrameworkCompatibilitySupport will be removed from edk2. So remove the usage of this PCD firstly. Cc: Liming Gao <liming....@intel.com> Cc: Eric Dong <eric.d...@intel.com> Signed-off-by: Dandan Bi <dandan...@intel.com> --- .../Universal/SetupBrowserDxe/IfrParse.c | 86 +------------------ .../SetupBrowserDxe/SetupBrowserDxe.inf | 6 +- 2 files changed, 2 insertions(+), 90 deletions(-) diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c b/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c index 034edb51a7..891b95cf9f 100644 --- a/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c +++ b/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c @@ -1,9 +1,9 @@ /** @file Parser for IFR binary encoding. -Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR> +Copyright (c) 2007 - 2019, Intel Corporation. All rights reserved.<BR> SPDX-License-Identifier: BSD-2-Clause-Patent **/ #include "Setup.h" @@ -82,80 +82,10 @@ CreateStatement ( InsertTailList (&Form->StatementListHead, &Statement->Link); } return Statement; } -/** - Convert a numeric value to a Unicode String and insert it to String Package. - This string is used as the Unicode Name for the EFI Variable. This is to support - the deprecated vareqval opcode. - - @param FormSet The FormSet. - @param Statement The numeric question whose VarStoreInfo.VarName is the - numeric value which is used to produce the Unicode Name - for the EFI Variable. - - If the Statement is NULL, the ASSERT. - If the opcode is not Numeric, then ASSERT. - - @retval EFI_SUCCESS The funtion always succeeds. -**/ -EFI_STATUS -UpdateCheckBoxStringToken ( - IN CONST FORM_BROWSER_FORMSET *FormSet, - IN FORM_BROWSER_STATEMENT *Statement - ) -{ - CHAR16 Str[MAXIMUM_VALUE_CHARACTERS]; - EFI_STRING_ID Id; - - ASSERT (Statement != NULL); - ASSERT (Statement->Operand == EFI_IFR_NUMERIC_OP); - - UnicodeValueToStringS (Str, sizeof (Str), 0, Statement->VarStoreInfo.VarName, MAXIMUM_VALUE_CHARACTERS - 1); - - Id = HiiSetString (FormSet->HiiHandle, 0, Str, NULL); - if (Id == 0) { - return EFI_OUT_OF_RESOURCES; - } - - Statement->VarStoreInfo.VarName = Id; - - return EFI_SUCCESS; -} - -/** - Check if the next opcode is the EFI_IFR_EXTEND_OP_VAREQNAME. - - @param OpCodeData The current opcode. - - @retval TRUE Yes. - @retval FALSE No. -**/ -BOOLEAN -IsNextOpCodeGuidedVarEqName ( - IN UINT8 *OpCodeData - ) -{ - // - // Get next opcode - // - OpCodeData += ((EFI_IFR_OP_HEADER *) OpCodeData)->Length; - if (*OpCodeData == EFI_IFR_GUID_OP) { - if (CompareGuid (&gEfiIfrFrameworkGuid, (EFI_GUID *)(OpCodeData + sizeof (EFI_IFR_OP_HEADER)))) { - // - // Specific GUIDed opcodes to support IFR generated from Framework HII VFR - // - if ((((EFI_IFR_GUID_VAREQNAME *) OpCodeData)->ExtendOpCode) == EFI_IFR_EXTEND_OP_VAREQNAME) { - return TRUE; - } - } - } - - return FALSE; -} - /** Initialize Question's members. @param OpCodeData Pointer of the raw OpCode data. @param FormSet Pointer of the current FormSet. @@ -174,11 +104,10 @@ CreateQuestion ( FORM_BROWSER_STATEMENT *Statement; EFI_IFR_QUESTION_HEADER *QuestionHdr; LIST_ENTRY *Link; FORMSET_STORAGE *Storage; NAME_VALUE_NODE *NameValueNode; - EFI_STATUS Status; BOOLEAN Find; Statement = CreateStatement (OpCodeData, FormSet, Form); if (Statement == NULL) { return NULL; @@ -196,23 +125,10 @@ CreateQuestion ( // VarStoreId of zero indicates no variable storage // return Statement; } - // - // Take a look at next OpCode to see whether it is a GUIDed opcode to support - // Framework Compatibility - // - if (FeaturePcdGet (PcdFrameworkCompatibilitySupport)) { - if ((*OpCodeData == EFI_IFR_NUMERIC_OP) && IsNextOpCodeGuidedVarEqName (OpCodeData)) { - Status = UpdateCheckBoxStringToken (FormSet, Statement); - if (EFI_ERROR (Status)) { - return NULL; - } - } - } - // // Find Storage for this Question // Link = GetFirstNode (&FormSet->StorageListHead); while (!IsNull (&FormSet->StorageListHead, Link)) { diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf b/MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf index a6b9402daa..82db7c1ef1 100644 --- a/MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf +++ b/MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf @@ -1,11 +1,11 @@ ## @file # The DXE driver produces FORM BROWSER2 protocol defined in UEFI specification. # # It also produces FormBrowserEx(2) protocol to let user register the different Hot key service. # -# Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR> +# Copyright (c) 2007 - 2019, Intel Corporation. All rights reserved.<BR> # # SPDX-License-Identifier: BSD-2-Clause-Patent # # ## @@ -50,11 +50,10 @@ DevicePathLib PcdLib UefiLib [Guids] - gEfiIfrFrameworkGuid ## SOMETIMES_CONSUMES ## GUID gEfiHiiPlatformSetupFormsetGuid ## SOMETIMES_CONSUMES ## GUID gEfiHiiStandardFormGuid ## SOMETIMES_CONSUMES ## GUID gZeroGuid ## SOMETIMES_CONSUMES ## GUID gEdkiiIfrBitVarstoreGuid ## SOMETIMES_CONSUMES ## GUID @@ -71,13 +70,10 @@ ## NOTIFY gEdkiiFormDisplayEngineProtocolGuid gEdkiiFormBrowserExProtocolGuid ## PRODUCES gEfiRegularExpressionProtocolGuid ## SOMETIMES_CONSUMES -[FeaturePcd] - gEfiMdeModulePkgTokenSpaceGuid.PcdFrameworkCompatibilitySupport ## CONSUMES - [Depex] gEfiHiiDatabaseProtocolGuid AND gEfiHiiConfigRoutingProtocolGuid [UserExtensions.TianoCore."ExtraFiles"] SetupBrowserExtra.uni -- 2.18.0.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#39726): https://edk2.groups.io/g/devel/message/39726 Mute This Topic: https://groups.io/mt/31379001/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-