## @file | |
# Intel Framework Module Package contains the definitions and module implementation | |
# which follows Intel EFI Framework Specification. | |
# | |
# Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR> | |
# | |
# This program and the accompanying materials | |
# are licensed and made available under the terms and conditions of the BSD License | |
# which accompanies this distribution. The full text of the license may be found at | |
# http://opensource.org/licenses/bsd-license.php | |
# | |
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, | |
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. | |
# | |
## | |
[Defines] | |
DEC_SPECIFICATION = 0x00010005 | |
PACKAGE_NAME = IntelFrameworkModulePkg | |
PACKAGE_GUID = 88894582-7553-4822-B484-624E24B6DECF | |
PACKAGE_VERSION = 0.93 | |
[Includes] | |
Include # Root include for the package | |
[LibraryClasses] | |
## @libraryclass Platform BDS library definition about platform specific behavior. | |
PlatformBdsLib|Include/Library/PlatformBdsLib.h | |
## @libraryclass Generic BDS library definition, include the data structure and function. | |
GenericBdsLib|Include/Library/GenericBdsLib.h | |
[Guids] | |
## IntelFrameworkModule package token space guid | |
# Include/Guid/IntelFrameworkModulePkgTokenSpace.h | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid = { 0xD3705011, 0xBC19, 0x4af7, { 0xBE, 0x16, 0xF6, 0x80, 0x30, 0x37, 0x8C, 0x15 }} | |
## GUID identifies Data Hub records logged by Status Code Runtime Protocol. | |
# Include/Guid/DataHubStatusCodeRecord.h | |
gEfiDataHubStatusCodeRecordGuid = { 0xD083E94C, 0x6560, 0x42E4, { 0xB6, 0xD4, 0x2D, 0xF7, 0x5A, 0xDF, 0x6A, 0x2A }} | |
## GUID indicates the tiano custom compress/decompress algorithm. | |
# Include/Guid/TianoDecompress.h | |
gTianoCustomDecompressGuid = { 0xA31280AD, 0x481E, 0x41B6, { 0x95, 0xE8, 0x12, 0x7F, 0x4C, 0x98, 0x47, 0x79 }} | |
## 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 }} | |
## Include/Guid/AcpiVariable.h | |
gEfiAcpiVariableCompatiblityGuid = { 0xc020489e, 0x6db2, 0x4ef2, { 0x9a, 0xa5, 0xca, 0x6, 0xfc, 0x11, 0xd3, 0x6a }} | |
## Include/Guid/LegacyBios.h | |
gEfiLegacyBiosGuid = { 0x2E3044AC, 0x879F, 0x490F, { 0x97, 0x60, 0xBB, 0xDF, 0xAF, 0x69, 0x5F, 0x50 }} | |
## Include/Guid/LegacyDevOrder.h | |
gEfiLegacyDevOrderVariableGuid = { 0xa56074db, 0x65fe, 0x45f7, {0xbd, 0x21, 0x2d, 0x2b, 0xdd, 0x8e, 0x96, 0x52 }} | |
## Include/Guid/CapsuleDataFile.h | |
gEfiUpdateDataFileGuid = { 0x283fa2ee, 0x532c, 0x484d, { 0x93, 0x83, 0x9f, 0x93, 0xb3, 0x6f, 0xb, 0x7e }} | |
## Include/Guid/BlockIoVendor.h | |
gBlockIoVendorGuid = { 0xcf31fac5, 0xc24e, 0x11d2, {0x85, 0xf3, 0x0, 0xa0, 0xc9, 0x3e, 0xc9, 0x3b }} | |
## Include/Guid/BdsHii.h | |
gFrontPageFormSetGuid = { 0x9e0c30bc, 0x3f06, 0x4ba6, {0x82, 0x88, 0x9, 0x17, 0x9b, 0x85, 0x5d, 0xbe }} | |
gBootManagerFormSetGuid = { 0x847bc3fe, 0xb974, 0x446d, {0x94, 0x49, 0x5a, 0xd5, 0x41, 0x2e, 0x99, 0x3b }} | |
gDeviceManagerFormSetGuid = { 0x3ebfa8e6, 0x511d, 0x4b5b, {0xa9, 0x5f, 0xfb, 0x38, 0x26, 0xf, 0x1c, 0x27 }} | |
gDriverHealthFormSetGuid = { 0xf76e0a70, 0xb5ed, 0x4c38, {0xac, 0x9a, 0xe5, 0xf5, 0x4b, 0xf1, 0x6e, 0x34 }} | |
gBootMaintFormSetGuid = { 0x642237c7, 0x35d4, 0x472d, {0x83, 0x65, 0x12, 0xe0, 0xcc, 0xf2, 0x7a, 0x22 }} | |
gFileExploreFormSetGuid = { 0x1f2d63e1, 0xfebd, 0x4dc7, {0x9c, 0xc5, 0xba, 0x2b, 0x1c, 0xef, 0x9c, 0x5b }} | |
## Include/Guid/BdsLibHii.h | |
gBdsLibStringPackageGuid = { 0x3b4d9b23, 0x95ac, 0x44f6, {0x9f, 0xcd, 0xe, 0x95, 0x94, 0x58, 0x6c, 0x72 }} | |
## Include/Guid/LastEnumLang.h | |
gLastEnumLangGuid = { 0xe8c545b, 0xa2ee, 0x470d, {0x8e, 0x26, 0xbd, 0xa1, 0xa1, 0x3c, 0xa, 0xa3 }} | |
## Include/Guid/HdBootVariable.h | |
gHdBootDevicePathVariablGuid = { 0xfab7e9e1, 0x39dd, 0x4f2b, {0x84, 0x8, 0xe2, 0xe, 0x90, 0x6c, 0xb6, 0xde }} | |
[Protocols] | |
## Vga Mini port binding for a VGA controller | |
# Include/Protocol/VgaMiniPort.h | |
gEfiVgaMiniPortProtocolGuid = { 0xc7735a2f, 0x88f5, 0x4882, { 0xae, 0x63, 0xfa, 0xac, 0x8c, 0x8b, 0x86, 0xb3 }} | |
## ISA I/O Protocol is used to perform ISA device Io/Mem operations. | |
# Include/Protocol/IsaIo.h | |
gEfiIsaIoProtocolGuid = { 0x7ee2bd44, 0x3da0, 0x11d4, { 0x9a, 0x38, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d }} | |
## ISA Acpi Protocol is used to operate and communicate with ISA device. | |
# Include/Protocol/IsaAcpi.h | |
gEfiIsaAcpiProtocolGuid = { 0x64a892dc, 0x5561, 0x4536, { 0x92, 0xc7, 0x79, 0x9b, 0xfc, 0x18, 0x33, 0x55 }} | |
## PS/2 policy protocol abstracts the specific platform initialization and setting. | |
# Include/Protocol/Ps2Policy.h | |
gEfiPs2PolicyProtocolGuid = { 0x4DF19259, 0xDC71, 0x4D46, { 0xBE, 0xF1, 0x35, 0x7B, 0xB5, 0x78, 0xC4, 0x18 }} | |
## OEM Badging Protocol defines the interface to get the OEM badging image with the dispaly attribute. | |
# Include/Protocol/OEMBadging.h | |
gEfiOEMBadgingProtocolGuid = { 0x170E13C0, 0xBF1B, 0x4218, { 0x87, 0x1D, 0x2A, 0xBD, 0xC6, 0xF8, 0x87, 0xBC }} | |
## Include/Protocol/ExitPmAuth.h | |
gExitPmAuthProtocolGuid = { 0xd088a413, 0xa70, 0x4217, { 0xba, 0x55, 0x9a, 0x3c, 0xb6, 0x5c, 0x41, 0xb3 }} | |
[PcdsFeatureFlag] | |
## This PCD specifies whether StatusCode is reported via OEM device. | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdStatusCodeUseOEM|FALSE|BOOLEAN|0x00010024 | |
## This PCD specifies whether StatusCode is loged into DataHub. | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdStatusCodeUseDataHub|FALSE|BOOLEAN|0x00010029 | |
## This PCD specifies whether Serial device use 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. | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdPlatformCsmSupport|TRUE|BOOLEAN|0x00010044 | |
## This PCD specifies whether PS2 keyboard does a extended verification during start. | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdPs2KbdExtendedVerification|TRUE|BOOLEAN|0x00010045 | |
## If TRUE, ACPI Support Protocol will be installed. | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdInstallAcpiSupportProtocol|TRUE|BOOLEAN|0x00010046 | |
## This PCD specifies whether PS2 mouse does a extended verification during start. | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdPs2MouseExtendedVerification|TRUE|BOOLEAN|0x00010047 | |
## This PCD specifies whether only Boot logo is showed and all message output is disabled in BDS | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBootlogoOnlyEnable|FALSE|BOOLEAN|0x00010048 | |
[PcdsFixedAtBuild] | |
## FFS filename to find the default BMP 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. | |
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 | |
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. | |
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. | |
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. | |
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. | |
# 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. | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdSetupVideoHorizontalResolution|800|UINT32|0x50000001 | |
## The PCD is used to specify the video vertical resolution of text setup. | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdSetupVideoVerticalResolution|600|UINT32|0x50000002 | |
## The PCD is used to specify the console output column of text setup. | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdSetupConOutColumn|80|UINT32|0x50000003 | |
## The PCD is used to specify the console output column of text setup. | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdSetupConOutRow|25|UINT32|0x50000004 | |
[PcdsFixedAtBuild, PcdsDynamic, PcdsDynamicEx, PcdsPatchableInModule] | |
## 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. | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBiosVideoSetTextVgaModeEnable|FALSE|BOOLEAN|0x30000001 | |
## If TRUE, BiosVideo will check for VESA BIOS Extension service support. | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBiosVideoCheckVbeEnable|TRUE|BOOLEAN|0x30000002 | |
## If TRUE, BiosVideo 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. | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBiosVideoCheckVgaEnable|TRUE|BOOLEAN|0x30000003 | |
## If TRUE, memory space for legacy region will be set as cacheable. | |
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. | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdEbdaReservedMemorySize|0x8000|UINT32|0x30000005 | |
## The PCD is used to 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. | |
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. | |
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. | |
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. | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdS3BootScriptStackSize|0x8000|UINT32|0x30000007 | |
## The PCD is used to specify the end of address below 1MB for the OPROM. | |
# The last shadowed OpROM should not exceed this address. | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdEndOpromShadowAddress|0xdffff|UINT32|0x30000008 | |
## The PCD is used to specify the low PMM (Post Memory Manager) size with bytes below 1MB. | |
# The value should be a multiple of 4KB. | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdLowPmmMemorySize|0x10000|UINT32|0x30000009 | |
## The PCD is used to specify the high PMM (Post Memory Manager) size with bytes above 1MB. | |
# The value should be a multiple of 4KB. | |
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. | |
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdFastPS2Detection|FALSE|BOOLEAN|0x3000000b |