2018-10-30 11:08:08 +00:00
|
|
|
#
|
2019-10-15 15:20:34 +01:00
|
|
|
# Copyright (c) 2017-2019, ARM Limited and Contributors. All rights reserved.
|
2018-10-30 11:08:08 +00:00
|
|
|
#
|
|
|
|
# SPDX-License-Identifier: BSD-3-Clause
|
|
|
|
#
|
|
|
|
|
|
|
|
ifneq (${SPD},none)
|
2019-10-15 15:20:34 +01:00
|
|
|
$(error "Error: SPD and SPM_MM are incompatible build options.")
|
2018-10-30 11:08:08 +00:00
|
|
|
endif
|
|
|
|
ifneq (${ARCH},aarch64)
|
2019-10-15 15:20:34 +01:00
|
|
|
$(error "Error: SPM_MM is only supported on aarch64.")
|
2018-10-30 11:08:08 +00:00
|
|
|
endif
|
2021-11-15 15:29:08 +00:00
|
|
|
ifeq (${ENABLE_SVE_FOR_NS},1)
|
|
|
|
$(error "Error: SPM_MM is not compatible with ENABLE_SVE_FOR_NS")
|
|
|
|
endif
|
|
|
|
ifeq (${ENABLE_SME_FOR_NS},1)
|
|
|
|
$(error "Error: SPM_MM is not compatible with ENABLE_SME_FOR_NS")
|
|
|
|
endif
|
2018-10-30 11:08:08 +00:00
|
|
|
|
2019-01-21 11:52:57 +00:00
|
|
|
SPM_SOURCES := $(addprefix services/std_svc/spm_mm/, \
|
2019-10-15 17:14:14 +01:00
|
|
|
${ARCH}/spm_mm_helpers.S \
|
|
|
|
${ARCH}/spm_mm_shim_exceptions.S \
|
2019-10-15 17:13:10 +01:00
|
|
|
spm_mm_main.c \
|
|
|
|
spm_mm_setup.c \
|
|
|
|
spm_mm_xlat.c)
|
2018-10-30 11:08:08 +00:00
|
|
|
|
|
|
|
|
|
|
|
# Let the top-level Makefile know that we intend to include a BL32 image
|
|
|
|
NEED_BL32 := yes
|
2019-01-01 10:01:41 +00:00
|
|
|
|
|
|
|
# required so that SPM code executing at S-EL0 can access the timer registers
|
|
|
|
NS_TIMER_SWITCH := 1
|