1d5d0ae9 |
1 | #\r |
e7c578c9 |
2 | # Copyright (c) 2011-2013, ARM Limited. All rights reserved.\r |
1d5d0ae9 |
3 | # \r |
4 | # This program and the accompanying materials \r |
5 | # are licensed and made available under the terms and conditions of the BSD License \r |
6 | # which accompanies this distribution. The full text of the license may be found at \r |
7 | # http://opensource.org/licenses/bsd-license.php \r |
8 | #\r |
9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r |
10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r |
11 | #\r |
12 | #\r |
13 | \r |
14 | ################################################################################\r |
15 | #\r |
16 | # Defines Section - statements that will be processed to create a Makefile.\r |
17 | #\r |
18 | ################################################################################\r |
19 | [Defines]\r |
20 | PLATFORM_NAME = ArmRealViewEbPkg\r |
21 | PLATFORM_GUID = F4C1AD3E-9D3E-4F61-8791-B3BB1C43D04C\r |
22 | PLATFORM_VERSION = 0.1\r |
23 | DSC_SPECIFICATION = 0x00010005\r |
24 | OUTPUT_DIRECTORY = Build/ArmRealViewEb-RTSM-A8\r |
25 | SUPPORTED_ARCHITECTURES = ARM\r |
26 | BUILD_TARGETS = DEBUG|RELEASE\r |
27 | SKUID_IDENTIFIER = DEFAULT\r |
28 | FLASH_DEFINITION = ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb-RTSM-UniCore.fdf\r |
29 | \r |
f4ee7a82 |
30 | !include ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb.dsc.inc\r |
1d5d0ae9 |
31 | \r |
f4ee7a82 |
32 | [LibraryClasses.common]\r |
1d5d0ae9 |
33 | ArmLib|ArmPkg/Library/ArmLib/ArmV7/ArmV7Lib.inf\r |
90d6a1bb |
34 | ArmCpuLib|ArmPkg/Drivers/ArmCpuLib/ArmCortexA8Lib/ArmCortexA8Lib.inf\r |
1d5d0ae9 |
35 | ArmPlatformLib|ArmPlatformPkg/ArmRealViewEbPkg/Library/ArmRealViewEbLibRTSM/ArmRealViewEbLib.inf\r |
36 | \r |
1d5d0ae9 |
37 | [LibraryClasses.common.SEC]\r |
38 | ArmLib|ArmPkg/Library/ArmLib/ArmV7/ArmV7LibSec.inf\r |
e314d564 |
39 | ArmPlatformSecLib|ArmPlatformPkg/ArmRealViewEbPkg/Library/ArmRealViewEbSecLibRTSM/ArmRealViewEbSecLib.inf\r |
40 | ArmPlatformLib|ArmPlatformPkg/ArmRealViewEbPkg/Library/ArmRealViewEbLibRTSM/ArmRealViewEbLibSec.inf\r |
1d5d0ae9 |
41 | \r |
42 | [BuildOptions]\r |
f4ee7a82 |
43 | RVCT:*_*_ARM_PLATFORM_FLAGS == --cpu Cortex-A8 --fpu=softvfp -I$(WORKSPACE)/ArmPlatformPkg/ArmRealViewEbPkg/Include/Platform\r |
1d5d0ae9 |
44 | \r |
90d6a1bb |
45 | GCC:*_*_ARM_PLATFORM_FLAGS == -mcpu=cortex-a8 -I$(WORKSPACE)/ArmPlatformPkg/ArmRealViewEbPkg/Include/Platform\r |
1d5d0ae9 |
46 | \r |
f4ee7a82 |
47 | XCODE:*_*_ARM_PLATFORM_FLAGS == -arch armv7 -I$(WORKSPACE)/ArmPlatformPkg/ArmRealViewEbPkg/Include/Platform\r |
1d5d0ae9 |
48 | \r |
49 | \r |
50 | ################################################################################\r |
51 | #\r |
52 | # Pcd Section - list of all EDK II PCD Entries defined by this Platform\r |
53 | #\r |
54 | ################################################################################\r |
55 | \r |
56 | [PcdsFeatureFlag.common]\r |
e7c578c9 |
57 | !ifdef EDK2_SKIP_PEICORE\r |
a6caee65 |
58 | gArmPlatformTokenSpaceGuid.PcdSystemMemoryInitializeInSec|TRUE\r |
59 | gArmPlatformTokenSpaceGuid.PcdSendSgiToBringUpSecondaryCores|TRUE\r |
1d5d0ae9 |
60 | !endif\r |
61 | \r |
936eff09 |
62 | ## If TRUE, Graphics Output Protocol will be installed on virtual handle created by ConsplitterDxe.\r |
63 | # It could be set FALSE to save size.\r |
64 | gEfiMdeModulePkgTokenSpaceGuid.PcdConOutGopSupport|TRUE\r |
f4ee7a82 |
65 | \r |
66 | # Install Debugger Exception Handlers.\r |
67 | gArmTokenSpaceGuid.PcdDebuggerExceptionSupport|TRUE\r |
936eff09 |
68 | \r |
1d5d0ae9 |
69 | [PcdsFixedAtBuild.common]\r |
ea46ebbe |
70 | gArmPlatformTokenSpaceGuid.PcdFirmwareVendor|"ARM RealView Emulation Board"\r |
e6b3b508 |
71 | gEmbeddedTokenSpaceGuid.PcdEmbeddedPrompt|"ArmRealViewEb-A8"\r |
a89cb4b7 |
72 | \r |
73 | #\r |
74 | # NV Storage PCDs. Use base of 0x43F00000 for NOR0\r |
75 | #\r |
76 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase|0x43F00000\r |
77 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize|0x000C0000\r |
78 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0x43FC0000\r |
79 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize|0x00020000\r |
80 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0x43FE0000\r |
81 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize|0x00020000\r |
1d5d0ae9 |
82 | \r |
1d5d0ae9 |
83 | # Stack for CPU Cores in Secure Mode\r |
2dbcb8f0 |
84 | gArmPlatformTokenSpaceGuid.PcdCPUCoresSecStackBase|0x4B000000\r |
1d5d0ae9 |
85 | # Stack for CPU Cores in Secure Monitor Mode\r |
2dbcb8f0 |
86 | gArmPlatformTokenSpaceGuid.PcdCPUCoresSecMonStackBase|0x4A000000\r |
1d5d0ae9 |
87 | # Stack for CPU Cores in Non Secure Mode\r |
2dbcb8f0 |
88 | gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase|0x48000000\r |
1d5d0ae9 |
89 | \r |
964680c1 |
90 | # System Memory (256MB) \r |
91 | gArmTokenSpaceGuid.PcdSystemMemoryBase|0x70000000\r |
92 | gArmTokenSpaceGuid.PcdSystemMemorySize|0x10000000\r |
93 | \r |
94 | # Size of the region used by UEFI in permanent memory (Reserved 64MB)\r |
95 | gArmPlatformTokenSpaceGuid.PcdSystemMemoryUefiRegionSize|0x04000000\r |
5cc45b70 |
96 | \r |
1d5d0ae9 |
97 | #\r |
98 | # ARM Pcds\r |
99 | #\r |
100 | gArmTokenSpaceGuid.PcdArmUncachedMemoryMask|0x0000000040000000\r |
101 | \r |
5cc45b70 |
102 | #\r |
103 | # ARM PrimeCells\r |
104 | #\r |
105 | \r |
106 | ## SP804 Timer\r |
107 | gEmbeddedTokenSpaceGuid.PcdEmbeddedPerformanceCounterFrequencyInHz|1000000\r |
108 | gEmbeddedTokenSpaceGuid.PcdTimerPeriod|100000 # expressed in 100ns units, 100,000 x 100 ns = 10,000,000 ns = 10 ms\r |
109 | gArmPlatformTokenSpaceGuid.PcdSP804TimerPeriodicInterruptNum|36\r |
f4ee7a82 |
110 | gArmPlatformTokenSpaceGuid.PcdSP804TimerPeriodicBase|0x10011000 \r |
111 | gArmPlatformTokenSpaceGuid.PcdSP804TimerMetronomeBase|0x10011020\r |
5cc45b70 |
112 | gArmPlatformTokenSpaceGuid.PcdSP804TimerPerformanceBase|0x10012020\r |
5cc45b70 |
113 | \r |
114 | ## PL031 RealTimeClock\r |
115 | gArmPlatformTokenSpaceGuid.PcdPL031RtcBase|0x10017000\r |
116 | \r |
117 | ## PL111 Lcd\r |
118 | gArmPlatformTokenSpaceGuid.PcdPL111LcdBase|0x10020000\r |
119 | \r |
6fd231c0 |
120 | #\r |
121 | # ARM PL011 - Serial Terminal\r |
122 | #\r |
123 | gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x10009000\r |
124 | \r |
1d5d0ae9 |
125 | #\r |
017baa1c |
126 | # ARM General Interrupt Controller\r |
1d5d0ae9 |
127 | #\r |
128 | gArmTokenSpaceGuid.PcdGicDistributorBase|0x10041000\r |
129 | gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase|0x10040000\r |
130 | \r |
1d5d0ae9 |
131 | \r |
1d5d0ae9 |
132 | ################################################################################\r |
133 | #\r |
134 | # Components Section - list of all EDK II Modules needed by this Platform\r |
135 | #\r |
136 | ################################################################################\r |
137 | [Components.common]\r |
138 | \r |
f4ee7a82 |
139 | #\r |
140 | # SEC\r |
141 | #\r |
f8181c90 |
142 | ArmPlatformPkg/Sec/Sec.inf {\r |
143 | <LibraryClasses>\r |
144 | # Use the implementation which set the Secure bits\r |
017baa1c |
145 | ArmGicLib|ArmPkg/Drivers/ArmGic/ArmGicSecLib.inf\r |
f8181c90 |
146 | }\r |
1d5d0ae9 |
147 | \r |
f4ee7a82 |
148 | #\r |
149 | # PEI Phase modules\r |
150 | #\r |
e7c578c9 |
151 | !ifdef EDK2_SKIP_PEICORE\r |
64e03133 |
152 | ArmPlatformPkg/PrePi/PeiUniCore.inf {\r |
153 | <LibraryClasses>\r |
154 | ArmLib|ArmPkg/Library/ArmLib/ArmV7/ArmV7Lib.inf\r |
155 | ArmPlatformLib|ArmPlatformPkg/ArmRealViewEbPkg/Library/ArmRealViewEbLibRTSM/ArmRealViewEbLib.inf\r |
d48e4b19 |
156 | ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/PrePi/PrePiArmPlatformGlobalVariableLib.inf\r |
64e03133 |
157 | }\r |
158 | !else\r |
a6caee65 |
159 | ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf {\r |
160 | <LibraryClasses>\r |
f8181c90 |
161 | ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Pei/PeiArmPlatformGlobalVariableLib.inf\r |
a6caee65 |
162 | }\r |
1d5d0ae9 |
163 | MdeModulePkg/Core/Pei/PeiMain.inf\r |
164 | MdeModulePkg/Universal/PCD/Pei/Pcd.inf {\r |
165 | <LibraryClasses>\r |
166 | PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r |
167 | }\r |
64e03133 |
168 | ArmPlatformPkg/PlatformPei/PlatformPeim.inf\r |
169 | ArmPlatformPkg/MemoryInitPei/MemoryInitPeim.inf\r |
44788bae |
170 | ArmPkg/Drivers/CpuPei/CpuPei.inf\r |
1d5d0ae9 |
171 | IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf\r |
172 | Nt32Pkg/BootModePei/BootModePei.inf\r |
173 | MdeModulePkg/Universal/Variable/Pei/VariablePei.inf\r |
174 | MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf {\r |
175 | <LibraryClasses>\r |
176 | NULL|IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf\r |
177 | }\r |
64e03133 |
178 | !endif\r |
1d5d0ae9 |
179 | \r |
f4ee7a82 |
180 | #\r |
181 | # DXE\r |
182 | #\r |
1d5d0ae9 |
183 | MdeModulePkg/Core/Dxe/DxeMain.inf {\r |
184 | <LibraryClasses>\r |
185 | PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r |
186 | NULL|MdeModulePkg/Library/DxeCrc32GuidedSectionExtractLib/DxeCrc32GuidedSectionExtractLib.inf\r |
187 | }\r |
188 | \r |
189 | #\r |
190 | # Architectural Protocols\r |
191 | #\r |
192 | ArmPkg/Drivers/CpuDxe/CpuDxe.inf \r |
193 | MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf\r |
194 | MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf\r |
195 | MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf\r |
196 | MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf\r |
a89cb4b7 |
197 | MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf\r |
198 | MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf\r |
1d5d0ae9 |
199 | EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf \r |
200 | \r |
201 | EmbeddedPkg/ResetRuntimeDxe/ResetRuntimeDxe.inf\r |
202 | EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf\r |
203 | EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf\r |
936eff09 |
204 | \r |
205 | MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf\r |
206 | MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf\r |
9bc6ef02 |
207 | ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/PL111LcdGraphicsOutputDxe.inf\r |
1d5d0ae9 |
208 | \r |
936eff09 |
209 | MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf\r |
210 | MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf\r |
211 | MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf\r |
212 | EmbeddedPkg/SerialDxe/SerialDxe.inf\r |
213 | \r |
017baa1c |
214 | ArmPkg/Drivers/ArmGic/ArmGicDxe.inf\r |
1d5d0ae9 |
215 | ArmPlatformPkg/Drivers/SP804TimerDxe/SP804TimerDxe.inf\r |
a89cb4b7 |
216 | \r |
217 | ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.inf\r |
1d5d0ae9 |
218 | \r |
219 | #\r |
220 | # Semi-hosting filesystem\r |
221 | #\r |
222 | ArmPkg/Filesystem/SemihostFs/SemihostFs.inf\r |
223 | \r |
224 | #\r |
225 | # FAT filesystem + GPT/MBR partitioning\r |
226 | #\r |
227 | MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf\r |
228 | MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf\r |
1d5d0ae9 |
229 | MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf\r |
230 | \r |
1d5d0ae9 |
231 | #\r |
232 | # Bds\r |
233 | #\r |
234 | MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf\r |
235 | ArmPlatformPkg/Bds/Bds.inf\r |