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