]> git.proxmox.com Git - mirror_edk2.git/blob - BeagleBoardPkg/BeagleBoardPkg-next.dsc
ArmPlatformPkg: Introduce ArmPlatformGlobalVariableLib
[mirror_edk2.git] / BeagleBoardPkg / BeagleBoardPkg-next.dsc
1 #/** @file
2 # Beagle board package.
3 #
4 # Copyright (c) 2009 - 2010, Apple Inc. All rights reserved.<BR>
5 #
6 # This program and the accompanying materials
7 # are licensed and made available under the terms and conditions of the BSD License
8 # which accompanies this distribution. The full text of the license may be found at
9 # http://opensource.org/licenses/bsd-license.php
10 #
11 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13 #
14 #**/
15
16 ################################################################################
17 #
18 # Defines Section - statements that will be processed to create a Makefile.
19 #
20 ################################################################################
21 [Defines]
22 PLATFORM_NAME = BeagleBoardPkg
23 PLATFORM_GUID = 91fa6c28-33df-46ac-aee6-292d6811ea31
24 PLATFORM_VERSION = 0.1
25 DSC_SPECIFICATION = 0x00010005
26 OUTPUT_DIRECTORY = Build/BeagleBoard
27 SUPPORTED_ARCHITECTURES = ARM
28 BUILD_TARGETS = DEBUG|RELEASE
29 SKUID_IDENTIFIER = DEFAULT
30 FLASH_DEFINITION = BeagleBoardPkg/BeagleBoardPkg-next.fdf
31
32
33 [LibraryClasses.common]
34 BdsLib|ArmPkg/Library/BdsLib/BdsLib.inf
35 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
36 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
37
38 !if $(TARGET) == RELEASE
39 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
40 UncachedMemoryAllocationLib|ArmPkg/Library/UncachedMemoryAllocationLib/UncachedMemoryAllocationLib.inf
41 !else
42 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
43 UncachedMemoryAllocationLib|ArmPkg/Library/UncachedMemoryAllocationLib/UncachedMemoryAllocationLib.inf
44 # UncachedMemoryAllocationLib|ArmPkg/Library/DebugUncachedMemoryAllocationLib/DebugUncachedMemoryAllocationLib.inf
45 !endif
46 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
47
48 ArmLib|ArmPkg/Library/ArmLib/ArmV7/ArmV7Lib.inf
49 ArmPlatformLib|BeagleBoardPkg/Library/BeagleBoardLib/BeagleBoardLib.inf
50 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
51
52 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
53 BaseMemoryLib|ArmPkg/Library/BaseMemoryLibStm/BaseMemoryLibStm.inf
54
55 EfiResetSystemLib|BeagleBoardPkg/Library/ResetSystemLib/ResetSystemLib.inf
56
57 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
58 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
59 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
60
61 EblCmdLib|ArmPlatformPkg/Library/EblCmdLib/EblCmdLib.inf
62
63 EfiFileLib|EmbeddedPkg/Library/EfiFileLib/EfiFileLib.inf
64
65
66 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
67
68 #
69 # Uncomment (and comment out the next line) For RealView Debugger. The Standard IO window
70 # in the debugger will show load and unload commands for symbols. You can cut and paste this
71 # into the command window to load symbols. We should be able to use a script to do this, but
72 # the version of RVD I have does not support scipts accessing system memory.
73 #
74 # PeCoffExtraActionLib|ArmPkg/Library/RvdPeCoffExtraActionLib/RvdPeCoffExtraActionLib.inf
75 PeCoffExtraActionLib|ArmPkg/Library/DebugPeCoffExtraActionLib/DebugPeCoffExtraActionLib.inf
76 # PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
77
78
79 CacheMaintenanceLib|ArmPkg/Library/ArmCacheMaintenanceLib/ArmCacheMaintenanceLib.inf
80 DefaultExceptionHandlerLib|ArmPkg/Library/DefaultExceptionHandlerLib/DefaultExceptionHandlerLib.inf
81 PrePiLib|EmbeddedPkg/Library/PrePiLib/PrePiLib.inf
82
83 SerialPortLib|Omap35xxPkg/Library/SerialPortLib/SerialPortLib.inf
84 SemihostLib|ArmPkg/Library/SemihostLib/SemihostLib.inf
85
86 RealTimeClockLib|Omap35xxPkg/Library/RealTimeClockLib/RealTimeClockLib.inf
87
88 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
89
90 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
91 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
92 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
93 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
94 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
95 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
96
97 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
98 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
99 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
100
101 #
102 # Assume everything is fixed at build
103 #
104 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
105
106 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
107
108 UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf
109 EblAddExternalCommandLib|EmbeddedPkg/Library/EblAddExternalCommandLib/EblAddExternalCommandLib.inf
110
111
112 CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
113
114 TimerLib|Omap35xxPkg/Library/Omap35xxTimerLib/Omap35xxTimerLib.inf
115 OmapLib|Omap35xxPkg/Library/OmapLib/OmapLib.inf
116 OmapDmaLib|Omap35xxPkg/Library/OmapDmaLib/OmapDmaLib.inf
117 EblNetworkLib|EmbeddedPkg/Library/EblNetworkLib/EblNetworkLib.inf
118 DebugAgentTimerLib|Omap35xxPkg/Library/DebugAgentTimerLib/DebugAgentTimerLib.inf
119
120 GdbSerialLib|Omap35xxPkg/Library/GdbSerialLib/GdbSerialLib.inf
121 ArmDisassemblerLib|ArmPkg/Library/ArmDisassemblerLib/ArmDisassemblerLib.inf
122 DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
123 DmaLib|ArmPkg/Library/ArmDmaLib/ArmDmaLib.inf
124
125 [LibraryClasses.common.SEC]
126 ArmLib|ArmPkg/Library/ArmLib/ArmV7/ArmV7LibPrePi.inf
127 ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/PrePi/PrePiArmPlatformGlobalVariableLib.inf
128
129 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
130 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf
131 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
132 ExtractGuidedSectionLib|EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf
133 LzmaDecompressLib|IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
134
135 # Temp work around for Movt relocation issue.
136 #PeCoffLib|ArmPkg/Library/BasePeCoffLib/BasePeCoffLib.inf
137 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
138
139 HobLib|EmbeddedPkg/Library/PrePiHobLib/PrePiHobLib.inf
140 PrePiHobListPointerLib|ArmPlatformPkg/Library/PrePiHobListPointerLib/PrePiHobListPointerLib.inf
141 MemoryAllocationLib|EmbeddedPkg/Library/PrePiMemoryAllocationLib/PrePiMemoryAllocationLib.inf
142 PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf
143 PlatformPeiLib|ArmPlatformPkg/PlatformPei/PlatformPeiLib.inf
144 MemoryInitPeiLib|ArmPlatformPkg/MemoryInitPei/MemoryInitPeiLib.inf
145
146 # 1/123 faster than Stm or Vstm version
147 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
148
149 # Uncomment to turn on GDB stub in SEC.
150 #DebugAgentLib|EmbeddedPkg/Library/GdbDebugAgent/GdbDebugAgent.inf
151
152 [LibraryClasses.common.PEI_CORE]
153 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
154 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf
155
156 [LibraryClasses.common.DXE_CORE]
157 HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf
158 MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf
159 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
160 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
161 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
162 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
163 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
164 # PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
165 PeCoffLib|EmbeddedPkg/Library/DxeHobPeCoffLib/DxeHobPeCoffLib.inf
166
167 PerformanceLib|MdeModulePkg/Library/DxeCorePerformanceLib/DxeCorePerformanceLib.inf
168
169
170 [LibraryClasses.common.DXE_DRIVER]
171 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
172 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
173 SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf
174 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
175
176
177 [LibraryClasses.common.UEFI_APPLICATION]
178 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
179 UefiDecompressLib|IntelFrameworkModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.inf
180 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
181 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
182
183 [LibraryClasses.common.UEFI_DRIVER]
184 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
185 UefiDecompressLib|IntelFrameworkModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.inf
186 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
187 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
188
189 [LibraryClasses.common.DXE_RUNTIME_DRIVER]
190 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
191 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
192 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
193 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
194 # PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
195 PeCoffLib|EmbeddedPkg/Library/DxeHobPeCoffLib/DxeHobPeCoffLib.inf
196
197
198 [LibraryClasses.ARM]
199 #
200 # It is not possible to prevent the ARM compiler for generic intrinsic functions.
201 # This library provides the instrinsic functions generate by a given compiler.
202 # [LibraryClasses.ARM] and NULL mean link this library into all ARM images.
203 #
204 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
205
206
207 [BuildOptions]
208 XCODE:*_*_ARM_ARCHCC_FLAGS == -arch armv7 -march=armv7
209 XCODE:*_*_ARM_ARCHASM_FLAGS == -arch armv7
210 XCODE:*_*_ARM_ARCHDLINK_FLAGS == -arch armv7
211 XCODE:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG
212
213 GCC:*_*_ARM_ARCHCC_FLAGS == -march=armv7-a -mthumb
214 GCC:*_*_ARM_ARCHASM_FLAGS == -march=armv7-a
215 GCC:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG
216
217 RVCT:*_*_ARM_ARCHCC_FLAGS == --cpu Cortex-A8 --thumb
218 RVCT:*_*_ARM_ARCHASM_FLAGS == --cpu Cortex-A8
219 RVCT:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG
220
221 ################################################################################
222 #
223 # Pcd Section - list of all EDK II PCD Entries defined by this Platform
224 #
225 ################################################################################
226
227 [PcdsFeatureFlag.common]
228 gEfiMdePkgTokenSpaceGuid.PcdComponentNameDisable|TRUE
229 gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnosticsDisable|TRUE
230 gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable|TRUE
231 gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable|TRUE
232
233 #
234 # Control what commands are supported from the UI
235 # Turn these on and off to add features or save size
236 #
237 gEmbeddedTokenSpaceGuid.PcdEmbeddedMacBoot|TRUE
238 gEmbeddedTokenSpaceGuid.PcdEmbeddedDirCmd|TRUE
239 gEmbeddedTokenSpaceGuid.PcdEmbeddedHobCmd|TRUE
240 gEmbeddedTokenSpaceGuid.PcdEmbeddedHwDebugCmd|TRUE
241 gEmbeddedTokenSpaceGuid.PcdEmbeddedPciDebugCmd|TRUE
242 gEmbeddedTokenSpaceGuid.PcdEmbeddedIoEnable|FALSE
243 gEmbeddedTokenSpaceGuid.PcdEmbeddedScriptCmd|FALSE
244
245 gEmbeddedTokenSpaceGuid.PcdCacheEnable|TRUE
246
247 # Use the Vector Table location in CpuDxe. We will not copy the Vector Table at PcdCpuVectorBaseAddress
248 gArmTokenSpaceGuid.PcdRelocateVectorTable|FALSE
249
250 gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob|TRUE
251 gArmTokenSpaceGuid.PcdCpuDxeProduceDebugSupport|FALSE
252
253 gEfiMdeModulePkgTokenSpaceGuid.PcdTurnOffUsbLegacySupport|TRUE
254
255 [PcdsFixedAtBuild.common]
256 gArmPlatformTokenSpaceGuid.PcdFirmwareVendor|"Beagle Board"
257
258 gEmbeddedTokenSpaceGuid.PcdEmbeddedPrompt|"BeagleEdk2"
259 gEmbeddedTokenSpaceGuid.PcdPrePiCpuMemorySize|32
260 gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|0
261 gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength|1000000
262 gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength|1000000
263 gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|1000000
264 gEfiMdePkgTokenSpaceGuid.PcdSpinLockTimeout|10000000
265 gEfiMdePkgTokenSpaceGuid.PcdDebugClearMemoryValue|0xAF
266 gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|1
267 gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0
268 gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|320
269
270 # DEBUG_ASSERT_ENABLED 0x01
271 # DEBUG_PRINT_ENABLED 0x02
272 # DEBUG_CODE_ENABLED 0x04
273 # CLEAR_MEMORY_ENABLED 0x08
274 # ASSERT_BREAKPOINT_ENABLED 0x10
275 # ASSERT_DEADLOOP_ENABLED 0x20
276 !if $(TARGET) == RELEASE
277 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x21
278 !else
279 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2f
280 !endif
281
282 # DEBUG_INIT 0x00000001 // Initialization
283 # DEBUG_WARN 0x00000002 // Warnings
284 # DEBUG_LOAD 0x00000004 // Load events
285 # DEBUG_FS 0x00000008 // EFI File system
286 # DEBUG_POOL 0x00000010 // Alloc & Free's
287 # DEBUG_PAGE 0x00000020 // Alloc & Free's
288 # DEBUG_INFO 0x00000040 // Verbose
289 # DEBUG_DISPATCH 0x00000080 // PEI/DXE Dispatchers
290 # DEBUG_VARIABLE 0x00000100 // Variable
291 # DEBUG_BM 0x00000400 // Boot Manager
292 # DEBUG_BLKIO 0x00001000 // BlkIo Driver
293 # DEBUG_NET 0x00004000 // SNI Driver
294 # DEBUG_UNDI 0x00010000 // UNDI Driver
295 # DEBUG_LOADFILE 0x00020000 // UNDI Driver
296 # DEBUG_EVENT 0x00080000 // Event messages
297 # DEBUG_ERROR 0x80000000 // Error
298 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8000000F
299
300 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07
301
302 gEmbeddedTokenSpaceGuid.PcdEmbeddedAutomaticBootCommand|""
303 gEmbeddedTokenSpaceGuid.PcdEmbeddedDefaultTextColor|0x07
304 gEmbeddedTokenSpaceGuid.PcdEmbeddedMemVariableStoreSize|0x10000
305
306 gEmbeddedTokenSpaceGuid.PcdFlashFvMainBase|0
307 gEmbeddedTokenSpaceGuid.PcdFlashFvMainSize|0
308
309 #
310 # Optional feature to help prevent EFI memory map fragments
311 # Turned on and off via: PcdPrePiProduceMemoryTypeInformationHob
312 # Values are in EFI Pages (4K). DXE Core will make sure that
313 # at least this much of each type of memory can be allocated
314 # from a single memory range. This way you only end up with
315 # maximum of two fragements for each type in the memory map
316 # (the memory used, and the free memory that was prereserved
317 # but not used).
318 #
319 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory|0
320 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS|0
321 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType|0
322 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|80
323 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|40
324 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode|400
325 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData|3000
326 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|10
327 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData|0
328
329
330 #
331 # Beagle board Specific PCDs
332 #
333 gArmTokenSpaceGuid.PcdVFPEnabled|1
334
335 gArmTokenSpaceGuid.PcdSystemMemoryBase|0x80000000
336 gArmTokenSpaceGuid.PcdSystemMemorySize|0x08000000
337
338 # Size of the region used by UEFI in permanent memory (Reserved 16MB)
339 gArmPlatformTokenSpaceGuid.PcdSystemMemoryUefiRegionSize|0x01000000
340
341 # Size of the region reserved for fixed address allocations (Reserved 32MB)
342 gArmTokenSpaceGuid.PcdArmLinuxKernelMaxOffset|0x02000000
343
344 # Reserved to store the HobBase address (top of UEFI Memory Region)
345 # = (PcdSystemMemoryBase + PcdSystemMemorySize) - sizeof(UINT32)
346 gEmbeddedTokenSpaceGuid.PcdPrePiHobBase|0x87FFFFFC
347
348 #gEmbeddedTokenSpaceGuid.PcdPrePiHobBase|0x80001000
349 gEmbeddedTokenSpaceGuid.PcdPrePiStackBase|0x87FE0000 # stack at top of memory
350 gEmbeddedTokenSpaceGuid.PcdPrePiStackSize|0x20000 # 128K stack
351
352 gEmbeddedTokenSpaceGuid.PcdMemoryBase|0x80000000
353 gEmbeddedTokenSpaceGuid.PcdMemorySize|0x10000000
354
355 gArmTokenSpaceGuid.PcdCpuVectorBaseAddress|0x80008000
356 gArmTokenSpaceGuid.PcdCpuResetAddress|0x80008000
357
358 gEmbeddedTokenSpaceGuid.PcdTimerPeriod|100000
359 gEmbeddedTokenSpaceGuid.PcdEmbeddedPerformanceCounterPeriodInNanoseconds|77
360 gEmbeddedTokenSpaceGuid.PcdEmbeddedPerformanceCounterFrequencyInHz|13000000
361
362 #
363 # ARM Pcds
364 #
365 gArmTokenSpaceGuid.PcdArmUncachedMemoryMask|0x0000000040000000
366
367 gArmPlatformTokenSpaceGuid.PcdDefaultBootDescription|L"Linux from SD"
368 gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(B615F1F5-5088-43CD-809C-A16E52487D00)/HD(1,MBR,0x00000000,0x3F,0x19FC0)/zImage"
369 gArmPlatformTokenSpaceGuid.PcdDefaultBootType|1
370 gArmPlatformTokenSpaceGuid.PcdPlatformBootTimeOut|10
371 gArmPlatformTokenSpaceGuid.PcdFdtDevicePath|L"VenHw(B615F1F5-5088-43CD-809C-A16E52487D00)/HD(1,MBR,0x00000000,0x3F,0x19FC0)/omap3-beagle.dtb"
372
373 gArmPlatformTokenSpaceGuid.PcdDefaultConOutPaths|L"VenHw(6696936D-3637-467C-87CB-14EA8248948C)/Uart(115200,8,N,1)/VenPcAnsi()"
374 gArmPlatformTokenSpaceGuid.PcdDefaultConInPaths|L"VenHw(6696936D-3637-467C-87CB-14EA8248948C)/Uart(115200,8,N,1)/VenPcAnsi()"
375
376 #
377 # ARM OS Loader
378 #
379 # BeagleBoard machine type (OMAP3_BEAGLE = 1546) required for ARM Linux:
380 gArmTokenSpaceGuid.PcdArmMachineType|1546
381
382 ################################################################################
383 #
384 # Components Section - list of all EDK II Modules needed by this Platform
385 #
386 ################################################################################
387 [Components.common]
388
389 #
390 # SEC
391 #
392 ArmPlatformPkg/PrePi/PeiUniCore.inf
393
394 #
395 # DXE
396 #
397 MdeModulePkg/Core/Dxe/DxeMain.inf {
398 <LibraryClasses>
399 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
400 NULL|MdeModulePkg/Library/DxeCrc32GuidedSectionExtractLib/DxeCrc32GuidedSectionExtractLib.inf
401 # NULL|IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
402 NULL|EmbeddedPkg/Library/LzmaHobCustomDecompressLib/LzmaHobCustomDecompressLib.inf
403 }
404
405 ArmPkg/Drivers/CpuDxe/CpuDxe.inf
406
407 MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
408 MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf
409 MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
410 MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
411 MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxe.inf
412 EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf
413
414 EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf
415 #
416 # This version uses semi-hosting console
417 # EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf {
418 # <LibraryClasses>
419 # SerialPortLib|ArmPkg/Library/SemiHostingSerialPortLib/SemiHostingSerialPortLib.inf
420 # }
421
422 EmbeddedPkg/ResetRuntimeDxe/ResetRuntimeDxe.inf
423 EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf
424 EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf
425
426 #
427 # Semi-hosting filesystem
428 #
429 ArmPkg/Filesystem/SemihostFs/SemihostFs.inf
430
431 #
432 # FAT filesystem + GPT/MBR partitioning
433 #
434 MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
435 MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
436 FatPkg/EnhancedFatDxe/Fat.inf
437 MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
438
439 #
440 # USB
441 #
442 Omap35xxPkg/PciEmulation/PciEmulation.inf
443
444 #NOTE: Open source EHCI stack doesn't work on Beagleboard.
445 #NOTE: UsbBus and UsbMassStorage don't work using iPhone SDK tool chain.
446 MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf {
447 <PcdsFixedAtBuild>
448 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x800fffff
449 }
450
451 MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
452 MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
453
454 #
455 # Nand Flash
456 #
457 Omap35xxPkg/Flash/Flash.inf
458
459 #
460 # MMC/SD
461 #
462 EmbeddedPkg/Universal/MmcDxe/MmcDxe.inf
463 Omap35xxPkg/MmcHostDxe/MmcHostDxe.inf
464
465 #
466 # I2C
467 #
468 Omap35xxPkg/SmbusDxe/Smbus.inf
469
470 #
471 # SoC Drivers
472 #
473 Omap35xxPkg/Gpio/Gpio.inf
474 Omap35xxPkg/InterruptDxe/InterruptDxe.inf
475 Omap35xxPkg/TimerDxe/TimerDxe.inf
476
477 #
478 # Power IC
479 #
480 Omap35xxPkg/TPS65950Dxe/TPS65950.inf
481
482 #
483 # Application
484 #
485 EmbeddedPkg/Ebl/Ebl.inf
486
487 #
488 # Bds
489 #
490 MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
491 MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
492 ArmPlatformPkg/Bds/Bds.inf
493
494 #
495 # Example Application
496 #
497 MdeModulePkg/Application/HelloWorld/HelloWorld.inf
498