blob: 8a3b60e152bd6ea89a4095dd5097a366bd50ad14 [file] [log] [blame]
qhuang8a9102612007-06-26 08:14:44 +00001#/** @file
klu2217b9922009-06-19 08:48:13 +00002# Intel Framework Module Package contains the definitions and module implementation
3# which follows Intel EFI Framework Specification.
qhuang8a9102612007-06-26 08:14:44 +00004#
klu2217b9922009-06-19 08:48:13 +00005# Copyright (c) 2007 - 2009, Intel Corporation.
qhuang8a9102612007-06-26 08:14:44 +00006#
klu2f8cd2872007-07-20 09:34:04 +00007# All rights reserved. This program and the accompanying materials
8# are licensed and made available under the terms and conditions of the BSD License
9# which accompanies this distribution. The full text of the license may be found at
10# http://opensource.org/licenses/bsd-license.php
11#
12# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
13# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
qhuang8a9102612007-06-26 08:14:44 +000014#
15#**/
16
qhuang8a9102612007-06-26 08:14:44 +000017[Defines]
18 DEC_SPECIFICATION = 0x00010005
19 PACKAGE_NAME = IntelFrameworkModulePkg
20 PACKAGE_GUID = 88894582-7553-4822-B484-624E24B6DECF
21 PACKAGE_VERSION = 0.1
22
mdkinney19525fe2009-07-13 19:05:07 +000023[Includes]
qwang12479922d2007-06-29 07:23:08 +000024 Include # Root include for the package
qhuang8a9102612007-06-26 08:14:44 +000025
mdkinney19525fe2009-07-13 19:05:07 +000026[LibraryClasses]
lgao4f4671792009-06-08 06:59:54 +000027 ## @libraryclass OEM status code libary is used to report status code to OEM device.
qhuang8a9102612007-06-26 08:14:44 +000028 OemHookStatusCodeLib|Include/Library/OemHookStatusCodeLib.h
qhuang8a9102612007-06-26 08:14:44 +000029
klu2ddac74d2009-02-24 15:53:05 +000030 ## @libraryclass Platform BDS library definition about platform specific behavior.
31 PlatformBdsLib|Include/Library/PlatformBdsLib.h
lgao4f4671792009-06-08 06:59:54 +000032
klu2ddac74d2009-02-24 15:53:05 +000033 ## @libraryclass Generic BDS library definition, include the data structure and function.
34 GenericBdsLib|Include/Library/GenericBdsLib.h
35
mdkinney19525fe2009-07-13 19:05:07 +000036[Guids]
lgao4f4671792009-06-08 06:59:54 +000037 ## IntelFrameworkModule package token space guid
38 ## Include/Guid/IntelFrameworkModulePkgTokenSpace.h
39 gEfiIntelFrameworkModulePkgTokenSpaceGuid = { 0xD3705011, 0xBC19, 0x4af7, { 0xBE, 0x16, 0xF6, 0x80, 0x30, 0x37, 0x8C, 0x15 }}
40
41 ## GUID identifies status code records HOB that originate from the PEI status code
gikidye8eecbf2009-04-27 02:28:39 +000042 ## Include/Guid/MemoryStatusCodeRecord.h
klu229941df2007-07-19 02:23:08 +000043 gMemoryStatusCodeRecordGuid = { 0x060CC026, 0x4C0D, 0x4DDA, { 0x8F, 0x41, 0x59, 0x5F, 0xEF, 0x00, 0xA5, 0x02 }}
gikidye8eecbf2009-04-27 02:28:39 +000044
lgao4f4671792009-06-08 06:59:54 +000045 ## GUID identifies Data Hub records logged by Status Code Runtime Protocol.
gikidye8eecbf2009-04-27 02:28:39 +000046 ## Include/Guid/DataHubStatusCodeRecord.h
yshang1351986a2007-07-23 06:43:10 +000047 gEfiDataHubStatusCodeRecordGuid = { 0xD083E94C, 0x6560, 0x42E4, { 0xB6, 0xD4, 0x2D, 0xF7, 0x5A, 0xDF, 0x6A, 0x2A }}
gikidye8eecbf2009-04-27 02:28:39 +000048
lgao4f4671792009-06-08 06:59:54 +000049 ## GUID indicates the tiano custom compress/decompress algorithm.
50 ## Include/Guid/TianoDecompress.h
lgao4d8c79a82007-08-08 10:17:57 +000051 gTianoCustomDecompressGuid = { 0xA31280AD, 0x481E, 0x41B6, { 0x95, 0xE8, 0x12, 0x7F, 0x4C, 0x98, 0x47, 0x79 }}
qhuang84bf32fb2009-03-02 06:08:22 +000052
lgao4f4671792009-06-08 06:59:54 +000053 ## GUID indicates the LZMA custom compress/decompress algorithm.
jljusten306bf4e2009-05-01 00:28:19 +000054 ## Include/Guid/LzmaDecompress.h
55 gLzmaCustomDecompressGuid = { 0xEE4E5898, 0x3914, 0x4259, { 0x9D, 0x6E, 0xDC, 0x7B, 0xD7, 0x94, 0x03, 0xCF }}
56
mdkinney3a6064f2009-06-01 21:17:41 +000057 ## GUID used to pass DEBUG() macro information through the Status Code Protocol and Status Code PPI
58 ## Include/Guid/StatusCodeDataTypeDebug.h
59 gEfiStatusCodeDataTypeDebugGuid = { 0x9A4E9246, 0xD553, 0x11D5, { 0x87, 0xE2, 0x00, 0x06, 0x29, 0x45, 0xC3, 0xB9 }}
60
mdkinney19525fe2009-07-13 19:05:07 +000061[Protocols]
lgao4f4671792009-06-08 06:59:54 +000062 ## Vga Mini port binding for a VGA controller
gikidye8eecbf2009-04-27 02:28:39 +000063 ## Include/Protocol/VgaMiniPort.h
yshang1351986a2007-07-23 06:43:10 +000064 gEfiVgaMiniPortProtocolGuid = { 0xc7735a2f, 0x88f5, 0x4882, { 0xae, 0x63, 0xfa, 0xac, 0x8c, 0x8b, 0x86, 0xb3 }}
gikidye8eecbf2009-04-27 02:28:39 +000065
lgao4f4671792009-06-08 06:59:54 +000066 ## ISA I/O Protocol is used to perform ISA device Io/Mem operations.
gikidye8eecbf2009-04-27 02:28:39 +000067 ## Include/Protocol/IsaIo.h
yshang1c3902372007-07-02 09:09:00 +000068 gEfiIsaIoProtocolGuid = { 0x7ee2bd44, 0x3da0, 0x11d4, { 0x9a, 0x38, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d }}
gikidye8eecbf2009-04-27 02:28:39 +000069
lgao4f4671792009-06-08 06:59:54 +000070 ## ISA Acpi Protocol is used to operate and communicate with ISA device.
gikidye8eecbf2009-04-27 02:28:39 +000071 ## Include/Protocol/IsaAcpi.h
yshang1351986a2007-07-23 06:43:10 +000072 gEfiIsaAcpiProtocolGuid = { 0x64a892dc, 0x5561, 0x4536, { 0x92, 0xc7, 0x79, 0x9b, 0xfc, 0x18, 0x33, 0x55 }}
gikidye8eecbf2009-04-27 02:28:39 +000073
lgao4f4671792009-06-08 06:59:54 +000074 ## PS/2 policy protocol abstracts the specific platform initialization and setting.
gikidye8eecbf2009-04-27 02:28:39 +000075 ## Include/Protocol/Ps2Policy.h
qwang1275d51bc2007-07-06 09:11:10 +000076 gEfiPs2PolicyProtocolGuid = { 0x4DF19259, 0xDC71, 0x4D46, { 0xBE, 0xF1, 0x35, 0x7B, 0xB5, 0x78, 0xC4, 0x18 }}
qhuang8a9102612007-06-26 08:14:44 +000077
klu2da4483c2009-02-26 04:36:27 +000078 ## OEM Badging Protocol defines the interface to get the OEM badging image with the dispaly attribute.
79 ## Include/Protocol/OEMBadging.h
80 gEfiOEMBadgingProtocolGuid = { 0x170E13C0, 0xBF1B, 0x4218, { 0x87, 0x1D, 0x2A, 0xBD, 0xC6, 0xF8, 0x87, 0xBC }}
81
lgao4f4671792009-06-08 06:59:54 +000082[PcdsFeatureFlag]
klu2588e3292009-06-24 06:21:49 +000083 ## This PCD specifies whether StatusCode is reported via Serial port.
qhuang81f6727d2007-12-05 07:14:27 +000084 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdStatusCodeUseSerial|TRUE|BOOLEAN|0x00010022
lgao4d2c315e2009-06-16 01:16:27 +000085
86 ## This PCD specifies whether StatusCode is stored in memory.
klu2588e3292009-06-24 06:21:49 +000087 # The memory is boot time memory in PEI Phase and is runtime memory in DXE Phase.
qhuang8b3af5df2007-08-30 09:11:54 +000088 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdStatusCodeUseMemory|FALSE|BOOLEAN|0x00010023
lgao4d2c315e2009-06-16 01:16:27 +000089
klu2588e3292009-06-24 06:21:49 +000090 ## This PCD specifies whether StatusCode is reported via OEM device.
qhuang8b3af5df2007-08-30 09:11:54 +000091 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdStatusCodeUseOEM|FALSE|BOOLEAN|0x00010024
lgao4d2c315e2009-06-16 01:16:27 +000092
93 ## This PCD specifies whether StatusCode is loged into DataHub.
qhuang8b3af5df2007-08-30 09:11:54 +000094 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdStatusCodeUseDataHub|FALSE|BOOLEAN|0x00010029
lgao4d2c315e2009-06-16 01:16:27 +000095
96 ## This PCD specifies whether Peiphase StatusCode is replayed in DxePhase.
97 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdStatusCodeReplayIn|FALSE|BOOLEAN|0x0001002d
lgao4f4671792009-06-08 06:59:54 +000098
lgao4d2c315e2009-06-16 01:16:27 +000099 ## This PCD specifies whether PciBus supports the hot plug device.
qhuang8b3af5df2007-08-30 09:11:54 +0000100 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdPciBusHotplugDeviceSupport|TRUE|BOOLEAN|0x0001003d
lgao4f4671792009-06-08 06:59:54 +0000101
gikidy77b91d82009-07-10 07:55:14 +0000102 ## This PCD specifies whether Serial device use half hand shake.
103 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdIsaBusSerialUseHalfHandshake|FALSE|BOOLEAN|0x00010043
104
lgao4d46f3632009-07-09 05:48:35 +0000105[PcdsFixedAtBuild]
106 ## FFS filename to find the default BMP Logo file.
107 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdLogoFile |{ 0x99, 0x8b, 0xB2, 0x7B, 0xBB, 0x61, 0xD5, 0x11, 0x9A, 0x5D, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D }|VOID*|16
108
109 ## FFS filename to find the shell application.
110 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile|{ 0xB7, 0xD6, 0x7A, 0xC5, 0x15, 0x05, 0xA8, 0x40, 0x9D, 0x21, 0x55, 0x16, 0x52, 0x85, 0x4E, 0x37 }|VOID*|16
111
xli2410c1a4c2009-07-10 07:01:42 +0000112 ## ISA bus related PCD to support DMA, SlaveDMA and ISA Memory features.
113 # BIT0 indicates if DMA is supported
114 # BIT1 indicates if only slave DMA is supported
115 # BIT2 indicates if ISA memory is supported
116 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdIsaBusSupportedFeatures|0x05|UINT8|0x00010040
117
lgao4f4671792009-06-08 06:59:54 +0000118[PcdsFixedAtBuild,PcdsPatchableInModule,PcdsDynamic]
lgao4d2c315e2009-06-16 01:16:27 +0000119 ## PcdStatusCodeMemorySize is used when PcdStatusCodeUseMemory is set to true
120 # (PcdStatusCodeMemorySize * KBytes) is the total taken memory size.
121 # The default value in PeiPhase is 1 KBytes.
122 # The default value in DxePhase is 128 KBytes.
qhuang8b3af5df2007-08-30 09:11:54 +0000123 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdStatusCodeMemorySize|1|UINT16|0x00010025
klu2a2b35992009-02-26 08:19:38 +0000124
lgao4f4671792009-06-08 06:59:54 +0000125[PcdsDynamic]
lgao4d2c315e2009-06-16 01:16:27 +0000126 ## PCD is used to mark if the machine has complete one boot cycle before.
127 # After the complete boot, the variable BootState will be set to TRUE.
lgao4f4671792009-06-08 06:59:54 +0000128 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBootState|TRUE|BOOLEAN|0x0001002f
129
130 ## Timeout value for displaying progressing bar in before boot OS.
lgao4d2c315e2009-06-16 01:16:27 +0000131 # According to UEFI 2.0 spec, the default TimeOut should be 0xffff.
lgao4f4671792009-06-08 06:59:54 +0000132 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdPlatformBootTimeOut|0xffff|UINT16|0x40000001
133
134 ## Error level for hardware recorder. If value 0, platform does not support feature of hardware error record.
135 # This PCD should be set as HII type PCD by platform integrator mapped to variable L"HwErrRecSupport"
136 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdHardwareErrorRecordLevel|0|UINT16|0x40000002