1 | #/** @file
|
---|
2 | # Framework Module Development Environment Industry Standards
|
---|
3 | #
|
---|
4 | # This Package provides headers and libraries that conform to EFI/PI Industry standards.
|
---|
5 | # Copyright (c) 2007, Intel Corporation. All rights reserved.<BR>
|
---|
6 | # Copyright (c) 2012-2015, ARM Ltd. All rights reserved.<BR>
|
---|
7 | # Copyright (c) 2017, Linaro Ltd. All rights reserved.<BR>
|
---|
8 | #
|
---|
9 | # SPDX-License-Identifier: BSD-2-Clause-Patent
|
---|
10 | #
|
---|
11 | #**/
|
---|
12 |
|
---|
13 | [Defines]
|
---|
14 | DEC_SPECIFICATION = 0x00010005
|
---|
15 | PACKAGE_NAME = EmbeddedPkg
|
---|
16 | PACKAGE_GUID = dea8e498-7e1b-47c1-b6fa-4bc04092587e
|
---|
17 | PACKAGE_VERSION = 0.1
|
---|
18 |
|
---|
19 |
|
---|
20 | ################################################################################
|
---|
21 | #
|
---|
22 | # Include Section - list of Include Paths that are provided by this package.
|
---|
23 | # Comments are used for Keywords and Module Types.
|
---|
24 | #
|
---|
25 | # Supported Module Types:
|
---|
26 | # BASE SEC PEI_CORE PEIM DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER DXE_SAL_DRIVER UEFI_DRIVER UEFI_APPLICATION
|
---|
27 | #
|
---|
28 | ################################################################################
|
---|
29 | [Includes.common]
|
---|
30 | Include # Root include for the package
|
---|
31 |
|
---|
32 | [LibraryClasses.common]
|
---|
33 | PrePiLib|Include/Library/PrePiLib.h
|
---|
34 | RealTimeClockLib|Include/Library/RealTimeClockLib.h
|
---|
35 | EfiResetSystemLib|Include/Library/EfiResetSystemLib.h
|
---|
36 | GdbSerialLib|Include/Library/GdbSerialLib.h
|
---|
37 | DebugAgentTimerLib|Include/Library/DebugAgentTimerLib.h
|
---|
38 | NorFlashInfoLib|Include/Library/NorFlashInfoLib.h
|
---|
39 | HalRuntimeServicesLib|Include/Library/HalRuntimeServicesLib.h
|
---|
40 | PrePiHobListPointerLib|Include/Library/PrePiHobListPointerLib.h
|
---|
41 | TimeBaseLib|Include/Library/TimeBaseLib.h
|
---|
42 | AcpiLib|Include/Library/AcpiLib.h
|
---|
43 | AndroidBootImgLib|Include/Library/AndroidBootImgLib.h
|
---|
44 | DmaLib|Include/Library/DmaLib.h
|
---|
45 | EfiFileLib|Include/Library/EfiFileLib.h
|
---|
46 | FdtLoadLib|Include/Library/FdtLoadLib.h
|
---|
47 |
|
---|
48 | DtPlatformDtbLoaderLib|Include/Library/DtPlatformDtbLoaderLib.h
|
---|
49 |
|
---|
50 | [Guids.common]
|
---|
51 | gEmbeddedTokenSpaceGuid = { 0xe0d8ca17, 0x4276, 0x4386, { 0xbb, 0x79, 0x48, 0xcb, 0x81, 0x3d, 0x3c, 0x4f }}
|
---|
52 |
|
---|
53 | ## FDT Configuration Table
|
---|
54 | # Include/Guid/Fdt.h
|
---|
55 | gFdtTableGuid = { 0xb1b621d5, 0xf19c, 0x41a5, { 0x83, 0x0b, 0xd9, 0x15, 0x2c, 0x69, 0xaa, 0xe0 } }
|
---|
56 | # Include/Guid/FdtHob.h
|
---|
57 | gFdtHobGuid = { 0x16958446, 0x19B7, 0x480B, { 0xB0, 0x47, 0x74, 0x85, 0xAD, 0x3F, 0x71, 0x6D } }
|
---|
58 | gFdtVariableGuid = { 0x25a4fd4a, 0x9703, 0x4ba9, { 0xa1, 0x90, 0xb7, 0xc8, 0x4e, 0xfb, 0x3e, 0x57 } }
|
---|
59 |
|
---|
60 | ## Include/Guid/PlatformHasDeviceTree.h
|
---|
61 | gEdkiiPlatformHasDeviceTreeGuid = { 0x7ebb920d, 0x1aaf, 0x46d9, { 0xb2, 0xaf, 0x54, 0x1e, 0x1d, 0xce, 0x14, 0x8b } }
|
---|
62 |
|
---|
63 | # HII form set GUID for DtPlatformDxe driver
|
---|
64 | gDtPlatformFormSetGuid = { 0x2b7a240d, 0xd5ad, 0x4fd6, { 0xbe, 0x1c, 0xdf, 0xa4, 0x41, 0x5f, 0x55, 0x26 } }
|
---|
65 |
|
---|
66 | # File GUID for default DTB image embedded in the firmware volume
|
---|
67 | gDtPlatformDefaultDtbFileGuid = { 0x25462cda, 0x221f, 0x47df, { 0xac, 0x1d, 0x25, 0x9c, 0xfa, 0xa4, 0xe3, 0x26 } }
|
---|
68 |
|
---|
69 | # HII form set GUID for ConsolePrefDxe driver
|
---|
70 | gConsolePrefFormSetGuid = { 0x2d2358b4, 0xe96c, 0x484d, { 0xb2, 0xdd, 0x7c, 0x2e, 0xdf, 0xc7, 0xd5, 0x6f } }
|
---|
71 |
|
---|
72 | ## Include/Guid/NvVarStoreFormatted.h
|
---|
73 | gEdkiiNvVarStoreFormattedGuid = { 0xd1a86e3f, 0x0707, 0x4c35, { 0x83, 0xcd, 0xdc, 0x2c, 0x29, 0xc8, 0x91, 0xa3 } }
|
---|
74 |
|
---|
75 | [Protocols.common]
|
---|
76 | gHardwareInterruptProtocolGuid = { 0x2890B3EA, 0x053D, 0x1643, { 0xAD, 0x0C, 0xD6, 0x48, 0x08, 0xDA, 0x3F, 0xF1 } }
|
---|
77 | gHardwareInterrupt2ProtocolGuid = { 0x32898322, 0x2da1, 0x474a, { 0xba, 0xaa, 0xf3, 0xf7, 0xcf, 0x56, 0x94, 0x70 } }
|
---|
78 | gEmbeddedDeviceGuid = { 0xbf4b9d10, 0x13ec, 0x43dd, { 0x88, 0x80, 0xe9, 0xb, 0x71, 0x8f, 0x27, 0xde } }
|
---|
79 | gEmbeddedExternalDeviceProtocolGuid = { 0x735F8C64, 0xD696, 0x44D0, { 0xBD, 0xF2, 0x44, 0x7F, 0xD0, 0x5A, 0x54, 0x06 }}
|
---|
80 | gEmbeddedGpioProtocolGuid = { 0x17a0a3d7, 0xc0a5, 0x4635, { 0xbb, 0xd5, 0x07, 0x21, 0x87, 0xdf, 0xe2, 0xee }}
|
---|
81 | gPeCoffLoaderProtocolGuid = { 0xB323179B, 0x97FB, 0x477E, { 0xB0, 0xFE, 0xD8, 0x85, 0x91, 0xFA, 0x11, 0xAB } }
|
---|
82 | gEmbeddedMmcHostProtocolGuid = { 0x3e591c00, 0x9e4a, 0x11df, {0x92, 0x44, 0x00, 0x02, 0xA5, 0xD5, 0xC5, 0x1B }}
|
---|
83 | gAndroidFastbootTransportProtocolGuid = { 0x74bd9fe0, 0x8902, 0x11e3, {0xb9, 0xd3, 0xf7, 0x22, 0x38, 0xfc, 0x9a, 0x31}}
|
---|
84 | gAndroidFastbootPlatformProtocolGuid = { 0x524685a0, 0x89a0, 0x11e3, {0x9d, 0x4d, 0xbf, 0xa9, 0xf6, 0xa4, 0x03, 0x08}}
|
---|
85 | gUsbDeviceProtocolGuid = { 0x021bd2ca, 0x51d2, 0x11e3, {0x8e, 0x56, 0xb7, 0x54, 0x17, 0xc7, 0x0b, 0x44 }}
|
---|
86 | gPlatformBootManagerProtocolGuid = { 0x7197c8a7, 0x6559, 0x4c93, { 0x93, 0xd5, 0x8a, 0x84, 0xf9, 0x88, 0x79, 0x8b }}
|
---|
87 | gPlatformGpioProtocolGuid = { 0x52ce9845, 0x5af4, 0x43e2, {0xba, 0xfd, 0x23, 0x08, 0x12, 0x54, 0x7a, 0xc2 }}
|
---|
88 | gPlatformVirtualKeyboardProtocolGuid = { 0x0e3606d2, 0x1dc3, 0x4e6f, { 0xbe, 0x65, 0x39, 0x49, 0x82, 0xa2, 0x65, 0x47 }}
|
---|
89 | gAndroidBootImgProtocolGuid = { 0x9859bb19, 0x407c, 0x4f8b, {0xbc, 0xe1, 0xf8, 0xda, 0x65, 0x65, 0xf4, 0xa5 }}
|
---|
90 | gFdtClientProtocolGuid = { 0xE11FACA0, 0x4710, 0x4C8E, { 0xA7, 0xA2, 0x01, 0xBA, 0xA2, 0x59, 0x1B, 0x4C } }
|
---|
91 |
|
---|
92 | [Ppis]
|
---|
93 | gEdkiiEmbeddedGpioPpiGuid = { 0x21c3b115, 0x4e0b, 0x470c, { 0x85, 0xc7, 0xe1, 0x05, 0xa5, 0x75, 0xc9, 0x7b }}
|
---|
94 |
|
---|
95 | [PcdsFeatureFlag.common]
|
---|
96 | gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob|FALSE|BOOLEAN|0x0000001b
|
---|
97 | gEmbeddedTokenSpaceGuid.PcdGdbSerial|FALSE|BOOLEAN|0x00000053
|
---|
98 | gEmbeddedTokenSpaceGuid.PcdAndroidBootLoadFile2|FALSE|BOOLEAN|0x0000005b
|
---|
99 |
|
---|
100 | [PcdsFixedAtBuild.common]
|
---|
101 | gEmbeddedTokenSpaceGuid.PcdPrePiStackBase|0|UINT32|0x0000000b
|
---|
102 | gEmbeddedTokenSpaceGuid.PcdPrePiStackSize|131072|UINT32|0x0000000c
|
---|
103 |
|
---|
104 | gEmbeddedTokenSpaceGuid.PcdMemoryBase|0x0|UINT32|0x0000004e
|
---|
105 | gEmbeddedTokenSpaceGuid.PcdMemorySize|0x0|UINT32|0x0000004f
|
---|
106 |
|
---|
107 | gEmbeddedTokenSpaceGuid.PcdFlashFvMainBase|0x0|UINT32|0x00000043
|
---|
108 | gEmbeddedTokenSpaceGuid.PcdFlashFvMainOffset|0x0|UINT32|0x00000044
|
---|
109 | gEmbeddedTokenSpaceGuid.PcdFlashFvMainSize|0x0|UINT32|0x00000045
|
---|
110 |
|
---|
111 | # Used to help reduce fragmentation in the EFI memory map
|
---|
112 | # EFI Pages (4K) are the units used
|
---|
113 | gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory|0|UINT32|0x00000012
|
---|
114 | gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS|0|UINT32|0x00000013
|
---|
115 | gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType|0|UINT32|0x00000014
|
---|
116 | gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|0|UINT32|0x00000015
|
---|
117 | gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|0|UINT32|0x00000016
|
---|
118 | gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode|0|UINT32|0x00000017
|
---|
119 | gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData|0|UINT32|0x00000018
|
---|
120 | gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|0|UINT32|0x00000019
|
---|
121 | gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData|0|UINT32|0x0000001a
|
---|
122 |
|
---|
123 | gEmbeddedTokenSpaceGuid.PcdTimerBaseAddress|0x3c700000|UINT32|0x0000001c
|
---|
124 | gEmbeddedTokenSpaceGuid.PcdTimerVector|7|UINT32|0x0000001d
|
---|
125 | gEmbeddedTokenSpaceGuid.PcdTimerPeriod|100000|UINT32|0x0000001e
|
---|
126 | gEmbeddedTokenSpaceGuid.PcdInterruptBaseAddress|0x38e00000|UINT32|0x0000001f
|
---|
127 |
|
---|
128 | gEmbeddedTokenSpaceGuid.PcdMetronomeTickPeriod|100|UINT32|0x00000020
|
---|
129 |
|
---|
130 | gEmbeddedTokenSpaceGuid.PcdEmbeddedFdBaseAddress|0xffff0000|UINT32|0x00000030
|
---|
131 | gEmbeddedTokenSpaceGuid.PcdEmbeddedFdSize|0x0000000|UINT32|0x00000031
|
---|
132 | gEmbeddedTokenSpaceGuid.PcdEmbeddedPerformanceCounterFrequencyInHz|0x0000000|UINT64|0x00000032
|
---|
133 | gEmbeddedTokenSpaceGuid.PcdEmbeddedPerformanceCounterPeriodInNanoseconds|0x0000000|UINT32|0x00000033
|
---|
134 |
|
---|
135 | gEmbeddedTokenSpaceGuid.PcdGdbBaudRate|115200|UINT64|0x00000047
|
---|
136 | gEmbeddedTokenSpaceGuid.PcdGdbDataBits|8|UINT8|0x00000048
|
---|
137 | gEmbeddedTokenSpaceGuid.PcdGdbParity|1|UINT8|0x00000049
|
---|
138 | gEmbeddedTokenSpaceGuid.PcdGdbStopBits|1|UINT8|0x0000004a
|
---|
139 | gEmbeddedTokenSpaceGuid.PcdGdbUartPort|0x3f8|UINT32|0x0000004b
|
---|
140 | gEmbeddedTokenSpaceGuid.PcdGdbMaxPacketRetryCount|10000000|UINT32|0x0000004c
|
---|
141 | gEmbeddedTokenSpaceGuid.PcdGdbTimerPeriodMilliseconds|250|UINT32|0x0000004d
|
---|
142 |
|
---|
143 | #
|
---|
144 | # Android FastBoot
|
---|
145 | #
|
---|
146 |
|
---|
147 | # The Android FastBoot utility has hard-coded USB Vendor IDs that it recognises
|
---|
148 | # (and 0xf00d isn't one of them!).
|
---|
149 | # You'll need to pass it "-i 0xf00d" to get it to recognise this device.
|
---|
150 | gEmbeddedTokenSpaceGuid.PcdAndroidFastbootUsbVendorId|0xf00d|UINT32|0x00000022
|
---|
151 | gEmbeddedTokenSpaceGuid.PcdAndroidFastbootUsbProductId|0xbeef|UINT32|0x00000023
|
---|
152 | gEmbeddedTokenSpaceGuid.PcdAndroidFastbootTcpPort|1234|UINT32|0x00000024
|
---|
153 |
|
---|
154 | gEmbeddedTokenSpaceGuid.PcdAndroidBootDevicePath|L""|VOID*|0x00000057
|
---|
155 |
|
---|
156 | [PcdsFixedAtBuild.ARM]
|
---|
157 | gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|0|UINT8|0x00000011
|
---|
158 |
|
---|
159 | [PcdsFixedAtBuild.AARCH64]
|
---|
160 | gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|0|UINT8|0x00000011
|
---|
161 |
|
---|
162 | [PcdsFixedAtBuild.IA32]
|
---|
163 | gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|16|UINT8|0x00000011
|
---|
164 |
|
---|
165 | [PcdsFixedAtBuild.X64]
|
---|
166 | gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|16|UINT8|0x00000011
|
---|
167 |
|
---|
168 | [PcdsFixedAtBuild.common, PcdsDynamic.common]
|
---|
169 | #
|
---|
170 | # Value to add to a host address to obtain a device address, using
|
---|
171 | # unsigned 64-bit integer arithmetic. This means we can rely on
|
---|
172 | # truncation on overflow to specify negative offsets.
|
---|
173 | #
|
---|
174 | gEmbeddedTokenSpaceGuid.PcdDmaDeviceOffset|0x0|UINT64|0x0000058
|
---|
175 |
|
---|
176 | #
|
---|
177 | # Highest address value supported by the device for DMA addressing. Note
|
---|
178 | # that this value should be strictly greater than PcdDmaDeviceOffset.
|
---|
179 | #
|
---|
180 | gEmbeddedTokenSpaceGuid.PcdDmaDeviceLimit|0xFFFFFFFFFFFFFFFF|UINT64|0x000005A
|
---|
181 |
|
---|
182 | #
|
---|
183 | # Selection between DT and ACPI as a default
|
---|
184 | #
|
---|
185 | gEmbeddedTokenSpaceGuid.PcdDefaultDtPref|TRUE|BOOLEAN|0x0000059
|
---|