blob: c674e7161443bab720d99d7cbd641d387fdace1e [file] [log] [blame]
Marc Bonnici8e1a7552021-12-01 17:57:04 +00001#
2# Copyright (c) 2022, ARM Limited and Contributors. All rights reserved.
3#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6
7ifneq (${ARCH},aarch64)
8 $(error "Error: SPMC is only supported on aarch64.")
9endif
10
11SPMC_SOURCES := $(addprefix services/std_svc/spm/el3_spmc/, \
12 spmc_main.c \
Marc Bonnici9a297042022-02-14 17:06:09 +000013 spmc_setup.c \
Marc Bonnici25f4b542022-04-12 17:18:13 +010014 logical_sp.c \
Marc Bonnici9f23c8d2021-10-01 16:06:04 +010015 spmc_pm.c \
16 spmc_shared_mem.c)
Marc Bonnici8e1a7552021-12-01 17:57:04 +000017
Marc Bonnici35248f12021-08-19 14:42:19 +010018# Specify platform specific logical partition implementation.
19SPMC_LP_SOURCES := $(addprefix ${PLAT_DIR}/, \
20 ${PLAT}_el3_spmc_logical_sp.c)
21
22
23SPMC_SOURCES += $(SPMC_LP_SOURCES)
24
Marc Bonnici8e1a7552021-12-01 17:57:04 +000025# Let the top-level Makefile know that we intend to include a BL32 image
26NEED_BL32 := yes
Achin Gupta6b4ec242021-10-04 20:13:36 +010027
28ifndef BL32
29# The SPMC is paired with a Test Secure Payload source and we intend to
30# build the Test Secure Payload if no other image has been provided
31# for BL32.
32#
33# In cases where an associated Secure Payload lies outside this build
34# system/source tree, the dispatcher Makefile can either invoke an external
35# build command or assume it is pre-built.
36
37BL32_ROOT := bl32/tsp
38
39# Conditionally include SP's Makefile. The assumption is that the TSP's build
40# system is compatible with that of Trusted Firmware, and it'll add and populate
41# necessary build targets and variables.
42
43include ${BL32_ROOT}/tsp.mk
44endif