+ "Note: If a bit is cleared, the data section could be still non-executable if\n"\r
+ "PcdDxeNxMemoryProtectionPolicy is enabled for EfiLoaderData, EfiBootServicesData\n"\r
+ "and/or EfiRuntimeServicesData.<BR>"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdDxeNxMemoryProtectionPolicy_PROMPT #language en-US "Set DXE memory protection policy."\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdDxeNxMemoryProtectionPolicy_HELP #language en-US "Set DXE memory protection policy. The policy is bitwise.\n"\r
+ "If a bit is set, memory regions of the associated type will be mapped\n"\r
+ "non-executable.<BR>\n"\r
+ "If a bit is cleared, nothing will be done to associated type of memory.<BR><BR>\n"\r
+ "\n"\r
+ "Below is bit mask for this PCD: (Order is same as UEFI spec)<BR>\n"\r
+ "EfiReservedMemoryType 0x0001<BR>\n"\r
+ "EfiLoaderCode 0x0002<BR>\n"\r
+ "EfiLoaderData 0x0004<BR>\n"\r
+ "EfiBootServicesCode 0x0008<BR>\n"\r
+ "EfiBootServicesData 0x0010<BR>\n"\r
+ "EfiRuntimeServicesCode 0x0020<BR>\n"\r
+ "EfiRuntimeServicesData 0x0040<BR>\n"\r
+ "EfiConventionalMemory 0x0080<BR>\n"\r
+ "EfiUnusableMemory 0x0100<BR>\n"\r
+ "EfiACPIReclaimMemory 0x0200<BR>\n"\r
+ "EfiACPIMemoryNVS 0x0400<BR>\n"\r
+ "EfiMemoryMappedIO 0x0800<BR>\n"\r
+ "EfiMemoryMappedIOPortSpace 0x1000<BR>\n"\r
+ "EfiPalCode 0x2000<BR>\n"\r
+ "EfiPersistentMemory 0x4000<BR>\n"\r
+ "OEM Reserved 0x4000000000000000<BR>\n"\r
+ "OS Reserved 0x8000000000000000<BR>\n"\r
+ "\n"\r
+ "NOTE: User must NOT set NX protection for EfiLoaderCode / EfiBootServicesCode / EfiRuntimeServicesCode. <BR>\n"\r
+ "User MUST set the same NX protection for EfiBootServicesData and EfiConventionalMemory. <BR>\n"\r
+ "\n"\r
+ "e.g. 0x7FD5 can be used for all memory except Code. <BR>\n"\r
+ "e.g. 0x7BD4 can be used for all memory except Code and ACPINVS/Reserved. <BR>\n"\r
+ ""\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdPteMemoryEncryptionAddressOrMask_PROMPT #language en-US "The address mask when memory encryption is enabled."\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdPteMemoryEncryptionAddressOrMask_HELP #language en-US "This PCD holds the address mask for page table entries when memory encryption is\n"\r
+ "enabled on AMD processors supporting the Secure Encrypted Virtualization (SEV) feature.\n"\r
+ "This mask should be applied when creating 1:1 virtual to physical mapping tables."\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdCapsuleOnDiskSupport_PROMPT #language en-US "Enable Capsule On Disk support"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdCapsuleOnDiskSupport_HELP #language en-US "Capsule On Disk is to deliver capsules via files on Mass Storage device.<BR><BR>"\r
+ "This PCD indicates if the Capsule On Disk is supported.<BR>"\r
+ " TRUE - Capsule On Disk is supported.<BR>"\r
+ " FALSE - Capsule On Disk is not supported.<BR>"\r
+ "If platform does not use this feature, this PCD should be set to FALSE.<BR><BR>"\r
+ "Two sulotions to deliver Capsule On Disk:<BR>"\r
+ " a) If PcdCapsuleInRamSupport = TRUE, Load Capsule On Disk image out of TCB, and reuse Capsule In Ram to deliver capsule.<BR>"\r
+ " b) If PcdCapsuleInRamSupport = FALSE, Relocate Capsule On Disk image to RootDir out of TCB, and reuse FatPei to load capsules from external storage.<BR>"\r
+ "Note:<BR>"\r
+ "If Both Capsule In Ram and Capsule On Disk are provisioned at the same time, the Capsule On Disk will be bypassed."\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdCapsuleInRamSupport_PROMPT #language en-US "Enable Capsule In Ram support"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdCapsuleInRamSupport_HELP #language en-US "Capsule In Ram is to use memory to deliver the capsules that will be processed after system reset.<BR><BR>"\r
+ "This PCD indicates if the Capsule In Ram is supported.<BR>"\r
+ " TRUE - Capsule In Ram is supported.<BR>"\r
+ " FALSE - Capsule In Ram is not supported."\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdCodRelocationDevPath_PROMPT #language en-US "Capsule On Disk relacation device path."\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdCodRelocationDevPath_HELP #language en-US "Full device path of plaform specific device to store Capsule On Disk temp relocation file.<BR>"\r
+ "If this PCD is set, Capsule On Disk temp relocation file will be stored in the device specified by this PCD, instead of the EFI System Partition that stores capsule image file."\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdNullPointerDetectionPropertyMask_PROMPT #language en-US "Enable NULL pointer detection"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdNullPointerDetectionPropertyMask_HELP #language en-US "Mask to control the NULL address detection in code for different phases.\n"\r
+ " If enabled, accessing NULL address in UEFI or SMM code can be caught.\n\n"\r
+ " BIT0 - Enable NULL pointer detection for UEFI.\n"\r
+ " BIT1 - Enable NULL pointer detection for SMM.\n"\r
+ " BIT2..6 - Reserved for future uses.\n"\r
+ " BIT7 - Disable NULL pointer detection just after EndOfDxe."\r
+ " This is a workaround for those unsolvable NULL access issues in"\r
+ " OptionROM, boot loader, etc. It can also help to avoid unnecessary"\r
+ " exception caused by legacy memory (0-4095) access after EndOfDxe,"\r
+ " such as Windows 7 boot on Qemu.\n"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdInitValueInTempStack_PROMPT #language en-US "Init Value in Temp Stack"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdInitValueInTempStack_HELP #language en-US "Init Value in Temp Stack to be shared between SEC and PEI_CORE\n"\r
+ "SEC fills the full temp stack with this values. When switch stack, PeiCore can check\n"\r
+ "this value in the temp stack to know how many stack has been used.\n"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdHeapGuardPageType_PROMPT #language en-US "The memory type mask for Page Guard"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdHeapGuardPageType_HELP #language en-US "Indicates which type allocation need guard page.\n\n"\r
+ " If a bit is set, a head guard page and a tail guard page will be added just\n"\r
+ " before and after corresponding type of pages allocated if there's enough\n"\r
+ " free pages for all of them. The page allocation for the type related to\n"\r
+ " cleared bits keeps the same as ususal.\n\n"\r
+ " This PCD is only valid if BIT0 and/or BIT2 are set in PcdHeapGuardPropertyMask.\n\n"\r
+ " Below is bit mask for this PCD: (Order is same as UEFI spec)<BR>\n"\r
+ " EfiReservedMemoryType 0x0000000000000001\n"\r
+ " EfiLoaderCode 0x0000000000000002\n"\r
+ " EfiLoaderData 0x0000000000000004\n"\r
+ " EfiBootServicesCode 0x0000000000000008\n"\r
+ " EfiBootServicesData 0x0000000000000010\n"\r
+ " EfiRuntimeServicesCode 0x0000000000000020\n"\r
+ " EfiRuntimeServicesData 0x0000000000000040\n"\r
+ " EfiConventionalMemory 0x0000000000000080\n"\r
+ " EfiUnusableMemory 0x0000000000000100\n"\r
+ " EfiACPIReclaimMemory 0x0000000000000200\n"\r
+ " EfiACPIMemoryNVS 0x0000000000000400\n"\r
+ " EfiMemoryMappedIO 0x0000000000000800\n"\r
+ " EfiMemoryMappedIOPortSpace 0x0000000000001000\n"\r
+ " EfiPalCode 0x0000000000002000\n"\r
+ " EfiPersistentMemory 0x0000000000004000\n"\r
+ " OEM Reserved 0x4000000000000000\n"\r
+ " OS Reserved 0x8000000000000000\n"\r
+ " e.g. LoaderCode+LoaderData+BootServicesCode+BootServicesData are needed, 0x1E should be used.<BR>"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdHeapGuardPoolType_PROMPT #language en-US "The memory type mask for Pool Guard"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdHeapGuardPoolType_HELP #language en-US "Indicates which type allocation need guard page.\n\n"\r
+ " If a bit is set, a head guard page and a tail guard page will be added just\n"\r
+ " before and after corresponding type of pages which the allocated pool occupies,\n"\r
+ " if there's enough free memory for all of them. The pool allocation for the\n"\r
+ " type related to cleared bits keeps the same as ususal.\n\n"\r
+ " This PCD is only valid if BIT1 and/or BIT3 are set in PcdHeapGuardPropertyMask.\n\n"\r
+ " Below is bit mask for this PCD: (Order is same as UEFI spec)<BR>\n"\r
+ " EfiReservedMemoryType 0x0000000000000001\n"\r
+ " EfiLoaderCode 0x0000000000000002\n"\r
+ " EfiLoaderData 0x0000000000000004\n"\r
+ " EfiBootServicesCode 0x0000000000000008\n"\r
+ " EfiBootServicesData 0x0000000000000010\n"\r
+ " EfiRuntimeServicesCode 0x0000000000000020\n"\r
+ " EfiRuntimeServicesData 0x0000000000000040\n"\r
+ " EfiConventionalMemory 0x0000000000000080\n"\r
+ " EfiUnusableMemory 0x0000000000000100\n"\r
+ " EfiACPIReclaimMemory 0x0000000000000200\n"\r
+ " EfiACPIMemoryNVS 0x0000000000000400\n"\r
+ " EfiMemoryMappedIO 0x0000000000000800\n"\r
+ " EfiMemoryMappedIOPortSpace 0x0000000000001000\n"\r
+ " EfiPalCode 0x0000000000002000\n"\r
+ " EfiPersistentMemory 0x0000000000004000\n"\r
+ " OEM Reserved 0x4000000000000000\n"\r
+ " OS Reserved 0x8000000000000000\n"\r
+ " e.g. LoaderCode+LoaderData+BootServicesCode+BootServicesData are needed, 0x1E should be used.<BR>"\r
+\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdHeapGuardPropertyMask_PROMPT #language en-US "The Heap Guard feature mask"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdHeapGuardPropertyMask_HELP #language en-US "This mask is to control Heap Guard behavior.\n"\r
+ " Note:\n"\r
+ " a) Heap Guard is for debug purpose and should not be enabled in product"\r
+ " BIOS.\n"\r
+ " b) Due to the limit of pool memory implementation and the alignment"\r
+ " requirement of UEFI spec, BIT7 is a try-best setting which cannot"\r
+ " guarantee that the returned pool is exactly adjacent to head guard"\r
+ " page or tail guard page.\n"\r
+ " c) UEFI freed-memory guard and UEFI pool/page guard cannot be enabled"\r
+ " at the same time.\n"\r
+ " BIT0 - Enable UEFI page guard.<BR>\n"\r
+ " BIT1 - Enable UEFI pool guard.<BR>\n"\r
+ " BIT2 - Enable SMM page guard.<BR>\n"\r
+ " BIT3 - Enable SMM pool guard.<BR>\n"\r
+ " BIT4 - Enable UEFI freed-memory guard (Use-After-Free memory detection).<BR>\n"\r
+ " BIT7 - The direction of Guard Page for Pool Guard.\n"\r
+ " 0 - The returned pool is near the tail guard page.<BR>\n"\r
+ " 1 - The returned pool is near the head guard page.<BR>"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdCpuStackGuard_PROMPT #language en-US "Enable UEFI Stack Guard"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdCpuStackGuard_HELP #language en-US "Indicates if UEFI Stack Guard will be enabled.\n"\r
+ " If enabled, stack overflow in UEFI can be caught, preventing chaotic consequences.<BR><BR>\n"\r
+ " TRUE - UEFI Stack Guard will be enabled.<BR>\n"\r
+ " FALSE - UEFI Stack Guard will be disabled.<BR>"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdSetNvStoreDefaultId_PROMPT #language en-US "NV Storage DefaultId"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdSetNvStoreDefaultId_HELP #language en-US "This dynamic PCD enables the default variable setting.\n"\r
+ " Its value is the default store ID value. The default value is zero as Standard default.\n"\r
+ " When its value is set in PEI, it will trig the default setting to be applied as the default EFI variable.\n"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdNvStoreDefaultValueBuffer_PROMPT #language en-US "NV Storage Default Value Buffer"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdNvStoreDefaultValueBuffer_HELP #language en-US "This dynamic PCD holds the DynamicHii PCD value. Its value is the auto generated.\n"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdEdkiiFpdtStringRecordEnableOnly_PROMPT #language en-US "String FPDT Record Enable Only"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdEdkiiFpdtStringRecordEnableOnly_HELP #language en-US "Control which FPDT record format will be used to store the performance entry.\n"\r
+ "On TRUE, the string FPDT record will be used to store every performance entry.\n"\r
+ "On FALSE, the different FPDT record will be used to store the different performance entries."\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdVpdBaseAddress64_PROMPT #language en-US "64bit VPD base address"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdVpdBaseAddress64_HELP #language en-US "VPD type PCD allows a developer to point to an absolute physical address PcdVpdBaseAddress64"\r
+ "to store PCD value. It will be DynamicExDefault only."\r
+ "It is used to set VPD region base address. So, it can't be DynamicExVpd PCD. Its value is"\r
+ "required to be accessed in PcdDxe driver entry point. So, its value must be set in PEI phase."\r
+ "It can't depend on EFI variable service, and can't be DynamicExHii PCD."\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdUse5LevelPageTable_PROMPT #language en-US "Enable 5-Level Paging support in long mode"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdUse5LevelPageTable_HELP #language en-US "Indicates if 5-Level Paging will be enabled in long mode. 5-Level Paging will not be enabled"\r
+ "when the PCD is TRUE but CPU doesn't support 5-Level Paging."\r
+ " TRUE - 5-Level Paging will be enabled."\r
+ " FALSE - 5-Level Paging will not be enabled."\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdTcgPfpMeasurementRevision_PROMPT #language en-US "TCG Platform Firmware Profile revision"\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdTcgPfpMeasurementRevision_HELP #language en-US "Indicates which TCG Platform Firmware Profile revision the EDKII firmware follows."\r