xref: /rk3399_ARM-atf/services/std_svc/spm/el3_spmc/spmc.mk (revision 6d4f4c3e39cef954ebc6addac24831f6ae9c249a)
15096aeb2SMarc Bonnici#
25096aeb2SMarc Bonnici# Copyright (c) 2022, ARM Limited and Contributors. All rights reserved.
35096aeb2SMarc Bonnici#
45096aeb2SMarc Bonnici# SPDX-License-Identifier: BSD-3-Clause
55096aeb2SMarc Bonnici#
65096aeb2SMarc Bonnici
75096aeb2SMarc Bonniciifneq (${ARCH},aarch64)
85096aeb2SMarc Bonnici        $(error "Error: SPMC is only supported on aarch64.")
95096aeb2SMarc Bonniciendif
105096aeb2SMarc Bonnici
115096aeb2SMarc BonniciSPMC_SOURCES	:=	$(addprefix services/std_svc/spm/el3_spmc/,	\
125096aeb2SMarc Bonnici			spmc_main.c				\
137affa25cSMarc Bonnici			spmc_setup.c				\
1459bd2ad8SMarc Bonnici			logical_sp.c				\
15e0b1a6d5SMarc Bonnici			spmc_pm.c				\
16e0b1a6d5SMarc Bonnici			spmc_shared_mem.c)
175096aeb2SMarc Bonnici
18a34ccd4cSMarc Bonnici# Specify platform specific logical partition implementation.
19a34ccd4cSMarc BonniciSPMC_LP_SOURCES  := $(addprefix ${PLAT_DIR}/, \
20a34ccd4cSMarc Bonnici                    ${PLAT}_el3_spmc_logical_sp.c)
21a34ccd4cSMarc Bonnici
22a34ccd4cSMarc Bonnici
23*555677feSJens Wiklanderifneq ($(wildcard $(SPMC_LP_SOURCES)),)
24a34ccd4cSMarc BonniciSPMC_SOURCES += $(SPMC_LP_SOURCES)
25*555677feSJens Wiklanderendif
26a34ccd4cSMarc Bonnici
275096aeb2SMarc Bonnici# Let the top-level Makefile know that we intend to include a BL32 image
285096aeb2SMarc BonniciNEED_BL32		:=	yes
294a8bfdb9SAchin Gupta
304a8bfdb9SAchin Guptaifndef BL32
314a8bfdb9SAchin Gupta# The SPMC is paired with a Test Secure Payload source and we intend to
324a8bfdb9SAchin Gupta# build the Test Secure Payload if no other image has been provided
334a8bfdb9SAchin Gupta# for BL32.
344a8bfdb9SAchin Gupta#
354a8bfdb9SAchin Gupta# In cases where an associated Secure Payload lies outside this build
364a8bfdb9SAchin Gupta# system/source tree, the dispatcher Makefile can either invoke an external
374a8bfdb9SAchin Gupta# build command or assume it is pre-built.
384a8bfdb9SAchin Gupta
394a8bfdb9SAchin GuptaBL32_ROOT		:=	bl32/tsp
404a8bfdb9SAchin Gupta
414a8bfdb9SAchin Gupta# Conditionally include SP's Makefile. The assumption is that the TSP's build
424a8bfdb9SAchin Gupta# system is compatible with that of Trusted Firmware, and it'll add and populate
434a8bfdb9SAchin Gupta# necessary build targets and variables.
444a8bfdb9SAchin Gupta
454a8bfdb9SAchin Guptainclude ${BL32_ROOT}/tsp.mk
464a8bfdb9SAchin Guptaendif
47