blob: 7d21ed5d603822123a8ddcd2696e96222126c973 [file] [log] [blame]
nabkah01002e5692022-10-10 12:36:46 +01001#
AlexeiFedorov2f30f102023-03-13 19:37:46 +00002# Copyright (c) 2022-2023, Arm Limited. All rights reserved.
nabkah01002e5692022-10-10 12:36:46 +01003#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6
7include branch_protection.mk
8
9REALM_INCLUDES := \
10 -Itftf/framework/include \
11 -Iinclude \
12 -Iinclude/common \
13 -Iinclude/common/${ARCH} \
14 -Iinclude/lib \
Shruti Gupta369955a2023-04-19 18:05:56 +010015 -Iinclude/lib/extensions \
nabkah01002e5692022-10-10 12:36:46 +010016 -Iinclude/lib/${ARCH} \
17 -Iinclude/lib/utils \
18 -Iinclude/lib/xlat_tables \
19 -Iinclude/runtime_services \
20 -Iinclude/runtime_services/host_realm_managment \
21 -Irealm \
AlexeiFedorov2f30f102023-03-13 19:37:46 +000022 -Irealm/aarch64 \
23 -Irealm/include
nabkah01002e5692022-10-10 12:36:46 +010024
25REALM_SOURCES:= \
26 $(addprefix realm/, \
27 aarch64/realm_entrypoint.S \
28 aarch64/realm_exceptions.S \
Juan Pablo Conde88ffad22024-10-11 21:22:29 -050029 realm_attestation.c \
Arunachalam Ganapathy5f0afde2023-11-20 12:05:50 +000030 realm_exception_report.c \
nabkah01002e5692022-10-10 12:36:46 +010031 realm_debug.c \
Juan Pablo Conde88ffad22024-10-11 21:22:29 -050032 realm_helpers.c \
nabkah01002e5692022-10-10 12:36:46 +010033 realm_interrupt.c \
Shruti Gupta24597d12023-10-02 10:40:19 +010034 realm_multiple_rec.c \
Shruti Gupta9d0cfe82023-04-17 10:57:26 +010035 realm_pauth.c \
AlexeiFedorov2f30f102023-03-13 19:37:46 +000036 realm_payload_main.c \
Shruti Gupta5abab762024-11-27 04:57:53 +000037 realm_plane.c \
AlexeiFedorov2f30f102023-03-13 19:37:46 +000038 realm_pmuv3.c \
Shruti Gupta699cd4f2023-09-27 16:46:54 +010039 realm_psci.c \
Shruti Gupta91105082024-11-27 05:29:55 +000040 realm_psi.c \
nabkah01002e5692022-10-10 12:36:46 +010041 realm_rsi.c \
42 realm_shared_data.c \
Arunachalam Ganapathyf3697172023-09-04 15:04:46 +010043 realm_simd.c \
nabkah01002e5692022-10-10 12:36:46 +010044 )
45
46REALM_SOURCES += lib/${ARCH}/cache_helpers.S \
47 lib/${ARCH}/misc_helpers.S \
48 lib/smc/${ARCH}/asm_smc.S \
Shruti Gupta91105082024-11-27 05:29:55 +000049 lib/smc/${ARCH}/hvc.c \
nabkah01002e5692022-10-10 12:36:46 +010050 lib/smc/${ARCH}/smc.c \
Javier Almansa Sobrino7c78f7b2024-10-25 11:44:32 +010051 lib/exceptions/${ARCH}/serror.c \
nabkah01002e5692022-10-10 12:36:46 +010052 lib/exceptions/${ARCH}/sync.c \
53 lib/locks/${ARCH}/spinlock.S \
Shruti Gupta369955a2023-04-19 18:05:56 +010054 lib/delay/delay.c \
Arunachalam Ganapathy0bbdc2d2023-04-05 15:30:18 +010055 lib/extensions/fpu/fpu.c \
Arunachalam Ganapathyc1136a82023-04-12 15:24:44 +010056 lib/extensions/sve/aarch64/sve.c \
Arunachalam Ganapathy5b68e202023-06-06 16:31:19 +010057 lib/extensions/sve/aarch64/sve_helpers.S \
58 lib/extensions/sme/aarch64/sme.c \
59 lib/extensions/sme/aarch64/sme_helpers.S
nabkah01002e5692022-10-10 12:36:46 +010060
nabkah01002e5692022-10-10 12:36:46 +010061REALM_LINKERFILE:= realm/realm.ld.S
62
Shruti Gupta9d0cfe82023-04-17 10:57:26 +010063# ARMv8.3 Pointer Authentication support files
64REALM_SOURCES += lib/extensions/pauth/aarch64/pauth.c \
65 lib/extensions/pauth/aarch64/pauth_helpers.S
66
67REALM_INCLUDES += -Iinclude/lib/extensions
68
nabkah01002e5692022-10-10 12:36:46 +010069REALM_DEFINES:=
70$(eval $(call add_define,REALM_DEFINES,ARM_ARCH_MAJOR))
71$(eval $(call add_define,REALM_DEFINES,ARM_ARCH_MINOR))
72$(eval $(call add_define,REALM_DEFINES,ENABLE_BTI))
73$(eval $(call add_define,REALM_DEFINES,ENABLE_PAUTH))
74$(eval $(call add_define,REALM_DEFINES,LOG_LEVEL))
75$(eval $(call add_define,REALM_DEFINES,IMAGE_REALM))