blob: 64b220c3c157084dac6371092d5e23ecb4b58d90 [file] [log] [blame]
oliviermartin1e57a462013-01-25 11:28:06 +00001#/** @file
2# Embedded Package
3#
4#
5# Copyright (c) 2007, Intel Corporation. All rights reserved.<BR>
oliviermartind38c35f2013-03-12 00:40:11 +00006# Copyright (c) 2012, ARM Ltd. All rights reserved.<BR>
oliviermartin1e57a462013-01-25 11:28:06 +00007#
8# 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
oliviermartind38c35f2013-03-12 00:40:11 +000073 SerialPortExtLib|EmbeddedPkg/Library/TemplateSerialPortExtLib/TemplateSerialPortExtLib.inf
oliviermartin1e57a462013-01-25 11:28:06 +000074 RealTimeClockLib|EmbeddedPkg/Library/TemplateRealTimeClockLib/TemplateRealTimeClockLib.inf
75 EfiResetSystemLib|EmbeddedPkg/Library/TemplateResetSystemLib/TemplateResetSystemLib.inf
76 GdbSerialLib|EmbeddedPkg/Library/GdbSerialLib/GdbSerialLib.inf
77
78
79 #
80 # Need to change this for IPF
81 #
82 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
83
84 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
85 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
86 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
87 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
88 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
89 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
90 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
91
92 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
93 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
94 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
95
96
97 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
98 EblCmdLib|EmbeddedPkg/Library/EblCmdLibNull/EblCmdLibNull.inf
99
100 EblNetworkLib|EmbeddedPkg/Library/EblNetworkLib/EblNetworkLib.inf
101
102
103[LibraryClasses.common.DXE_DRIVER]
104 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
105 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
106
107
108[LibraryClasses.common.UEFI_APPLICATION]
109 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
110 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
111
112[LibraryClasses.common.UEFI_DRIVER]
113 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
114 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
115
116[LibraryClasses.common.SEC]
117 ExtractGuidedSectionLib|EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf
118
119[LibraryClasses.ARM]
120 SemihostLib|ArmPkg/Library/SemihostLib/SemihostLib.inf
121
122[LibraryClasses.ARM]
123 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
124
125
126################################################################################
127#
128# Pcd Section - list of all PCD Entries defined by this Platform
129#
130################################################################################
131
132[PcdsFeatureFlag.common]
133 gEfiMdePkgTokenSpaceGuid.PcdComponentNameDisable|FALSE
134 gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnosticsDisable|FALSE
135 gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable|FALSE
136 gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable|FALSE
137
138 #
139 # Control what commands are supported from the UI
140 # Turn these on and off to add features or save size
141 #
142 gEmbeddedTokenSpaceGuid.PcdEmbeddedMacBoot|TRUE
143 gEmbeddedTokenSpaceGuid.PcdEmbeddedDirCmd|TRUE
144 gEmbeddedTokenSpaceGuid.PcdEmbeddedHobCmd|TRUE
145 gEmbeddedTokenSpaceGuid.PcdEmbeddedHwDebugCmd|TRUE
146 gEmbeddedTokenSpaceGuid.PcdEmbeddedIoEnable|FALSE
147 gEmbeddedTokenSpaceGuid.PcdEmbeddedScriptCmd|FALSE
148 gEmbeddedTokenSpaceGuid.PcdEmbeddedPciDebugCmd|TRUE
149
150 gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob|FALSE
151
152
153[PcdsFixedAtBuild.common]
154 gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength|1000000
155 gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength|1000000
156 gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|1000000
157 gEfiMdePkgTokenSpaceGuid.PcdSpinLockTimeout|10000000
158 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0f
159 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000000
160 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x06
161 gEfiMdePkgTokenSpaceGuid.PcdDebugClearMemoryValue|0xAF
162 gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|0
163 gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0
164 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xE0000000
165 gEfiMdePkgTokenSpaceGuid.PcdFSBClock|200000000
166 gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|320
167 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000000
168 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xE0000000
169 gEfiMdePkgTokenSpaceGuid.PcdFSBClock|200000000
170 gEmbeddedTokenSpaceGuid.PcdEmbeddedAutomaticBootCommand|L""|VOID*|2
171 gEmbeddedTokenSpaceGuid.PcdEmbeddedDefaultTextColor|0x07
172 gEmbeddedTokenSpaceGuid.PcdEmbeddedMemVariableStoreSize|0x10000
173
174 gEmbeddedTokenSpaceGuid.PcdPrePiHobBase|0
175 gEmbeddedTokenSpaceGuid.PcdPrePiStackBase|0
176 gEmbeddedTokenSpaceGuid.PcdPrePiStackSize|0
177
178#
179# Optinal feature to help prevent EFI memory map fragments
180# Turned on and off via: PcdPrePiProduceMemoryTypeInformationHob
181# Values are in EFI Pages (4K). DXE Core will make sure that
182# at least this much of each type of memory can be allocated
183# from a single memory range. This way you only end up with
184# maximum of two fragements for each type in the memory map
185# (the memory used, and the free memory that was prereserved
186# but not used).
187#
188 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory|0
189 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS|0
190 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType|0
191 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|0
192 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|0
193 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode|0
194 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData|0
195 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|0
196 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData|0
197
198#
199# Timer config for this platform
200#
201 gEmbeddedTokenSpaceGuid.PcdTimerBaseAddress|0x3c700000
202 gEmbeddedTokenSpaceGuid.PcdTimerVector|7
203 gEmbeddedTokenSpaceGuid.PcdTimerPeriod|100000
204
205
206[PcdsFixedAtBuild.ARM]
207 gEmbeddedTokenSpaceGuid.PcdPrePiCpuMemorySize|32
208 gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|0
209
210[PcdsFixedAtBuild.IA32]
211 gEmbeddedTokenSpaceGuid.PcdPrePiCpuMemorySize|36
212 gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|16
213
214[PcdsFixedAtBuild.X64]
215 gEmbeddedTokenSpaceGuid.PcdPrePiCpuMemorySize|52
216 gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|16
217
218
219
220[PcdsFixedAtBuild.IPF]
221 gEfiMdePkgTokenSpaceGuid.PcdIoBlockBaseAddressForIpf|0x0ffffc000000
222
223#
224# This makes it so you can source level debug with NT32. VC++ debugger limitiation!
225#
226#[BuildOptions]
227# DEBUG_*_IA32_DLINK_FLAGS = /EXPORT:InitializeDriver=$(IMAGE_ENTRY_POINT) /ALIGN:4096 /SUBSYSTEM:CONSOLE
228# RELEASE_*_IA32_DLINK_FLAGS = /ALIGN:4096
229# *_*_IA32_CC_FLAGS = /D EFI_SPECIFICATION_VERSION=0x0002000A /D TIANO_RELEASE_VERSION=0x00080006
230
231
232################################################################################
233#
234# Components Section - list of all Modules needed by this Platform
235#
236################################################################################
237[Components.common]
238 EmbeddedPkg/Library/EblAddExternalCommandLib/EblAddExternalCommandLib.inf
239 EmbeddedPkg/Library/EblCmdLibNull/EblCmdLibNull.inf
240 EmbeddedPkg/Library/EfiFileLib/EfiFileLib.inf
241 EmbeddedPkg/Library/GdbSerialDebugPortLib/GdbSerialDebugPortLib.inf
242 EmbeddedPkg/Library/GdbSerialLib/GdbSerialLib.inf
243 EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf
244 EmbeddedPkg/Library/PrePiLib/PrePiLib.inf
245 EmbeddedPkg/Library/TemplateSerialPortLib/TemplateSerialPortLib.inf
246 EmbeddedPkg/Library/TemplateResetSystemLib/TemplateResetSystemLib.inf
247 EmbeddedPkg/Library/TemplateRealTimeClockLib/TemplateRealTimeClockLib.inf
248 EmbeddedPkg/Library/LzmaHobCustomDecompressLib/LzmaHobCustomDecompressLib.inf
249 EmbeddedPkg/Library/NullDmaLib/NullDmaLib.inf
250
251 EmbeddedPkg/Ebl/Ebl.inf
252#### EmbeddedPkg/EblExternCmd/EblExternCmd.inf
253 EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf
254 EmbeddedPkg/GdbStub/GdbStub.inf
255 EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf
256 EmbeddedPkg/ResetRuntimeDxe/ResetRuntimeDxe.inf
257 EmbeddedPkg/SerialDxe/SerialDxe.inf
258 EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf
259 EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf
260
261 EmbeddedPkg/Universal/MmcDxe/MmcDxe.inf
262
263
264