]> git.proxmox.com Git - mirror_edk2.git/blob - EmbeddedPkg/EmbeddedPkg.dsc
EmbeddedPkg/MmcDxe: Improved parameters checking
[mirror_edk2.git] / EmbeddedPkg / EmbeddedPkg.dsc
1 #/** @file
2 # Embedded Package
3 #
4 #
5 # Copyright (c) 2007, Intel Corporation. All rights reserved.<BR>
6 #
7 # This program and the accompanying materials
8 # are licensed and made available under the terms and conditions of the BSD License
9 # which accompanies this distribution. The full text of the license may be found at
10 # http://opensource.org/licenses/bsd-license.php
11 #
12 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
14 #
15 #**/
16
17 ################################################################################
18 #
19 # Defines Section - statements that will be processed to create a Makefile.
20 #
21 ################################################################################
22 [Defines]
23 PLATFORM_NAME = Embedded
24 PLATFORM_GUID = 8DBB580B-CF89-4D57-95C6-DFE96C44686E
25 PLATFORM_VERSION = 0.1
26 DSC_SPECIFICATION = 0x00010005
27 OUTPUT_DIRECTORY = Build/Embedded
28 SUPPORTED_ARCHITECTURES = IA32|X64|IPF|ARM
29 BUILD_TARGETS = DEBUG|RELEASE
30 SKUID_IDENTIFIER = DEFAULT
31 FLASH_DEFINITION = EmbeddedPkg/EmbeddedPkg.fdf
32
33
34 ################################################################################
35 #
36 # SKU Identification section - list of all SKU IDs supported by this
37 # Platform.
38 #
39 ################################################################################
40 [SkuIds]
41 0|DEFAULT # The entry: 0|DEFAULT is reserved and always required.
42
43 ################################################################################
44 #
45 # Library Class section - list of all Library Classes needed by this Platform.
46 #
47 ################################################################################
48 [LibraryClasses.common]
49 # DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf
50 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
51
52
53 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
54 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
55 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
56 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
57 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
58 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
59 EfiFileLib|EmbeddedPkg/Library/EfiFileLib/EfiFileLib.inf
60
61 TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
62
63 ReportStatusCodeLib|IntelFrameworkModulePkg/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|EmbeddedPkg/Library/TemplateSerialPortLib/TemplateSerialPortLib.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 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
86 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
87 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
88 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
89
90 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
91 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
92 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
93
94
95 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
96 EblCmdLib|EmbeddedPkg/Library/EblCmdLibNull/EblCmdLibNull.inf
97
98 EblNetworkLib|EmbeddedPkg/Library/EblNetworkLib/EblNetworkLib.inf
99
100
101 [LibraryClasses.common.DXE_DRIVER]
102 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
103 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
104
105
106 [LibraryClasses.common.UEFI_APPLICATION]
107 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
108 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
109
110 [LibraryClasses.common.UEFI_DRIVER]
111 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
112 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
113
114 [LibraryClasses.common.SEC]
115 ExtractGuidedSectionLib|EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf
116
117 [LibraryClasses.ARM]
118 SemihostLib|ArmPkg/Library/SemihostLib/SemihostLib.inf
119
120 [LibraryClasses.ARM]
121 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
122
123
124 ################################################################################
125 #
126 # Pcd Section - list of all PCD Entries defined by this Platform
127 #
128 ################################################################################
129
130 [PcdsFeatureFlag.common]
131 gEfiMdePkgTokenSpaceGuid.PcdComponentNameDisable|FALSE
132 gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnosticsDisable|FALSE
133 gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable|FALSE
134 gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable|FALSE
135
136 #
137 # Control what commands are supported from the UI
138 # Turn these on and off to add features or save size
139 #
140 gEmbeddedTokenSpaceGuid.PcdEmbeddedMacBoot|TRUE
141 gEmbeddedTokenSpaceGuid.PcdEmbeddedDirCmd|TRUE
142 gEmbeddedTokenSpaceGuid.PcdEmbeddedHobCmd|TRUE
143 gEmbeddedTokenSpaceGuid.PcdEmbeddedHwDebugCmd|TRUE
144 gEmbeddedTokenSpaceGuid.PcdEmbeddedIoEnable|FALSE
145 gEmbeddedTokenSpaceGuid.PcdEmbeddedScriptCmd|FALSE
146 gEmbeddedTokenSpaceGuid.PcdEmbeddedPciDebugCmd|TRUE
147
148 gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob|FALSE
149
150
151 [PcdsFixedAtBuild.common]
152 gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength|1000000
153 gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength|1000000
154 gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|1000000
155 gEfiMdePkgTokenSpaceGuid.PcdSpinLockTimeout|10000000
156 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0f
157 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000000
158 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x06
159 gEfiMdePkgTokenSpaceGuid.PcdDebugClearMemoryValue|0xAF
160 gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|0
161 gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0
162 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xE0000000
163 gEfiMdePkgTokenSpaceGuid.PcdFSBClock|200000000
164 gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|320
165 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000000
166 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xE0000000
167 gEfiMdePkgTokenSpaceGuid.PcdFSBClock|200000000
168 gEmbeddedTokenSpaceGuid.PcdEmbeddedAutomaticBootCommand|L""|VOID*|2
169 gEmbeddedTokenSpaceGuid.PcdEmbeddedDefaultTextColor|0x07
170 gEmbeddedTokenSpaceGuid.PcdEmbeddedMemVariableStoreSize|0x10000
171
172 gEmbeddedTokenSpaceGuid.PcdPrePiHobBase|0
173 gEmbeddedTokenSpaceGuid.PcdPrePiStackBase|0
174 gEmbeddedTokenSpaceGuid.PcdPrePiStackSize|0
175 gEmbeddedTokenSpaceGuid.PcdPrePiTempMemorySize|0
176 gEmbeddedTokenSpaceGuid.PcdPrePiBfvBaseAddress|0
177 gEmbeddedTokenSpaceGuid.PcdPrePiBfvSize|0
178
179 #
180 # Optinal feature to help prevent EFI memory map fragments
181 # Turned on and off via: PcdPrePiProduceMemoryTypeInformationHob
182 # Values are in EFI Pages (4K). DXE Core will make sure that
183 # at least this much of each type of memory can be allocated
184 # from a single memory range. This way you only end up with
185 # maximum of two fragements for each type in the memory map
186 # (the memory used, and the free memory that was prereserved
187 # but not used).
188 #
189 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory|0
190 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS|0
191 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType|0
192 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|0
193 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|0
194 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode|0
195 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData|0
196 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|0
197 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData|0
198
199 #
200 # Timer config for this platform
201 #
202 gEmbeddedTokenSpaceGuid.PcdTimerBaseAddress|0x3c700000
203 gEmbeddedTokenSpaceGuid.PcdTimerVector|7
204 gEmbeddedTokenSpaceGuid.PcdTimerPeriod|100000
205
206
207 [PcdsFixedAtBuild.ARM]
208 gEmbeddedTokenSpaceGuid.PcdPrePiCpuMemorySize|32
209 gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|0
210
211 [PcdsFixedAtBuild.IA32]
212 gEmbeddedTokenSpaceGuid.PcdPrePiCpuMemorySize|36
213 gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|16
214
215 [PcdsFixedAtBuild.X64]
216 gEmbeddedTokenSpaceGuid.PcdPrePiCpuMemorySize|52
217 gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|16
218
219
220
221 [PcdsFixedAtBuild.IPF]
222 gEfiMdePkgTokenSpaceGuid.PcdIoBlockBaseAddressForIpf|0x0ffffc000000
223
224 #
225 # This makes it so you can source level debug with NT32. VC++ debugger limitiation!
226 #
227 #[BuildOptions]
228 # DEBUG_*_IA32_DLINK_FLAGS = /EXPORT:InitializeDriver=$(IMAGE_ENTRY_POINT) /ALIGN:4096 /SUBSYSTEM:CONSOLE
229 # RELEASE_*_IA32_DLINK_FLAGS = /ALIGN:4096
230 # *_*_IA32_CC_FLAGS = /D EFI_SPECIFICATION_VERSION=0x0002000A /D TIANO_RELEASE_VERSION=0x00080006
231
232
233 ################################################################################
234 #
235 # Components Section - list of all Modules needed by this Platform
236 #
237 ################################################################################
238 [Components.common]
239 EmbeddedPkg/Library/EblAddExternalCommandLib/EblAddExternalCommandLib.inf
240 EmbeddedPkg/Library/EblCmdLibNull/EblCmdLibNull.inf
241 EmbeddedPkg/Library/EfiFileLib/EfiFileLib.inf
242 EmbeddedPkg/Library/GdbSerialDebugPortLib/GdbSerialDebugPortLib.inf
243 EmbeddedPkg/Library/GdbSerialLib/GdbSerialLib.inf
244 EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf
245 EmbeddedPkg/Library/PrePiLib/PrePiLib.inf
246 EmbeddedPkg/Library/TemplateSerialPortLib/TemplateSerialPortLib.inf
247 EmbeddedPkg/Library/TemplateResetSystemLib/TemplateResetSystemLib.inf
248 EmbeddedPkg/Library/TemplateRealTimeClockLib/TemplateRealTimeClockLib.inf
249 EmbeddedPkg/Library/LzmaHobCustomDecompressLib/LzmaHobCustomDecompressLib.inf
250 EmbeddedPkg/Library/NullDmaLib/NullDmaLib.inf
251
252 EmbeddedPkg/Ebl/Ebl.inf
253 #### EmbeddedPkg/EblExternCmd/EblExternCmd.inf
254 EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf
255 EmbeddedPkg/GdbStub/GdbStub.inf
256 EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf
257 EmbeddedPkg/ResetRuntimeDxe/ResetRuntimeDxe.inf
258 EmbeddedPkg/SerialDxe/SerialDxe.inf
259 EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf
260 EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf
261
262 EmbeddedPkg/Universal/MmcDxe/MmcDxe.inf
263
264
265