]> git.proxmox.com Git - mirror_edk2.git/commitdiff
MdePkg: INF/DEC file updates to EDK II packages
authorGao, Liming <liming.gao@intel.com>
Wed, 27 Aug 2014 09:39:04 +0000 (09:39 +0000)
committerlgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524>
Wed, 27 Aug 2014 09:39:04 +0000 (09:39 +0000)
4. PCD information in DEC file comment blocks are either incomplete or incorrect.
This includes detailed description, @Prompt, @ValidRange, @ValidList, @Expression, and [Error.<TokenSpaceGuid>] validation error messages.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Gao, Liming <liming.gao@intel.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15919 6f19259b-4bc3-4df7-8a09-765794883524

MdePkg/MdePkg.dec

index bd5ce07269ef402bce77ac44ea3f0926f6fb0514..cff9024e4957ce59540a0b3c3468ca4cd7d46d89 100644 (file)
@@ -1,7 +1,6 @@
 ## @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.4/PI1.3 and some Industry Standards.\r
 #\r
@@ -22,6 +21,7 @@
 [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.04\r
 \r
   ## Include/Protocol/AdapterInformation.h\r
   gEfiAdapterInformationProtocolGuid    = { 0xE5DD1403, 0xD622, 0xC24E, {0x84, 0x88, 0xC7, 0x1B, 0x17, 0xF5, 0xE8, 0x02 }}\r
 \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
 [PcdsFeatureFlag]\r
-  ## If TRUE, the component name protocol will not be installed.\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
-  ## If TRUE, the driver diagnostics protocol will not be installed.\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
-  ## If TRUE, the component name2 protocol will not be installed.\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
-  ## If TRUE, the driver diagnostics2 protocol will not be installed.\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
-  ## Indicates whether EFI 1.1 ISO 639-2 language supports are obsolete.\r
-  #  If TRUE, Variable driver will be also not to auto update between PlatformLang and Lang variables.\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
-  ## If TRUE, UGA Draw Protocol is still consumed.\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
-  ## 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
+  ## 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
-  ## Indicates the maximum length of unicode string\r
-  gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength|1000000|UINT32|0x00000001\r
-\r
-  ## Indicates the maximum length of ascii string\r
-  gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength|1000000|UINT32|0x00000002\r
-\r
-  ## Indicates the maximum node number of linked list\r
-  gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|1000000|UINT32|0x00000003\r
-\r
-  ## Indicates the maximum node number of device path\r
-  gEfiMdePkgTokenSpaceGuid.PcdMaximumDevicePathNodeCount|0|UINT32|0x00000029\r
-\r
-  ## Indicates the timeout tick of holding spin lock\r
-  gEfiMdePkgTokenSpaceGuid.PcdSpinLockTimeout|10000000|UINT32|0x00000004\r
-\r
-  ## The mask is used to control DebugLib behavior\r
-  gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0|UINT8|0x00000005\r
-\r
-  ## The mask is used to control ReportStatusCodeLib behavior\r
-  gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0|UINT8|0x00000007\r
-\r
-  ## This value is used to fill a segment of memory\r
-  gEfiMdePkgTokenSpaceGuid.PcdDebugClearMemoryValue|0xAF|UINT8|0x00000008\r
-\r
-  ## The mask is used to control PerformanceLib behavior\r
-  gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|0|UINT8|0x00000009\r
-\r
-  ## The mask is used to control PostCodeLib behavior\r
-  gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0|UINT8|0x0000000b\r
-\r
-  ## This value is used to set the FSB clock\r
-  gEfiMdePkgTokenSpaceGuid.PcdFSBClock|200000000|UINT32|0x0000000c\r
-\r
-  ## The maxium allowable size of formatted unicode string\r
-  gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|320|UINT32|0x101\r
-\r
-  ## Status code value for indicating a watchdog timer is expired\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
+[PcdsFixedAtBuild,PcdsPatchableInModule]\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
-[PcdsFixedAtBuild.IPF]\r
-  ## The base address of IO port space for IA64 arch\r
-  gEfiMdePkgTokenSpaceGuid.PcdIoBlockBaseAddressForIpf|0x0ffffc000000|UINT64|0x0000000f\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
-[PcdsFixedAtBuild,PcdsPatchableInModule]\r
-  ## This flag is used to control the printout of DebugLib\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
+  #  BIT28 - 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
+  ## 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
+[UserExtensions.TianoCore."ExtraFiles"]\r
+  MdePkgExtra.uni\r