blob: fd83747951c9ea8d46caa5114cfdafa94914ff1a [file] [log] [blame]
Achin Gupta4f6ad662013-10-25 09:08:21 +01001#
Zelalem Aweke688fbf72021-07-09 11:37:10 -05002# Copyright (c) 2013-2021, Arm Limited and Contributors. All rights reserved.
Achin Gupta4f6ad662013-10-25 09:08:21 +01003#
dp-armfa3cf0b2017-05-03 09:38:09 +01004# SPDX-License-Identifier: BSD-3-Clause
Achin Gupta4f6ad662013-10-25 09:08:21 +01005#
6
Antonio Nino Diaz6e4b0832019-01-31 10:48:47 +00007BL2_SOURCES += bl2/bl2_image_load_v2.c \
8 bl2/bl2_main.c \
Yatharth Kochardafb2472016-06-30 14:52:12 +01009 bl2/${ARCH}/bl2_arch_setup.c \
dp-arm230011c2017-03-07 11:02:47 +000010 lib/locks/exclusive/${ARCH}/spinlock.S \
Roberto Vargas9f412482018-01-16 10:35:23 +000011 plat/common/${ARCH}/platform_up_stack.S \
Roberto Vargas502290b2018-05-08 10:27:10 +010012 ${MBEDTLS_SOURCES}
Yatharth Kochardafb2472016-06-30 14:52:12 +010013
14ifeq (${ARCH},aarch64)
15BL2_SOURCES += common/aarch64/early_exceptions.S
16endif
Achin Gupta4f6ad662013-10-25 09:08:21 +010017
Zelalem Aweke688fbf72021-07-09 11:37:10 -050018ifeq (${ENABLE_RME},1)
19# Using RME, run BL2 at EL3
Zelalem Aweke8e2e24b2021-07-13 14:05:20 -050020include lib/gpt/gpt.mk
21
Zelalem Aweke688fbf72021-07-09 11:37:10 -050022BL2_SOURCES += bl2/${ARCH}/bl2_rme_entrypoint.S \
23 bl2/${ARCH}/bl2_el3_exceptions.S \
24 bl2/${ARCH}/bl2_run_next_image.S \
Zelalem Aweke8e2e24b2021-07-13 14:05:20 -050025 ${GPT_LIB_SRCS}
Zelalem Aweke688fbf72021-07-09 11:37:10 -050026BL2_LINKERFILE := bl2/bl2.ld.S
27
28else ifeq (${BL2_AT_EL3},0)
29# Normal operation, no RME, no BL2 at EL3
Roberto Vargase0e99462017-10-30 14:43:43 +000030BL2_SOURCES += bl2/${ARCH}/bl2_entrypoint.S
Dan Handley176e7b42014-04-15 18:20:09 +010031BL2_LINKERFILE := bl2/bl2.ld.S
Roberto Vargase0e99462017-10-30 14:43:43 +000032
33else
Zelalem Aweke688fbf72021-07-09 11:37:10 -050034# BL2 at EL3, no RME
Roberto Vargase0e99462017-10-30 14:43:43 +000035BL2_SOURCES += bl2/${ARCH}/bl2_el3_entrypoint.S \
36 bl2/${ARCH}/bl2_el3_exceptions.S \
Zelalem Aweke688fbf72021-07-09 11:37:10 -050037 bl2/${ARCH}/bl2_run_next_image.S \
Roberto Vargase0e99462017-10-30 14:43:43 +000038 lib/cpus/${ARCH}/cpu_helpers.S \
39 lib/cpus/errata_report.c
John Tsichritzis4daa1de2018-07-23 09:11:59 +010040
Javier Almansa Sobrinof3a4c542020-11-23 18:38:15 +000041ifeq (${DISABLE_MTPMU},1)
42BL2_SOURCES += lib/extensions/mtpmu/${ARCH}/mtpmu.S
43endif
44
John Tsichritzis4daa1de2018-07-23 09:11:59 +010045ifeq (${ARCH},aarch64)
46BL2_SOURCES += lib/cpus/aarch64/dsu_helpers.S
47endif
48
Roberto Vargase0e99462017-10-30 14:43:43 +000049BL2_LINKERFILE := bl2/bl2_el3.ld.S
50endif