IntelFrameworkModulePkg: INF/DEC file updates to EDK II packages

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: Zeng, Star <star.zeng@intel.com>
Reviewed-by: Gao, Liming <liming.gao@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15968 6f19259b-4bc3-4df7-8a09-765794883524
diff --git a/IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec b/IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec
index 9a5c8db..2baee1a 100644
--- a/IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec
+++ b/IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec
@@ -1,5 +1,7 @@
 ## @file

-# Intel Framework Module Package contains the definitions and module implementation

+# Intel Framework Module Package.

+#

+# This package contains the definitions and module implementation

 # which follows Intel EFI Framework Specification.

 #

 # Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>

@@ -17,6 +19,7 @@
 [Defines]

   DEC_SPECIFICATION              = 0x00010005

   PACKAGE_NAME                   = IntelFrameworkModulePkg

+  PACKAGE_UNI_FILE               = IntelFrameworkModulePkg.uni

   PACKAGE_GUID                   = 88894582-7553-4822-B484-624E24B6DECF

   PACKAGE_VERSION                = 0.93

 

@@ -104,138 +107,213 @@
   ## Include/Protocol/ExitPmAuth.h

   gExitPmAuthProtocolGuid        = { 0xd088a413, 0xa70, 0x4217, { 0xba, 0x55, 0x9a, 0x3c, 0xb6, 0x5c, 0x41, 0xb3 }}

 

+#

+# [Error.gEfiIntelFrameworkModulePkgTokenSpaceGuid]

+#   0x80000001 | Invalid value provided.

+#   0x80000002 | Reserved bits must be set to zero.

+#

+

 [PcdsFeatureFlag]

-  ## This PCD specifies whether StatusCode is reported via OEM device.

+  ## Indicates if OEM device is enabled as StatusCode report device.

+  #  It is only used in Framework StatusCode implementation. <BR><BR>

+  #   TRUE  - Enable OEM device.<BR>

+  #   FALSE - Disable OEM device.<BR>

+  # @Prompt Report StatusCode via OEM Device

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdStatusCodeUseOEM|FALSE|BOOLEAN|0x00010024

 

-  ## This PCD specifies whether StatusCode is loged into DataHub.

+  ## Indicates if StatusCode report is loged into DataHub.<BR><BR>

+  #   TRUE  - Log StatusCode report into DataHub.<BR>

+  #   FALSE - Does not log StatusCode report into DataHub.<BR>

+  # @Prompt Log StatusCode into DataHub

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdStatusCodeUseDataHub|FALSE|BOOLEAN|0x00010029

 

-  ## This PCD specifies whether Serial device use half hand shake.

+  ## Indicates if Serial device uses half hand shake.<BR><BR>

+  #   TRUE  - Serial device uses half hand shake.<BR>

+  #   FALSE - Serial device doesn't use half hand shake.<BR>

+  # @Prompt Enable Serial device Half Hand Shake

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdIsaBusSerialUseHalfHandshake|FALSE|BOOLEAN|0x00010043

 

-  ## Indicates if CSM support is needed for ACPI S3 Save.

-  #  If TRUE, CSM support is enclosed for ACPI S3 Save.

+  ## Indicates if Legacy support is needed for ACPI S3 Save.<BR><BR>

+  #   TRUE  - Support Legacy OS with S3 boot.<BR>

+  #   FALSE - Does not support Legacy OS with S3 boot.<BR>

+  # @Prompt Turn on Legacy Support in S3 Boot

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdPlatformCsmSupport|TRUE|BOOLEAN|0x00010044

 

-  ## This PCD specifies whether PS2 keyboard does a extended verification during start.

+  ## Indicates if PS2 keyboard does a extended verification during start.

+  #  Extended verification will take some performance. It can be set to FALSE for boot performance.<BR><BR>

+  #   TRUE  - Turn on PS2 keyboard extended verification.<BR>

+  #   FALSE - Turn off PS2 keyboard extended verification.<BR>

+  # @Prompt Turn on PS2 Keyboard Extended Verification

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdPs2KbdExtendedVerification|TRUE|BOOLEAN|0x00010045

 

-  ## If TRUE, ACPI Support Protocol will be installed.

+  ## Indicates if Framework Acpi Support protocol is installed.<BR><BR>  

+  #   TRUE  - Install Framework Acpi Support protocol.<BR>

+  #   FALSE - Doesn't install Framework Acpi Support protocol.<BR>

+  # @Prompt Enable Framework Acpi Support

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdInstallAcpiSupportProtocol|TRUE|BOOLEAN|0x00010046

 

-  ## This PCD specifies whether PS2 mouse does a extended verification during start.

+

+  ## Indicates if PS2 mouse does a extended verification during start.

+  #  Extended verification will take some performance. It can be set to FALSE for boot performance.<BR><BR>

+  #   TRUE  - Turn on PS2 mouse extended verification. <BR>

+  #   FALSE - Turn off PS2 mouse extended verification. <BR>

+  # @Prompt Turn on PS2 Mouse Extended Verification

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdPs2MouseExtendedVerification|TRUE|BOOLEAN|0x00010047

 

-  ## This PCD specifies whether only Boot logo is showed and all message output is disabled in BDS 

+  ## Indicates if only Boot logo is showed and all message output is disabled in BDS.<BR><BR>

+  #   TRUE  - Only Boot Logo is showed in boot.<BR>

+  #   FALSE - All messages and Boot Logo are showed in boot.<BR>

+  # @Prompt Enable Boot Logo only

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBootlogoOnlyEnable|FALSE|BOOLEAN|0x00010048

 

-[PcdsFixedAtBuild]

+[PcdsFixedAtBuild, PcdsPatchableInModule]

   ## FFS filename to find the default BMP Logo file.

+  # @Prompt FFS Name of Boot Logo File

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdLogoFile |{ 0x99, 0x8b, 0xB2, 0x7B, 0xBB, 0x61, 0xD5, 0x11, 0x9A, 0x5D, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D }|VOID*|0x40000003

 

   ## FFS filename to find the shell application.

+  # @Prompt FFS Name of Shell Application

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile|{ 0xB7, 0xD6, 0x7A, 0xC5, 0x15, 0x05, 0xA8, 0x40, 0x9D, 0x21, 0x55, 0x16, 0x52, 0x85, 0x4E, 0x37 }|VOID*|0x40000004

 

-  ## ISA bus related PCD to support DMA, SlaveDMA and ISA Memory features.

-  #  BIT0 indicates if DMA is supported

-  #  BIT1 indicates if only slave DMA is supported

-  #  BIT2 indicates if ISA memory is supported

+  ## ISA Bus features to support DMA, SlaveDMA and ISA Memory. <BR><BR>

+  #  BIT0 indicates if DMA is supported<BR>

+  #  BIT1 indicates if only slave DMA is supported<BR>

+  #  BIT2 indicates if ISA memory is supported<BR>

+  #  Other BITs are reseved and must be zero.

+  #  If more than one features are supported, the different BIT will be enabled at the same time.

+  # @Prompt ISA Bus Features

+  # @Expression 0x80000002 | (gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdIsaBusSupportedFeatures & 0xF8) == 0

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdIsaBusSupportedFeatures|0x05|UINT8|0x00010040

 

 [PcdsDynamic, PcdsDynamicEx]

-  ## The PCD is used to mark whether the machine is in first boot cycle.

-  #  TRUE means the machine is in first boot cycle. After completing the first boot,

-  #  the PCD's value will be updated to FALSE.

-  #  This PCD should be set as HII type PCD by platform integrator.

+  ## Indicates if the machine has completed one boot cycle before.

+  #  After the complete boot, BootState will be set to FALSE.<BR><BR>

+  #   TRUE  - The complete boot cycle has not happened before.<BR>

+  #   FALSE - The complete boot cycle has happened before.<BR>

+  # @Prompt Boot State Flag

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBootState|TRUE|BOOLEAN|0x0001002f

 

-  ## Timeout value for displaying progressing bar in before boot OS.

-  #  According to UEFI 2.0 spec, the default TimeOut should be 0xffff.

-  #  This PCD should be set as HII type PCD by platform integrator mapped to variable L"TimeOut" and gEfiGlobalVariableGuid.

+  ## The number of seconds that the firmware will wait before initiating the original default boot selection. 

+  #  A value of 0 indicates that the default boot selection is to be initiated immediately on boot. 

+  #  The value of 0xFFFF then firmware will wait for user input before booting.

+  # @Prompt Boot Timeout (s)

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdPlatformBootTimeOut|0xffff|UINT16|0x40000001

 

-  ## Error level for hardware recorder. If value 0, platform does not support feature of hardware error record.

-  #  This PCD should be set as HII type PCD by platform integrator mapped to variable L"HwErrRecSupport" and gEfiGlobalVariableGuid.

+  ## Error level for hardware recorder. 

+  #  If value 0, platform does not support feature of hardware error record.

+  # @Prompt Error Level For Hardware Recorder

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdHardwareErrorRecordLevel|0|UINT16|0x40000002

 

 [PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx]

-  ## The 4 PCDs below are used to specify the video resolution and text mode of text setup.

+  #  The 4 PCDs below are used to specify the video resolution and text mode of text setup.

   #  To make text setup work in this resolution, PcdVideoHorizontalResolution, PcdVideoVerticalResolution,

   #  PcdConOutColumn and PcdConOutRow in MdeModulePkg.dec should be created as PcdsDynamic or PcdsDynamicEx

   #  in platform DSC file. Then BDS setup will update these PCDs defined in MdeModulePkg.dec and reconnect

   #  console drivers (GraphicsConsole, Terminal, Consplitter) to make the video resolution and text mode work

   #  for text setup.

 

-  ## The PCD is used to specify the video horizontal resolution of text setup.   

+  ## Specify the video horizontal resolution of text setup.

+  # @Prompt Video Horizontal Resolution of Text Setup

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdSetupVideoHorizontalResolution|800|UINT32|0x50000001

   

-  ## The PCD is used to specify the video vertical resolution of text setup.

+  ## Specify the video vertical resolution of text setup.

+  # @Prompt Video Vertical Resolution of Text Setup

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdSetupVideoVerticalResolution|600|UINT32|0x50000002

 

-  ## The PCD is used to specify the console output column of text setup.

+  ## Specify the console output column of text setup.

+  # @Prompt Console Output Column of Text Setup

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdSetupConOutColumn|80|UINT32|0x50000003

   

-  ## The PCD is used to specify the console output column of text setup.

+  ## Specify the console output row of text setup.

+  # @Prompt Console Output Row of Text Setup

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdSetupConOutRow|25|UINT32|0x50000004

 

 [PcdsFixedAtBuild, PcdsDynamic, PcdsDynamicEx, PcdsPatchableInModule]

   ## I/O Base address of floppy device controller.

+  # @Prompt I/O Base Address of Floppy Device Controller

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdFdcBaseAddress|0x3f0|UINT16|0x30000000

 

-  ## If TRUE, BiosVideo will switch to 80x25 Text VGA Mode when exiting boot service.

+  ## Indicates if BiosVideo driver will switch to 80x25 Text VGA Mode when exiting boot service.<BR><BR>

+  #   TRUE  - Switch to Text VGA Mode.<BR>

+  #   FALSE - Does not switch to Text VGA Mode.<BR>

+  # @Prompt Switch to Text VGA Mode on UEFI Boot

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBiosVideoSetTextVgaModeEnable|FALSE|BOOLEAN|0x30000001

 

-  ## If TRUE, BiosVideo will check for VESA BIOS Extension service support.

+  ## Indicates if BiosVideo driver will check for VESA BIOS Extension service support.<BR><BR>

+  #   TRUE  - Check for VESA BIOS Extension service.<BR>

+  #   FALSE - Does not check for VESA BIOS Extension service.<BR>

+  # @Prompt Enable Check for VESA BIOS Extension Service

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBiosVideoCheckVbeEnable|TRUE|BOOLEAN|0x30000002

 

-  ## If TRUE, BiosVideo will check for VGA service support.

+  ## Indicates if BiosVideo driver will check for VGA service support.

   #  NOTE: If both PcdBiosVideoCheckVbeEnable and PcdBiosVideoCheckVgaEnable are set to FALSE,

-  #  that means Graphics Output protocol will not be installed, the VGA miniport protocol will be installed instead.

+  #  that means Graphics Output protocol will not be installed, the VGA miniport protocol will be installed instead.<BR><BR>

+  #   TRUE  - Check for VGA service.<BR>

+  #   FALSE - Does not check for VGA service.<BR>

+  # @Prompt Enable Check for VGA Service

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBiosVideoCheckVgaEnable|TRUE|BOOLEAN|0x30000003

 

-  ## If TRUE, memory space for legacy region will be set as cacheable.

+  ## Indicates if memory space for legacy region will be set as cacheable.<BR><BR>

+  #   TRUE  - Set cachebility for legacy region.<BR>

+  #   FALSE - Does not set cachebility for legacy region.<BR>

+  # @Prompt Enable Cachebility for Legacy Region

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdLegacyBiosCacheLegacyRegion|TRUE|BOOLEAN|0x00000004

 

-  ## The PCD is used to specify memory size with bytes to reserve EBDA for OPROM.

-  ## The value should be a multiple of 4KB.

+  ## Specify memory size with bytes to reserve EBDA below 640K for OPROM.

+  # The value should be a multiple of 4KB. 

+  # @Prompt Reserved EBDA Memory Size

+  # @Expression 0x80000001 | (gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdEbdaReservedMemorySize < 0xA0000) AND ((gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdEbdaReservedMemorySize & 0x1000) == 0)

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdEbdaReservedMemorySize|0x8000|UINT32|0x30000005

 

-  ## The PCD is used to specify memory base address for OPROM to find free memory.

+  ## Specify memory base address for OPROM to find free memory.

   # Some OPROMs do not use EBDA or PMM to allocate memory for its usage, 

   # instead they find the memory filled with zero from 0x20000.

   # The value should be a multiple of 4KB.

   # The range should be below the EBDA reserved range from 

-  # (CONVENTIONAL_MEMORY_TOP - PcdEbdaReservedMemorySize) to CONVENTIONAL_MEMORY_TOP.

+  # (CONVENTIONAL_MEMORY_TOP - Reserved EBDA Memory Size) to CONVENTIONAL_MEMORY_TOP.

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdOpromReservedMemoryBase|0x60000|UINT32|0x3000000c

   

-  ## The PCD is used to specify memory size with bytes for OPROM to find free memory.

-  ## The value should be a multiple of 4KB. And the range should be below the EBDA reserved range from 

-  # (CONVENTIONAL_MEMORY_TOP - PcdEbdaReservedMemorySize) to CONVENTIONAL_MEMORY_TOP.

+  ## Specify memory size with bytes for OPROM to find free memory.

+  #  The value should be a multiple of 4KB. And the range should be below the EBDA reserved range from 

+  # (CONVENTIONAL_MEMORY_TOP - Reserved EBDA Memory Size) to CONVENTIONAL_MEMORY_TOP.

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdOpromReservedMemorySize|0x28000|UINT32|0x3000000d

 

-  ## The PCD is used to specify memory size with page number for a pre-allocated reserved memory to be used

-  #  by PEI in S3 phase. The default size 32K. When changing the value of this PCD, the platform

-  #  developer should make sure the memory size is large enough to meet PEI requiremnt in S3 phase.

+  ## Specify memory size with page number for a pre-allocated reserved memory to be used

+  #  by PEI in S3 phase. The default size 32K. When changing the value make sure the memory size 

+  #  is large enough to meet PEI requirement in the S3 phase.

+  # @Prompt Reserved S3 Boot ACPI Memory Size

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdS3AcpiReservedMemorySize|0x8000|UINT32|0x30000006

 

-  ## The PCD is used to specify memory size for boot script executor stack usage in S3 phase.

-  #  The default size 32K. When changing the value of this PCD, the platform developer should

-  #  make sure the memory size is large enough to meet boot script executor requiremnt in S3 phase.

+  ## Specify memory size for boot script executor stack usage in S3 phase.

+  #  The default size 32K. When changing the value make sure the memory size is large enough 

+  #  to meet boot script executor requirement in the S3 phase.

+  # @Prompt Reserved S3 Boot Script Stack ACPI Memory Size

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdS3BootScriptStackSize|0x8000|UINT32|0x30000007

 

-  ## The PCD is used to specify the end of address below 1MB for the OPROM.

+  ## Specify the end of address below 1MB for the OPROM.

   #  The last shadowed OpROM should not exceed this address.

+  # @Prompt Top Address of Shadowed Legacy OpROM

+  # @Expression 0x80000001 | gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdEndOpromShadowAddress < 0x100000

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdEndOpromShadowAddress|0xdffff|UINT32|0x30000008

   

-  ## The PCD is used to specify the low PMM (Post Memory Manager) size with bytes below 1MB.

+  ## Specify the low PMM (Post Memory Manager) size with bytes below 1MB.

   #  The value should be a multiple of 4KB.

+  # @Prompt Low PMM (Post Memory Manager) Size

+  # @Expression 0x80000001 | (gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdLowPmmMemorySize < 0x100000) AND ((gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdLowPmmMemorySize & 0x1000) == 0)

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdLowPmmMemorySize|0x10000|UINT32|0x30000009

   

-  ## The PCD is used to specify the high PMM (Post Memory Manager) size with bytes above 1MB.

+  ## Specify the high PMM (Post Memory Manager) size with bytes above 1MB.

   #  The value should be a multiple of 4KB.

+  # @Prompt High PMM (Post Memory Manager) Size

+  # @Expression 0x80000001 | (gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdHighPmmMemorySize & 0x1000) == 0

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdHighPmmMemorySize|0x400000|UINT32|0x3000000a

 

-  ## This PCD specifies whether to use the optimized timing for best PS2 detection performance.

-  #  Note this PCD could be set to TRUE for best boot performance and set to FALSE for best device compatibility.

+  ## Indicates if to use the optimized timing for best PS2 detection performance.

+  #  Note this PCD could be set to TRUE for best boot performance and set to FALSE for best device compatibility.<BR><BR>

+  #   TRUE  - Use the optimized timing for best PS2 detection performance.<BR>

+  #   FALSE - Use the normal timing to detect PS2.<BR>

+  # @Prompt Enable fast PS2 detection

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdFastPS2Detection|FALSE|BOOLEAN|0x3000000b

+

+[UserExtensions.TianoCore."ExtraFiles"]

+  IntelFrameworkModulePkgExtra.uni