Adding support for BeagleBoard.
[mirror_edk2.git] / EmbeddedPkg / EmbeddedPkg.dsc
1 #%HEADER%
2 #/** @file
3 # Embedded Package
4 #
5 #
6 # Copyright (c) 2007, Intel Corporation
7 #
8 # All rights reserved. This program and the accompanying materials
9 # are licensed and made available under the terms and conditions of the BSD License
10 # which accompanies this distribution. The full text of the license may be found at
11 # http://opensource.org/licenses/bsd-license.php
12 #
13 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
14 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
15 #
16 #**/
17
18 ################################################################################
19 #
20 # Defines Section - statements that will be processed to create a Makefile.
21 #
22 ################################################################################
23 [Defines]
24 PLATFORM_NAME = Embedded
25 PLATFORM_GUID = 8DBB580B-CF89-4D57-95C6-DFE96C44686E
26 PLATFORM_VERSION = 0.1
27 DSC_SPECIFICATION = 0x00010005
28 OUTPUT_DIRECTORY = Build/Embedded
29 SUPPORTED_ARCHITECTURES = IA32|X64|IPF|ARM
30 BUILD_TARGETS = DEBUG|RELEASE
31 SKUID_IDENTIFIER = DEFAULT
32 FLASH_DEFINITION = EmbeddedPkg/EmbeddedPkg.fdf
33
34
35 ################################################################################
36 #
37 # SKU Identification section - list of all SKU IDs supported by this
38 # Platform.
39 #
40 ################################################################################
41 [SkuIds]
42 0|DEFAULT # The entry: 0|DEFAULT is reserved and always required.
43
44 ################################################################################
45 #
46 # Library Class section - list of all Library Classes needed by this Platform.
47 #
48 ################################################################################
49 [LibraryClasses.common]
50 # DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf
51 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
52
53
54 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
55 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
56 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
57 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
58 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
59 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
60 EfiFileLib|EmbeddedPkg/Library/EfiFileLib/EfiFileLib.inf
61
62 TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
63
64 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf
65
66 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
67 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
68 PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
69 CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf
70 PrePiLib|EmbeddedPkg/Library/PrePiLib/PrePiLib.inf
71
72 SerialPortLib|EmbeddedPkg/Library/TemplateSerialPortLib/TemplateSerialPortLib.inf
73 RealTimeClockLib|EmbeddedPkg/Library/TemplateRealTimeClockLib/TemplateRealTimeClockLib.inf
74 EfiResetSystemLib|EmbeddedPkg/Library/TemplateResetSystemLib/TemplateResetSystemLib.inf
75 GdbSerialLib|EmbeddedPkg/Library/GdbSerialLib/GdbSerialLib.inf
76
77
78 #
79 # Need to change this for IPF
80 #
81 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
82
83 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
84 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
85 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.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
96 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
97 EblCmdLib|EmbeddedPkg/Library/EblCmdLibNull/EblCmdLibNull.inf
98
99 EblNetworkLib|EmbeddedPkg/Library/EblNetworkLib/EblNetworkLib.inf
100
101
102 [LibraryClasses.common.DXE_DRIVER]
103 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
104 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
105
106
107 [LibraryClasses.common.UEFI_APPLICATION]
108 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
109 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
110
111 [LibraryClasses.common.UEFI_DRIVER]
112 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
113 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
114
115 [LibraryClasses.common.SEC]
116 ExtractGuidedSectionLib|EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf
117
118 [LibraryClasses.ARM]
119 SemihostLib|ArmPkg/Library/SemihostLib/SemihostLib.inf
120
121 ################################################################################
122 #
123 # Pcd Section - list of all PCD Entries defined by this Platform
124 #
125 ################################################################################
126
127 [PcdsFeatureFlag.common]
128 gEfiMdePkgTokenSpaceGuid.PcdComponentNameDisable|FALSE
129 gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnosticsDisable|FALSE
130 gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable|FALSE
131 gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable|FALSE
132
133 #
134 # Control what commands are supported from the UI
135 # Turn these on and off to add features or save size
136 #
137 gEmbeddedTokenSpaceGuid.PcdEmbeddedMacBoot|TRUE
138 gEmbeddedTokenSpaceGuid.PcdEmbeddedDirCmd|TRUE
139 gEmbeddedTokenSpaceGuid.PcdEmbeddedHobCmd|TRUE
140 gEmbeddedTokenSpaceGuid.PcdEmbeddedHwDebugCmd|TRUE
141 gEmbeddedTokenSpaceGuid.PcdEmbeddedIoEnable|FALSE
142 gEmbeddedTokenSpaceGuid.PcdEmbeddedScriptCmd|FALSE
143 gEmbeddedTokenSpaceGuid.PcdEmbeddedPciDebugCmd|TRUE
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 gEmbeddedTokenSpaceGuid.PcdEmbeddedAutomaticBootCommand|L""|VOID*|2
166 gEmbeddedTokenSpaceGuid.PcdEmbeddedDefaultTextColor|0x07
167 gEmbeddedTokenSpaceGuid.PcdEmbeddedMemVariableStoreSize|0x10000
168
169 gEmbeddedTokenSpaceGuid.PcdPrePiHobBase|0
170 gEmbeddedTokenSpaceGuid.PcdPrePiStackBase|0
171 gEmbeddedTokenSpaceGuid.PcdPrePiStackSize|0
172 gEmbeddedTokenSpaceGuid.PcdPrePiTempMemorySize|0
173 gEmbeddedTokenSpaceGuid.PcdPrePiBfvBaseAddress|0
174 gEmbeddedTokenSpaceGuid.PcdPrePiBfvSize|0
175
176 #
177 # Optinal feature to help prevent EFI memory map fragments
178 # Turned on and off via: PcdPrePiProduceMemoryTypeInformationHob
179 # Values are in EFI Pages (4K). DXE Core will make sure that
180 # at least this much of each type of memory can be allocated
181 # from a single memory range. This way you only end up with
182 # maximum of two fragements for each type in the memory map
183 # (the memory used, and the free memory that was prereserved
184 # but not used).
185 #
186 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory|0
187 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS|0
188 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType|0
189 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|0
190 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|0
191 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode|0
192 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData|0
193 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|0
194 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData|0
195
196 #
197 # Timer config for this platform
198 #
199 gEmbeddedTokenSpaceGuid.PcdTimerBaseAddress|0x3c700000
200 gEmbeddedTokenSpaceGuid.PcdTimerVector|7
201 gEmbeddedTokenSpaceGuid.PcdTimerPeriod|100000
202
203
204 [PcdsFixedAtBuild.ARM]
205 gEmbeddedTokenSpaceGuid.PcdPrePiCpuMemorySize|32
206 gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|0
207
208 [PcdsFixedAtBuild.IA32]
209 gEmbeddedTokenSpaceGuid.PcdPrePiCpuMemorySize|36
210 gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|16
211
212 [PcdsFixedAtBuild.X64]
213 gEmbeddedTokenSpaceGuid.PcdPrePiCpuMemorySize|52
214 gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|16
215
216
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
230 ################################################################################
231 #
232 # Components Section - list of all Modules needed by this Platform
233 #
234 ################################################################################
235 [Components.common]
236 EmbeddedPkg/Library/EblAddExternalCommandLib/EblAddExternalCommandLib.inf
237 EmbeddedPkg/Library/EblCmdLibNull/EblCmdLibNull.inf
238 EmbeddedPkg/Library/EfiFileLib/EfiFileLib.inf
239 EmbeddedPkg/Library/GdbSerialDebugPortLib/GdbSerialDebugPortLib.inf # ApplePkg
240 EmbeddedPkg/Library/GdbSerialLib/GdbSerialLib.inf # ApplePkg
241 EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf
242 EmbeddedPkg/Library/PrePiLib/PrePiLib.inf
243 EmbeddedPkg/Library/TemplateSerialPortLib/TemplateSerialPortLib.inf
244 EmbeddedPkg/Library/TemplateResetSystemLib/TemplateResetSystemLib.inf
245 EmbeddedPkg/Library/TemplateRealTimeClockLib/TemplateRealTimeClockLib.inf
246
247 ####ArmPkg/Library/UncachedMemoryAllocationLib/UncachedMemoryAllocationLib.inf ???
248
249
250 EmbeddedPkg/Ebl/Ebl.inf
251 #### EmbeddedPkg/EblExternCmd/EblExternCmd.inf
252 EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf
253 EmbeddedPkg/GdbStub/GdbStub.inf
254 EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf
255 EmbeddedPkg/ResetRuntimeDxe/ResetRuntimeDxe.inf
256 EmbeddedPkg/SerialDxe/SerialDxe.inf
257 EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf
258 EmbeddedPkg/TemplateBds/TemplateBds.inf
259 EmbeddedPkg/TemplateCpuDxe/TemplateCpuDxe.inf
260 EmbeddedPkg/TemplateMetronomeDxe/TemplateMetronomeDxe.inf
261 EmbeddedPkg/TemplateSec/TemplateSec.inf
262 EmbeddedPkg/TemplateTimerDxe/TemplateTimerDxe.inf
263
264
265
266