X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=MdeModulePkg%2FMdeModulePkg.dec;h=217ede1f716382b6abdfbb11984c56496b6af3a0;hp=6037504fa789d4ca96d45bf3a776dd77bc17a909;hb=d0def00d33fa5d4a70c427dfc9a36d826b42967d;hpb=b888c57a053f41b33fcaa13da66f8de470e9a1c8
diff --git a/MdeModulePkg/MdeModulePkg.dec b/MdeModulePkg/MdeModulePkg.dec
index 6037504fa7..217ede1f71 100644
--- a/MdeModulePkg/MdeModulePkg.dec
+++ b/MdeModulePkg/MdeModulePkg.dec
@@ -955,6 +955,8 @@
# free pages for all of them. The page allocation for the type related to
# cleared bits keeps the same as ususal.
#
+ # This PCD is only valid if BIT0 and/or BIT2 are set in PcdHeapGuardPropertyMask.
+ #
# Below is bit mask for this PCD: (Order is same as UEFI spec)
# EfiReservedMemoryType 0x0000000000000001
# EfiLoaderCode 0x0000000000000002
@@ -984,6 +986,8 @@
# if there's enough free memory for all of them. The pool allocation for the
# type related to cleared bits keeps the same as ususal.
#
+ # This PCD is only valid if BIT1 and/or BIT3 are set in PcdHeapGuardPropertyMask.
+ #
# Below is bit mask for this PCD: (Order is same as UEFI spec)
# EfiReservedMemoryType 0x0000000000000001
# EfiLoaderCode 0x0000000000000002
@@ -1007,14 +1011,22 @@
gEfiMdeModulePkgTokenSpaceGuid.PcdHeapGuardPoolType|0x0|UINT64|0x30001053
## This mask is to control Heap Guard behavior.
- # Note that due to the limit of pool memory implementation and the alignment
- # requirement of UEFI spec, BIT7 is a try-best setting which cannot guarantee
- # that the returned pool is exactly adjacent to head guard page or tail guard
- # page.
+ #
+ # Note:
+ # a) Heap Guard is for debug purpose and should not be enabled in product
+ # BIOS.
+ # b) Due to the limit of pool memory implementation and the alignment
+ # requirement of UEFI spec, BIT7 is a try-best setting which cannot
+ # guarantee that the returned pool is exactly adjacent to head guard
+ # page or tail guard page.
+ # c) UEFI freed-memory guard and UEFI pool/page guard cannot be enabled
+ # at the same time.
+ #
# BIT0 - Enable UEFI page guard.
# BIT1 - Enable UEFI pool guard.
# BIT2 - Enable SMM page guard.
# BIT3 - Enable SMM pool guard.
+ # BIT4 - Enable UEFI freed-memory guard (Use-After-Free memory detection).
# BIT6 - Enable non-stop mode.
# BIT7 - The direction of Guard Page for Pool Guard.
# 0 - The returned pool is near the tail guard page.
@@ -1041,23 +1053,10 @@
# @Prompt VPD base address.
gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress|0x0|UINT32|0x00010010
- ## Maximum number of FV is supported by PeiCore's dispatching.
- # @Prompt Maximum number of FV supported by PeiCore.
- gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxFvSupported|6|UINT32|0x00010030
-
- ## Maximum File count in every FV is supported by PeiCore's dispatching.
- # PeiCore supported File type includes PEIM, Combined PEIM and FV.
- # @Prompt Maximum File count per FV supported by PeiCore.
- gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPeimPerFv|32|UINT32|0x00010031
-
## Maximum stack size for PeiCore.
# @Prompt Maximum stack size for PeiCore.
gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPeiStackSize|0x20000|UINT32|0x00010032
- ## Maximum PPI count is supported by PeiCore's PPI database.
- # @Prompt Maximum PPI count supported by PeiCore.
- gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPpiSupported|64|UINT32|0x00010033
-
## The maximum size of a single non-HwErr type variable.
# @Prompt Maximum variable size.
gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x400|UINT32|0x30000003
@@ -1995,12 +1994,6 @@
# @ValidList 0x80000001 | 0x0
gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr|0x0|UINT64|0x00030001
- ## This dynamic PCD hold an address to point to the memory of page table. The page table establishes a 1:1
- # Virtual to Physical mapping according to the processor physical address bits.
- # @Prompt Identify Mapping Page Table pointer.
- # @ValidList 0x80000001 | 0x0
- gEfiMdeModulePkgTokenSpaceGuid.PcdIdentifyMappingPageTablePtr|0x0|UINT64|0x00030002
-
## This dynamic PCD holds the information if there is any test key used by the platform.
# @Prompt If there is any test key used by the platform.
gEfiMdeModulePkgTokenSpaceGuid.PcdTestKeyUsed|FALSE|BOOLEAN|0x00030003
@@ -2016,5 +2009,13 @@
# @Prompt NV Storage Default Value Buffer
gEfiMdeModulePkgTokenSpaceGuid.PcdNvStoreDefaultValueBuffer|{0x0}|VOID*|0x00030005
+ ## VPD type PCD allows a developer to point to an absolute physical address PcdVpdBaseAddress64
+ # to store PCD value. It will be DynamicExDefault only.
+ # It is used to set VPD region base address. So, it can't be DynamicExVpd PCD. Its value is
+ # required to be accessed in PcdDxe driver entry point. So, its value must be set in PEI phase.
+ # It can't depend on EFI variable service, and can't be DynamicExHii PCD.
+ # @Prompt 64bit VPD base address.
+ gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress64|0x0|UINT64|0x00030006
+
[UserExtensions.TianoCore."ExtraFiles"]
MdeModulePkgExtra.uni