]> git.proxmox.com Git - mirror_edk2.git/blob - EmbeddedPkg/EmbeddedPkg.dsc
EmbeddedPkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / EmbeddedPkg / EmbeddedPkg.dsc
1 #/** @file
2 # Embedded Package
3 #
4 #
5 # Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>
6 # Copyright (c) 2012-2015, ARM Ltd. All rights reserved.<BR>
7 # Copyright (c) 2016, Linaro Ltd. All rights reserved.<BR>
8 #
9 # SPDX-License-Identifier: BSD-2-Clause-Patent
10 #
11 #**/
12
13 ################################################################################
14 #
15 # Defines Section - statements that will be processed to create a Makefile.
16 #
17 ################################################################################
18 [Defines]
19 PLATFORM_NAME = Embedded
20 PLATFORM_GUID = 8DBB580B-CF89-4D57-95C6-DFE96C44686E
21 PLATFORM_VERSION = 0.1
22 DSC_SPECIFICATION = 0x00010005
23 OUTPUT_DIRECTORY = Build/Embedded
24 SUPPORTED_ARCHITECTURES = IA32|X64|ARM|AARCH64
25 BUILD_TARGETS = DEBUG|RELEASE|NOOPT
26 SKUID_IDENTIFIER = DEFAULT
27
28
29 ################################################################################
30 #
31 # SKU Identification section - list of all SKU IDs supported by this
32 # Platform.
33 #
34 ################################################################################
35 [SkuIds]
36 0|DEFAULT # The entry: 0|DEFAULT is reserved and always required.
37
38 ################################################################################
39 #
40 # Library Class section - list of all Library Classes needed by this Platform.
41 #
42 ################################################################################
43 [LibraryClasses.common]
44 # DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf
45 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
46
47
48 AndroidBootImgLib|EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.inf
49 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
50 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
51 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
52 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
53 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
54 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
55
56 ReportStatusCodeLib|MdeModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf
57
58 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
59 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
60 PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
61 CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf
62 PrePiLib|EmbeddedPkg/Library/PrePiLib/PrePiLib.inf
63
64 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
65 RealTimeClockLib|EmbeddedPkg/Library/TemplateRealTimeClockLib/TemplateRealTimeClockLib.inf
66 EfiResetSystemLib|EmbeddedPkg/Library/TemplateResetSystemLib/TemplateResetSystemLib.inf
67 GdbSerialLib|EmbeddedPkg/Library/GdbSerialLib/GdbSerialLib.inf
68
69
70 #
71 # Need to change this for IPF
72 #
73 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
74
75 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
76 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
77 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
78 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
79 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
80 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
81 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
82 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
83
84 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
85 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
86 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
87
88 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
89
90 AcpiLib|EmbeddedPkg/Library/AcpiLib/AcpiLib.inf
91 FdtLib|EmbeddedPkg/Library/FdtLib/FdtLib.inf
92
93 # Shell libraries
94 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
95 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
96 SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
97
98 # Networking Requirements
99 NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
100 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
101 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
102
103 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
104 DtPlatformDtbLoaderLib|EmbeddedPkg/Library/DxeDtPlatformDtbLoaderLibDefault/DxeDtPlatformDtbLoaderLibDefault.inf
105
106 [LibraryClasses.common.DXE_DRIVER]
107 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
108 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
109
110
111 [LibraryClasses.common.UEFI_APPLICATION]
112 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
113 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
114
115 [LibraryClasses.common.UEFI_DRIVER]
116 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
117 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
118
119 [LibraryClasses.common.SEC]
120 ExtractGuidedSectionLib|EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf
121
122 [LibraryClasses.ARM, LibraryClasses.AARCH64]
123 ArmGicLib|ArmPkg/Drivers/ArmGic/ArmGicLib.inf
124 ArmSmcLib|ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf
125 SemihostLib|ArmPkg/Library/SemihostLib/SemihostLib.inf
126 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
127
128 # Add support for GCC stack protector
129 NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf
130
131 ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf
132
133 ################################################################################
134 #
135 # Pcd Section - list of all PCD Entries defined by this Platform
136 #
137 ################################################################################
138
139 [PcdsFeatureFlag.common]
140 gEfiMdePkgTokenSpaceGuid.PcdComponentNameDisable|FALSE
141 gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnosticsDisable|FALSE
142 gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable|FALSE
143 gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable|FALSE
144
145 gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob|FALSE
146
147
148 [PcdsFixedAtBuild.common]
149 gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength|1000000
150 gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength|1000000
151 gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|1000000
152 gEfiMdePkgTokenSpaceGuid.PcdSpinLockTimeout|10000000
153 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0f
154 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000000
155 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x06
156 gEfiMdePkgTokenSpaceGuid.PcdDebugClearMemoryValue|0xAF
157 gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|0
158 gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0
159 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xE0000000
160 gEfiMdePkgTokenSpaceGuid.PcdFSBClock|200000000
161 gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|320
162 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000000
163 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xE0000000
164 gEfiMdePkgTokenSpaceGuid.PcdFSBClock|200000000
165
166 gEmbeddedTokenSpaceGuid.PcdPrePiStackBase|0
167 gEmbeddedTokenSpaceGuid.PcdPrePiStackSize|0
168
169 #
170 # Optinal feature to help prevent EFI memory map fragments
171 # Turned on and off via: PcdPrePiProduceMemoryTypeInformationHob
172 # Values are in EFI Pages (4K). DXE Core will make sure that
173 # at least this much of each type of memory can be allocated
174 # from a single memory range. This way you only end up with
175 # maximum of two fragements for each type in the memory map
176 # (the memory used, and the free memory that was prereserved
177 # but not used).
178 #
179 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory|0
180 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS|0
181 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType|0
182 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|0
183 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|0
184 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode|0
185 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData|0
186 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|0
187 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData|0
188
189 #
190 # Timer config for this platform
191 #
192 gEmbeddedTokenSpaceGuid.PcdTimerBaseAddress|0x3c700000
193 gEmbeddedTokenSpaceGuid.PcdTimerVector|7
194 gEmbeddedTokenSpaceGuid.PcdTimerPeriod|100000
195
196 [BuildOptions]
197 RVCT:*_*_ARM_PLATFORM_FLAGS == --cpu=7-A.security
198 *_*_*_CC_FLAGS = -DDISABLE_NEW_DEPRECATED_INTERFACES
199
200 ################################################################################
201 #
202 # Components Section - list of all Modules needed by this Platform
203 #
204 ################################################################################
205 [Components.common]
206 EmbeddedPkg/Library/GdbSerialDebugPortLib/GdbSerialDebugPortLib.inf
207 EmbeddedPkg/Library/GdbSerialLib/GdbSerialLib.inf
208 EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf
209 EmbeddedPkg/Library/PrePiLib/PrePiLib.inf
210 EmbeddedPkg/Library/TemplateResetSystemLib/TemplateResetSystemLib.inf
211 EmbeddedPkg/Library/TemplateRealTimeClockLib/TemplateRealTimeClockLib.inf
212 EmbeddedPkg/Library/CoherentDmaLib/CoherentDmaLib.inf
213 EmbeddedPkg/Library/NonCoherentDmaLib/NonCoherentDmaLib.inf
214 EmbeddedPkg/Library/DxeDtPlatformDtbLoaderLibDefault/DxeDtPlatformDtbLoaderLibDefault.inf
215 EmbeddedPkg/Library/VirtualRealTimeClockLib/VirtualRealTimeClockLib.inf
216
217 EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf
218 EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf
219 EmbeddedPkg/ResetRuntimeDxe/ResetRuntimeDxe.inf
220 EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf
221 EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf {
222 <LibraryClasses>
223 TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
224 }
225
226 EmbeddedPkg/Universal/MmcDxe/MmcDxe.inf
227
228 # Drivers
229 EmbeddedPkg/Drivers/Lan9118Dxe/Lan9118Dxe.inf
230 EmbeddedPkg/Drivers/SataSiI3132Dxe/SataSiI3132Dxe.inf
231
232 EmbeddedPkg/Library/AcpiLib/AcpiLib.inf
233 EmbeddedPkg/Library/DebugAgentTimerLibNull/DebugAgentTimerLibNull.inf
234 EmbeddedPkg/Library/FdtLib/FdtLib.inf
235 EmbeddedPkg/Library/PrePiHobLib/PrePiHobLib.inf
236 EmbeddedPkg/Library/PrePiMemoryAllocationLib/PrePiMemoryAllocationLib.inf
237
238 EmbeddedPkg/Drivers/ConsolePrefDxe/ConsolePrefDxe.inf
239 EmbeddedPkg/Drivers/DtPlatformDxe/DtPlatformDxe.inf
240
241 [Components.ARM]
242 EmbeddedPkg/Drivers/Isp1761UsbDxe/Isp1761UsbDxe.inf
243
244 [Components.ARM, Components.AARCH64]
245 EmbeddedPkg/Application/AndroidBoot/AndroidBootApp.inf
246 EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.inf
247 EmbeddedPkg/Drivers/AndroidFastbootTransportUsbDxe/FastbootTransportUsbDxe.inf
248 EmbeddedPkg/Drivers/AndroidFastbootTransportTcpDxe/FastbootTransportTcpDxe.inf
249
250 [Components.IA32, Components.X64, Components.ARM]
251 EmbeddedPkg/GdbStub/GdbStub.inf