]> git.proxmox.com Git - mirror_edk2.git/blame - EmbeddedPkg/EmbeddedPkg.dsc
EmbeddedPkg: get rid of BdsLib dependency from Android*Boot
[mirror_edk2.git] / EmbeddedPkg / EmbeddedPkg.dsc
CommitLineData
1e57a462 1#/** @file\r
2# Embedded Package\r
3#\r
4#\r
1bccab91 5# Copyright (c) 2007 - 2015, Intel Corporation. All rights reserved.<BR>\r
04f1a709 6# Copyright (c) 2012-2015, ARM Ltd. All rights reserved.<BR>\r
2b18c281 7# Copyright (c) 2016, Linaro Ltd. All rights reserved.<BR>\r
1e57a462 8#\r
9# This program and the accompanying materials\r
10# are licensed and made available under the terms and conditions of the BSD License\r
11# which accompanies this distribution. The full text of the license may be found at\r
12# http://opensource.org/licenses/bsd-license.php\r
13#\r
14# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
15# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
16#\r
17#**/\r
18\r
19################################################################################\r
20#\r
21# Defines Section - statements that will be processed to create a Makefile.\r
22#\r
23################################################################################\r
24[Defines]\r
25 PLATFORM_NAME = Embedded\r
26 PLATFORM_GUID = 8DBB580B-CF89-4D57-95C6-DFE96C44686E\r
27 PLATFORM_VERSION = 0.1\r
28 DSC_SPECIFICATION = 0x00010005\r
29 OUTPUT_DIRECTORY = Build/Embedded\r
35a3e762 30 SUPPORTED_ARCHITECTURES = IA32|X64|IPF|ARM|AARCH64\r
1e57a462 31 BUILD_TARGETS = DEBUG|RELEASE\r
32 SKUID_IDENTIFIER = DEFAULT\r
33 FLASH_DEFINITION = EmbeddedPkg/EmbeddedPkg.fdf\r
34\r
35\r
36################################################################################\r
37#\r
38# SKU Identification section - list of all SKU IDs supported by this\r
39# Platform.\r
40#\r
41################################################################################\r
42[SkuIds]\r
43 0|DEFAULT # The entry: 0|DEFAULT is reserved and always required.\r
44\r
45################################################################################\r
46#\r
47# Library Class section - list of all Library Classes needed by this Platform.\r
48#\r
49################################################################################\r
50[LibraryClasses.common]\r
51# DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf\r
52 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf\r
53\r
3402aac7 54\r
fa74dd22 55 AndroidBootImgLib|EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.inf\r
1e57a462 56 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf\r
57 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf\r
58 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf\r
59 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf\r
60 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf\r
61 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf\r
62 EfiFileLib|EmbeddedPkg/Library/EfiFileLib/EfiFileLib.inf\r
3402aac7 63\r
2c1cc129 64 ReportStatusCodeLib|MdeModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf\r
3402aac7 65\r
1e57a462 66 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf\r
67 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf\r
68 PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf\r
69 CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf\r
70 PrePiLib|EmbeddedPkg/Library/PrePiLib/PrePiLib.inf\r
3402aac7 71\r
9db0a779 72 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf\r
1e57a462 73 RealTimeClockLib|EmbeddedPkg/Library/TemplateRealTimeClockLib/TemplateRealTimeClockLib.inf\r
74 EfiResetSystemLib|EmbeddedPkg/Library/TemplateResetSystemLib/TemplateResetSystemLib.inf\r
75 GdbSerialLib|EmbeddedPkg/Library/GdbSerialLib/GdbSerialLib.inf\r
76\r
77\r
78 #\r
79 # Need to change this for IPF\r
80 #\r
81 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf\r
3402aac7 82\r
1e57a462 83 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf\r
84 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf\r
85 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf\r
1abf9f05 86 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf\r
1e57a462 87 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf\r
88 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf\r
89 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf\r
90 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf\r
91\r
92 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf\r
93 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf\r
94 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf\r
95\r
1e57a462 96 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r
97 EblCmdLib|EmbeddedPkg/Library/EblCmdLibNull/EblCmdLibNull.inf\r
febad023 98\r
1e57a462 99 EblNetworkLib|EmbeddedPkg/Library/EblNetworkLib/EblNetworkLib.inf\r
f6755908 100\r
3356211b 101 AcpiLib|EmbeddedPkg/Library/AcpiLib/AcpiLib.inf\r
f6755908 102 FdtLib|EmbeddedPkg/Library/FdtLib/FdtLib.inf\r
1e57a462 103\r
3c1e53ce
RC
104 # Shell libraries\r
105 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf\r
106 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf\r
107 SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf\r
108\r
46f2c53b
OM
109 # Networking Requirements\r
110 NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf\r
111 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf\r
3402aac7 112 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf\r
46f2c53b 113\r
4c725c89
AB
114 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf\r
115 DtPlatformDtbLoaderLib|EmbeddedPkg/Library/DxeDtPlatformDtbLoaderLibDefault/DxeDtPlatformDtbLoaderLibDefault.inf\r
116\r
1e57a462 117[LibraryClasses.common.DXE_DRIVER]\r
118 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf\r
119 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf\r
120\r
121\r
122[LibraryClasses.common.UEFI_APPLICATION]\r
123 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf\r
124 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf\r
125\r
126[LibraryClasses.common.UEFI_DRIVER]\r
127 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf\r
128 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf\r
3402aac7 129\r
1e57a462 130[LibraryClasses.common.SEC]\r
131 ExtractGuidedSectionLib|EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf\r
132\r
35a3e762 133[LibraryClasses.ARM, LibraryClasses.AARCH64]\r
f6755908
OM
134 ArmGicLib|ArmPkg/Drivers/ArmGic/ArmGicLib.inf\r
135 ArmSmcLib|ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf\r
136 BdsLib|ArmPkg/Library/BdsLib/BdsLib.inf\r
1e57a462 137 SemihostLib|ArmPkg/Library/SemihostLib/SemihostLib.inf\r
1e57a462 138 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf\r
139\r
bd1d0628
OM
140 # Add support for GCC stack protector\r
141 NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf\r
142\r
4af5227c 143 ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf\r
1e57a462 144\r
145################################################################################\r
146#\r
147# Pcd Section - list of all PCD Entries defined by this Platform\r
148#\r
149################################################################################\r
150\r
151[PcdsFeatureFlag.common]\r
152 gEfiMdePkgTokenSpaceGuid.PcdComponentNameDisable|FALSE\r
153 gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnosticsDisable|FALSE\r
154 gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable|FALSE\r
155 gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable|FALSE\r
3402aac7 156\r
1e57a462 157 #\r
158 # Control what commands are supported from the UI\r
159 # Turn these on and off to add features or save size\r
3402aac7 160 #\r
1e57a462 161 gEmbeddedTokenSpaceGuid.PcdEmbeddedMacBoot|TRUE\r
162 gEmbeddedTokenSpaceGuid.PcdEmbeddedDirCmd|TRUE\r
163 gEmbeddedTokenSpaceGuid.PcdEmbeddedHobCmd|TRUE\r
164 gEmbeddedTokenSpaceGuid.PcdEmbeddedHwDebugCmd|TRUE\r
165 gEmbeddedTokenSpaceGuid.PcdEmbeddedIoEnable|FALSE\r
166 gEmbeddedTokenSpaceGuid.PcdEmbeddedScriptCmd|FALSE\r
167 gEmbeddedTokenSpaceGuid.PcdEmbeddedPciDebugCmd|TRUE\r
3402aac7 168\r
1e57a462 169 gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob|FALSE\r
170\r
171\r
172[PcdsFixedAtBuild.common]\r
173 gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength|1000000\r
174 gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength|1000000\r
175 gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|1000000\r
176 gEfiMdePkgTokenSpaceGuid.PcdSpinLockTimeout|10000000\r
177 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0f\r
178 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000000\r
179 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x06\r
180 gEfiMdePkgTokenSpaceGuid.PcdDebugClearMemoryValue|0xAF\r
181 gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|0\r
182 gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0\r
183 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xE0000000\r
184 gEfiMdePkgTokenSpaceGuid.PcdFSBClock|200000000\r
185 gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|320\r
186 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000000\r
187 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xE0000000\r
188 gEfiMdePkgTokenSpaceGuid.PcdFSBClock|200000000\r
8f12aa7e 189 gEmbeddedTokenSpaceGuid.PcdEmbeddedAutomaticBootCommand|L""\r
1e57a462 190 gEmbeddedTokenSpaceGuid.PcdEmbeddedDefaultTextColor|0x07\r
191 gEmbeddedTokenSpaceGuid.PcdEmbeddedMemVariableStoreSize|0x10000\r
3402aac7 192\r
1e57a462 193 gEmbeddedTokenSpaceGuid.PcdPrePiStackBase|0\r
194 gEmbeddedTokenSpaceGuid.PcdPrePiStackSize|0\r
195\r
196#\r
197# Optinal feature to help prevent EFI memory map fragments\r
198# Turned on and off via: PcdPrePiProduceMemoryTypeInformationHob\r
3402aac7
RC
199# Values are in EFI Pages (4K). DXE Core will make sure that\r
200# at least this much of each type of memory can be allocated\r
1e57a462 201# from a single memory range. This way you only end up with\r
202# maximum of two fragements for each type in the memory map\r
203# (the memory used, and the free memory that was prereserved\r
204# but not used).\r
205#\r
206 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory|0\r
207 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS|0\r
208 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType|0\r
209 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|0\r
210 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|0\r
211 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode|0\r
212 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData|0\r
213 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|0\r
214 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData|0\r
215\r
216#\r
217# Timer config for this platform\r
218#\r
219 gEmbeddedTokenSpaceGuid.PcdTimerBaseAddress|0x3c700000\r
220 gEmbeddedTokenSpaceGuid.PcdTimerVector|7\r
221 gEmbeddedTokenSpaceGuid.PcdTimerPeriod|100000\r
222\r
1e57a462 223[PcdsFixedAtBuild.IPF]\r
224 gEfiMdePkgTokenSpaceGuid.PcdIoBlockBaseAddressForIpf|0x0ffffc000000\r
225\r
226#\r
227# This makes it so you can source level debug with NT32. VC++ debugger limitiation!\r
228#\r
229#[BuildOptions]\r
230# DEBUG_*_IA32_DLINK_FLAGS = /EXPORT:InitializeDriver=$(IMAGE_ENTRY_POINT) /ALIGN:4096 /SUBSYSTEM:CONSOLE\r
231# RELEASE_*_IA32_DLINK_FLAGS = /ALIGN:4096\r
232# *_*_IA32_CC_FLAGS = /D EFI_SPECIFICATION_VERSION=0x0002000A /D TIANO_RELEASE_VERSION=0x00080006\r
233\r
f6755908
OM
234[BuildOptions]\r
235 RVCT:*_*_ARM_PLATFORM_FLAGS == --cpu=7-A.security\r
2b18c281 236 *_*_*_CC_FLAGS = -DDISABLE_NEW_DEPRECATED_INTERFACES\r
1e57a462 237\r
238################################################################################\r
239#\r
240# Components Section - list of all Modules needed by this Platform\r
241#\r
242################################################################################\r
243[Components.common]\r
3402aac7 244 EmbeddedPkg/Library/EblAddExternalCommandLib/EblAddExternalCommandLib.inf\r
1e57a462 245 EmbeddedPkg/Library/EblCmdLibNull/EblCmdLibNull.inf\r
246 EmbeddedPkg/Library/EfiFileLib/EfiFileLib.inf\r
3402aac7
RC
247 EmbeddedPkg/Library/GdbSerialDebugPortLib/GdbSerialDebugPortLib.inf\r
248 EmbeddedPkg/Library/GdbSerialLib/GdbSerialLib.inf\r
1e57a462 249 EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf\r
250 EmbeddedPkg/Library/PrePiLib/PrePiLib.inf\r
1e57a462 251 EmbeddedPkg/Library/TemplateResetSystemLib/TemplateResetSystemLib.inf\r
252 EmbeddedPkg/Library/TemplateRealTimeClockLib/TemplateRealTimeClockLib.inf\r
253 EmbeddedPkg/Library/LzmaHobCustomDecompressLib/LzmaHobCustomDecompressLib.inf\r
7385d254 254 EmbeddedPkg/Library/CoherentDmaLib/CoherentDmaLib.inf\r
723102c7 255 EmbeddedPkg/Library/NonCoherentDmaLib/NonCoherentDmaLib.inf\r
4c725c89 256 EmbeddedPkg/Library/DxeDtPlatformDtbLoaderLibDefault/DxeDtPlatformDtbLoaderLibDefault.inf\r
1e57a462 257\r
258 EmbeddedPkg/Ebl/Ebl.inf\r
259#### EmbeddedPkg/EblExternCmd/EblExternCmd.inf\r
260 EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf\r
1e57a462 261 EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf\r
262 EmbeddedPkg/ResetRuntimeDxe/ResetRuntimeDxe.inf\r
1e57a462 263 EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf\r
eff98cf9
OM
264 EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf {\r
265 <LibraryClasses>\r
266 TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf\r
267 }\r
1e57a462 268\r
269 EmbeddedPkg/Universal/MmcDxe/MmcDxe.inf\r
1e57a462 270\r
785e3cf6 271 # Drivers\r
46f2c53b 272 EmbeddedPkg/Drivers/Lan9118Dxe/Lan9118Dxe.inf\r
f6342447 273 EmbeddedPkg/Drivers/SataSiI3132Dxe/SataSiI3132Dxe.inf\r
785e3cf6 274\r
ff862823
AB
275 EmbeddedPkg/Library/AcpiLib/AcpiLib.inf\r
276 EmbeddedPkg/Library/DebugAgentTimerLibNull/DebugAgentTimerLibNull.inf\r
277 EmbeddedPkg/Library/DxeHobPeCoffLib/DxeHobPeCoffLib.inf\r
278 EmbeddedPkg/Library/EblNetworkLib/EblNetworkLib.inf\r
279 EmbeddedPkg/Library/FdtLib/FdtLib.inf\r
280 EmbeddedPkg/Library/GdbDebugAgent/GdbDebugAgent.inf\r
281 EmbeddedPkg/Library/PrePiHobLib/PrePiHobLib.inf\r
282 EmbeddedPkg/Library/PrePiMemoryAllocationLib/PrePiMemoryAllocationLib.inf\r
283\r
f07cc458
AB
284 EmbeddedPkg/Drivers/DtPlatformDxe/DtPlatformDxe.inf\r
285\r
5202e6c9
LL
286[Components.ARM]\r
287 EmbeddedPkg/Drivers/Isp1761UsbDxe/Isp1761UsbDxe.inf\r
288\r
289[Components.ARM, Components.AARCH64]\r
290 EmbeddedPkg/Application/AndroidBoot/AndroidBootApp.inf\r
a64d5872 291 EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.inf\r
5202e6c9
LL
292 EmbeddedPkg/Drivers/AndroidFastbootTransportUsbDxe/FastbootTransportUsbDxe.inf\r
293 EmbeddedPkg/Drivers/AndroidFastbootTransportTcpDxe/FastbootTransportTcpDxe.inf\r
294\r
295 # FDT installation\r
296 EmbeddedPkg/Drivers/FdtPlatformDxe/FdtPlatformDxe.inf {\r
297 <LibraryClasses>\r
298 # It depends on BdsLib that depends on TimerLib\r
299 TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf\r
300 }\r
301\r
35a3e762
OM
302[Components.IA32, Components.X64, Components.IPF, Components.ARM]\r
303 EmbeddedPkg/GdbStub/GdbStub.inf\r