]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/MdePkg.dec
Copy PCD from IntelFrameworkModulePkg to MdePkg and MdeModulePkg
[mirror_edk2.git] / MdePkg / MdePkg.dec
index b8dd9feb7269b114d0b67ebb0ef3aae6185d244b..bce005b7fa237684513cff2a3461d6835d3194ad 100644 (file)
@@ -1,11 +1,10 @@
 ## @file  MdePkg.dec\r
+# This Package provides all definitions, library classes and libraries instances.\r
 #\r
-# This Package provides all definitions(including functions, MACROs, structures and library classes)\r
-# and libraries instances, which are defined in MDE Specification.\r
 # It also provides the definitions(including PPIs/PROTOCOLs/GUIDs) of\r
-# EFI1.10/UEFI2.3.1/PI1.2 and some Industry Standards.\r
+# EFI1.10/UEFI2.4/PI1.3 and some Industry Standards.\r
 #\r
-# Copyright (c) 2007 - 2011, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2007 - 2015, Intel Corporation. All rights reserved.<BR>\r
 # Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>\r
 #\r
 # This program and the accompanying materials are licensed and made available under\r
@@ -22,8 +21,9 @@
 [Defines]\r
   DEC_SPECIFICATION              = 0x00010005\r
   PACKAGE_NAME                   = MdePkg\r
+  PACKAGE_UNI_FILE               = MdePkg.uni\r
   PACKAGE_GUID                   = 1E73767F-8F52-4603-AEB4-F29B510B6766\r
-  PACKAGE_VERSION                = 1.03\r
+  PACKAGE_VERSION                = 1.05\r
 \r
 \r
 [Includes]\r
@@ -44,6 +44,9 @@
 [Includes.ARM]\r
   Include/Arm\r
 \r
+[Includes.AARCH64]\r
+  Include/AArch64\r
+\r
 [LibraryClasses]\r
   ##  @libraryclass  Provides most usb APIs to support the Hid requests defined in Usb Hid 1.1 spec\r
   #                  and the standard requests defined in Usb 1.1 spec.\r
   ##\r
   PrintLib|Include/Library/PrintLib.h\r
 \r
+  ##  @libraryclass  Provides an ordered collection data structure.\r
+  OrderedCollectionLib|Include/Library/OrderedCollectionLib.h\r
+\r
   ##  @libraryclass  Provides services to send progress/error codes to a POST card.\r
   PostCodeLib|Include/Library/PostCodeLib.h\r
 \r
 \r
   ##  @libraryclass  Provide services to access I/O Ports and MMIO registers.\r
   IoLib|Include/Library/IoLib.h\r
+  \r
+  ##  @libraryclass  Provide services to create, get and update HSTI table in AIP protocol.\r
+  HstiLib|Include/Library/HstiLib.h\r
 \r
   ##  @libraryclass  Provides services to create and parse HOBs. Only available for PEI and DXE module types.\r
   HobLib|Include/Library/HobLib.h\r
   #                  Script Opcodes.  These OpCode will be restored by S3\r
   #                  related modules.\r
   S3BootScriptLib|Include/Library/S3BootScriptLib.h\r
-  \r
+\r
   ##  @libraryclass  I/O and MMIO Library Services that do I/O and also enable\r
   #                  the I/O operatation to be replayed during an S3 resume.\r
   #                  This library class maps directly on top of the IoLib class.\r
   #                  library class maps directly on top of the Timer class.\r
   S3StallLib|Include/Library/S3StallLib.h\r
 \r
+  ##  @libraryclass  Defines library APIs used by modules to get/set print error level.\r
+  DebugPrintErrorLevelLib|Include/Library/DebugPrintErrorLevelLib.h\r
+\r
+  ##  @libraryclass  provides EFI_FILE_HANDLE services\r
+  FileHandleLib|Include/Library/FileHandleLib.h\r
+\r
 [LibraryClasses.IA32, LibraryClasses.X64]\r
   ##  @libraryclass  Abstracts both S/W SMI generation and detection.\r
   ##\r
   #                  Only available to SMM/DXE Combined and SMM module types.\r
   SmmServicesTableLib|Include/Library/SmmServicesTableLib.h\r
 \r
+  ##  @libraryclass  Provides services for Smm Memory Operation.\r
+  #\r
+  SmmMemLib|Include/Library/SmmMemLib.h\r
+\r
   ##  @libraryclass  Provides services to enable/disable periodic SMI handlers.\r
   #\r
   SmmPeriodicSmiLib|Include/Library/SmmPeriodicSmiLib.h\r
-  \r
+\r
 [LibraryClasses.IPF]\r
   ##  @libraryclass  The SAL Library provides a service to make a SAL CALL.\r
   SalLib|Include/Library/SalLib.h\r
 \r
   ##  @libraryclass  Provides library services to make Extended SAL Calls.\r
   ExtendedSalLib|Include/Library/ExtendedSalLib.h\r
-  \r
+\r
 [Guids]\r
   #\r
   # GUID defined in UEFI2.1/UEFI2.0/EFI1.1\r
   ## Include/Guid/SmBios.h\r
   gEfiSmbiosTableGuid            = { 0xEB9D2D31, 0x2D88, 0x11D3, { 0x9A, 0x16, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D }}\r
 \r
+  ## Include/Guid/SmBios.h\r
+  gEfiSmbios3TableGuid           = { 0xF2FD1544, 0x9794, 0x4A2C, { 0x99, 0x2E, 0xE5, 0xBB, 0xCF, 0x20, 0xE3, 0x94 }}\r
+\r
   ## Include/Guid/Mps.h\r
   gEfiMpsTableGuid               = { 0xEB9D2D2F, 0x2D88, 0x11D3, { 0x9A, 0x16, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D }}\r
 \r
   gEfiCertSha512Guid             = { 0x93e0fae,  0xa6c4, 0x4f50, {0x9f, 0x1b, 0xd4, 0x1e, 0x2b, 0x89, 0xc1, 0x9a }}\r
   gEfiCertPkcs7Guid              = { 0x4aafd29d, 0x68df, 0x49ee, {0x8a, 0xa9, 0x34, 0x7d, 0x37, 0x56, 0x65, 0xa7 }}\r
 \r
+  ## Include/Protocol/Hash.h\r
+  gEfiHashAlgorithmSha1NoPadGuid = { 0x24c5dc2f, 0x53e2, 0x40ca, { 0x9e, 0xd6, 0xa5, 0xd9, 0xa4, 0x9f, 0x46, 0x3b }}\r
+  gEfiHashAlgorithmSha256NoPadGuid = { 0x8628752a, 0x6cb7, 0x4814, { 0x96, 0xfc, 0x24, 0xa8, 0x15, 0xac, 0x22, 0x26 }}\r
+\r
+  #\r
+  # GUIDs defined in UEFI2.4\r
+  #\r
+  ## Include/Guid/FmpCapsule.h\r
+  gEfiFmpCapsuleGuid             =  { 0x6dcbd5ed, 0xe82d, 0x4c44, {0xbd, 0xa1, 0x71, 0x94, 0x19, 0x9a, 0xd9, 0x2a }}\r
+\r
+  ## Include/Guid/ImageAuthentication.h\r
+  gEfiCertX509Sha256Guid         = { 0x3bd2a492, 0x96c0, 0x4079, {0xb4, 0x20, 0xfc, 0xf9, 0x8e, 0xf1, 0x03, 0xed }}\r
+  gEfiCertX509Sha384Guid         = { 0x7076876e, 0x80c2, 0x4ee6, {0xaa, 0xd2, 0x28, 0xb3, 0x49, 0xa6, 0x86, 0x5b }}\r
+  gEfiCertX509Sha512Guid         = { 0x446dbf63, 0x2502, 0x4cda, {0xbc, 0xfa, 0x24, 0x65, 0xd2, 0xb0, 0xfe, 0x9d }}\r
+\r
+  ## Include/Protocol/Rng.h\r
+  gEfiRngAlgorithmSp80090Hash256Guid = { 0xa7af67cb, 0x603b, 0x4d42, {0xba, 0x21, 0x70, 0xbf, 0xb6, 0x29, 0x3f, 0x96 }}\r
+  gEfiRngAlgorithmSp80090Hmac256Guid = { 0xc5149b43, 0xae85, 0x4f53, {0x99, 0x82, 0xb9, 0x43, 0x35, 0xd3, 0xa9, 0xe7 }}\r
+  gEfiRngAlgorithmSp80090Ctr256Guid  = { 0x44f0de6e, 0x4d8c, 0x4045, {0xa8, 0xc7, 0x4d, 0xd1, 0x68, 0x85, 0x6b, 0x9e }}\r
+  gEfiRngAlgorithmX9313DesGuid       = { 0x63c4785a, 0xca34, 0x4012, {0xa3, 0xc8, 0x0b, 0x6a, 0x32, 0x4f, 0x55, 0x46 }}\r
+  gEfiRngAlgorithmX931AesGuid        = { 0xacd03321, 0x777e, 0x4d3d, {0xb1, 0xc8, 0x20, 0xcf, 0xd8, 0x88, 0x20, 0xc9 }}\r
+  gEfiRngAlgorithmRaw                = { 0xe43176d7, 0xb6e8, 0x4827, {0xb7, 0x84, 0x7f, 0xfd, 0xc4, 0xb6, 0x85, 0x61 }}\r
+\r
+  ## Include/Protocol/AdapterInformation.h\r
+  gEfiAdapterInfoMediaStateGuid       = { 0xD7C74207, 0xA831, 0x4A26, {0xB1, 0xF5, 0xD1, 0x93, 0x06, 0x5C, 0xE8, 0xB6 }}\r
+  gEfiAdapterInfoNetworkBootGuid      = { 0x1FBD2960, 0x4130, 0x41E5, {0x94, 0xAC, 0xD2, 0xCF, 0x03, 0x7F, 0xB3, 0x7C }}\r
+  gEfiAdapterInfoSanMacAddressGuid    = { 0x114da5ef, 0x2cf1, 0x4e12, {0x9b, 0xbb, 0xc4, 0x70, 0xb5, 0x52, 0x5, 0xd9 }}\r
+\r
+  #\r
+  # GUIDs defined in UEFI2.5\r
+  #\r
+  ## Include/Guid/SystemResourceTable.h\r
+  gEfiSystemResourceTableGuid    = { 0xb122a263, 0x3661, 0x4f68, {0x99, 0x29, 0x78, 0xf8, 0xb0, 0xd6, 0x21, 0x80 }}\r
+\r
+  ## Include/Protocol/AdapterInformation.h\r
+  gEfiAdapterInfoUndiIpv6SupportGuid = { 0x4bd56be3, 0x4975, 0x4d8a, {0xa0, 0xad, 0xc4, 0x91, 0x20, 0x4b, 0x5d, 0x4d }}\r
+\r
+\r
   #\r
   # GUID defined in PI1.0\r
   #\r
   ## Include/Guid/FirmwareFileSystem3.h\r
   gEfiFirmwareFileSystem3Guid      = { 0x5473c07a, 0x3dcb, 0x4dca, { 0xbd, 0x6f, 0x1e, 0x96, 0x89, 0xe7, 0x34, 0x9a }}\r
 \r
+  #\r
+  # GUID defined in PI1.2.1\r
+  #\r
+  ## Include/Guid/EventGroup.h\r
+  gEfiEndOfDxeEventGroupGuid        = { 0x2ce967a, 0xdd7e, 0x4ffc, { 0x9e, 0xe7, 0x81, 0xc, 0xf0, 0x47, 0x8, 0x80 }}\r
+\r
+  ## Include/Guid/FirmwareContentsSigned.h\r
+  gEfiFirmwareContentsSignedGuid    = { 0xf9d89e8, 0x9259, 0x4f76, { 0xa5, 0xaf, 0xc, 0x89, 0xe3, 0x40, 0x23, 0xdf }}\r
+\r
+  ## Include/Guid/VectorHandoffTable.h\r
+  gEfiVectorHandoffTableGuid        = { 0x996ec11c, 0x5397, 0x4e73, { 0xb5, 0x8f, 0x82, 0x7e, 0x52, 0x90, 0x6d, 0xef }}\r
+\r
+  ## Include/IndustryStandard/Hsti.h\r
+  gAdapterInfoPlatformSecurityGuid  = {0x6be272c7, 0x1320, 0x4ccd, { 0x90, 0x17, 0xd4, 0x61, 0x2c, 0x01, 0x2b, 0x25 }}\r
+\r
+  #\r
+  # GUID defined in PI1.3\r
+  #\r
+  ## Guid for EFI_DISK_INFO_PROTOCOL.Interface to specify Nvme interface.\r
+  ## Include/Protocol/DiskInfo.h\r
+  gEfiDiskInfoNvmeInterfaceGuid  = { 0x3ab14680, 0x5d3f, 0x4a4d, { 0xbc, 0xdc, 0xcc, 0x38, 0x0, 0x18, 0xc7, 0xf7 }}\r
+  \r
+  #\r
+  # GUID defined in PI1.4\r
+  #\r
+  ## Include/Guid/GraphicsInfoHob.h\r
+  gEfiGraphicsInfoHobGuid           = { 0x39f62cce, 0x6825, 0x4669, { 0xbb, 0x56, 0x54, 0x1a, 0xba, 0x75, 0x3a, 0x07 }}\r
+\r
+  ## Guid for EFI_DISK_INFO_PROTOCOL.Interface to specify UFS interface.\r
+  ## Include/Protocol/DiskInfo.h\r
+  gEfiDiskInfoUfsInterfaceGuid   = { 0x4b3029cc, 0x6b98, 0x47fb, { 0xbc, 0x96, 0x76, 0xdc, 0xb8, 0x4, 0x41, 0xf0 }}\r
+\r
 [Guids.IA32, Guids.X64]\r
   ## Include/Guid/Cper.h\r
   gEfiIa32X64ErrorTypeCacheCheckGuid = { 0xA55701F5, 0xE3EF, 0x43de, { 0xAC, 0x72, 0x24, 0x9B, 0x57, 0x3F, 0xAD, 0x2C }}\r
   gEfiIa32X64ErrorTypeBusCheckGuid   = { 0x1CF3F8B3, 0xC5B1, 0x49a2, { 0xAA, 0x59, 0x5E, 0xEF, 0x92, 0xFF, 0xA6, 0x3C }}\r
 \r
   ## Include/Guid/Cper.h\r
-  gEfiIa32X64ErrorTypeMsCheckGuid    = { 0x48AB7F57, 0xDC34, 0x4f6c, { 0xA7, 0xD3, 0xB0, 0xB5, 0xB0, 0xA7, 0x43, 0x14 }} \r
+  gEfiIa32X64ErrorTypeMsCheckGuid    = { 0x48AB7F57, 0xDC34, 0x4f6c, { 0xA7, 0xD3, 0xB0, 0xB5, 0xB0, 0xA7, 0x43, 0x14 }}\r
 \r
 [Ppis]\r
   ## Include/Ppi/MasterBootMode.h\r
   ## Include/Ppi/Pcd.h\r
   gPcdPpiGuid = { 0x6e81c58, 0x4ad7, 0x44bc, { 0x83, 0x90, 0xf1, 0x2, 0x65, 0xf7, 0x24, 0x80 } }\r
 \r
+  ## Include/Ppi/PcdInfo.h\r
+  gGetPcdInfoPpiGuid                 = { 0x4d8b155b, 0xc059, 0x4c8f, { 0x89, 0x26,  0x6, 0xfd, 0x43, 0x31, 0xdb, 0x8a } }\r
+\r
   #\r
   # PPIs defined in PI 1.2.\r
   #\r
   ## Include/Ppi/PiPcd.h\r
   gEfiPeiPcdPpiGuid                  = { 0x1f34d25, 0x4de2, 0x23ad, { 0x3f, 0xf3, 0x36, 0x35, 0x3f, 0xf3, 0x23, 0xf1 } }\r
 \r
+  #\r
+  # PPIs defined in PI 1.2.1.\r
+  #\r
+\r
+  ## Include/Ppi/PiPcdInfo.h\r
+  gEfiGetPcdInfoPpiGuid              = { 0xa60c6b59, 0xe459, 0x425d, { 0x9c, 0x69,  0xb, 0xcc, 0x9c, 0xb2, 0x7d, 0x81 } }\r
+\r
+  ## Include/Ppi/TemporaryRamDone.h\r
+  gEfiTemporaryRamDonePpiGuid        = { 0xceab683c, 0xec56, 0x4a2d, { 0xa9, 0x6, 0x40, 0x53, 0xfa, 0x4e, 0x9c, 0x16 } }\r
+\r
+  ## Include/Ppi/VectorHandoffInfo.h\r
+  gEfiVectorHandoffInfoPpiGuid       = { 0x3cd652b4, 0x6d33, 0x4dce, { 0x89, 0xdb, 0x83, 0xdf, 0x97, 0x66, 0xfc, 0xca }}\r
+\r
+  #\r
+  # PPIs defined in PI 1.3.\r
+  #\r
+\r
+  ## Include/Ppi/I2cMaster.h\r
+  gEfiPeiI2cMasterPpiGuid            = { 0xb3bfab9b, 0x9f9c, 0x4e8b, { 0xad, 0x37, 0x7f, 0x8c, 0x51, 0xfc, 0x62, 0x80 }}\r
+\r
+  ## Include/Ppi/FirmwareVolumeInfo2.h\r
+  gEfiPeiFirmwareVolumeInfo2PpiGuid  = { 0xea7ca24b, 0xded5, 0x4dad, { 0xa3, 0x89, 0xbf, 0x82, 0x7e, 0x8f, 0x9b, 0x38 } }\r
+\r
+  #\r
+  # PPIs defined in PI 1.4.\r
+  #\r
+\r
+  ## Include/Ppi/Graphics.h\r
+  gEfiPeiGraphicsPpiGuid             = { 0x6ecd1463, 0x4a4a, 0x461b, { 0xaf, 0x5f, 0x5a, 0x33, 0xe3, 0xb2, 0x16, 0x2b } }\r
+  \r
+  ## Include/Ppi/MpServices.h\r
+  gEfiPeiMpServicesPpiGuid           = { 0xee16160a, 0xe8be, 0x47a6, { 0x82, 0xa, 0xc6, 0x90, 0xd, 0xb0, 0x25, 0xa } }\r
+\r
+\r
+\r
 [Protocols]\r
+  ## Include/Protocol/Pcd.h\r
+  gPcdProtocolGuid               = { 0x11B34006, 0xD85B, 0x4D0A, { 0xA2, 0x90, 0xD5, 0xA5, 0x71, 0x31, 0x0E, 0xF7 }}\r
+\r
+  ## Include/Protocol/PcdInfo.h\r
+  gGetPcdInfoProtocolGuid        = { 0x5be40f57, 0xfa68, 0x4610, { 0xbb, 0xbf, 0xe9, 0xc5, 0xfc, 0xda, 0xd3, 0x65 } }\r
+\r
   #\r
   # Protocols defined in PI1.0.\r
   #\r
 \r
   ## Include/Protocol/PiPcd.h\r
   gEfiPcdProtocolGuid = { 0x13a3f0f6, 0x264a, 0x3ef0, { 0xf2, 0xe0, 0xde, 0xc5, 0x12, 0x34, 0x2f, 0x34 } }\r
-  \r
+\r
   ## Include/Protocol/FirmwareVolumeBlock.h\r
   gEfiFirmwareVolumeBlock2ProtocolGuid = { 0x8f644fa9, 0xe850, 0x4db1, {0x9c, 0xe2, 0xb, 0x44, 0x69, 0x8e, 0x8d, 0xa4 } }\r
 \r
   ## Include/Protocol/CpuIo2.h\r
   gEfiCpuIo2ProtocolGuid = {0xad61f191, 0xae5f, 0x4c0e, {0xb9, 0xfa, 0xe8, 0x69, 0xd2, 0x88, 0xc6, 0x4f } }\r
-  \r
+\r
   ## Include/Protocol/LegacyRegion2.h\r
   gEfiLegacyRegion2ProtocolGuid = {0x70101eaf, 0x85, 0x440c, {0xb3, 0x56, 0x8e, 0xe3, 0x6f, 0xef, 0x24, 0xf0 } }\r
-  \r
+\r
   ## Include/Protocol/McaInitPmi.h\r
   gEfiSalMcaInitPmiProtocolGuid = { 0xb60dc6e8, 0x3b6f, 0x11d5, {0xaf, 0x9, 0x0, 0xa0, 0xc9, 0x44, 0xa0, 0x5b } }\r
 \r
   gEfiExtendedSalCacheServicesProtocolGuid = { 0xedc9494, 0x2743, 0x4ba5, { 0x88, 0x18, 0x0a, 0xef, 0x52, 0x13, 0xf1, 0x88 } }\r
   gEfiExtendedSalMcaLogServicesProtocolGuid = { 0xcb3fd86e, 0x38a3, 0x4c03, {0x9a, 0x5c, 0x90, 0xcf, 0xa3, 0xa2, 0xab, 0x7a } }\r
 \r
+  #\r
+  # Protocols defined in PI 1.2.1\r
+  #\r
+\r
+  ## Include/Protocol/Security2.h\r
+  gEfiSecurity2ArchProtocolGuid   = { 0x94ab2f58, 0x1438, 0x4ef1, {0x91, 0x52, 0x18, 0x94, 0x1a, 0x3a, 0x0e, 0x68 } }\r
+\r
+  ## Include/Protocol/SmmEndOfDxe.h\r
+  gEfiSmmEndOfDxeProtocolGuid = { 0x24e70042, 0xd5c5, 0x4260, { 0x8c, 0x39, 0xa, 0xd3, 0xaa, 0x32, 0xe9, 0x3d }}\r
+\r
+  ## Include/Protocol/PiPcdInfo.h\r
+  gEfiGetPcdInfoProtocolGuid      = { 0xfd0f4478,  0xefd, 0x461d, { 0xba, 0x2d, 0xe5, 0x8c, 0x45, 0xfd, 0x5f, 0x5e } }\r
+\r
+  #\r
+  # Protocols defined in PI 1.3.\r
+  #\r
+\r
+  ## Include/Protocol/I2cMaster.h\r
+  gEfiI2cMasterProtocolGuid = { 0xcd72881f, 0x45b5, 0x4feb, { 0x98, 0xc8, 0x31, 0x3d, 0xa8, 0x11, 0x74, 0x62 }}\r
+\r
+  ## Include/Protocol/I2cIo.h\r
+  gEfiI2cIoProtocolGuid = { 0xb60a3e6b, 0x18c4, 0x46e5, { 0xa2, 0x9a, 0xc9, 0xa1, 0x06, 0x65, 0xa2, 0x8e }}\r
+\r
+  ## Include/Protocol/I2cEnumerate.h\r
+  gEfiI2cEnumerateProtocolGuid = { 0xda8cd7c4, 0x1c00, 0x49e2, { 0x80, 0x3e, 0x52, 0x14, 0xe7, 0x01, 0x89, 0x4c }}\r
+\r
+  ## Include/Protocol/I2cHost.h\r
+  gEfiI2cHostProtocolGuid = { 0xa5aab9e3, 0xc727, 0x48cd, { 0x8b, 0xbf, 0x42, 0x72, 0x33, 0x85, 0x49, 0x48 }}\r
+\r
+  ## Include/Protocol/I2cBusConfigurationManagement.h\r
+  gEfiI2cBusConfigurationManagementProtocolGuid = { 0x55b71fb5, 0x17c6, 0x410e, { 0xb5, 0xbd, 0x5f, 0xa2, 0xe3, 0xd4, 0x46, 0x6b }}\r
+\r
   #\r
   # Protocols defined in UEFI2.1/UEFI2.0/EFI1.1\r
   #\r
   ## Include/Protocol/Hash.h\r
   gEfiHashProtocolGuid           = { 0xC5184932, 0xDBA5, 0x46DB, { 0xA5, 0xBA, 0xCC, 0x0B, 0xDA, 0x9C, 0x14, 0x35 }}\r
 \r
-  ## Include/Protocol/Pcd.h\r
-  gPcdProtocolGuid               = { 0x11B34006, 0xD85B, 0x4D0A, { 0xA2, 0x90, 0xD5, 0xA5, 0x71, 0x31, 0x0E, 0xF7 }}\r
-\r
   ## Include/Protocol/TcgService.h\r
   gEfiTcgProtocolGuid            = { 0xf541796d, 0xa62e, 0x4954, { 0xa7, 0x75, 0x95, 0x84, 0xf6, 0x1b, 0x9c, 0xdd }}\r
 \r
+  ## Include/Protocol/TrEEProtocol.h\r
+  gEfiTrEEProtocolGuid           = {0x607f766c, 0x7455, 0x42be, { 0x93, 0x0b, 0xe4, 0xd7, 0x6d, 0xb2, 0x72, 0x0f }}\r
+\r
   ## Include/Protocol/FormBrowser2.h\r
   gEfiFormBrowser2ProtocolGuid   =   {0xb9d4c360, 0xbcfb, 0x4f9b, {0x92, 0x98, 0x53, 0xc1, 0x36, 0x98, 0x22, 0x58}}\r
 \r
 \r
   ## Include/Protocol/IpSec.h\r
   gEfiIpSecProtocolGuid                = { 0xdfb386f7, 0xe100, 0x43ad, {0x9c, 0x9a, 0xed, 0x90, 0xd0, 0x8a, 0x5e, 0x12 }}\r
-  \r
+\r
   ## Include/Protocol/IpSec.h\r
   gEfiIpSec2ProtocolGuid               = { 0xa3979e64, 0xace8, 0x4ddc, {0xbc, 0x7, 0x4d, 0x66, 0xb8, 0xfd, 0x9, 0x77 }}\r
 \r
   gEfiBlockIo2ProtocolGuid             = { 0xa77b2472, 0xe282, 0x4e9f, {0xa2, 0x45, 0xc2, 0xc0, 0xe2, 0x7b, 0xbc, 0xc1 }}\r
 \r
   ## Include/Protocol/StorageSecurityCommand.h\r
-  gEfiStorageSecurityCommandProtocolGuid    = { 0xc88b0b6d, 0x0dfc, 0x49a7, {0x9c, 0xb4, 0x49, 0x7, 0x4b, 0x4c, 0x3a, 0x78 }}\r
+  gEfiStorageSecurityCommandProtocolGuid = { 0xc88b0b6d, 0x0dfc, 0x49a7, {0x9c, 0xb4, 0x49, 0x7, 0x4b, 0x4c, 0x3a, 0x78 }}\r
 \r
   ## Include/Protocol/UserCredential2.h\r
-  gEfiUserCredential2ProtocolGuid       = { 0xe98adb03, 0xb8b9, 0x4af8, {0xba, 0x20, 0x26, 0xe9, 0x11, 0x4c, 0xbc, 0xe5 }}\r
+  gEfiUserCredential2ProtocolGuid      = { 0xe98adb03, 0xb8b9, 0x4af8, {0xba, 0x20, 0x26, 0xe9, 0x11, 0x4c, 0xbc, 0xe5 }}\r
 \r
-[PcdsFeatureFlag]\r
-  ## If TRUE, the component name protocol will not be installed.\r
-  gEfiMdePkgTokenSpaceGuid.PcdComponentNameDisable|FALSE|BOOLEAN|0x0000000d\r
+  #\r
+  # Protocols defined in UEFI2.4\r
+  #\r
+  ## Include/Protocol/DiskIo2.h\r
+  gEfiDiskIo2ProtocolGuid              = { 0x151c8eae, 0x7f2c, 0x472c, { 0x9e, 0x54, 0x98, 0x28, 0x19, 0x4f, 0x6a, 0x88 }}\r
 \r
-  ## If TRUE, the driver diagnostics protocol will not be installed.\r
-  gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnosticsDisable|FALSE|BOOLEAN|0x0000000e\r
+  ## Include/Protocol/Timestamp.h\r
+  gEfiTimestampProtocolGuid            = { 0xafbfde41, 0x2e6e, 0x4262, {0xba, 0x65, 0x62, 0xb9, 0x23, 0x6e, 0x54, 0x95 }}\r
 \r
-  ## If TRUE, the component name2 protocol will not be installed.\r
-  gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable|FALSE|BOOLEAN|0x00000010\r
+  ## Include/Protocol/Rng.h\r
+  gEfiRngProtocolGuid                  = { 0x3152bca5, 0xeade, 0x433d, {0x86, 0x2e, 0xc0, 0x1c, 0xdc, 0x29, 0x1f, 0x44 }}\r
 \r
-  ## If TRUE, the driver diagnostics2 protocol will not be installed.\r
-  gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable|FALSE|BOOLEAN|0x00000011\r
+  ## Include/Protocol/AdapterInformation.h\r
+  gEfiAdapterInformationProtocolGuid   = { 0xE5DD1403, 0xD622, 0xC24E, {0x84, 0x88, 0xC7, 0x1B, 0x17, 0xF5, 0xE8, 0x02 }}\r
 \r
-  ## Indicates whether EFI 1.1 ISO 639-2 language supports are obsolete\r
-  gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLangDeprecate|FALSE|BOOLEAN|0x00000012\r
+  #\r
+  # Protocols defined in UEFI2.5\r
+  #\r
+  ## Include/Protocol/NvmExpressPassthru.h\r
+  gEfiNvmExpressPassThruProtocolGuid   = { 0x52c78312, 0x8edc, 0x4233, { 0x98, 0xf2, 0x1a, 0x1a, 0xa5, 0xe3, 0x88, 0xa5 }}\r
 \r
-  ## If TRUE, UGA Draw Protocol is still consumed.\r
-  gEfiMdePkgTokenSpaceGuid.PcdUgaConsumeSupport|TRUE|BOOLEAN|0x00000027\r
+  ## Include/Protocol/Hash2.h\r
+  gEfiHash2ServiceBindingProtocolGuid  = { 0xda836f8d, 0x217f, 0x4ca0, { 0x99, 0xc2, 0x1c, 0xa4, 0xe1, 0x60, 0x77, 0xea }}\r
 \r
-  ## If TRUE, a check will be made to see if a specified node is a member of  linked list\r
-  #  in the following BaseLib fucntions: GetNextNode(), IsNull(), IsNodeAtEnd(),\r
-  #  SwapListEntries()\r
-  gEfiMdePkgTokenSpaceGuid.PcdVerifyNodeInList|FALSE|BOOLEAN|0x00000028\r
+  ## Include/Protocol/Hash2.h\r
+  gEfiHash2ProtocolGuid                = { 0x55b1d734, 0xc5e1, 0x49db, { 0x96, 0x47, 0xb1, 0x6a, 0xfb, 0xe, 0x30, 0x5b }}\r
 \r
-[PcdsFixedAtBuild]\r
-  ## Indicates the maximum length of unicode string\r
-  gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength|1000000|UINT32|0x00000001\r
+  ## Include/Protocol/BlockIoCrypto.h\r
+  gEfiBlockIoCryptoProtocolGuid        = { 0xa00490ba, 0x3f1a, 0x4b4c, { 0xab, 0x90, 0x4f, 0xa9, 0x97, 0x26, 0xa1, 0xe8 }}\r
 \r
-  ## Indicates the maximum length of ascii string\r
-  gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength|1000000|UINT32|0x00000002\r
+  ## Include/Protocol/SmartCardReader.h\r
+  gEfiSmartCardReaderProtocolGuid      = { 0x2a4d1adf, 0x21dc, 0x4b81, {0xa4, 0x2f, 0x8b, 0x8e, 0xe2, 0x38, 0x00, 0x60 }}\r
 \r
-  ## Indicates the maximum node number of linked list\r
-  gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|1000000|UINT32|0x00000003\r
+  ## Include/Protocol/SmartCardEdge.h\r
+  gEfiSmartCardEdgeProtocolGuid        = { 0xd317f29b, 0xa325, 0x4712, {0x9b, 0xf1, 0xc6, 0x19, 0x54, 0xdc, 0x19, 0x8c }}\r
 \r
-  ## Indicates the timeout tick of holding spin lock\r
-  gEfiMdePkgTokenSpaceGuid.PcdSpinLockTimeout|10000000|UINT32|0x00000004\r
+  ## Include/Protocol/UsbFunctionIo.h\r
+  gEfiUsbFunctionIoProtocolGuid        = { 0x32d2963a, 0xfe5d, 0x4f30, {0xb6, 0x33, 0x6e, 0x5d, 0xc5, 0x58, 0x3, 0xcc }}\r
+  \r
+  ## Include/Protocol/BluetoothHc.h\r
+  gEfiBluetoothHcProtocolGuid         = { 0xb3930571, 0xbeba, 0x4fc5, { 0x92, 0x3, 0x94, 0x27, 0x24, 0x2e, 0x6a, 0x43 }}\r
+  \r
+  ## Include/Protocol/BluetoothIo.h\r
+  gEfiBluetoothIoServiceBindingProtocolGuid   = { 0x388278d3, 0x7b85, 0x42f0, { 0xab, 0xa9, 0xfb, 0x4b, 0xfd, 0x69, 0xf5, 0xab }}\r
+  gEfiBluetoothIoProtocolGuid                 = { 0x467313de, 0x4e30, 0x43f1, { 0x94, 0x3e, 0x32, 0x3f, 0x89, 0x84, 0x5d, 0xb5 }}\r
+  \r
+  ## Include/Protocol/BluetoothConfig.h\r
+  gEfiBluetoothConfigProtocolGuid             = { 0x62960cf3, 0x40ff, 0x4263, { 0xa7, 0x7c, 0xdf, 0xde, 0xbd, 0x19, 0x1b, 0x4b }}\r
 \r
-  ## The mask is used to control DebugLib behavior\r
-  gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0|UINT8|0x00000005\r
+#\r
+# [Error.gEfiMdePkgTokenSpaceGuid]\r
+#   0x80000001 | Invalid value provided.\r
+#   0x80000002 | Reserved bits must be set to zero.\r
+#   0x80000003 | Incorrect progress code provided.\r
+#\r
 \r
-  ## The mask is used to control ReportStatusCodeLib behavior\r
-  gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0|UINT8|0x00000007\r
+[PcdsFeatureFlag]\r
+  ## Indicates if the component name protocol will be installed.<BR><BR>\r
+  #   TRUE  - Does not install component name protocol.<BR>\r
+  #   FALSE - Install component name protocol.<BR>\r
+  # @Prompt Disable Component Name Protocol.\r
+  gEfiMdePkgTokenSpaceGuid.PcdComponentNameDisable|FALSE|BOOLEAN|0x0000000d\r
 \r
-  ## This value is used to fill a segment of memory\r
-  gEfiMdePkgTokenSpaceGuid.PcdDebugClearMemoryValue|0xAF|UINT8|0x00000008\r
+  ## Indicates if the diagnostics name protocol will be installed.<BR><BR>\r
+  #   TRUE  - Does not install diagnostics name protocol.<BR>\r
+  #   FALSE - Install diagnostics name protocol.<BR>\r
+  # @Prompt Disable Diagnostics Name protocol.\r
+  gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnosticsDisable|FALSE|BOOLEAN|0x0000000e\r
 \r
-  ## The mask is used to control PerformanceLib behavior\r
-  gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|0|UINT8|0x00000009\r
+  ## Indicates if the component name2 protocol will be installed.<BR><BR>\r
+  #   TRUE  - Does not install component name2 protocol.<BR>\r
+  #   FALSE - Install component name2 protocol.<BR>\r
+  # @Prompt Disable Component Name2 Protocol.\r
+  gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable|FALSE|BOOLEAN|0x00000010\r
 \r
-  ## The mask is used to control PostCodeLib behavior\r
-  gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0|UINT8|0x0000000b\r
+  ## Indicates if the diagnostics2 name protocol will be installed.<BR><BR>\r
+  #   TRUE  - Does not install diagnostics2 name protocol.<BR>\r
+  #   FALSE - Install diagnostics2 name protocol.<BR>\r
+  # @Prompt Disable Diagnostics2 Name Protocol.\r
+  gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable|FALSE|BOOLEAN|0x00000011\r
 \r
-  ## This value is used to set the FSB clock\r
-  gEfiMdePkgTokenSpaceGuid.PcdFSBClock|200000000|UINT32|0x0000000c\r
+  ## Indicates if EFI 1.1 ISO 639-2 language supports are obsolete<BR><BR>\r
+  #   TRUE  - Deprecate global variable LangCodes.<BR>\r
+  #   FALSE - Does not deprecate global variable LangCodes.<BR>\r
+  # @Prompt Deprecate Global Variable LangCodes.\r
+  gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLangDeprecate|FALSE|BOOLEAN|0x00000012\r
 \r
-  ## The maxium allowable size of formatted unicode string\r
-  gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|320|UINT32|0x101\r
+  ## Indicates if UGA Draw Protocol is still consumed.<BR><BR>\r
+  #   TRUE  - Consume UGA Draw protocol.<BR>\r
+  #   FALSE - Does not consume UGA Draw protocol.<BR>\r
+  # @Prompt Consume UGA Draw Protocol.\r
+  gEfiMdePkgTokenSpaceGuid.PcdUgaConsumeSupport|TRUE|BOOLEAN|0x00000027\r
 \r
-  ## Status code value for indicating a watchdog timer is expired\r
+  ## Indicates if a check will be made to see if a specified node is a member of linked list\r
+  #  in the following BaseLib functions: GetNextNode(), IsNull(), IsNodeAtEnd(), SwapListEntries().<BR><BR>\r
+  #   TRUE  - Verify a specified node is a member of linked list.<BR>\r
+  #   FALSE - Does not verify a specified node is a member of linked list.<BR>\r
+  # @Prompt Verify Node In List.\r
+  gEfiMdePkgTokenSpaceGuid.PcdVerifyNodeInList|FALSE|BOOLEAN|0x00000028\r
+\r
+  ## If TRUE, OrderedCollectionLib is instructed to validate the\r
+  #  ORDERED_COLLECTION structure at the end of such operations (typically\r
+  #  structure modifications) that justify validation of the structure for unit\r
+  #  testing purposes.\r
+  # @Prompt Validate ORDERED_COLLECTION structure\r
+  gEfiMdePkgTokenSpaceGuid.PcdValidateOrderedCollection|FALSE|BOOLEAN|0x0000002a\r
+\r
+[PcdsFixedAtBuild]\r
+  ## Status code value for indicating a watchdog timer has expired.\r
   # EFI_COMPUTING_UNIT_HOST_PROCESSOR | EFI_CU_HP_EC_TIMER_EXPIRED\r
+  # @Prompt Progress Code for WatchDog Timer Expired.\r
+  # @ValidList  0x80000003 | 0x00011003\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueEfiWatchDogTimerExpired|0x00011003|UINT32|0x00000013\r
 \r
   ## Status code value for indicating the invocation of SetVirtualAddressMap()\r
   # EFI_SOFTWARE_EFI_RUNTIME_SERVICE | EFI_SW_RS_PC_SET_VIRTUAL_ADDRESS_MAP\r
+  # @Prompt Progress Code for Invocation of SetVirtualAddressMap.\r
+  # @ValidList  0x80000003 | 0x03111004\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueSetVirtualAddressMap|0x03111004|UINT32|0x00000014\r
 \r
   ## Status code value for indicating the start of memory test\r
   # EFI_COMPUTING_UNIT_MEMORY | EFI_CU_MEMORY_PC_TEST\r
+  # @Prompt Progress Code for Memory Test Start.\r
+  # @ValidList  0x80000003 | 0x00051006\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueMemoryTestStarted|0x00051006|UINT32|0x00000015\r
 \r
   ## Status code value for indicating memory error in memory test\r
   # EFI_COMPUTING_UNIT_MEMORY | EFI_CU_MEMORY_EC_UNCORRECTABLE\r
+  # @Prompt Progress Code for Memory Error.\r
+  # @ValidList  0x80000003 | 0x00051003\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueUncorrectableMemoryError|0x00051003|UINT32|0x00000016\r
 \r
-  ## Status code value for indicating the failure of console operation\r
+  ## Status code value for console operation failure.\r
   # EFI_PERIPHERAL_REMOTE_CONSOLE | EFI_P_EC_CONTROLLER_ERROR\r
+  # @Prompt Progress Code for Console Error.\r
+  # @ValidList  0x80000003 | 0x01040006\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueRemoteConsoleError|0x01040006|UINT32|0x00000017\r
 \r
-  ## Status code value for indicating the failure of console reset operation\r
+  ## Status code value for console reset operation failure.\r
   # EFI_PERIPHERAL_REMOTE_CONSOLE | EFI_P_PC_RESET\r
+  # @Prompt Progress Code for Console Reset.\r
+  # @ValidList  0x80000003 | 0x01040001\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueRemoteConsoleReset|0x01040001|UINT32|0x00000018\r
 \r
-  ## Status code value for indicating the failure of console input operation\r
+  ## Status code value for console input operation failure.\r
   # EFI_PERIPHERAL_REMOTE_CONSOLE | EFI_P_EC_INPUT_ERROR\r
+  # @Prompt Progress Code for Console Input Error.\r
+  # @ValidList  0x80000003 | 0x01040007\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueRemoteConsoleInputError|0x01040007|UINT32|0x00000019\r
 \r
-  ## Status code value for indicating the failure of console output operation\r
+  ## Status code value for console output operation failure.\r
   # EFI_PERIPHERAL_REMOTE_CONSOLE | EFI_P_EC_OUTPUT_ERROR\r
+  # @Prompt Progress Code for Console Output Error.\r
+  # @ValidList  0x80000003 | 0x01040008\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueRemoteConsoleOutputError|0x01040008|UINT32|0x0000001a\r
 \r
-  ## Status code value for indicating the failure of mouse operation\r
+  ## Status code value for mouse operation failure.\r
   # EFI_PERIPHERAL_MOUSE | EFI_P_EC_INTERFACE_ERROR\r
+  # @Prompt Progress Code for Module Device Failure.\r
+  # @ValidList  0x80000003 | 0x01020005\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueMouseInterfaceError|0x01020005|UINT32|0x30001000\r
 \r
-  ## Status code value for indicating the enable of mouse device\r
+  ## Status code value for indicating mouse device has been enabled.\r
   # EFI_PERIPHERAL_MOUSE | EFI_P_PC_ENABLE\r
+  # @Prompt Progress Code for Enable Mouse Device.\r
+  # @ValidList  0x80000003 | 0x01020004\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueMouseEnable|0x01020004|UINT32|0x30001001\r
 \r
-  ## Status code value for indicating the disable of mouse device\r
+  ## Status code value for indicating mouse device has been disabled.\r
   # EFI_PERIPHERAL_MOUSE | EFI_P_PC_DISABLE\r
+  # @Prompt Progress Code for Disable Mouse Device.\r
+  # @ValidList  0x80000003 | 0x01020002\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueMouseDisable|0x01020002|UINT32|0x30001002\r
 \r
-  ## Status code value for indicating the enable of keyboard device\r
+  ## Status code value for enabling keyboard device.\r
   # EFI_PERIPHERAL_KEYBOARD | EFI_P_PC_ENABLE\r
+  # @Prompt Progress Code for Enable Keyboard Device.\r
+  # @ValidList  0x80000003 | 0x01010004\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueKeyboardEnable|0x01010004|UINT32|0x30001003\r
 \r
-  ## Status code value for indicating the disable of keyboard device\r
+  ## Status code value for disabling keyboard device.\r
   # EFI_PERIPHERAL_KEYBOARD | EFI_P_PC_DISABLE\r
+  # @Prompt Progress Code for Disable Keyboard Device.\r
+  # @ValidList  0x80000003 | 0x01010002\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueKeyboardDisable|0x01010002|UINT32|0x30001004\r
 \r
-  ## Status code value for indicating whether keboard device is present\r
+  ## Status code value for indicating presence of keyboard.\r
   # EFI_PERIPHERAL_KEYBOARD | EFI_P_PC_PRESENCE_DETECT\r
+  # @Prompt Progress Code for Detect Keyboard Device.\r
+  # @ValidList  0x80000003 | 0x01010003\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueKeyboardPresenceDetect|0x01010003|UINT32|0x30001005\r
 \r
-  ## Status code value for indicating the reset operation of keyboard device\r
+  ## Status code value for keyboard operation reset operation.\r
   # EFI_PERIPHERAL_KEYBOARD | EFI_P_PC_RESET\r
+  # @Prompt Progress Code for Keyboard Device Reset.\r
+  # @ValidList  0x80000003 | 0x01010001\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueKeyboardReset|0x01010001|UINT32|0x30001006\r
 \r
-  ## Status code value for indicating the clear buffer operation of keyboard device\r
+  ## Status code value for keyboard clear buffer operation.\r
   # EFI_PERIPHERAL_KEYBOARD | EFI_P_KEYBOARD_PC_CLEAR_BUFFER\r
+  # @Prompt Progress Code for Keyboard Device Clear Buffer.\r
+  # @ValidList  0x80000003 | 0x01011000\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueKeyboardClearBuffer|0x01011000|UINT32|0x30001007\r
 \r
-  ## Status code value for indicating the self test of keyboard device\r
+  ## Status code value for keyboard device self-test.\r
   # EFI_PERIPHERAL_KEYBOARD | EFI_P_KEYBOARD_PC_SELF_TEST\r
+  # @Prompt Progress Code for Keyboard Device SelfTest.\r
+  # @ValidList  0x80000003 | 0x01011001\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueKeyboardSelfTest|0x01011001|UINT32|0x30001008\r
 \r
-  ## Status code value for indicating the operation of keyboard device is failed\r
+  ## Status code value for indicating keyboard device failure.\r
   # EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_INTERFACE_ERROR\r
+  # @Prompt Progress Code for Keyboard Device Failure.\r
+  # @ValidList  0x80000003 | 0x01010005\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueKeyboardInterfaceError|0x01010005|UINT32|0x30001009\r
 \r
-  ## Status code value for indicating the failure of keyboard input handler\r
+  ## Status code value for indicating keyboard input handler failure.\r
   # EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_INPUT_ERROR\r
+  # @Prompt Progress Code for Keyboard Input Failure.\r
+  # @ValidList  0x80000003 | 0x01010007\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueKeyboardInputError|0x01010007|UINT32|0x3000100a\r
 \r
-  ## Status code value for indicating the failure of mouse input handler\r
+  ## Status code value for mouse input handler failure.\r
   # EFI_PERIPHERAL_MOUSE | EFI_P_EC_INPUT_ERROR\r
+  # @Prompt Progress Code for Mouse Input Failure.\r
+  # @ValidList  0x80000003 | 0x01020007\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueMouseInputError|0x01020007|UINT32|0x3000100b\r
 \r
-  ## Status code value for indicating the reset operation of mouse device\r
+  ## Status code value for mouse device reset operation.\r
   # EFI_PERIPHERAL_MOUSE | EFI_P_PC_RESET\r
+  # @Prompt Progress Code for Mouse Device Reset.\r
+  # @ValidList  0x80000003 | 0x01020001\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueMouseReset|0x01020001|UINT32|0x3000100c\r
 \r
-  ## Status code value for indicating the handoff from Pei phase to Dxe phase\r
+  ## Status code value for indicating the handoff from PEI phase to DXE phase.\r
   # EFI_SOFTWARE_PEI_CORE | EFI_SW_PEI_CORE_PC_HANDOFF_TO_NEXT\r
+  # @Prompt Progress Code for Handoff from Pei phase to Dxe phase.\r
+  # @ValidList  0x80000003 | 0x3021001\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValuePeiHandoffToDxe|0x3021001|UINT32|0x3000100d\r
 \r
   ## Status code value for indicating one PEIM is dispatched.\r
   #  EFI_SOFTWARE_PEI_CORE | EFI_SW_PC_INIT_BEGIN\r
+  # @Prompt Progress Code for Dispatching One PEIM.\r
+  # @ValidList  0x80000003 | 0x3020002\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValuePeimDispatch|0x3020002|UINT32|0x3000100e\r
 \r
-  ## Status code value for indicating entering PeiCore\r
+  ## Status code value for PeiCore entry.\r
   #  EFI_SOFTWARE_PEI_CORE | EFI_SW_PC_INIT\r
+  # @Prompt Progress Code for PeiCore Entry.\r
+  # @ValidList  0x80000003 | 0x3020000\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValuePeiCoreEntry|0x3020000|UINT32|0x3000100f\r
 \r
-  ## Status code value for indicating entering DxeCore\r
+  ## Status code value for DxeCore entry.\r
   # EFI_SOFTWARE_DXE_CORE | EFI_SW_DXE_CORE_PC_ENTRY_POINT\r
+  # @Prompt Progress Code for DxeCore Entry.\r
+  # @ValidList  0x80000003 | 0x3041000\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueDxeCoreEntry|0x3041000|UINT32|0x30001010\r
 \r
-  ## Status code value for indicating the handoff from DxeCore to Bds\r
+  ## Status code value for handoff from DxeCore to BDS.\r
   # EFI_SOFTWARE_DXE_CORE | EFI_SW_DXE_CORE_PC_HANDOFF_TO_NEXT\r
+  # @Prompt Progress Code for Handoff from DxeCore to BDS.\r
+  # @ValidList  0x80000003 | 0x3041001\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueDxeCoreHandoffToBds|0x3041001|UINT32|0x30001011\r
 \r
-  ## Status code value for indicating the exit of boot service\r
+  ## Status code value for indicating boot service exit.\r
   # EFI_SOFTWARE_EFI_BOOT_SERVICE | EFI_SW_BS_PC_EXIT_BOOT_SERVICES\r
+  # @Prompt Progress Code for Exit of Boot Service.\r
+  # @ValidList  0x80000003 | 0x3101019\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueBootServiceExit|0x3101019|UINT32|0x30001012\r
 \r
-  ## Status code value for indicating the begin of Dxe driver\r
+  ## Status code value for indicating the beginning of DXE driver.\r
   # EFI_SOFTWARE_DXE_CORE | EFI_SW_PC_INIT_BEGIN\r
+  # @Prompt Progress Code for Begin of DXE Driver.\r
+  # @ValidList  0x80000003 | 0x3040002\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueDxeDriverBegin|0x3040002|UINT32|0x30001013\r
 \r
-  ## Status code value for indicating the end of Dxe driver\r
+  ## Status code value for indicating the end of DXE drive.\r
   # EFI_SOFTWARE_DXE_CORE | EFI_SW_PC_INIT_END\r
+  # @Prompt Progress Code for End of DXE Driver.\r
+  # @ValidList  0x80000003 | 0x3040003\r
   gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValueDxeDriverEnd|0x3040003|UINT32|0x30001014\r
 \r
-  ## This value is used to set the available memory address to store Guided Extract Handlers.\r
-  #  The required memory space is decided by the value of PcdMaximumGuidedExtractHandler.\r
-  gEfiMdePkgTokenSpaceGuid.PcdGuidedExtractHandlerTableAddress|0x1000000|UINT64|0x30001015\r
-\r
-[PcdsFixedAtBuild.IPF]\r
-  ## The base address of IO port space for IA64 arch\r
-  gEfiMdePkgTokenSpaceGuid.PcdIoBlockBaseAddressForIpf|0x0ffffc000000|UINT64|0x0000000f\r
+  ## This flag is used to control build time optimization based on debug print level.\r
+  #  Its default value is 0xFFFFFFFF to expose all debug print level.\r
+  #  BIT0  - Initialization message.<BR>\r
+  #  BIT1  - Warning message.<BR>\r
+  #  BIT2  - Load Event message.<BR>\r
+  #  BIT3  - File System message.<BR>\r
+  #  BIT4  - Allocate or Free Pool message.<BR>\r
+  #  BIT5  - Allocate or Free Page message.<BR>\r
+  #  BIT6  - Information message.<BR>\r
+  #  BIT7  - Dispatcher message.<BR>\r
+  #  BIT8  - Variable message.<BR>\r
+  #  BIT10 - Boot Manager message.<BR>\r
+  #  BIT12 - BlockIo Driver message.<BR>\r
+  #  BIT14 - Network Driver message.<BR>\r
+  #  BIT16 - UNDI Driver message.<BR>\r
+  #  BIT17 - LoadFile message.<BR>\r
+  #  BIT19 - Event message.<BR>\r
+  #  BIT20 - Global Coherency Database changes message.<BR>\r
+  #  BIT21 - Memory range cachability changes message.<BR>\r
+  #  BIT22 - Detailed debug message.<BR>\r
+  #  BIT31 - Error message.<BR>\r
+  # @Prompt Fixed Debug Message Print Level.\r
+  gEfiMdePkgTokenSpaceGuid.PcdFixedDebugPrintErrorLevel|0xFFFFFFFF|UINT32|0x30001016\r
 \r
 [PcdsFixedAtBuild,PcdsPatchableInModule]\r
-  ## This flag is used to control the printout of DebugLib\r
+  ## Indicates the maximum length of unicode string used in the following\r
+  #  BaseLib functions: StrLen(), StrSize(), StrCmp(), StrnCmp(), StrCpy(), StrnCpy()<BR><BR>\r
+  #  0  - No length check for unicode string.<BR>\r
+  #  >0 - Maximum length of unicode string.<BR>\r
+  # @Prompt Maximum Length of Unicode String.\r
+  gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength|1000000|UINT32|0x00000001\r
+\r
+  ## Indicates the maximum length of ascii string used in the following\r
+  #  BaseLib functions: AsciiStrLen(), AsciiStrSize(), AsciiStrCmp(), AsciiStrnCmp(),\r
+  #  AsciiStrCpy(), AsciiStrnCpy(). <BR><BR>\r
+  #  0  - No length check for ascii string.<BR>\r
+  #  >0 - Maximum length of ascii string.<BR>\r
+  # @Prompt Maximum Length of Ascii String.\r
+  gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength|1000000|UINT32|0x00000002\r
+\r
+  ## Indicates the maximum node number of linked list.<BR><BR>\r
+  #  0  - No node number check for linked list.<BR>\r
+  #  >0 - Maximum node number of linked list.<BR>\r
+  # @Prompt Maximum Length of Linked List.\r
+  gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|1000000|UINT32|0x00000003\r
+\r
+  ## Indicates the maximum node number of device path.<BR><BR>\r
+  #  0  - No node number check for device path.<BR>\r
+  #  >0 - Maximum node number of device path.<BR>\r
+  # @Prompt Maximum node number of device path.\r
+  gEfiMdePkgTokenSpaceGuid.PcdMaximumDevicePathNodeCount|0|UINT32|0x00000029\r
+\r
+  ## Indicates the timeout tick of holding spin lock.<BR><BR>\r
+  #  0  - No timeout.<BR>\r
+  #  >0 - Timeout tick of holding spin lock.<BR>\r
+  # @Prompt Spin Lock Timeout (us).\r
+  gEfiMdePkgTokenSpaceGuid.PcdSpinLockTimeout|10000000|UINT32|0x00000004\r
+\r
+  ## The mask is used to control DebugLib behavior.<BR><BR>\r
+  #  BIT0 - Enable Debug Assert.<BR>\r
+  #  BIT1 - Enable Debug Print.<BR>\r
+  #  BIT2 - Enable Debug Code.<BR>\r
+  #  BIT3 - Enable Clear Memory.<BR>\r
+  #  BIT4 - Enable BreakPoint as ASSERT.<BR>\r
+  #  BIT5 - Enable DeadLoop as ASSERT.<BR>\r
+  # @Prompt Debug Property.\r
+  # @Expression  0x80000002 | (gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask & 0xC0) == 0\r
+  gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0|UINT8|0x00000005\r
+\r
+  ## This flag is used to control the print out Debug message.<BR><BR>\r
+  #  BIT0  - Initialization message.<BR>\r
+  #  BIT1  - Warning message.<BR>\r
+  #  BIT2  - Load Event message.<BR>\r
+  #  BIT3  - File System message.<BR>\r
+  #  BIT4  - Allocate or Free Pool message.<BR>\r
+  #  BIT5  - Allocate or Free Page message.<BR>\r
+  #  BIT6  - Information message.<BR>\r
+  #  BIT7  - Dispatcher message.<BR>\r
+  #  BIT8  - Variable message.<BR>\r
+  #  BIT10 - Boot Manager message.<BR>\r
+  #  BIT12 - BlockIo Driver message.<BR>\r
+  #  BIT14 - Network Driver message.<BR>\r
+  #  BIT16 - UNDI Driver message.<BR>\r
+  #  BIT17 - LoadFile message.<BR>\r
+  #  BIT19 - Event message.<BR>\r
+  #  BIT20 - Global Coherency Database changes message.<BR>\r
+  #  BIT21 - Memory range cachability changes message.<BR>\r
+  #  BIT22 - Detailed debug message.<BR>\r
+  #  BIT31 - Error message.<BR>\r
+  # @Prompt Debug Message Print Level.\r
+  # @Expression  0x80000002 | (gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel & 0x7F84AA00) == 0\r
   gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000000|UINT32|0x00000006\r
 \r
-  ## Indicates the allowable maximum number in extract handler table\r
+  ## The mask is used to control ReportStatusCodeLib behavior.<BR><BR>\r
+  #  BIT0 - Enable Progress Code.<BR>\r
+  #  BIT1 - Enable Error Code.<BR>\r
+  #  BIT2 - Enable Debug Code.<BR>\r
+  # @Prompt Report Status Code Property.\r
+  # @Expression  0x80000002 | (gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask & 0xF8) == 0\r
+  gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0|UINT8|0x00000007\r
+\r
+  ## This value is used to fill a segment of memory when PcdDebugPropertyMask Clear Memory is enabled.\r
+  # @Prompt Value to Clear Memory.\r
+  gEfiMdePkgTokenSpaceGuid.PcdDebugClearMemoryValue|0xAF|UINT8|0x00000008\r
+\r
+  ## The mask is used to control PerformanceLib behavior.<BR><BR>\r
+  #  BIT0 - Enable Performance Measurement.<BR>\r
+  # @Prompt Performance Measurement Property.\r
+  # @Expression  0x80000002 | (gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask & 0xFE) == 0\r
+  gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|0|UINT8|0x00000009\r
+\r
+  ## The mask is used to control PostCodeLib behavior.<BR><BR>\r
+  #  BIT0 - Enable Post Code.<BR>\r
+  #  BIT1 - Enable Post Code with Description.<BR>\r
+  # @Prompt Post Code Property.\r
+  # @Expression  0x80000002 | (gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask & 0xFC) == 0\r
+  gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0|UINT8|0x0000000b\r
+\r
+  ## This value is used to configure X86 Processor FSB clock.\r
+  # @Prompt FSB Clock.\r
+  gEfiMdePkgTokenSpaceGuid.PcdFSBClock|200000000|UINT32|0x0000000c\r
+\r
+  ## The maximum printable number of characters. UefLib functions: AsciiPrint(), AsciiErrorPrint(),\r
+  #  PrintXY(), AsciiPrintXY(), Print(), ErrorPrint() base on this PCD value to print characters.\r
+  # @Prompt Maximum Printable Number of Characters.\r
+  gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|320|UINT32|0x101\r
+\r
+  ## This is the print buffer length for FileHandleLib.\r
+  #  FileHandlePrintLine() sizes buffers based on this PCD value for printing.\r
+  # @Prompt Number of Printable Characters.\r
+  gEfiMdePkgTokenSpaceGuid.PcdUefiFileHandleLibPrintBufferSize|1536|UINT16|0x201\r
+\r
+  ## Indicates the allowable maximum number in extract handler table.\r
+  # @Prompt Maximum Number of GuidedExtractHandler.\r
   gEfiMdePkgTokenSpaceGuid.PcdMaximumGuidedExtractHandler|0x10|UINT32|0x00000025\r
 \r
-  ## Indicates the default timeouts for USB transfers in milliseconds\r
+  ## Indicates the default timeouts for USB transfers in milliseconds.\r
+  # @Prompt USB Transfer Timeout (ms).\r
   gEfiMdePkgTokenSpaceGuid.PcdUsbTransferTimeoutValue|3000|UINT32|0x00000026\r
 \r
+  ## This value is used to set the available memory address to store Guided Extract Handlers.\r
+  #  The required memory space is decided by the value of PcdMaximumGuidedExtractHandler.\r
+  # @Prompt Memory Address of GuidedExtractHandler Table.\r
+  gEfiMdePkgTokenSpaceGuid.PcdGuidedExtractHandlerTableAddress|0x1000000|UINT64|0x30001015\r
+\r
+[PcdsFixedAtBuild.IPF, PcdsPatchableInModule.IPF]\r
+  ## The base address of IO port space for IA64 arch.\r
+  # @Prompt IA64 IO Port Space Base Address.\r
+  gEfiMdePkgTokenSpaceGuid.PcdIoBlockBaseAddressForIpf|0x0ffffc000000|UINT64|0x0000000f\r
+\r
 [PcdsFixedAtBuild, PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx]\r
-  ## This value is used to set the base address of pci express hierarchy\r
+  ## This value is used to set the base address of PCI express hierarchy.\r
+  # @Prompt PCI Express Base Address.\r
   gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xE0000000|UINT64|0x0000000a\r
 \r
-  ## Default current ISO 639-2 language: English & French\r
+  ## Default current ISO 639-2 language: English & French.\r
+  # @Prompt Default Value of LangCodes Variable.\r
   gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLangCodes|"engfraengfra"|VOID*|0x0000001c\r
 \r
-  ## Default current ISO 639-2 language: English\r
+  ## Default current ISO 639-2 language: English.\r
+  # @Prompt Default Value of Lang Variable.\r
   gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang|"eng"|VOID*|0x0000001d\r
 \r
-  ## Default platform supported RFC 4646 languages: (American) English & French\r
+  ## Default platform supported RFC 4646 languages: (American) English & French.\r
+  # @Prompt Default Value of PlatformLangCodes Variable.\r
   gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLangCodes|"en;fr;en-US;fr-FR"|VOID*|0x0000001e\r
 \r
-  ## Defualt current RFC 4646 language: (American) English\r
+  ## Default current RFC 4646 language: (American) English.\r
+  # @Prompt Default Value of PlatformLang Variable.\r
   gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang|"en-US"|VOID*|0x0000001f\r
 \r
-  ## Indicates the default baud rate of UART\r
+  ## Indicates the default baud rate of UART.\r
+  # @Prompt Default UART Baud Rate.\r
+  # @ValidList  0x80000001 | 115200, 57600, 38400, 19200, 9600, 7200, 4800, 3600, 2400, 2000, 1800, 1200, 600, 300, 150, 134, 110, 75, 50\r
   gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate|115200|UINT64|0x00000020\r
 \r
-  ## Indicates the number of efficient data bit in UART transaction\r
+  ## Indicates the number of efficient data bit in UART transaction.\r
+  # @Prompt Default UART Data Bit.\r
+  # @ValidRange 0x80000001 | 5 - 8\r
   gEfiMdePkgTokenSpaceGuid.PcdUartDefaultDataBits|8|UINT8|0x00000021\r
 \r
-  ## Indicates the setting of data parity in UART transaction\r
+  ## Indicates the setting of data parity in UART transaction.<BR><BR>\r
+  # 0 - Default Parity.<BR>\r
+  # 1 - No Parity.<BR>\r
+  # 2 - Even Parity.<BR>\r
+  # 3 - Odd Parity.<BR>\r
+  # 4 - Mark Parity.<BR>\r
+  # 5 - Space Parity.<BR>\r
+  # @Prompt Default UART Parity.\r
+  # @ValidRange 0x80000001 | 0 - 5\r
   gEfiMdePkgTokenSpaceGuid.PcdUartDefaultParity|1|UINT8|0x00000022\r
 \r
-  ## Indicates the setting of stop bit in UART transaction\r
+  ## Indicates the setting of stop bit in UART transaction.<BR><BR>\r
+  # 0 - Default Stop Bits.<BR>\r
+  # 1 - One Stop Bit.<BR>\r
+  # 2 - One Five Stop Bits.<BR>\r
+  # 3 - Two Stop Bits.<BR>\r
+  # @Prompt Default UART Stop Bits.\r
+  # @ValidRange 0x80000001 | 0 - 3\r
   gEfiMdePkgTokenSpaceGuid.PcdUartDefaultStopBits|1|UINT8|0x00000023\r
 \r
-  ## Indicates the usable type of terminal\r
-  #  0-PCANSI, 1-VT100, 2-VT00+, 3-UTF8\r
+  ## Indicates the usable type of terminal.<BR><BR>\r
+  #  0 - PCANSI<BR>\r
+  #  1 - VT100<BR>\r
+  #  2 - VT100+<BR>\r
+  #  3 - UTF8<BR>\r
+  # @Prompt Default Terminal Type.\r
+  # @ValidRange 0x80000001 | 0 - 3\r
   gEfiMdePkgTokenSpaceGuid.PcdDefaultTerminalType|0|UINT8|0x00000024\r
+\r
+  ## Error level for hardware recorder. \r
+  #  If value 0, platform does not support feature of hardware error record.\r
+  # @Prompt Error Level For Hardware Recorder\r
+  gEfiMdePkgTokenSpaceGuid.PcdHardwareErrorRecordLevel|0|UINT16|0x0000002b\r
+\r
+  ## The number of seconds that the firmware will wait before initiating the original default boot selection. \r
+  #  A value of 0 indicates that the default boot selection is to be initiated immediately on boot. \r
+  #  The value of 0xFFFF then firmware will wait for user input before booting.\r
+  # @Prompt Boot Timeout (s)\r
+  gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|0xffff|UINT16|0x0000002c\r
+\r
+[UserExtensions.TianoCore."ExtraFiles"]\r
+  MdePkgExtra.uni\r