X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=MdeModulePkg%2FUniversal%2FBdsDxe%2FBdsEntry.c;h=13c10bdc5bf8fcc4811336e107a9c97742c79f5b;hp=83b773a2fa5f75343017c7f841b11df41b75f1a9;hb=d9a7612f8d1da197883bd1cb9f91f229522d39b1;hpb=6cfeeb71c43173d657d86d4a38ed655b0fc5f277 diff --git a/MdeModulePkg/Universal/BdsDxe/BdsEntry.c b/MdeModulePkg/Universal/BdsDxe/BdsEntry.c index 83b773a2fa..13c10bdc5b 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); } }