xref: /optee_os/core/arch/arm/kernel/sub.mk (revision 82631bd42041c00853545dd76993be70512ce4eb)
130c53a72SJorge Ramirez-Ortizsrcs-y += rpc_io_i2c.c
2519bf5f1SJerome Forissiersrcs-y += idle.c
3abe38974SJens Wiklander
4abe38974SJens Wiklandersrcs-$(CFG_SECURE_TIME_SOURCE_CNTPCT) += tee_time_arm_cntpct.c
5*82631bd4SJens Wiklanderifeq ($(CFG_CALLOUT),y)
65b7afacfSJens Wiklandersrcs-$(CFG_ARM64_core) += generic_timer.c
7*82631bd4SJens Wiklanderendif
8ba6b2959SSumit Gargsrcs-$(CFG_ARM64_core) += timer_a64.c
9abe38974SJens Wiklander
101e61d77fSJerome Forissiersrcs-$(CFG_ARM32_core) += spin_lock_a32.S
11e0cbf7deSJens Wiklandersrcs-$(CFG_ARM64_core) += spin_lock_a64.S
120fe4149eSEtienne Carrieresrcs-$(CFG_ARM32_core) += tlb_helpers_a32.S
130fe4149eSEtienne Carrieresrcs-$(CFG_ARM64_core) += tlb_helpers_a64.S
14e0cbf7deSJens Wiklandersrcs-$(CFG_ARM64_core) += cache_helpers_a64.S
1513f187f4SJens Wiklandersrcs-$(CFG_ARM32_core) += cache_helpers_a32.S
16abe38974SJens Wiklandersrcs-$(CFG_PL310) += tz_ssvce_pl310_a32.S
1782f61471SJerome Forissiersrcs-$(CFG_PL310) += tee_l2cc_mutex.c
18abe38974SJens Wiklander
19abe38974SJens Wiklandersrcs-$(CFG_ARM32_core) += thread_a32.S
20e0cbf7deSJens Wiklandersrcs-$(CFG_ARM64_core) += thread_a64.S
21abe38974SJens Wiklandersrcs-y += thread.c
22fc82e622SJens Wiklanderifeq ($(CFG_WITH_USER_TA),y)
23fc82e622SJens Wiklandersrcs-y += arch_scall.c
24fc82e622SJens Wiklandersrcs-$(CFG_ARM32_core) += arch_scall_a32.S
25fc82e622SJens Wiklandersrcs-$(CFG_ARM64_core) += arch_scall_a64.S
26fc82e622SJens Wiklanderendif
271b302ac0SJens Wiklanderifeq ($(CFG_CORE_FFA),y)
281b302ac0SJens Wiklandersrcs-y += thread_spmc.c
291b302ac0SJens Wiklandercppflags-thread_spmc.c-y += -DTEE_IMPL_GIT_SHA1=$(TEE_IMPL_GIT_SHA1)
301b302ac0SJens Wiklandersrcs-$(CFG_ARM64_core) += thread_spmc_a64.S
311b302ac0SJens Wiklanderelse
322786f143SJens Wiklandersrcs-y += thread_optee_smc.c
332786f143SJens Wiklandersrcs-$(CFG_ARM32_core) += thread_optee_smc_a32.S
342786f143SJens Wiklandersrcs-$(CFG_ARM64_core) += thread_optee_smc_a64.S
351b302ac0SJens Wiklanderendif
3616841254SJens Wiklandersrcs-y += abort.c
37abe38974SJens Wiklandersrcs-$(CFG_WITH_VFP) += vfp.c
38bc46c1c6SJerome Forissierifeq ($(CFG_WITH_VFP),y)
39bc46c1c6SJerome Forissiersrcs-$(CFG_ARM32_core) += vfp_a32.S
40bc46c1c6SJerome Forissiersrcs-$(CFG_ARM64_core) += vfp_a64.S
41bc46c1c6SJerome Forissierendif
42abe38974SJens Wiklandersrcs-$(CFG_ARM32_core) += misc_a32.S
43e0cbf7deSJens Wiklandersrcs-$(CFG_ARM64_core) += misc_a64.S
44f9cd31c5SJelle Selssrcs-$(CFG_WITH_STMM_SP) += stmm_sp.c
45ae6b3380SJelle Selssrcs-$(CFG_SECURE_PARTITION) += secure_partition.c
46ae6b3380SJelle Selssrcs-$(CFG_SECURE_PARTITION) += spmc_sp_handler.c
471f09fc53SJerome Forissier
4865401337SJens Wiklandersrcs-y += boot.c
4965401337SJens Wiklandersrcs-$(CFG_ARM32_core) += entry_a32.S
5065401337SJens Wiklandersrcs-$(CFG_ARM64_core) += entry_a64.S
51923c1f34SJens Wiklander
5231a29642SJerome Forissierifeq ($(CFG_UNWIND),y)
5302d307b7SJerome Forissiersrcs-$(CFG_ARM32_core) += unwind_arm32.c
54923c1f34SJens Wiklandersrcs-$(CFG_ARM64_core) += unwind_arm64.c
55923c1f34SJens Wiklanderendif
5695e4998aSJens Wiklander
57b76b2296SJerome Forissiersrcs-$(CFG_NS_VIRTUALIZATION) += virtualization.c
58a9a3bf98SJerome Forissierifeq ($(CFG_SEMIHOSTING),y)
59a9a3bf98SJerome Forissiersrcs-$(CFG_ARM64_core) += semihosting_a64.S
60a9a3bf98SJerome Forissierendif
61c4e8be26SVolodymyr Babchuk
6266f79941SJens Wiklandersrcs-y += link_dummies_paged.c
6366f79941SJens Wiklandersrcs-y += link_dummies_init.c
64070168e2SJerome Forissier
65070168e2SJerome Forissierasm-defines-y += asm-defines.c
668826a6aaSJerome Forissier# Reflect the following dependencies:
678826a6aaSJerome Forissier# asm-defines.c includes <kernel/thread.h>
688826a6aaSJerome Forissier#   <kernel/thread.h> includes <asm.h>
698826a6aaSJerome Forissier#     <asm.h> includes <generated/arm32_sysreg.h>
708826a6aaSJerome Forissier#                  and <generated/arm32_gicv3_sysreg.h> (optional)
718826a6aaSJerome Forissierasm-defines-asm-defines.c-deps += $(out-dir)/core/include/generated/arm32_sysreg.h
728826a6aaSJerome Forissierifeq ($(CFG_ARM_GICV3),y)
738826a6aaSJerome Forissierasm-defines-asm-defines.c-deps += $(out-dir)/core/include/generated/arm32_gicv3_sysreg.h
748826a6aaSJerome Forissierendif
75099918f6SSumit Garg
76099918f6SSumit Gargifeq ($(CFG_SYSCALL_FTRACE),y)
77099918f6SSumit Garg# We would not like to profile thread.c file as it provide common APIs
78099918f6SSumit Garg# that are needed for ftrace framework to trace syscalls. So profiling
79099918f6SSumit Garg# this file could create an incorrect cyclic behaviour.
80099918f6SSumit Gargcflags-remove-thread.c-y += -pg
81099918f6SSumit Garg# Tracing abort dump files corrupts the stack trace. So exclude them
82099918f6SSumit Garg# from profiling.
83099918f6SSumit Gargcflags-remove-abort.c-y += -pg
84099918f6SSumit Gargifeq ($(CFG_UNWIND),y)
85099918f6SSumit Gargcflags-remove-unwind_arm32.c-y += -pg
86099918f6SSumit Gargcflags-remove-unwind_arm64.c-$(CFG_ARM64_core) += -pg
87099918f6SSumit Gargendif
88099918f6SSumit Gargendif
89