-## @file MdeModulePkg.dec\r
+## @file MdeModulePkg.dec\r
#\r
-# This package provides the modules that conform to EFI/PI Industry standards.\r
+# This package provides the modules that conform to UEFI/PI Industry standards.\r
# It also provides the defintions(including PPIs/PROTOCOLs/GUIDs and library classes)\r
# and libraries instances, which are used for those modules.\r
#\r
-# Copyright (c) 2007 - 2009, Intel Corporation.\r
-#\r
-# All rights reserved.\r
-# This program and the accompanying materials are licensed and made available under\r
-# the terms and conditions of the BSD License which accompanies this distribution.\r
+# Copyright (c) 2007 - 2010, 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
-# http://opensource.org/licenses/bsd-license.php\r
-#\r
-# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+# http://opensource.org/licenses/bsd-license.php. \r
+# \r
+# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
#\r
##\r
\r
DEC_SPECIFICATION = 0x00010005\r
PACKAGE_NAME = MdeModulePkg\r
PACKAGE_GUID = BA0D78D6-2CAF-414b-BD4D-B6762A894288\r
- PACKAGE_VERSION = 0.90\r
+ PACKAGE_VERSION = 0.91\r
\r
-[Includes.common]\r
+[Includes]\r
Include\r
\r
\r
-[LibraryClasses.common]\r
+[LibraryClasses]\r
## @libraryclass IpIo layer upon EFI IP4 Protocol.\r
# This library is only intended to be used by UEFI network stack modules.\r
IpIoLib|Include/Library/IpIoLib.h\r
#\r
SecurityManagementLib|MdeModulePkg/Include/Library/SecurityManagementLib.h\r
\r
-[Guids.common]\r
+ ## @libraryclass OEM status code libary is used to report status code to OEM device.\r
+ #\r
+ OemHookStatusCodeLib|Include/Library/OemHookStatusCodeLib.h\r
+\r
+ ## @libraryclass Debug Agent is used to provide soft debug capability.\r
+ #\r
+ DebugAgentLib|Include/Library/DebugAgentLib.h\r
+[Guids]\r
## MdeModule package token space guid\r
# Include/Guid/MdeModulePkgTokenSpace.h\r
gEfiMdeModulePkgTokenSpaceGuid = { 0xA1AFF049, 0xFDEB, 0x442a, { 0xB3, 0x20, 0x13, 0xAB, 0x4C, 0xB7, 0x2B, 0xBC }}\r
## Include/Guid/StatusCodeCallbackGuid.h\r
gStatusCodeCallbackGuid = {0xe701458c, 0x4900, 0x4ca5, {0xb7, 0x72, 0x3d, 0x37, 0x94, 0x9f, 0x79, 0x27}}\r
\r
-[Protocols.common]\r
+ ## GUID identifies status code records HOB that originate from the PEI status code\r
+ # Include/Guid/MemoryStatusCodeRecord.h\r
+ gMemoryStatusCodeRecordGuid = { 0x060CC026, 0x4C0D, 0x4DDA, { 0x8F, 0x41, 0x59, 0x5F, 0xEF, 0x00, 0xA5, 0x02 }}\r
+\r
+ ## GUID used to pass DEBUG() macro information through the Status Code Protocol and Status Code PPI\r
+ # Include/Guid/StatusCodeDataTypeDebug.h\r
+ gEfiStatusCodeDataTypeDebugGuid = { 0x9A4E9246, 0xD553, 0x11D5, { 0x87, 0xE2, 0x00, 0x06, 0x29, 0x45, 0xC3, 0xB9 }}\r
+\r
+ ## A configuration Table Guid for Load module at fixed address \r
+ # Include/Guid/LoadModuleAtFixedAddress.h\r
+ gLoadFixedAddressConfigurationTableGuid = { 0x2CA88B53,0xD296,0x4080, { 0xA4,0xA5,0xCA,0xD9,0xBA,0xE2,0x4B,0x9 } }\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
# This protocol is deprecated. Native EDKII module should NOT use this protocol to load/unload image.\r
gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreImageLoaderSearchTeSectionFirst|TRUE|BOOLEAN|0x00010044\r
\r
## If TRUE, force to switch off the support of legacy usb. So legacy usb device driver can not make use of SMI\r
- # interrupt to access usb device in the case of absence of usb stack.\r
+ # interrupt to access usb device in the case of absence of usb stack. \r
+ # DUET platform requires the token to be TRUE.\r
gEfiMdeModulePkgTokenSpaceGuid.PcdTurnOffUsbLegacySupport|FALSE|BOOLEAN|0x00010047\r
\r
## If TRUE, HiiImageProtocol will be installed.\r
## This PCD specifies whether PciBus supports the hot plug device.\r
gEfiMdeModulePkgTokenSpaceGuid.PcdPciBusHotplugDeviceSupport|TRUE|BOOLEAN|0x0001003d\r
\r
- ## This PCD specifies whether the Single Root I/O virtualization support.\r
- gEfiMdeModulePkgTokenSpaceGuid.PcdSrIovSupport|TRUE|BOOLEAN|0x10000044\r
+ ## This PCD specifies whether the PCI bus driver probes non-standard, \r
+ # such as 2K/1K/512, granularity for PCI to PCI bridge I/O window.\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdPciBridgeIoAlignmentProbe|FALSE|BOOLEAN|0x10000047\r
+ ## This PCD specifies whether StatusCode is reported via Serial port.\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseSerial|TRUE|BOOLEAN|0x00010022\r
\r
- ## This PCD specifies whether the Alternative Routing-ID support.\r
- gEfiMdeModulePkgTokenSpaceGuid.PcdAriSupport|TRUE|BOOLEAN|0x10000045\r
+ ## This PCD specifies whether StatusCode is stored in memory.\r
+ # The memory is boot time memory in PEI Phase and is runtime memory in DXE Phase.\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseMemory|FALSE|BOOLEAN|0x00010023\r
\r
- ## This PCD specifies whether the Multi Root I/O virtualization support.\r
- gEfiMdeModulePkgTokenSpaceGuid.PcdMrIovSupport|FALSE|BOOLEAN|0x10000046\r
+ ## This PCD specifies whether Peiphase StatusCode is replayed in DxePhase.\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeReplayIn|FALSE|BOOLEAN|0x0001002d\r
\r
+ ## This PCD specified whether ACPI SDT protocol is installed.\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|FALSE|BOOLEAN|0x0001004d\r
\r
-[PcdsFeatureFlag.IA32]\r
+[PcdsFeatureFlag.IA32, PcdsFeatureFlag.X64]\r
##\r
# This feature flag specifies whether DxeIpl switches to long mode to enter DXE phase.\r
# If it is TRUE, DxeIpl will load a 64-bit DxeCore and switch to long mode to hand over to DxeCore;\r
# BIT0 set indicates 4KB alignment\r
# BIT1 set indicates 8KB alignment\r
gEfiMdeModulePkgTokenSpaceGuid.PcdSrIovSystemPageSize|0x1|UINT32|0x10000047\r
+ \r
+ ## Flag of enabling/disabling the feature of Loading Module at Fixed Address \r
+ # -1: Enable the feature as fixed offset to TOLM\r
+ # 0: Disable the feature.\r
+ # Positive Value: Enable the feature as fixed absolute address, and the value is the top memory address \r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdLoadModuleAtFixAddressEnable|0|UINT64|0x30001015\r
+ \r
+ ## Smbios version\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosVersion|0x0206|UINT16|0x00010055\r
\r
[PcdsFixedAtBuild,PcdsPatchableInModule]\r
## Maximun number of performance log entries during PEI phase.\r
# The range is valid if non-zero. The memory range size must be PcdVariableStoreSize.\r
gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved|0|UINT64|0x40000008\r
\r
+ ## This PCD specifies whether the Single Root I/O virtualization support.\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdSrIovSupport|TRUE|BOOLEAN|0x10000044\r
+\r
+ ## This PCD specifies whether the Alternative Routing-ID support.\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdAriSupport|TRUE|BOOLEAN|0x10000045\r
+\r
+ ## This PCD specifies whether the Multi Root I/O virtualization support.\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdMrIovSupport|FALSE|BOOLEAN|0x10000046\r
+\r
[PcdsFixedAtBuild,PcdsPatchableInModule,PcdsDynamic]\r
## This PCD defines the times to print hello world string.\r
# This PCD is a sample to explain FixedAtBuild UINT32 PCD usage.\r
gEfiMdeModulePkgTokenSpaceGuid.PcdHelloWorldPrintTimes|1|UINT32|0x40000005\r
\r
- ## Indicate the max size of the populated capsule image that the platform can support.\r
+ ## Indicate the max size of the capsule image with reset flag that the platform can support.\r
# The default max size is 100MB (0x6400000) for more than one large capsule images.\r
gEfiMdeModulePkgTokenSpaceGuid.PcdMaxSizePopulateCapsule|0x6400000|UINT32|0x0001001e\r
\r
- ## Indicate the max size of the non-populated capsule image that the platform can support.\r
- # The default max size is 10MB (0xa00000) for the casule image without populated flag setting.\r
+ ## Indicate the max size of the capsule image without reset flag that the platform can support.\r
+ # The default max size is 10MB (0xa00000) for the casule image without reset flag setting.\r
gEfiMdeModulePkgTokenSpaceGuid.PcdMaxSizeNonPopulateCapsule|0xa00000|UINT32|0x0001001f\r
\r
## Null-terminated Unicode string of the firmware vendor name that is default name filled into the EFI System Table\r
## Null-terminated Unicode string that contains the date the formware was released\r
gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareReleaseDateString|L""|VOID*|0x00010053\r
\r
+ ## PcdStatusCodeMemorySize is used when PcdStatusCodeUseMemory is set to true\r
+ # (PcdStatusCodeMemorySize * KBytes) is the total taken memory size.\r
+ # The default value in PeiPhase is 1 KBytes.\r
+ # The default value in DxePhase is 128 KBytes.\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeMemorySize|1|UINT16|0x00010054\r
+\r
+[PcdsPatchableInModule]\r
+ ## Specify memory size with page number for PEI code when \r
+ # the feature of Loading Module at Fixed Address is enabled\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressPeiCodePageNumber|0|UINT32|0x00000029\r
+ \r
+ ## Specify memory size with page number for DXE boot time code when \r
+ # the feature of Loading Module at Fixed Address is enabled\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressBootTimeCodePageNumber|0|UINT32|0x0000002a\r
+ \r
+ ## Specify memory size with page number for DXE runtime code when \r
+ # the feature of Loading Module at Fixed Address is enabled\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressRuntimeCodePageNumber|0|UINT32|0x0000002b\r
+ \r
+ ## Specify memory size with page number for SMM code when \r
+ # the feature of Loading Module at Fixed Address is enabled\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressSmmCodePageNumber|0|UINT32|0x0000002c\r
+\r