This needs more editorial changes so disregard for now and I'll resend it when it's better. Sorry about that. On Wed, Jun 16, 2021 at 10:35 AM Kenneth Lautner via groups.io wrote: > From: Ken Lautner > > Changed BdsEntry.c to use Variable Policy instead of Variable Lock > as Variable Lock will be Deprecated eventually > > Cc: Jian J Wang > Cc: Hao A Wu > Cc: Zhichao Gao > Cc: Ray Ni > Signed-off-by: Kenneth Lautner > > Fixed Library References > > Quick revert > > MdeModulePkg/BdsDxe: Fixed Library References > > Fixed incorrect library reference in BdsEntry.c > > Cc: Jian J Wang > Cc: Hao A Wu > Cc: Zhichao Gao > Cc: Ray Ni > Cc: Liming Gao > Signed-off-by: Kenneth Lautner > --- > MdeModulePkg/Universal/BdsDxe/BdsDxe.inf | 4 +++- > MdeModulePkg/Universal/BdsDxe/BdsEntry.c | 20 +++++++++++++++----- > 2 files changed, 18 insertions(+), 6 deletions(-) > > diff --git a/MdeModulePkg/Universal/BdsDxe/BdsDxe.inf > b/MdeModulePkg/Universal/BdsDxe/BdsDxe.inf > index 9310b4dccb18..76ff6a0f5fc3 100644 > --- a/MdeModulePkg/Universal/BdsDxe/BdsDxe.inf > +++ b/MdeModulePkg/Universal/BdsDxe/BdsDxe.inf > @@ -50,6 +50,8 @@ > BaseMemoryLib > DebugLib > UefiBootManagerLib > + VariablePolicyLib > + VariablePolicyHelperLib > PlatformBootManagerLib > PcdLib > PrintLib > @@ -77,7 +79,7 @@ > [Protocols] > gEfiBdsArchProtocolGuid ## PRODUCES > gEfiSimpleTextInputExProtocolGuid ## CONSUMES > - gEdkiiVariableLockProtocolGuid ## SOMETIMES_CONSUMES > + gEdkiiVariablePolicyProtocolGuid ## SOMETIMES_CONSUMES > gEfiDeferredImageLoadProtocolGuid ## CONSUMES > > [FeaturePcd] > diff --git a/MdeModulePkg/Universal/BdsDxe/BdsEntry.c > b/MdeModulePkg/Universal/BdsDxe/BdsEntry.c > index 83b773a2fa5f..13c10bdc5bf8 100644 > --- a/MdeModulePkg/Universal/BdsDxe/BdsEntry.c > +++ b/MdeModulePkg/Universal/BdsDxe/BdsEntry.c > @@ -15,6 +15,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent > #include "Bds.h" > #include "Language.h" > #include "HwErrRecSupport.h" > +#include > > #define SET_BOOT_OPTION_SUPPORT_KEY_COUNT(a, c) { \ > (a) = ((a) & ~EFI_BOOT_OPTION_SUPPORT_COUNT) | (((c) << LowBitSet32 > (EFI_BOOT_OPTION_SUPPORT_COUNT)) & EFI_BOOT_OPTION_SUPPORT_COUNT); \ > @@ -670,7 +671,7 @@ BdsEntry ( > EFI_STATUS Status; > UINT32 BootOptionSupport; > UINT16 BootTimeOut; > - EDKII_VARIABLE_LOCK_PROTOCOL *VariableLock; > + EDKII_VARIABLE_POLICY_PROTOCOL *VariablePolicy; > UINTN Index; > EFI_BOOT_MANAGER_LOAD_OPTION LoadOption; > UINT16 *BootNext; > @@ -716,12 +717,21 @@ BdsEntry ( > // > // Mark the read-only variables if the Variable Lock protocol exists > // > - Status = gBS->LocateProtocol (&gEdkiiVariableLockProtocolGuid, NULL, > (VOID **) &VariableLock); > - DEBUG ((EFI_D_INFO, "[BdsDxe] Locate Variable Lock protocol - %r\n", > Status)); > + Status = gBS->LocateProtocol(&gEdkiiVariablePolicyProtocolGuid, NULL, > (VOID**)&VariablePolicy); > + DEBUG((DEBUG_INFO, "[BdsDxe] Locate Variable Policy protocol - %r\n", > Status)); > if (!EFI_ERROR (Status)) { > for (Index = 0; Index < ARRAY_SIZE (mReadOnlyVariables); Index++) { > - Status = VariableLock->RequestToLock (VariableLock, > mReadOnlyVariables[Index], &gEfiGlobalVariableGuid); > - ASSERT_EFI_ERROR (Status); > + Status = RegisterBasicVariablePolicy( > + VariablePolicy, > + &gEfiGlobalVariableGuid, > + mReadOnlyVariables[Index], > + VARIABLE_POLICY_NO_MIN_SIZE, > + VARIABLE_POLICY_NO_MAX_SIZE, > + VARIABLE_POLICY_NO_MUST_ATTR, > + VARIABLE_POLICY_NO_CANT_ATTR, > + VARIABLE_POLICY_TYPE_LOCK_NOW > + ); > + ASSERT_EFI_ERROR(Status); > } > } > > -- > 2.31.1.windows.1 > > > > ------------ > Groups.io Links: You receive all messages sent to this group. > View/Reply Online (#76602): https://edk2.groups.io/g/devel/message/76602 > Mute This Topic: https://groups.io/mt/83586104/6193780 > Group Owner: devel+owner@edk2.groups.io > Unsubscribe: https://edk2.groups.io/g/devel/unsub [kenlautner3@gmail.com] > ------------ > > >