qhuang8 | a910261 | 2007-06-26 08:14:44 +0000 | [diff] [blame] | 1 | #/** @file
|
klu2 | 217b992 | 2009-06-19 08:48:13 +0000 | [diff] [blame] | 2 | # Intel Framework Module Package contains the definitions and module implementation
|
| 3 | # which follows Intel EFI Framework Specification.
|
qhuang8 | a910261 | 2007-06-26 08:14:44 +0000 | [diff] [blame] | 4 | #
|
klu2 | 217b992 | 2009-06-19 08:48:13 +0000 | [diff] [blame] | 5 | # Copyright (c) 2007 - 2009, Intel Corporation.
|
qhuang8 | a910261 | 2007-06-26 08:14:44 +0000 | [diff] [blame] | 6 | #
|
klu2 | f8cd287 | 2007-07-20 09:34:04 +0000 | [diff] [blame] | 7 | # 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.
|
qhuang8 | a910261 | 2007-06-26 08:14:44 +0000 | [diff] [blame] | 14 | #
|
| 15 | #**/
|
| 16 |
|
qhuang8 | a910261 | 2007-06-26 08:14:44 +0000 | [diff] [blame] | 17 | [Defines]
|
| 18 | DEC_SPECIFICATION = 0x00010005
|
| 19 | PACKAGE_NAME = IntelFrameworkModulePkg
|
| 20 | PACKAGE_GUID = 88894582-7553-4822-B484-624E24B6DECF
|
| 21 | PACKAGE_VERSION = 0.1
|
| 22 |
|
qwang12 | 479922d | 2007-06-29 07:23:08 +0000 | [diff] [blame] | 23 | [Includes.common]
|
| 24 | Include # Root include for the package
|
qhuang8 | a910261 | 2007-06-26 08:14:44 +0000 | [diff] [blame] | 25 |
|
klu2 | 34480ea | 2007-07-18 06:54:06 +0000 | [diff] [blame] | 26 | [LibraryClasses.common]
|
lgao4 | f467179 | 2009-06-08 06:59:54 +0000 | [diff] [blame] | 27 | ## @libraryclass OEM status code libary is used to report status code to OEM device.
|
qhuang8 | a910261 | 2007-06-26 08:14:44 +0000 | [diff] [blame] | 28 | OemHookStatusCodeLib|Include/Library/OemHookStatusCodeLib.h
|
qhuang8 | a910261 | 2007-06-26 08:14:44 +0000 | [diff] [blame] | 29 |
|
klu2 | ddac74d | 2009-02-24 15:53:05 +0000 | [diff] [blame] | 30 | ## @libraryclass Platform BDS library definition about platform specific behavior.
|
| 31 | PlatformBdsLib|Include/Library/PlatformBdsLib.h
|
lgao4 | f467179 | 2009-06-08 06:59:54 +0000 | [diff] [blame] | 32 |
|
klu2 | ddac74d | 2009-02-24 15:53:05 +0000 | [diff] [blame] | 33 | ## @libraryclass Generic BDS library definition, include the data structure and function.
|
| 34 | GenericBdsLib|Include/Library/GenericBdsLib.h
|
| 35 |
|
qhuang8 | a910261 | 2007-06-26 08:14:44 +0000 | [diff] [blame] | 36 | [Guids.common]
|
lgao4 | f467179 | 2009-06-08 06:59:54 +0000 | [diff] [blame] | 37 | ## 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
|
gikidy | e8eecbf | 2009-04-27 02:28:39 +0000 | [diff] [blame] | 42 | ## Include/Guid/MemoryStatusCodeRecord.h
|
klu2 | 29941df | 2007-07-19 02:23:08 +0000 | [diff] [blame] | 43 | gMemoryStatusCodeRecordGuid = { 0x060CC026, 0x4C0D, 0x4DDA, { 0x8F, 0x41, 0x59, 0x5F, 0xEF, 0x00, 0xA5, 0x02 }}
|
gikidy | e8eecbf | 2009-04-27 02:28:39 +0000 | [diff] [blame] | 44 |
|
lgao4 | f467179 | 2009-06-08 06:59:54 +0000 | [diff] [blame] | 45 | ## GUID identifies Data Hub records logged by Status Code Runtime Protocol.
|
gikidy | e8eecbf | 2009-04-27 02:28:39 +0000 | [diff] [blame] | 46 | ## Include/Guid/DataHubStatusCodeRecord.h
|
yshang1 | 351986a | 2007-07-23 06:43:10 +0000 | [diff] [blame] | 47 | gEfiDataHubStatusCodeRecordGuid = { 0xD083E94C, 0x6560, 0x42E4, { 0xB6, 0xD4, 0x2D, 0xF7, 0x5A, 0xDF, 0x6A, 0x2A }}
|
gikidy | e8eecbf | 2009-04-27 02:28:39 +0000 | [diff] [blame] | 48 |
|
lgao4 | f467179 | 2009-06-08 06:59:54 +0000 | [diff] [blame] | 49 | ## GUID indicates the tiano custom compress/decompress algorithm.
|
| 50 | ## Include/Guid/TianoDecompress.h
|
lgao4 | d8c79a8 | 2007-08-08 10:17:57 +0000 | [diff] [blame] | 51 | gTianoCustomDecompressGuid = { 0xA31280AD, 0x481E, 0x41B6, { 0x95, 0xE8, 0x12, 0x7F, 0x4C, 0x98, 0x47, 0x79 }}
|
qhuang8 | 4bf32fb | 2009-03-02 06:08:22 +0000 | [diff] [blame] | 52 |
|
lgao4 | f467179 | 2009-06-08 06:59:54 +0000 | [diff] [blame] | 53 | ## GUID indicates the LZMA custom compress/decompress algorithm.
|
jljusten | 306bf4e | 2009-05-01 00:28:19 +0000 | [diff] [blame] | 54 | ## Include/Guid/LzmaDecompress.h
|
| 55 | gLzmaCustomDecompressGuid = { 0xEE4E5898, 0x3914, 0x4259, { 0x9D, 0x6E, 0xDC, 0x7B, 0xD7, 0x94, 0x03, 0xCF }}
|
| 56 |
|
mdkinney | 3a6064f | 2009-06-01 21:17:41 +0000 | [diff] [blame] | 57 | ## 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 |
|
lgao4 | 0a6f717 | 2009-02-24 07:51:47 +0000 | [diff] [blame] | 61 | ## Guid for EFI_DISK_INFO_PROTOCOL.Interface to specify Usb interface.
|
| 62 | ## Include/Protocol/DiskInfo.h
|
| 63 | gEfiDiskInfoUsbInterfaceGuid = { 0xCB871572, 0xC11A, 0x47B5, { 0xB4, 0x92, 0x67, 0x5E, 0xAF, 0xA7, 0x77, 0x27 }}
|
| 64 |
|
| 65 | ## Guid for EFI_DISK_INFO_PROTOCOL.Interface to specify Scsi interface.
|
| 66 | ## Include/Protocol/DiskInfo.h
|
| 67 | gEfiDiskInfoScsiInterfaceGuid = { 0x08F74BAA, 0xEA36, 0x41D9, { 0x95, 0x21, 0x21, 0xA7, 0x0F, 0x87, 0x80, 0xBC }}
|
| 68 |
|
| 69 | ## Guid for EFI_DISK_INFO_PROTOCOL.Interface to specify Ide interface.
|
| 70 | ## Include/Protocol/DiskInfo.h
|
| 71 | gEfiDiskInfoIdeInterfaceGuid = { 0x5E948FE3, 0x26D3, 0x42B5, { 0xAF, 0x17, 0x61, 0x02, 0x87, 0x18, 0x8D, 0xEC }}
|
| 72 |
|
| 73 | ## Guid for EFI_DISK_INFO_PROTOCOL.Interface to specify Ahci interface.
|
| 74 | ## Include/Protocol/DiskInfo.h
|
| 75 | gEfiDiskInfoAhciInterfaceGuid = { 0x9e498932, 0x4abc, 0x45af, { 0xa3, 0x4d, 0x02, 0x47, 0x78, 0x7b, 0xe7, 0xc6 }}
|
| 76 |
|
qhuang8 | a910261 | 2007-06-26 08:14:44 +0000 | [diff] [blame] | 77 | [Protocols.common]
|
lgao4 | f467179 | 2009-06-08 06:59:54 +0000 | [diff] [blame] | 78 | ## This protocol is used to add or remove all PCI child devices on the PCI root bridge.
|
gikidy | e8eecbf | 2009-04-27 02:28:39 +0000 | [diff] [blame] | 79 | ## Include/Protocol/PciHotPlugRequest.h
|
qhuang8 | a910261 | 2007-06-26 08:14:44 +0000 | [diff] [blame] | 80 | gEfiPciHotPlugRequestProtocolGuid = { 0x19CB87AB, 0x2CB9, 0x4665, { 0x83, 0x60, 0xDD, 0xCF, 0x60, 0x54, 0xF7, 0x9D }}
|
gikidy | e8eecbf | 2009-04-27 02:28:39 +0000 | [diff] [blame] | 81 |
|
lgao4 | f467179 | 2009-06-08 06:59:54 +0000 | [diff] [blame] | 82 | ## Vga Mini port binding for a VGA controller
|
gikidy | e8eecbf | 2009-04-27 02:28:39 +0000 | [diff] [blame] | 83 | ## Include/Protocol/VgaMiniPort.h
|
yshang1 | 351986a | 2007-07-23 06:43:10 +0000 | [diff] [blame] | 84 | gEfiVgaMiniPortProtocolGuid = { 0xc7735a2f, 0x88f5, 0x4882, { 0xae, 0x63, 0xfa, 0xac, 0x8c, 0x8b, 0x86, 0xb3 }}
|
gikidy | e8eecbf | 2009-04-27 02:28:39 +0000 | [diff] [blame] | 85 |
|
lgao4 | f467179 | 2009-06-08 06:59:54 +0000 | [diff] [blame] | 86 | ## ISA I/O Protocol is used to perform ISA device Io/Mem operations.
|
gikidy | e8eecbf | 2009-04-27 02:28:39 +0000 | [diff] [blame] | 87 | ## Include/Protocol/IsaIo.h
|
yshang1 | c390237 | 2007-07-02 09:09:00 +0000 | [diff] [blame] | 88 | gEfiIsaIoProtocolGuid = { 0x7ee2bd44, 0x3da0, 0x11d4, { 0x9a, 0x38, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d }}
|
gikidy | e8eecbf | 2009-04-27 02:28:39 +0000 | [diff] [blame] | 89 |
|
lgao4 | f467179 | 2009-06-08 06:59:54 +0000 | [diff] [blame] | 90 | ## ISA Acpi Protocol is used to operate and communicate with ISA device.
|
gikidy | e8eecbf | 2009-04-27 02:28:39 +0000 | [diff] [blame] | 91 | ## Include/Protocol/IsaAcpi.h
|
yshang1 | 351986a | 2007-07-23 06:43:10 +0000 | [diff] [blame] | 92 | gEfiIsaAcpiProtocolGuid = { 0x64a892dc, 0x5561, 0x4536, { 0x92, 0xc7, 0x79, 0x9b, 0xfc, 0x18, 0x33, 0x55 }}
|
gikidy | e8eecbf | 2009-04-27 02:28:39 +0000 | [diff] [blame] | 93 |
|
lgao4 | f467179 | 2009-06-08 06:59:54 +0000 | [diff] [blame] | 94 | ## PS/2 policy protocol abstracts the specific platform initialization and setting.
|
gikidy | e8eecbf | 2009-04-27 02:28:39 +0000 | [diff] [blame] | 95 | ## Include/Protocol/Ps2Policy.h
|
qwang12 | 75d51bc | 2007-07-06 09:11:10 +0000 | [diff] [blame] | 96 | gEfiPs2PolicyProtocolGuid = { 0x4DF19259, 0xDC71, 0x4D46, { 0xBE, 0xF1, 0x35, 0x7B, 0xB5, 0x78, 0xC4, 0x18 }}
|
qhuang8 | a910261 | 2007-06-26 08:14:44 +0000 | [diff] [blame] | 97 |
|
lgao4 | 0a6f717 | 2009-02-24 07:51:47 +0000 | [diff] [blame] | 98 | ## Disk Info protocol is used to export Inquiry Data for a drive.
|
| 99 | ## Include/Protocol/DiskInfo.h
|
| 100 | gEfiDiskInfoProtocolGuid = { 0xD432A67F, 0x14DC, 0x484B, { 0xB3, 0xBB, 0x3F, 0x02, 0x91, 0x84, 0x93, 0x27 }}
|
| 101 |
|
klu2 | da4483c | 2009-02-26 04:36:27 +0000 | [diff] [blame] | 102 | ## OEM Badging Protocol defines the interface to get the OEM badging image with the dispaly attribute.
|
| 103 | ## Include/Protocol/OEMBadging.h
|
| 104 | gEfiOEMBadgingProtocolGuid = { 0x170E13C0, 0xBF1B, 0x4218, { 0x87, 0x1D, 0x2A, 0xBD, 0xC6, 0xF8, 0x87, 0xBC }}
|
| 105 |
|
lgao4 | f467179 | 2009-06-08 06:59:54 +0000 | [diff] [blame] | 106 | [PcdsFeatureFlag]
|
klu2 | 588e329 | 2009-06-24 06:21:49 +0000 | [diff] [blame] | 107 | ## This PCD specifies whether StatusCode is reported via Serial port.
|
qhuang8 | 1f6727d | 2007-12-05 07:14:27 +0000 | [diff] [blame] | 108 | gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdStatusCodeUseSerial|TRUE|BOOLEAN|0x00010022
|
lgao4 | d2c315e | 2009-06-16 01:16:27 +0000 | [diff] [blame] | 109 |
|
| 110 | ## This PCD specifies whether StatusCode is stored in memory.
|
klu2 | 588e329 | 2009-06-24 06:21:49 +0000 | [diff] [blame] | 111 | # The memory is boot time memory in PEI Phase and is runtime memory in DXE Phase.
|
qhuang8 | b3af5df | 2007-08-30 09:11:54 +0000 | [diff] [blame] | 112 | gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdStatusCodeUseMemory|FALSE|BOOLEAN|0x00010023
|
lgao4 | d2c315e | 2009-06-16 01:16:27 +0000 | [diff] [blame] | 113 |
|
klu2 | 588e329 | 2009-06-24 06:21:49 +0000 | [diff] [blame] | 114 | ## This PCD specifies whether StatusCode is reported via OEM device.
|
qhuang8 | b3af5df | 2007-08-30 09:11:54 +0000 | [diff] [blame] | 115 | gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdStatusCodeUseOEM|FALSE|BOOLEAN|0x00010024
|
lgao4 | d2c315e | 2009-06-16 01:16:27 +0000 | [diff] [blame] | 116 |
|
| 117 | ## This PCD specifies whether StatusCode is loged into DataHub.
|
qhuang8 | b3af5df | 2007-08-30 09:11:54 +0000 | [diff] [blame] | 118 | gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdStatusCodeUseDataHub|FALSE|BOOLEAN|0x00010029
|
lgao4 | d2c315e | 2009-06-16 01:16:27 +0000 | [diff] [blame] | 119 |
|
| 120 | ## This PCD specifies whether Peiphase StatusCode is replayed in DxePhase.
|
| 121 | gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdStatusCodeReplayIn|FALSE|BOOLEAN|0x0001002d
|
lgao4 | f467179 | 2009-06-08 06:59:54 +0000 | [diff] [blame] | 122 |
|
lgao4 | d2c315e | 2009-06-16 01:16:27 +0000 | [diff] [blame] | 123 | ## This PCD specifies whether PciBus supports the hot plug device.
|
qhuang8 | b3af5df | 2007-08-30 09:11:54 +0000 | [diff] [blame] | 124 | gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdPciBusHotplugDeviceSupport|TRUE|BOOLEAN|0x0001003d
|
lgao4 | f467179 | 2009-06-08 06:59:54 +0000 | [diff] [blame] | 125 |
|
lgao4 | e83c906 | 2009-07-08 12:06:28 +0000 | [diff] [blame] | 126 | ## ISA bus related PCDs to support DMA, SlaveDMA and Memory feature.
|
qhuang8 | b3af5df | 2007-08-30 09:11:54 +0000 | [diff] [blame] | 127 | gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdIsaBusSupportDma|TRUE|BOOLEAN|0x00010040
|
| 128 | gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdIsaBusOnlySupportSlaveDma|FALSE|BOOLEAN|0x00010041
|
| 129 | gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdIsaBusSupportIsaMemory|TRUE|BOOLEAN|0x00010042
|
lgao4 | d2c315e | 2009-06-16 01:16:27 +0000 | [diff] [blame] | 130 |
|
lgao4 | d46f363 | 2009-07-09 05:48:35 +0000 | [diff] [blame^] | 131 | [PcdsFixedAtBuild]
|
| 132 | ## FFS filename to find the default BMP Logo file.
|
| 133 | gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdLogoFile |{ 0x99, 0x8b, 0xB2, 0x7B, 0xBB, 0x61, 0xD5, 0x11, 0x9A, 0x5D, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D }|VOID*|16
|
| 134 |
|
| 135 | ## FFS filename to find the shell application.
|
| 136 | gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile|{ 0xB7, 0xD6, 0x7A, 0xC5, 0x15, 0x05, 0xA8, 0x40, 0x9D, 0x21, 0x55, 0x16, 0x52, 0x85, 0x4E, 0x37 }|VOID*|16
|
| 137 |
|
lgao4 | f467179 | 2009-06-08 06:59:54 +0000 | [diff] [blame] | 138 | [PcdsFixedAtBuild,PcdsPatchableInModule,PcdsDynamic]
|
lgao4 | d2c315e | 2009-06-16 01:16:27 +0000 | [diff] [blame] | 139 | ## PcdStatusCodeMemorySize is used when PcdStatusCodeUseMemory is set to true
|
| 140 | # (PcdStatusCodeMemorySize * KBytes) is the total taken memory size.
|
| 141 | # The default value in PeiPhase is 1 KBytes.
|
| 142 | # The default value in DxePhase is 128 KBytes.
|
qhuang8 | b3af5df | 2007-08-30 09:11:54 +0000 | [diff] [blame] | 143 | gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdStatusCodeMemorySize|1|UINT16|0x00010025
|
klu2 | a2b3599 | 2009-02-26 08:19:38 +0000 | [diff] [blame] | 144 |
|
gikidy | fa70a2c | 2009-07-08 09:29:08 +0000 | [diff] [blame] | 145 | ## This PCD specifies whether Serial device use half hand shake.
|
| 146 | gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdIsaBusSerialUseHalfHandshake|FALSE|BOOLEAN|0x00010043
|
| 147 |
|
lgao4 | f467179 | 2009-06-08 06:59:54 +0000 | [diff] [blame] | 148 | [PcdsDynamic]
|
lgao4 | d2c315e | 2009-06-16 01:16:27 +0000 | [diff] [blame] | 149 | ## PCD is used to mark if the machine has complete one boot cycle before.
|
| 150 | # After the complete boot, the variable BootState will be set to TRUE.
|
lgao4 | f467179 | 2009-06-08 06:59:54 +0000 | [diff] [blame] | 151 | gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBootState|TRUE|BOOLEAN|0x0001002f
|
| 152 |
|
| 153 | ## Timeout value for displaying progressing bar in before boot OS.
|
lgao4 | d2c315e | 2009-06-16 01:16:27 +0000 | [diff] [blame] | 154 | # According to UEFI 2.0 spec, the default TimeOut should be 0xffff.
|
lgao4 | f467179 | 2009-06-08 06:59:54 +0000 | [diff] [blame] | 155 | gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdPlatformBootTimeOut|0xffff|UINT16|0x40000001
|
| 156 |
|
| 157 | ## Error level for hardware recorder. If value 0, platform does not support feature of hardware error record.
|
| 158 | # This PCD should be set as HII type PCD by platform integrator mapped to variable L"HwErrRecSupport"
|
| 159 | gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdHardwareErrorRecordLevel|0|UINT16|0x40000002
|