X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=MdeModulePkg%2FMdeModulePkg.dec;h=1edb49afbd2e5f06d0749e2769b44e1a7fa60aca;hp=d176b873d565083a3e0b0ff0e86336e0140783fe;hb=4e5c0d12f951f294937b57f2f3ff9be64748778e;hpb=76052fab298b25c423c0f768eeded4b37899aa0a diff --git a/MdeModulePkg/MdeModulePkg.dec b/MdeModulePkg/MdeModulePkg.dec index d176b873d5..1edb49afbd 100644 --- a/MdeModulePkg/MdeModulePkg.dec +++ b/MdeModulePkg/MdeModulePkg.dec @@ -1,9 +1,9 @@ ## @file MdeModulePkg.dec # This package provides the modules that conform to UEFI/PI Industry standards. -# It also provides the defintions(including PPIs/PROTOCOLs/GUIDs and library classes) +# It also provides the definitions(including PPIs/PROTOCOLs/GUIDs and library classes) # and libraries instances, which are used for those modules. # -# Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2007 - 2015, Intel Corporation. All rights reserved.
# This program and the accompanying materials are licensed and made available under # the terms and conditions of the BSD License that accompanies this distribution. # The full text of the license may be found at @@ -20,7 +20,7 @@ PACKAGE_NAME = MdeModulePkg PACKAGE_UNI_FILE = MdeModulePkg.uni PACKAGE_GUID = BA0D78D6-2CAF-414b-BD4D-B6762A894288 - PACKAGE_VERSION = 0.94 + PACKAGE_VERSION = 0.96 [Includes] Include @@ -102,6 +102,9 @@ # CustomizedDisplayLib|Include/Library/CustomizedDisplayLib.h + ## @libraryclass Provides sorting functions + SortLib|Include/Library/SortLib.h + [Guids] ## MdeModule package token space guid # Include/Guid/MdeModulePkgTokenSpace.h @@ -272,6 +275,17 @@ ## Include/Guid/StatusCodeDataTypeVariable.h gEdkiiStatusCodeDataTypeVariableGuid = { 0xf6ee6dbb, 0xd67f, 0x4ea0, { 0x8b, 0x96, 0x6a, 0x71, 0xb1, 0x9d, 0x84, 0xad }} + + ## Include/Guid/MemoryProfile.h + gEdkiiMemoryProfileGuid = { 0x821c9a09, 0x541a, 0x40f6, { 0x9f, 0x43, 0xa, 0xd1, 0x93, 0xa1, 0x2c, 0xfe }} + + ## Include/Protocol/VarErrorFlag.h + gEdkiiVarErrorFlagGuid = { 0x4b37fe8, 0xf6ae, 0x480b, { 0xbd, 0xd5, 0x37, 0xd9, 0x8c, 0x5e, 0x89, 0xaa } } + + ## GUID indicates the LZMA custom compress/decompress algorithm. + # Include/Guid/LzmaDecompress.h + gLzmaCustomDecompressGuid = { 0xEE4E5898, 0x3914, 0x4259, { 0x9D, 0x6E, 0xDC, 0x7B, 0xD7, 0x94, 0x03, 0xCF }} + gLzmaF86CustomDecompressGuid = { 0xD42AE6BD, 0x1352, 0x4bfb, { 0x90, 0x9A, 0xCA, 0x72, 0xA6, 0xEA, 0xE8, 0x89 }} [Ppis] ## Include/Ppi/AtaController.h @@ -310,6 +324,9 @@ ## Include/Ppi/SerialPortPei.h gPeiSerialPortPpiGuid = { 0x490e9d85, 0x8aef, 0x4193, { 0x8e, 0x56, 0xf7, 0x34, 0xa9, 0xff, 0xac, 0x8b}} + ## Include/Ppi/UfsHostController.h + gEdkiiPeiUfsHostControllerPpiGuid = { 0xdc54b283, 0x1a77, 0x4cd6, { 0x83, 0xbb, 0xfd, 0xda, 0x46, 0x9a, 0x2e, 0xc6 }} + [Protocols] ## Load File protocol provides capability to load and unload EFI image into memory and execute it. # Include/Protocol/LoadPe32Image.h @@ -352,6 +369,12 @@ # Include/Protocol/VariableLock.h gEdkiiVariableLockProtocolGuid = { 0xcd3d0a05, 0x9e24, 0x437c, { 0xa8, 0x91, 0x1e, 0xe0, 0x53, 0xdb, 0x76, 0x38 }} + ## Include/Protocol/VarCheck.h + gEdkiiVarCheckProtocolGuid = { 0xaf23b340, 0x97b4, 0x4685, { 0x8d, 0x4f, 0xa3, 0xf2, 0x81, 0x69, 0xb2, 0x1d } } + + ## Include/Protocol/SmmVarCheck.h + gEdkiiSmmVarCheckProtocolGuid = { 0xb0d8f3c1, 0xb7de, 0x4c11, { 0xbc, 0x89, 0x2f, 0xb5, 0x62, 0xc8, 0xc4, 0x11 } } + ## This protocol is similar with DXE FVB protocol and used in the UEFI SMM evvironment. # Include/Protocol/SmmFirmwareVolumeBlock.h gEfiSmmFirmwareVolumeBlockProtocolGuid = { 0xd326d041, 0xbd31, 0x4c01, { 0xb5, 0xa8, 0x62, 0x8b, 0xe8, 0x7f, 0x6, 0x53 }} @@ -381,6 +404,9 @@ ## Include/Protocol/FormBrowserEx2.h gEdkiiFormBrowserEx2ProtocolGuid = { 0xa770c357, 0xb693, 0x4e6d, { 0xa6, 0xcf, 0xd2, 0x1c, 0x72, 0x8e, 0x55, 0xb } } + ## Include/Protocol/UfsHostController.h + gEdkiiUfsHostControllerProtocolGuid = { 0xebc01af5, 0x7a9, 0x489e, { 0xb7, 0xce, 0xdc, 0x8, 0x9e, 0x45, 0x9b, 0x2f } } + # # [Error.gEfiMdeModulePkgTokenSpaceGuid] # 0x80000001 | Invalid value provided. @@ -466,7 +492,7 @@ # DUET platform requires the token to be TRUE.

# TRUE - Turn off usb legacy support.
# FALSE - Does not turn off usb legacy support.
- # @Prompt Turn off usb legacy support. + # @Prompt Turn off USB legacy support. gEfiMdeModulePkgTokenSpaceGuid.PcdTurnOffUsbLegacySupport|FALSE|BOOLEAN|0x00010047 ## Indicates if HiiImageProtocol will be installed. @@ -659,7 +685,7 @@ # @Prompt Max PEI PCD callback number per PCD entry. gEfiMdeModulePkgTokenSpaceGuid.PcdMaxPeiPcdCallBackNumberPerPcdEntry|0x08|UINT32|0x0001000f - ## VPD type PCD allow developer point an absoluted physical address PcdVpdBaseAddress + ## VPD type PCD allows a developer to point to an absolute physical address PcdVpdBaseAddress # to store PCD value. # @Prompt VPD base address. gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress|0x0|UINT32|0x00010010 @@ -691,13 +717,44 @@ # @Prompt Maximum HwErr variable size. gEfiMdeModulePkgTokenSpaceGuid.PcdMaxHardwareErrorVariableSize|0x8000|UINT32|0x30000004 - ## The size of reserved HwErr variable space. Note that this value must be less than or equal to PcdFlashNvStorageVariableSize. + ## 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)). # In EdkII implementation, HwErr type variable is stored with common non-volatile variables in the same NV region. - # so the platform integrator should ensure this value is less than or equal to PcdFlashNvStorageVariableSize. + # so the platform integrator should ensure this value is less than (PcdFlashNvStorageVariableSize - EFI_FIRMWARE_VOLUME_HEADER.HeaderLength - sizeof (VARIABLE_STORE_HEADER)). # this value is used to guarantee the space of HwErr type variable and not populated by common variable. # @Prompt HwErr variable storage size. gEfiMdeModulePkgTokenSpaceGuid.PcdHwErrStorageSize|0x0000|UINT32|0x30000006 + ## The size of maximum user NV variable space.

+ # Note that this value must be less than (PcdFlashNvStorageVariableSize - EFI_FIRMWARE_VOLUME_HEADER.HeaderLength - sizeof (VARIABLE_STORE_HEADER) - PcdHwErrStorageSize).
+ # If the value is 0, it means user variable share the same NV storage with system variable, + # this is designed to keep the compatibility for the platform that does not allocate special region for user variable.
+ # 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, + # otherwise the variable will be regarded as user variable.
+ # 1) UEFI defined variables (gEfiGlobalVariableGuid and gEfiImageSecurityDatabaseGuid(auth variable) variables at least).
+ # 2) Variables managed by Variable driver internally.
+ # 3) Variables need to be locked, they MUST be set by VariableLock protocol.
+ # 4) Important variables during platform boot, their property SHOULD be set by VarCheck protocol.
+ # The PCD is used to guarantee the space of system variable and not populated by user variable.
+ # @Prompt Maximum user NV variable space size. + gEfiMdeModulePkgTokenSpaceGuid.PcdMaxUserNvVariableSpaceSize|0x00|UINT32|0x00000009 + + ## The size of NV variable space reserved at UEFI boottime.

+ # Note that this value must be less than (PcdFlashNvStorageVariableSize - EFI_FIRMWARE_VOLUME_HEADER.HeaderLength - sizeof (VARIABLE_STORE_HEADER) - PcdHwErrStorageSize).
+ # In EdkII implementation, variable driver can reserved some NV storage region for boottime settings. + # So at UEFI runtime, the variable service consumer can not exhaust full NV storage region.
+ # Then the common NV variable space size at boottime will be + # (PcdFlashNvStorageVariableSize - EFI_FIRMWARE_VOLUME_HEADER.HeaderLength - sizeof (VARIABLE_STORE_HEADER) - PcdHwErrStorageSize),
+ # and the common NV variable space size at runtime will be + # (PcdFlashNvStorageVariableSize - EFI_FIRMWARE_VOLUME_HEADER.HeaderLength - sizeof (VARIABLE_STORE_HEADER) - PcdHwErrStorageSize) - PcdBoottimeReservedNvVariableSpaceSize.
+ # @Prompt Boottime reserved NV variable space size. + gEfiMdeModulePkgTokenSpaceGuid.PcdBoottimeReservedNvVariableSpaceSize|0x00|UINT32|0x30000007 + + ## Reclaim variable space at EndOfDxe.

+ # The value is FALSE as default for compatibility that variable driver tries to reclaim variable space at ReadyToBoot event.
+ # If the value is set to TRUE, variable driver tries to reclaim variable space at EndOfDxe event.
+ # @Prompt Reclaim variable space at EndOfDxe. + gEfiMdeModulePkgTokenSpaceGuid.PcdReclaimVariableSpaceAtEndOfDxe|FALSE|BOOLEAN|0x30000008 + ## The size of volatile buffer. This buffer is used to store VOLATILE attribute variables. # @Prompt Variable storage size. gEfiMdeModulePkgTokenSpaceGuid.PcdVariableStoreSize|0x10000|UINT32|0x30000005 @@ -710,8 +767,8 @@ # @Prompt FFS name of capsule coalesce image. gEfiMdeModulePkgTokenSpaceGuid.PcdCapsuleCoalesceFile|{ 0xA6, 0xE4, 0xFD, 0xF7, 0x4C, 0x29, 0x3c, 0x49, 0xB5, 0x0F, 0x97, 0x34, 0x55, 0x3B, 0xB7, 0x57 }|VOID*|0x30000017 - ## Maximun number of performance log entries during PEI phase. - # @Prompt Maximun number of PEI performance log entries. + ## Maximum number of performance log entries during PEI phase. + # @Prompt Maximum number of PEI performance log entries. gEfiMdeModulePkgTokenSpaceGuid.PcdMaxPeiPerformanceLogEntries|40|UINT8|0x0001002f ## RTC Update Timeout Value(microsecond). @@ -770,8 +827,9 @@ # @Expression 0x80000002 | (gEfiMdeModulePkgTokenSpaceGuid.PcdSerialFifoControl & 0xD8) == 0 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialFifoControl|0x07|UINT8|0x00020005 - ## TFTP BlockSize. Initial value 0 means using default block size which is (MTU-IP_HEADER-UDP_HEADER-TFTP_HEADER) - # to handle all link layers. If the value is non zero, the PCD value will be used as block size. + ## This setting can override the default TFTP block size. A value of 0 computes + # the default from MTU information. A non-zero value will be used as block size + # in bytes. # @Prompt TFTP block size. gEfiMdeModulePkgTokenSpaceGuid.PcdTftpBlockSize|0x0|UINT64|0x30001026 @@ -812,8 +870,41 @@ # @Prompt Default Creator Revision for ACPI table creation. gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorRevision|0x01000013|UINT32|0x30001038 + ## The mask is used to control memory profile behavior.

+ # BIT0 - Enable UEFI memory profile.
+ # BIT1 - Enable SMRAM profile.
+ # @Prompt Memory Profile Property. + # @Expression 0x80000002 | (gEfiMdeModulePkgTokenSpaceGuid.PcdMemoryProfilePropertyMask & 0xFC) == 0 + gEfiMdeModulePkgTokenSpaceGuid.PcdMemoryProfilePropertyMask|0x0|UINT8|0x30001041 + + ## This flag is to control which memory types of alloc info will be recorded by DxeCore & SmmCore.

+ # For SmmCore, only EfiRuntimeServicesCode and EfiRuntimeServicesData are valid.
+ # + # Below is bit mask for this PCD: (Order is same as UEFI spec)
+ # EfiReservedMemoryType 0x0001
+ # EfiLoaderCode 0x0002
+ # EfiLoaderData 0x0004
+ # EfiBootServicesCode 0x0008
+ # EfiBootServicesData 0x0010
+ # EfiRuntimeServicesCode 0x0020
+ # EfiRuntimeServicesData 0x0040
+ # EfiConventionalMemory 0x0080
+ # EfiUnusableMemory 0x0100
+ # EfiACPIReclaimMemory 0x0200
+ # EfiACPIMemoryNVS 0x0400
+ # EfiMemoryMappedIO 0x0800
+ # EfiMemoryMappedIOPortSpace 0x1000
+ # EfiPalCode 0x2000
+ # EfiPersistentMemory 0x4000
+ # OS Reserved 0x8000000000000000
+ # + # e.g. Reserved+ACPINvs+ACPIReclaim+RuntimeCode+RuntimeData are needed, 0x661 should be used.
+ # + # @Prompt Memory profile memory type. + gEfiMdeModulePkgTokenSpaceGuid.PcdMemoryProfileMemoryType|0x0|UINT64|0x30001042 + ## UART clock frequency is for the baud rate configuration. - # @Prompt Serial Port Clock Rate + # @Prompt Serial Port Clock Rate. gEfiMdeModulePkgTokenSpaceGuid.PcdSerialClockRate|1843200|UINT32|0x00010066 ## PCI Serial Device Info. It is an array of Device, Function, and Power Management @@ -829,9 +920,13 @@ gEfiMdeModulePkgTokenSpaceGuid.PcdSerialPciDeviceInfo|{0xFF}|VOID*|0x00010067 ## Serial Port Extended Transmit FIFO Size. The default is 64 bytes. - # @Prompt Pci Port Extended Transmit FIFO Size in Bytes + # @Prompt Serial Port Extended Transmit FIFO Size in Bytes gEfiMdeModulePkgTokenSpaceGuid.PcdSerialExtendedTxFifoSize|64|UINT32|0x00010068 + ## The number of bytes between registers in serial device. The default is 1 byte. + # @Prompt Serial Port Register Stride in Bytes + gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterStride|1|UINT32|0x0001006B + [PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx] ## This PCD defines the Console output row. The default value is 25 according to UEFI spec. # This PCD could be set to 0 then console output would be at max column and max row. @@ -853,6 +948,29 @@ # @Prompt Video vertical resolution. gEfiMdeModulePkgTokenSpaceGuid.PcdVideoVerticalResolution|600|UINT32|0x4000000a + # 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 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. + + ## Specify the video horizontal resolution of text setup. + # @Prompt Video Horizontal Resolution of Text Setup + gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoHorizontalResolution|800|UINT32|0x4000000b + + ## Specify the video vertical resolution of text setup. + # @Prompt Video Vertical Resolution of Text Setup + gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoVerticalResolution|600|UINT32|0x4000000c + + ## Specify the console output column of text setup. + # @Prompt Console Output Column of Text Setup + gEfiMdeModulePkgTokenSpaceGuid.PcdSetupConOutColumn|80|UINT32|0x4000000d + + ## Specify the console output row of text setup. + # @Prompt Console Output Row of Text Setup + gEfiMdeModulePkgTokenSpaceGuid.PcdSetupConOutRow|25|UINT32|0x4000000e + [PcdsFixedAtBuild, PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx] ## Base address of the NV variable range in flash device. # @Prompt Base address of flash NV variable range. @@ -877,10 +995,13 @@ gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize|0x0|UINT32|0x30000014 ## Base address of the FTW working block range in flash device. + # If PcdFlashNvStorageFtwWorkingSize is larger than one block size, this value should be block size aligned. # @Prompt Base address of flash FTW working block range. gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0x0|UINT32|0x30000010 ## Size of the FTW working block range. + # If the value is less than one block size, the work space range should not span blocks. + # If the value is larger than one block size, it should be block size aligned. # @Prompt Size of flash FTW working block range. gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize|0x0|UINT32|0x30000011 @@ -893,6 +1014,7 @@ gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64|0x0|UINT64|0x80000013 ## 64-bit Base address of the FTW working block range in flash device. + # If PcdFlashNvStorageFtwWorkingSize is larger than one block size, this value should be block size aligned. # @Prompt 64-bit Base address of flash FTW working block range. gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64|0x0|UINT64|0x80000010 @@ -1078,9 +1200,19 @@ # @Prompt SRIOV system page size. gEfiMdeModulePkgTokenSpaceGuid.PcdSrIovSystemPageSize|0x1|UINT32|0x10000047 - ## Smbios version. - # @Prompt Smbios version. - gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosVersion|0x0207|UINT16|0x00010055 + ## SMBIOS version. + # @Prompt SMBIOS version. + gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosVersion|0x0300|UINT16|0x00010055 + + ## SMBIOS Docrev field in SMBIOS 3.0 (64-bit) Entry Point Structure. + # @Prompt SMBIOS Docrev field in SMBIOS 3.0 (64-bit) Entry Point Structure. + gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosDocRev|0x0|UINT8|0x0001006A + + ## SMBIOS produce method. + # BIT0 set indicates 32-bit entry point and table are produced.
+ # BIT1 set indicates 64-bit entry point and table are produced.
+ # @Prompt The policy to produce SMBIOS entry point and table. + gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosEntryPointProvideMethod|0x3|UINT32|0x00010069 ## This PCD specifies the additional pad size in FPDT Basic Boot Performance Table for # the extension FPDT boot records received after ReadyToBoot and before ExitBootService. @@ -1112,6 +1244,12 @@ # @Prompt Disk I/O - Number of Data Buffer block. gEfiMdeModulePkgTokenSpaceGuid.PcdDiskIoDataBufferBlockNum|64|UINT32|0x30001039 + ## This PCD specifies the PCI-based UFS host controller mmio base address. + # Define the mmio base address of the pci-based UFS host controller. If there are multiple UFS + # host controllers, their mmio base addresses are calculated one by one from this base address. + # @Prompt Mmio base address of pci-based UFS host controller. + gEfiMdeModulePkgTokenSpaceGuid.PcdUfsPciHostControllerMmioBase|0xd0000000|UINT32|0x10000061 + [PcdsPatchableInModule] ## Specify memory size with page number for PEI code when # Loading Module at Fixed Address feature is enabled.