]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/MdeModulePkg.dec
Copy PCD from IntelFrameworkModulePkg to MdePkg and MdeModulePkg
[mirror_edk2.git] / MdeModulePkg / MdeModulePkg.dec
index c58f424ff4b66f0ab033bf5b11b52d6402219e3f..1edb49afbd2e5f06d0749e2769b44e1a7fa60aca 100644 (file)
@@ -3,7 +3,7 @@
 # It also provides the definitions(including PPIs/PROTOCOLs/GUIDs and library classes)\r
 # and libraries instances, which are used for those modules.\r
 #\r
-# Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2007 - 2015, Intel Corporation. All rights reserved.<BR>\r
 # This program and the accompanying materials are licensed and made available under \r
 # the terms and conditions of the BSD License that accompanies this distribution.  \r
 # The full text of the license may be found at\r
@@ -20,7 +20,7 @@
   PACKAGE_NAME                   = MdeModulePkg\r
   PACKAGE_UNI_FILE               = MdeModulePkg.uni\r
   PACKAGE_GUID                   = BA0D78D6-2CAF-414b-BD4D-B6762A894288\r
-  PACKAGE_VERSION                = 0.94\r
+  PACKAGE_VERSION                = 0.96\r
 \r
 [Includes]\r
   Include\r
   #\r
   CustomizedDisplayLib|Include/Library/CustomizedDisplayLib.h\r
 \r
+  ## @libraryclass   Provides sorting functions\r
+  SortLib|Include/Library/SortLib.h\r
+\r
 [Guids]\r
   ## MdeModule package token space guid\r
   # Include/Guid/MdeModulePkgTokenSpace.h\r
   ## Include/Guid/MemoryProfile.h\r
   gEdkiiMemoryProfileGuid              = { 0x821c9a09, 0x541a, 0x40f6, { 0x9f, 0x43, 0xa, 0xd1, 0x93, 0xa1, 0x2c, 0xfe }}\r
 \r
+  ## Include/Protocol/VarErrorFlag.h\r
+  gEdkiiVarErrorFlagGuid               = { 0x4b37fe8, 0xf6ae, 0x480b, { 0xbd, 0xd5, 0x37, 0xd9, 0x8c, 0x5e, 0x89, 0xaa } }\r
+\r
+  ## GUID indicates the LZMA custom compress/decompress algorithm.\r
+  #  Include/Guid/LzmaDecompress.h\r
+  gLzmaCustomDecompressGuid      = { 0xEE4E5898, 0x3914, 0x4259, { 0x9D, 0x6E, 0xDC, 0x7B, 0xD7, 0x94, 0x03, 0xCF }}\r
+  gLzmaF86CustomDecompressGuid     = { 0xD42AE6BD, 0x1352, 0x4bfb, { 0x90, 0x9A, 0xCA, 0x72, 0xA6, 0xEA, 0xE8, 0x89 }}\r
+\r
 [Ppis]\r
   ## Include/Ppi/AtaController.h\r
   gPeiAtaControllerPpiGuid       = { 0xa45e60d1, 0xc719, 0x44aa, { 0xb0, 0x7a, 0xaa, 0x77, 0x7f, 0x85, 0x90, 0x6d }}\r
   ## Include/Ppi/SerialPortPei.h\r
   gPeiSerialPortPpiGuid         =  { 0x490e9d85, 0x8aef, 0x4193, { 0x8e, 0x56, 0xf7, 0x34, 0xa9, 0xff, 0xac, 0x8b}}\r
 \r
+  ## Include/Ppi/UfsHostController.h\r
+  gEdkiiPeiUfsHostControllerPpiGuid  =  { 0xdc54b283, 0x1a77, 0x4cd6, { 0x83, 0xbb, 0xfd, 0xda, 0x46, 0x9a, 0x2e, 0xc6 }}\r
+\r
 [Protocols]\r
   ## Load File protocol provides capability to load and unload EFI image into memory and execute it.\r
   #  Include/Protocol/LoadPe32Image.h\r
   #  Include/Protocol/VariableLock.h\r
   gEdkiiVariableLockProtocolGuid = { 0xcd3d0a05, 0x9e24, 0x437c, { 0xa8, 0x91, 0x1e, 0xe0, 0x53, 0xdb, 0x76, 0x38 }}\r
 \r
+  ## Include/Protocol/VarCheck.h\r
+  gEdkiiVarCheckProtocolGuid     = { 0xaf23b340, 0x97b4, 0x4685, { 0x8d, 0x4f, 0xa3, 0xf2, 0x81, 0x69, 0xb2, 0x1d } }\r
+\r
+  ## Include/Protocol/SmmVarCheck.h\r
+  gEdkiiSmmVarCheckProtocolGuid  = { 0xb0d8f3c1, 0xb7de, 0x4c11, { 0xbc, 0x89, 0x2f, 0xb5, 0x62, 0xc8, 0xc4, 0x11 } }\r
+\r
   ## This protocol is similar with DXE FVB protocol and used in the UEFI SMM evvironment.\r
   #  Include/Protocol/SmmFirmwareVolumeBlock.h\r
   gEfiSmmFirmwareVolumeBlockProtocolGuid = { 0xd326d041, 0xbd31, 0x4c01, { 0xb5, 0xa8, 0x62, 0x8b, 0xe8, 0x7f, 0x6, 0x53 }}\r
   ## Include/Protocol/FormBrowserEx2.h\r
   gEdkiiFormBrowserEx2ProtocolGuid = { 0xa770c357, 0xb693, 0x4e6d, { 0xa6, 0xcf, 0xd2, 0x1c, 0x72, 0x8e, 0x55, 0xb } }\r
 \r
+  ## Include/Protocol/UfsHostController.h\r
+  gEdkiiUfsHostControllerProtocolGuid = { 0xebc01af5, 0x7a9, 0x489e, { 0xb7, 0xce, 0xdc, 0x8, 0x9e, 0x45, 0x9b, 0x2f } }\r
+\r
 #\r
 # [Error.gEfiMdeModulePkgTokenSpaceGuid]\r
 #   0x80000001 | Invalid value provided.\r
   # @Prompt Maximum HwErr variable size.\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdMaxHardwareErrorVariableSize|0x8000|UINT32|0x30000004\r
 \r
-  ## The size of reserved HwErr variable space. Note that this value must be less than or equal to PcdFlashNvStorageVariableSize.\r
+  ## The size of reserved HwErr variable space. Note that this value must be less than (PcdFlashNvStorageVariableSize - EFI_FIRMWARE_VOLUME_HEADER.HeaderLength - sizeof (VARIABLE_STORE_HEADER)).\r
   # In EdkII implementation, HwErr type variable is stored with common non-volatile variables in the same NV region.\r
-  # so the platform integrator should ensure this value is less than or equal to PcdFlashNvStorageVariableSize.\r
+  # so the platform integrator should ensure this value is less than (PcdFlashNvStorageVariableSize - EFI_FIRMWARE_VOLUME_HEADER.HeaderLength - sizeof (VARIABLE_STORE_HEADER)).\r
   # this value is used to guarantee the space of HwErr type variable and not populated by common variable.\r
   # @Prompt HwErr variable storage size.\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdHwErrStorageSize|0x0000|UINT32|0x30000006\r
 \r
+  ## The size of maximum user NV variable space.<BR><BR>\r
+  # Note that this value must be less than (PcdFlashNvStorageVariableSize - EFI_FIRMWARE_VOLUME_HEADER.HeaderLength - sizeof (VARIABLE_STORE_HEADER) - PcdHwErrStorageSize).<BR>\r
+  # If the value is 0, it means user variable share the same NV storage with system variable,\r
+  # this is designed to keep the compatibility for the platform that does not allocate special region for user variable.<BR>\r
+  # If the value is non-0, the below 4 types of variables will be regarded as System Variable after EndOfDxe, their property could be got by VarCheck protocol,\r
+  # otherwise the variable will be regarded as user variable.<BR>\r
+  #  1) UEFI defined variables (gEfiGlobalVariableGuid and gEfiImageSecurityDatabaseGuid(auth variable) variables at least).<BR>\r
+  #  2) Variables managed by Variable driver internally.<BR>\r
+  #  3) Variables need to be locked, they MUST be set by VariableLock protocol.<BR>\r
+  #  4) Important variables during platform boot, their property SHOULD be set by VarCheck protocol.<BR>\r
+  # The PCD is used to guarantee the space of system variable and not populated by user variable.<BR>\r
+  # @Prompt Maximum user NV variable space size.\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdMaxUserNvVariableSpaceSize|0x00|UINT32|0x00000009\r
+\r
+  ## The size of NV variable space reserved at UEFI boottime.<BR><BR>\r
+  # Note that this value must be less than (PcdFlashNvStorageVariableSize - EFI_FIRMWARE_VOLUME_HEADER.HeaderLength - sizeof (VARIABLE_STORE_HEADER) - PcdHwErrStorageSize).<BR>\r
+  # In EdkII implementation, variable driver can reserved some NV storage region for boottime settings.\r
+  # So at UEFI runtime, the variable service consumer can not exhaust full NV storage region.<BR>\r
+  # Then the common NV variable space size at boottime will be\r
+  #  (PcdFlashNvStorageVariableSize - EFI_FIRMWARE_VOLUME_HEADER.HeaderLength - sizeof (VARIABLE_STORE_HEADER) - PcdHwErrStorageSize),<BR>\r
+  # and the common NV variable space size at runtime will be\r
+  #  (PcdFlashNvStorageVariableSize - EFI_FIRMWARE_VOLUME_HEADER.HeaderLength - sizeof (VARIABLE_STORE_HEADER) - PcdHwErrStorageSize) - PcdBoottimeReservedNvVariableSpaceSize.<BR>\r
+  # @Prompt Boottime reserved NV variable space size.\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdBoottimeReservedNvVariableSpaceSize|0x00|UINT32|0x30000007\r
+\r
+  ## Reclaim variable space at EndOfDxe.<BR><BR>\r
+  # The value is FALSE as default for compatibility that variable driver tries to reclaim variable space at ReadyToBoot event.<BR>\r
+  # If the value is set to TRUE, variable driver tries to reclaim variable space at EndOfDxe event.<BR>\r
+  # @Prompt Reclaim variable space at EndOfDxe.\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdReclaimVariableSpaceAtEndOfDxe|FALSE|BOOLEAN|0x30000008\r
+\r
   ## The size of volatile buffer. This buffer is used to store VOLATILE attribute variables.\r
   # @Prompt Variable storage size.\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdVariableStoreSize|0x10000|UINT32|0x30000005\r
   #  EfiMemoryMappedIO              0x0800<BR>\r
   #  EfiMemoryMappedIOPortSpace     0x1000<BR>\r
   #  EfiPalCode                     0x2000<BR>\r
+  #  EfiPersistentMemory            0x4000<BR>\r
   #  OS Reserved        0x8000000000000000<BR>\r
   #\r
   # e.g. Reserved+ACPINvs+ACPIReclaim+RuntimeCode+RuntimeData are needed, 0x661 should be used.<BR>\r
   # @Prompt Serial Port Extended Transmit FIFO Size in Bytes\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdSerialExtendedTxFifoSize|64|UINT32|0x00010068\r
   \r
+  ## The number of bytes between registers in serial device.  The default is 1 byte.\r
+  # @Prompt Serial Port Register Stride in Bytes\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterStride|1|UINT32|0x0001006B\r
+  \r
 [PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx]\r
   ## This PCD defines the Console output row. The default value is 25 according to UEFI spec.\r
   #  This PCD could be set to 0 then console output would be at max column and max row.\r
   # @Prompt Video vertical resolution.\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdVideoVerticalResolution|600|UINT32|0x4000000a\r
 \r
+  #  The 4 PCDs below are used to specify the video resolution and text mode of text setup.\r
+  #  To make text setup work in this resolution, PcdVideoHorizontalResolution, PcdVideoVerticalResolution,\r
+  #  PcdConOutColumn and PcdConOutRow should be created as PcdsDynamic or PcdsDynamicEx in platform DSC file.\r
+  #  Then BDS setup will update these PCDs defined in MdeModulePkg.dec and reconnect console drivers\r
+  #  (GraphicsConsole, Terminal, Consplitter) to make the video resolution and text mode work\r
+  #  for text setup.\r
+\r
+  ## Specify the video horizontal resolution of text setup.\r
+  # @Prompt Video Horizontal Resolution of Text Setup\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoHorizontalResolution|800|UINT32|0x4000000b\r
+\r
+  ## Specify the video vertical resolution of text setup.\r
+  # @Prompt Video Vertical Resolution of Text Setup\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoVerticalResolution|600|UINT32|0x4000000c\r
+\r
+  ## Specify the console output column of text setup.\r
+  # @Prompt Console Output Column of Text Setup\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSetupConOutColumn|80|UINT32|0x4000000d\r
+\r
+  ## Specify the console output row of text setup.\r
+  # @Prompt Console Output Row of Text Setup\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSetupConOutRow|25|UINT32|0x4000000e\r
+\r
 [PcdsFixedAtBuild, PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx]\r
   ## Base address of the NV variable range in flash device.\r
   # @Prompt Base address of flash NV variable range.\r
 \r
   ## SMBIOS version.\r
   # @Prompt SMBIOS version.\r
-  gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosVersion|0x0207|UINT16|0x00010055\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosVersion|0x0300|UINT16|0x00010055\r
+\r
+  ## SMBIOS Docrev field in SMBIOS 3.0 (64-bit) Entry Point Structure.\r
+  # @Prompt SMBIOS Docrev field in SMBIOS 3.0 (64-bit) Entry Point Structure.\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosDocRev|0x0|UINT8|0x0001006A\r
+\r
+  ## SMBIOS produce method.\r
+  #  BIT0 set indicates 32-bit entry point and table are produced.<BR>\r
+  #  BIT1 set indicates 64-bit entry point and table are produced.<BR>\r
+  # @Prompt The policy to produce SMBIOS entry point and table.\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosEntryPointProvideMethod|0x3|UINT32|0x00010069\r
 \r
   ## This PCD specifies the additional pad size in FPDT Basic Boot Performance Table for\r
   #  the extension FPDT boot records received after ReadyToBoot and before ExitBootService.\r
   # @Prompt Disk I/O - Number of Data Buffer block.\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdDiskIoDataBufferBlockNum|64|UINT32|0x30001039\r
 \r
+  ## This PCD specifies the PCI-based UFS host controller mmio base address.\r
+  # Define the mmio base address of the pci-based UFS host controller. If there are multiple UFS\r
+  # host controllers, their mmio base addresses are calculated one by one from this base address.\r
+  # @Prompt Mmio base address of pci-based UFS host controller.\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdUfsPciHostControllerMmioBase|0xd0000000|UINT32|0x10000061\r
+\r
 [PcdsPatchableInModule]\r
   ## Specify memory size with page number for PEI code when\r
   #  Loading Module at Fixed Address feature is enabled.\r