summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Universal/PCD/Dxe/Service.h
diff options
context:
space:
mode:
authorStar Zeng <star.zeng@intel.com>2015-04-10 09:01:46 +0000
committerlzeng14 <lzeng14@Edk2>2015-04-10 09:01:46 +0000
commit23f3e119c7b154f6c9386588b5b74c6037a1251c (patch)
tree2bbcea6229bbd666a04629fe1894b74554fa11e6 /MdeModulePkg/Universal/PCD/Dxe/Service.h
parent8977a7b7b631619347ebfcde1a08174d08a0c7bf (diff)
downloadedk2-platforms-23f3e119c7b154f6c9386588b5b74c6037a1251c.tar.xz
MdeModulePkg: Add ATTRIBUTE (+/-RT, RO) support in PCD declaration in DSC file.
Also update PCD_SERVICE_PEI_VERSION and PCD_SERVICE_DXE_VERSION to match with the new PcdDataBase binary generated by BaseTools. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17161 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'MdeModulePkg/Universal/PCD/Dxe/Service.h')
-rw-r--r--MdeModulePkg/Universal/PCD/Dxe/Service.h23
1 files changed, 21 insertions, 2 deletions
diff --git a/MdeModulePkg/Universal/PCD/Dxe/Service.h b/MdeModulePkg/Universal/PCD/Dxe/Service.h
index 55717dc982..4d8ab0f13f 100644
--- a/MdeModulePkg/Universal/PCD/Dxe/Service.h
+++ b/MdeModulePkg/Universal/PCD/Dxe/Service.h
@@ -1,7 +1,7 @@
/** @file
Private functions used by PCD DXE driver.
-Copyright (c) 2006 - 2013, 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 under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
@@ -22,6 +22,8 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#include <Protocol/PiPcd.h>
#include <Protocol/PcdInfo.h>
#include <Protocol/PiPcdInfo.h>
+#include <Protocol/VarCheck.h>
+#include <Protocol/VariableLock.h>
#include <Library/BaseLib.h>
#include <Library/DebugLib.h>
#include <Library/UefiLib.h>
@@ -37,7 +39,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
// Please make sure the PCD Serivce DXE Version is consistent with
// the version of the generated DXE PCD Database by build tool.
//
-#define PCD_SERVICE_DXE_VERSION 4
+#define PCD_SERVICE_DXE_VERSION 5
//
// PCD_DXE_SERVICE_DRIVER_VERSION is defined in Autogen.h.
@@ -1003,6 +1005,7 @@ GetHiiVariable (
@param VariableGuid Guid of variable which stored value of a HII-type PCD.
@param VariableName Unicode name of variable which stored value of a HII-type PCD.
+ @param SetAttributes Attributes bitmask to set for the variable.
@param Data Value want to be set.
@param DataSize Size of value
@param Offset Value offset of HII-type PCD in variable.
@@ -1014,6 +1017,7 @@ EFI_STATUS
SetHiiVariable (
IN EFI_GUID *VariableGuid,
IN UINT16 *VariableName,
+ IN UINT32 SetAttributes,
IN CONST VOID *Data,
IN UINTN DataSize,
IN UINTN Offset
@@ -1158,6 +1162,21 @@ SetPtrTypeSize (
IN OUT UINTN *CurrentSize
);
+/**
+ VariableLockProtocol callback
+ to lock the variables referenced by DynamicHii PCDs with RO property set in *.dsc.
+
+ @param[in] Event Event whose notification function is being invoked.
+ @param[in] Context Pointer to the notification function's context.
+
+**/
+VOID
+EFIAPI
+VariableLockCallBack (
+ IN EFI_EVENT Event,
+ IN VOID *Context
+ );
+
extern PCD_DATABASE mPcdDatabase;
extern UINT32 mPcdTotalTokenCount;