summaryrefslogtreecommitdiff
path: root/edk2-platforms.config
blob: b7692bb874ec084766925f3362b1421b702f8242 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
# Platform build configurations for Linaro EDK2 builds
# ====================================================
# The configuration file format is extremely simplistic:
# - Each platform has a short name.
# - A platform entry starts by the short name held in square brackets, '[]'
# - Within each entry, all options are described in a NAME=VALUE scheme,
#   with the name being whatever comes before the first '=' on the line,
#   and the value being everything that comes after it.
#
# Mandatory options:
# - LONGNAME		A more descriptive name of the platform.
# - DSC			Pointer to the EDK2 build description file. (The
#			pandaboard is excused, all other ports must have this.)
# - ARCH		String describing the architecture to build for.
#			Currently supported are AARCH32 and AARCH64.
# - UEFI_BIN		Name of executable image produced.
# - UEFI_IMAGE_DIR	Build output directory name, relative to 'Build'.
#
# Options for Trusted OS
# Note that OP-TEE (https://github.com/OP-TEE/optee_os) is the only currently
# supported Trusted OS
# - BUILD_TOS		Set to "yes" if the build should automatically build
#   			Trusted OS, mainly for ARM Trusted Firmware.
#			If this is set, you must also set ATF_SPD!
#			Else we will not know which specific Trusted OS to
#			build.
#			Set to "debug" to create a debug build.
# - TOS_PLATFORM	Platform name for Trusted OS build, if
#   			different from ARM Trusted Firmware platform
#			or UEFI platform name.
# - TOS_PLATFORM_FLAVOR	If a core platform has multiple flavors, specify which
#			flavor here.
#
# Options for ARM Trusted Firmware platforms
# - BUILD_ATF		Set to "yes" if the build should automatically build
#   			ARM Trusted Firmware and a fip containing UEFI image.
#			Set to "debug" to create a debug build.
# - ATF_PLATFORM	Platform name for ARM Trusted Firmware build, if
#   			different from UEFI platform name.
# - SCP_BIN		SCP image to pass to ARM Trusted Firmware.
# - TOS_BIN		Trusted OS image to pass to ARM Trusted Firmware.
# - TOS_BIN_EXTRA1	First extra Trusted OS image
# - TOS_BIN_EXTRA2	Second extra Trusted OS image
#			The path is relative to
#			$EDK2_DIR/Build/$PLATFORM_IMAGE_DIR/$BUILD_PROFILE/FV/.
#			To actually build the Trusted OS, you must also set
#			ATF_SPD.
# - ATF_SPD		Name of Secure Payload Dispatcher
#			To actually build the Trusted OS, you must also set
#			TOS_BIN.
#
# Optional options:
# - BUILDFLAGS		Any special flags you want to pass to the build command.
# - ATF_BUILDFLAGS	Any special flags you want to pass to the ARM Trusted
#			Firmware build command.
# - TOS_BUILDFLAGS	Any special flags you want to pass to the Trusted OS
#			build command.
# - EXTRA_FILES		Any additional files to be copied to output dir.
# - EXEC_FILES		Any additional files to be copied - relative to <ARCH>
#			directory in target build root (<TARGET>_<TOOLCHAIN>)
#			instead of FV dir.
# - PREBUILD_CMDS	Any commands you want to execute before the build step.
# - POSTBUILD_CMDS	Any commands you want to execute after the build step.
# - PACKAGES_PATH	Additional directories to search for packages under.
# - INF                 Point to a .inf (in addition to a .dsc) in order to
#                       build a single component (standalone driver/app).
#

[juno]
LONGNAME=aarch64 Juno
DSC=Platform/ARM/JunoPkg/ArmJuno.dsc
BUILDFLAGS=
ARCH=AARCH64
BUILD_ATF=yes
SCP_BIN=Platform/ARM/Juno/bl30.bin
UEFI_BIN=BL33_AP_UEFI.fd
UEFI_IMAGE_DIR=ArmJuno

# ARM FVP BASE AEMv8-A model
[fvp]
LONGNAME=aarch64 FVP RTSM
DSC=Platform/ARM/VExpressPkg/ArmVExpress-FVP-AArch64.dsc
BUILDFLAGS=-D EDK2_ENABLE_SMSC_91X=1 -D EDK2_ENABLE_PL111=1
ARCH=AARCH64
BUILD_ATF=yes
UEFI_BIN=FVP_AARCH64_EFI.fd
UEFI_IMAGE_DIR=ArmVExpress-FVP-AArch64

[tc2]
LONGNAME=Versatile Express TC2
BUILDFLAGS=-D ARM_BIGLITTLE_TC2=1
DSC=Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.dsc
ARCH=ARM

[overdrive]
LONGNAME=AMD Overdrive
DSC=Platform/AMD/OverdriveBoard/OverdriveBoard.dsc
ARCH=AARCH64

[overdrive1000]
LONGNAME=SoftIron Overdrive 1000
DSC=Platform/SoftIron/Overdrive1000Board/Overdrive1000Board.dsc
ARCH=AARCH64

[cello]
LONGNAME=LeMaker Cello
DSC=Platform/LeMaker/CelloBoard/CelloBoard.dsc
ARCH=AARCH64

[hikey]
LONGNAME=HiKey
DSC=Platform/Hisilicon/HiKey/HiKey.dsc
ARCH=AARCH64
BUILD_ATF=yes
UEFI_BIN=BL33_AP_UEFI.fd
UEFI_IMAGE_DIR=HiKey
SCP_BIN=Platform/Hisilicon/HiKey/mcuimage.bin
ATF_SPD=opteed
TOS_BIN=tee-header_v2.bin
TOS_BIN_EXTRA1=tee-pager_v2.bin
TOS_BIN_EXTRA2=tee-pageable_v2.bin
TOS_PLATFORM_FLAVOR=hikey
BUILD_TOS=yes
# Uncomment this to use UART0 as the EDK2 console
#BUILDFLAGS=-DSERIAL_BASE=0xF8015000
# Uncomment this to use UART0 as the ARM Trusted Firmware console
#ATF_BUILDFLAGS=CONSOLE_BASE=PL011_UART0_BASE CRASH_CONSOLE_BASE=PL011_UART0_BASE
# Uncomment this to use UART0 as the OP-TEE Trusted OS console
#TOS_BUILDFLAGS=CFG_CONSOLE_UART=0

[hikey960]
LONGNAME=Hikey960
DSC=Platform/Hisilicon/HiKey960/HiKey960.dsc
ARCH=AARCH64
UEFI_BIN=BL33_AP_UEFI.fd
UEFI_IMAGE_DIR=HiKey960
BUILD_ATF=yes
ATF_SPD=opteed
TOS_BIN=tee-header_v2.bin
TOS_BIN_EXTRA1=tee-pager_v2.bin
TOS_BIN_EXTRA2=tee-pageable_v2.bin
TOS_PLATFORM=hikey
TOS_PLATFORM_FLAVOR=hikey960
BUILD_TOS=yes
SCP_BIN=Platform/Hisilicon/HiKey960/lpm3.img
# Uncomment this to use UART5 as the EDK2 console for v1 hardware
#BUILDFLAGS=-DSERIAL_BASE=0xFDF05000
# Uncomment this to use UART5 as the OP-TEE Trusted OS console
#TOS_BUILDFLAGS=CFG_CONSOLE_UART=5

[d03]
LONGNAME=Hisilicon D03
DSC=Platform/Hisilicon/D03/D03.dsc
ARCH=AARCH64

[d05]
LONGNAME=HiSilicon D05
DSC=Platform/Hisilicon/D05/D05.dsc
ARCH=AARCH64

[d06]
LONGNAME=HiSilicon D06
DSC=Platform/Hisilicon/D06/D06.dsc
ARCH=AARCH64

[armada70x0]
LONGNAME=Marvell Armada 70x0 Development Board
DSC=Platform/Marvell/Armada70x0Db/Armada70x0Db.dsc
ARCH=AARCH64

[armada80x0]
LONGNAME=Marvell Armada 80x0 Development Board
DSC=Platform/Marvell/Armada80x0Db/Armada80x0Db.dsc
ARCH=AARCH64

[mcbin]
LONGNAME=SolidRun MACCHIATObin
DSC=Platform/SolidRun/Armada80x0McBin/Armada80x0McBin.dsc
ARCH=AARCH64

[chaoskey]
LONGNAME=Altus Metrum ChaosKey RNG
DSC=Silicon/Openmoko/Openmoko.dsc
ARCH=AARCH64

[beagle]
LONGNAME=Beagleboard (original)
DSC=BeagleBoardPkg/BeagleBoardPkg.dsc
ARCH=ARM

[sni-box]
LONGNAME=Socionext SynQuacer development box
DSC=Platform/Socionext/DeveloperBox/DeveloperBox.dsc
ARCH=AARCH64

[capsuleapp]
LONGNAME=EDK2 Capsule Update application
DSC=MdeModulePkg/MdeModulePkg.dsc
INF=MdeModulePkg/Application/CapsuleApp/CapsuleApp.inf
ARCH=AARCH64

[androidboot]
LONGNAME=Android Boot app
DSC=EmbeddedPkg/EmbeddedPkg.dsc
INF=EmbeddedPkg/Application/AndroidBoot/AndroidBootApp.inf
ARCH=AARCH64

[androidfastboot]
LONGNAME=Android FastBoot app
DSC=EmbeddedPkg/EmbeddedPkg.dsc
INF=EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.inf
ARCH=AARCH64

[armvirtqemu]
LONGNAME=ArmVirtPkg QEMU
DSC=ArmVirtPkg/ArmVirtQemu.dsc
ARCH=ARM

[armvirtqemu64]
LONGNAME=ArmVirtPkg QEMU
DSC=ArmVirtPkg/ArmVirtQemu.dsc
ARCH=AARCH64

[helloworld]
LONGNAME=EDK2 Hello World Example
DSC=MdeModulePkg/MdeModulePkg.dsc
INF=MdeModulePkg/Application/HelloWorld/HelloWorld.inf
ARCH=AARCH64

[sgi575]
LONGNAME=ARM SGI575 FVP
DSC=Platform/ARM/SgiPkg/SgiPlatform.dsc
ARCH=AARCH64