1# Platform build configurations for Linaro EDK2 builds
2# ====================================================
3# The configuration file format is extremely simplistic:
4# - Each platform has a short name.
5# - A platform entry starts by the short name held in square brackets, '[]'
6# - Within each entry, all options are described in a NAME=VALUE scheme,
7#   with the name being whatever comes before the first '=' on the line,
8#   and the value being everything that comes after it.
9#
10# Mandatory options:
11# - LONGNAME		A more descriptive name of the platform.
12# - DSC			Pointer to the EDK2 build description file. (The
13#			pandaboard is excused, all other ports must have this.)
14# - ARCH		String describing the architecture to build for.
15#			Currently supported are AARCH32 and AARCH64.
16# - UEFI_BIN		Name of executable image produced.
17# - UEFI_IMAGE_DIR	Build output directory name, relative to 'Build'.
18#
19# Options for Trusted OS
20# Note that OP-TEE (https://github.com/OP-TEE/optee_os) is the only currently
21# supported Trusted OS
22# - BUILD_TOS		Set to "yes" if the build should automatically build
23#   			Trusted OS, mainly for ARM Trusted Firmware.
24#			If this is set, you must also set ATF_SPD!
25#			Else we will not know which specific Trusted OS to
26#			build.
27#			Set to "debug" to create a debug build.
28# - TOS_PLATFORM	Platform name for Trusted OS build, if
29#   			different from ARM Trusted Firmware platform
30#			or UEFI platform name.
31# - TOS_PLATFORM_FLAVOR	If a core platform has multiple flavors, specify which
32#			flavor here.
33#
34# Options for ARM Trusted Firmware platforms
35# - BUILD_ATF		Set to "yes" if the build should automatically build
36#   			ARM Trusted Firmware and a fip containing UEFI image.
37#			Set to "debug" to create a debug build.
38# - ATF_PLATFORM	Platform name for ARM Trusted Firmware build, if
39#   			different from UEFI platform name.
40# - SCP_BIN		SCP image to pass to ARM Trusted Firmware.
41# - TOS_BIN		Trusted OS image to pass to ARM Trusted Firmware.
42#			The path is relative to
43#			$EDK2_DIR/Build/$PLATFORM_IMAGE_DIR/$BUILD_PROFILE/FV/.
44#			To actually build the Trusted OS, you must also set
45#			ATF_SPD.
46# - ATF_SPD		Name of Secure Payload Dispatcher
47#			To actually build the Trusted OS, you must also set
48#			TOS_BIN.
49#
50# Optional options:
51# - BUILDFLAGS		Any special flags you want to pass to the build command.
52# - ATF_BUILDFLAGS	Any special flags you want to pass to the ARM Trusted
53#			Firmware build command.
54# - TOS_BUILDFLAGS	Any special flags you want to pass to the Trusted OS
55#			build command.
56# - EXTRA_FILES		Any additional files to be copied to output dir.
57# - PREBUILD_CMDS	Any commands you want to execute before the build step.
58# - POSTBUILD_CMDS	Any commands you want to execute after the build step.
59# - PACKAGES_PATH	Additional directories to search for packages under.
60# - INF                 Point to a .inf (in addition to a .dsc) in order to
61#                       build a single component (standalone driver/app).
62#
63
64[juno]
65LONGNAME=aarch64 Juno
66DSC=Platform/ARM/JunoPkg/ArmJuno.dsc
67BUILDFLAGS=
68ARCH=AARCH64
69BUILD_ATF=yes
70SCP_BIN=Platform/ARM/Juno/bl30.bin
71UEFI_BIN=BL33_AP_UEFI.fd
72UEFI_IMAGE_DIR=ArmJuno
73
74# ARM FVP BASE AEMv8-A model
75[fvp]
76LONGNAME=aarch64 FVP RTSM
77DSC=Platform/ARM/VExpressPkg/ArmVExpress-FVP-AArch64.dsc
78BUILDFLAGS=-D EDK2_ENABLE_SMSC_91X=1 -D EDK2_ENABLE_PL111=1
79ARCH=AARCH64
80BUILD_ATF=yes
81UEFI_BIN=FVP_AARCH64_EFI.fd
82UEFI_IMAGE_DIR=ArmVExpress-FVP-AArch64
83
84[tc2]
85LONGNAME=Versatile Express TC2
86BUILDFLAGS=-D ARM_BIGLITTLE_TC2=1
87DSC=Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.dsc
88ARCH=ARM
89
90[overdrive]
91LONGNAME=AMD Overdrive
92DSC=Platform/AMD/OverdriveBoard/OverdriveBoard.dsc
93ARCH=AARCH64
94
95[overdrive1000]
96LONGNAME=SoftIron Overdrive 1000
97DSC=Platform/SoftIron/Overdrive1000Board/Overdrive1000Board.dsc
98ARCH=AARCH64
99
100[cello]
101LONGNAME=LeMaker Cello
102DSC=Platform/LeMaker/CelloBoard/CelloBoard.dsc
103ARCH=AARCH64
104
105[hikey]
106LONGNAME=HiKey
107DSC=Platform/Hisilicon/HiKey/HiKey.dsc
108ARCH=AARCH64
109
110[d02]
111LONGNAME=Hisilicon D02
112DSC=Platform/Hisilicon/D02/Pv660D02.dsc
113ARCH=AARCH64
114
115[d03]
116LONGNAME=Hisilicon D03
117DSC=Platform/Hisilicon/D03/D03.dsc
118ARCH=AARCH64
119
120[d05]
121LONGNAME=HiSilicon D05
122DSC=Platform/Hisilicon/D05/D05.dsc
123ARCH=AARCH64
124
125[armada70x0]
126LONGNAME=Marvell Armada 70x0
127DSC=Platform/Marvell/Armada/Armada70x0.dsc
128ARCH=AARCH64
129
130[chaoskey]
131LONGNAME=Altus Metrum ChaosKey RNG
132DSC=Silicon/Openmoko/Openmoko.dsc
133ARCH=AARCH64
134
135[beagle]
136LONGNAME=Beagleboard (original)
137DSC=BeagleBoardPkg/BeagleBoardPkg.dsc
138ARCH=ARM
139