Home | History | Annotate | Download | only in uefi-tools
      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 # - SPM_BIN		Prebuilt Secure Partition image to pass to ARM Trusted Firmware.
     50 #			The path is relative to
     51 #			$EDK2_DIR/Build/StandaloneSmmPkg/$BUILD_PROFILE/FV/.
     52 #
     53 # Optional options:
     54 # - BUILDFLAGS		Any special flags you want to pass to the build command.
     55 # - ATF_BUILDFLAGS	Any special flags you want to pass to the ARM Trusted
     56 #			Firmware build command.
     57 # - TOS_BUILDFLAGS	Any special flags you want to pass to the Trusted OS
     58 #			build command.
     59 # - EXTRA_FILES		Any additional files to be copied to output dir.
     60 # - PREBUILD_CMDS	Any commands you want to execute before the build step.
     61 # - POSTBUILD_CMDS	Any commands you want to execute after the build step.
     62 # - PACKAGES_PATH	Additional directories to search for packages under.
     63 # - INF                 Point to a .inf (in addition to a .dsc) in order to
     64 #                       build a single component (standalone driver/app).
     65 #
     66 
     67 [juno]
     68 LONGNAME=aarch64 Juno
     69 DSC=OpenPlatformPkg/Platforms/ARM/Juno/ArmJuno.dsc
     70 BUILDFLAGS=
     71 ARCH=AARCH64
     72 BUILD_ATF=yes
     73 UEFI_BIN=BL33_AP_UEFI.fd
     74 UEFI_IMAGE_DIR=ArmJuno
     75 SCP_BIN=OpenPlatformPkg/Platforms/ARM/Juno/Binary/bl30.bin
     76 EXTRA_FILES=../../../../OpenPlatformPkg/Platforms/ARM/Juno/Binary/bl0.bin ../../../../OpenPlatformPkg/Platforms/ARM/Juno/Binary/Copying.txt
     77 
     78 # ARM FVP BASE AEMv8-A model
     79 [fvp_full]
     80 LONGNAME=aarch64 FVP RTSM with full perhiperhal set
     81 DSC=OpenPlatformPkg/Platforms/ARM/VExpress/ArmVExpress-FVP-AArch64.dsc
     82 BUILDFLAGS=-D EDK2_OUT_DIR=Build/ArmVExpress-FVP-AArch64-Full -D EDK2_ENABLE_SMSC_91X=1 -D EDK2_ENABLE_PL111=1
     83 ARCH=AARCH64
     84 UEFI_BIN=FVP_AARCH64_EFI.fd
     85 UEFI_IMAGE_DIR=ArmVExpress-FVP-AArch64-Full
     86 
     87 [fvp]
     88 LONGNAME=aarch64 FVP RTSM
     89 DSC=OpenPlatformPkg/Platforms/ARM/VExpress/ArmVExpress-FVP-AArch64.dsc
     90 BUILDFLAGS=-D EDK2_ENABLE_SMSC_91X=1
     91 ARCH=AARCH64
     92 BUILD_ATF=yes
     93 UEFI_BIN=FVP_AARCH64_EFI.fd
     94 UEFI_IMAGE_DIR=ArmVExpress-FVP-AArch64
     95 
     96 # ARM FVP BASE AEMv8-A model
     97 [fvp_mm_standalone]
     98 LONGNAME=FVP Base for MM Standalone image in secure world
     99 DSC=StandaloneSmmPkg/StandaloneSmmPkg.dsc
    100 ARCH=AARCH64
    101 UEFI_BIN=FVP_AARCH64_EFI_MM_STANDALONE.fd
    102 UEFI_IMAGE_DIR=ArmVExpress-FVP-AArch64-MM-Standalone
    103 
    104 [fvp_mm_normal]
    105 LONGNAME=FVP Base for UEFI image with MM support in normal world
    106 DSC=OpenPlatformPkg/Platforms/ARM/VExpress/ArmVExpress-FVP-AArch64.dsc
    107 BUILDFLAGS=-D EDK2_OUT_DIR=Build/ArmVExpress-FVP-AArch64-MM-Normal -D ARM_STANDALONE_MM_ENABLE=TRUE
    108 ARCH=AARCH64
    109 BUILD_ATF=debug
    110 UEFI_BIN=FVP_AARCH64_EFI.fd
    111 UEFI_IMAGE_DIR=ArmVExpress-FVP-AArch64-MM-Normal
    112 ATF_PLATFORM=fvp
    113 SPM_BIN=STANDALONESMM.fd
    114 ATF_BUILDFLAGS=ARM_BL31_IN_DRAM=1
    115 
    116 [tc2]
    117 LONGNAME=Versatile Express TC2
    118 BUILDFLAGS=-D ARM_BIGLITTLE_TC2=1
    119 DSC=OpenPlatformPkg/Platforms/ARM/VExpress/ArmVExpress-CTA15-A7.dsc
    120 ARCH=ARM
    121 UEFI_BIN=ARM_VEXPRESS_CTA15A7_EFI.fd
    122 UEFI_IMAGE_DIR=ArmVExpress-CTA15-A7
    123 
    124 [beagle]
    125 LONGNAME=BeagleBoard
    126 BUILDFLAGS=
    127 DSC=BeagleBoardPkg/BeagleBoardPkg.dsc
    128 ARCH=ARM
    129 
    130 [d01]
    131 LONGNAME=HiSilicon D01 Cortex-A15 16-cores
    132 BUILDFLAGS=-D EDK2_ARMVE_STANDALONE=1
    133 DSC=HisiPkg/D01BoardPkg/D01BoardPkg.dsc
    134 ARCH=ARM
    135 UEFI_BIN=D01.fd
    136 UEFI_IMAGE_DIR=D01
    137 
    138 [d01-intelbds]
    139 LONGNAME=HiSilicon D01 Cortex-A15 16-cores Intel Bds
    140 BUILDFLAGS=-D EDK2_ARMVE_STANDALONE=1 -D INTEL_BDS -D NO_LINUX_LOADER -D EDK2_OUT_DIR=Build/D01-IntelBds
    141 DSC=HisiPkg/D01BoardPkg/D01BoardPkg.dsc
    142 ARCH=ARM
    143 UEFI_BIN=D01.fd
    144 UEFI_IMAGE_DIR=D01
    145 
    146 [qemu]
    147 LONGNAME=QEMU ARM Emulator
    148 BUILDFLAGS=-D INTEL_BDS
    149 DSC=ArmVirtPkg/ArmVirtQemu.dsc
    150 ARCH=ARM
    151 UEFI_BIN=QEMU_EFI.fd
    152 UEFI_IMAGE_DIR=ArmVirtQemu-ARM
    153 
    154 [qemu64]
    155 LONGNAME=QEMU AArch64 Emulator
    156 BUILDFLAGS=-D INTEL_BDS
    157 DSC=ArmVirtPkg/ArmVirtQemu.dsc
    158 ARCH=AARCH64
    159 UEFI_BIN=QEMU_EFI.fd
    160 UEFI_IMAGE_DIR=ArmVirtQemu-AARCH64
    161 
    162 [mustang]
    163 LONGNAME=APM XGene Mustang
    164 BUILDFLAGS=
    165 DSC=ArmPlatformPkg/APMXGenePkg/APMXGene-Mustang.dsc
    166 ARCH=AARCH64
    167 UEFI_BIN=APMXGENE-MUSTANG.fd SEC_APMXGENE-MUSTANG.fd
    168 UEFI_IMAGE_DIR=APMXGene-Mustang
    169 
    170 [overdrive]
    171 LONGNAME=AMD Overdrive
    172 BUILDFLAGS=-D INTEL_BDS
    173 DSC=OpenPlatformPkg/Platforms/AMD/Styx/OverdriveBoard/OverdriveBoard.dsc
    174 ARCH=AARCH64
    175 PACKAGES_PATH=OpenPlatformPkg/Platforms/AMD/Styx/Binary
    176 UEFI_BIN=STYX_ROM.fd
    177 UEFI_IMAGE_DIR=Overdrive
    178 
    179 [overdrive1000]
    180 LONGNAME=SoftIron Overdrive 1000
    181 BUILDFLAGS=-D INTEL_BDS
    182 DSC=OpenPlatformPkg/Platforms/AMD/Styx/Overdrive1000Board/Overdrive1000Board.dsc
    183 ARCH=AARCH64
    184 PACKAGES_PATH=OpenPlatformPkg/Platforms/AMD/Styx/Binary
    185 UEFI_BIN=OVERDRIVE1000_ROM.fd
    186 UEFI_IMAGE_DIR=Overdrive1000Board
    187 
    188 [cello]
    189 LONGNAME=LeMaker Cello
    190 BUILDFLAGS=-D INTEL_BDS
    191 DSC=OpenPlatformPkg/Platforms/AMD/Styx/CelloBoard/CelloBoard.dsc
    192 ARCH=AARCH64
    193 PACKAGES_PATH=OpenPlatformPkg/Platforms/AMD/Styx/Binary
    194 UEFI_BIN=STYX_ROM.fd
    195 UEFI_IMAGE_DIR=Cello
    196 
    197 # NOTE: If using upstream ATF, i.e.
    198 # https://github.com/ARM-software/arm-trusted-firmware
    199 # please set TOS_BIN=tee-pager.bin
    200 [hikey]
    201 LONGNAME=CircuitCo HiKey
    202 DSC=OpenPlatformPkg/Platforms/Hisilicon/HiKey/HiKey.dsc
    203 ARCH=AARCH64
    204 UEFI_BIN=BL33_AP_UEFI.fd
    205 UEFI_IMAGE_DIR=HiKey
    206 BUILD_ATF=yes
    207 ATF_SPD=opteed
    208 TOS_BIN=tee.bin
    209 TOS_PLATFORM_FLAVOR=hikey
    210 BUILD_TOS=yes
    211 SCP_BIN=OpenPlatformPkg/Platforms/Hisilicon/HiKey/Binary/mcuimage.bin
    212 # Uncomment this to use UART0 as the EDK2 console
    213 #BUILDFLAGS=-DSERIAL_BASE=0xF8015000
    214 # Uncomment this to use UART0 as the ARM Trusted Firmware console
    215 #ATF_BUILDFLAGS=CONSOLE_BASE=PL011_UART0_BASE CRASH_CONSOLE_BASE=PL011_UART0_BASE
    216 # Uncomment this to use UART0 as the OP-TEE Trusted OS console
    217 #TOS_BUILDFLAGS=CFG_CONSOLE_UART=0
    218 
    219 [hikey960]
    220 LONGNAME=Hikey960
    221 DSC=OpenPlatformPkg/Platforms/Hisilicon/HiKey960/HiKey960.dsc
    222 ARCH=AARCH64
    223 UEFI_BIN=BL33_AP_UEFI.fd
    224 UEFI_IMAGE_DIR=HiKey960
    225 BUILD_ATF=yes
    226 ATF_SPD=opteed
    227 TOS_BIN=tee-pager.bin
    228 TOS_PLATFORM=hikey
    229 TOS_PLATFORM_FLAVOR=hikey960
    230 BUILD_TOS=yes
    231 SCP_BIN=OpenPlatformPkg/Platforms/Hisilicon/HiKey960/Binary/lpm3.img
    232 # Uncomment this to use UART5 as the EDK2 console for v1 hardware
    233 #BUILDFLAGS=-DSERIAL_BASE=0xFDF05000
    234 
    235 [xen64]
    236 LONGNAME=AArch64 Xen guest
    237 BUILDFLAGS=
    238 DSC=ArmVirtPkg/ArmVirtXen.dsc
    239 ARCH=AARCH64
    240 UEFI_BIN=XEN_EFI.fd
    241 UEFI_IMAGE_DIR=ArmVirtXen-AARCH64
    242 
    243 [aarch64-shell]
    244 LONGNAME=AArch64 EFI Shell
    245 BUILDFLAGS=-D INCLUDE_TFTP_COMMAND
    246 DSC=ShellPkg/ShellPkg.dsc
    247 ARCH=AARCH64
    248 
    249 [aarch64-shell-minimal]
    250 LONGNAME=AArch64 EFI Shell (Minimal)
    251 BUILDFLAGS=-D NO_SHELL_PROFILES
    252 DSC=ShellPkg/ShellPkg.dsc
    253 ARCH=AARCH64
    254 
    255 [arm-shell]
    256 LONGNAME=ARM EFI Shell
    257 BUILDFLAGS=-D INCLUDE_TFTP_COMMAND
    258 DSC=ShellPkg/ShellPkg.dsc
    259 ARCH=ARM
    260 
    261 [arm-shell-minimal]
    262 LONGNAME=ARM EFI Shell (Minimal)
    263 BUILDFLAGS=-D NO_SHELL_PROFILES
    264 DSC=ShellPkg/ShellPkg.dsc
    265 ARCH=ARM
    266 
    267 [d02]
    268 LONGNAME=Hisilicon D02
    269 DSC=OpenPlatformPkg/Platforms/Hisilicon/D02/Pv660D02.dsc
    270 ARCH=AARCH64
    271 UEFI_BIN=PV660D02.fd
    272 UEFI_IMAGE_DIR=Pv660D02
    273 
    274 [d03]
    275 LONGNAME=Hisilicon D03
    276 DSC=OpenPlatformPkg/Platforms/Hisilicon/D03/D03.dsc
    277 ARCH=AARCH64
    278 UEFI_BIN=D03.fd
    279 UEFI_IMAGE_DIR=D03
    280 
    281 [d05]
    282 LONGNAME=HiSilicon D05
    283 DSC=OpenPlatformPkg/Platforms/Hisilicon/D05/D05.dsc
    284 ARCH=AARCH64
    285 UEFI_BIN=D05.fd
    286 UEFI_IMAGE_DIR=D05
    287 
    288 [armada70x0]
    289 LONGNAME=Marvell Armada 70x0
    290 DSC=OpenPlatformPkg/Platforms/Marvell/Armada/Armada70x0.dsc
    291 ARCH=AARCH64
    292 
    293 [ovmfx64]
    294 LONGNAME=OVMF Qemu X64
    295 DSC=OvmfPkg/OvmfPkgX64.dsc
    296 ARCH=X64
    297 
    298 [hello]
    299 LONGNAME=EDK2 Hello World Example
    300 DSC=MdeModulePkg/MdeModulePkg.dsc
    301 INF=MdeModulePkg/Application/HelloWorld/HelloWorld.inf
    302 
    303 [chaoskey]
    304 LONGNAME=Altus Metrum ChaosKey Driver
    305 DSC=OptionRomPkg/OptionRomPkg.dsc
    306 INF=OpenPlatformPkg/Drivers/Usb/Misc/ChaosKeyDxe/ChaosKeyDxe.inf
    307