xref: /arm-trusted-firmware/lib/mpmm/mpmm.mk (revision 91f16700b400a8c0651d24a598fc48ee2997a0d7)
1*91f16700Schasinglulu#
2*91f16700Schasinglulu# Copyright (c) 2021, Arm Limited. All rights reserved.
3*91f16700Schasinglulu#
4*91f16700Schasinglulu# SPDX-License-Identifier: BSD-3-Clause
5*91f16700Schasinglulu#
6*91f16700Schasinglulu
7*91f16700Schasingluluinclude lib/extensions/amu/amu.mk
8*91f16700Schasingluluinclude lib/fconf/fconf.mk
9*91f16700Schasinglulu
10*91f16700Schasingluluifneq (${ENABLE_MPMM},0)
11*91f16700Schasinglulu        ifneq ($(ARCH),aarch64)
12*91f16700Schasinglulu                $(error MPMM support (`ENABLE_MPMM`) can only be enabled in AArch64 images (`ARCH`))
13*91f16700Schasinglulu        endif
14*91f16700Schasinglulu
15*91f16700Schasinglulu        ifeq (${ENABLE_AMU_AUXILIARY_COUNTERS},0) # For MPMM gear AMU counters
16*91f16700Schasinglulu                $(error MPMM support (`ENABLE_MPM`) requires auxiliary AMU counter support (`ENABLE_AMU_AUXILIARY_COUNTERS`))
17*91f16700Schasinglulu        endif
18*91f16700Schasingluluendif
19*91f16700Schasinglulu
20*91f16700SchasingluluMPMM_SOURCES	:=	lib/mpmm/mpmm.c
21*91f16700SchasingluluMPMM_SOURCES	+=	${AMU_SOURCES}
22*91f16700Schasinglulu
23*91f16700Schasingluluifneq (${ENABLE_MPMM_FCONF},0)
24*91f16700Schasinglulu        ifeq (${ENABLE_MPMM},0)
25*91f16700Schasinglulu                $(error MPMM FCONF support (`ENABLE_MPMM_FCONF`) requires MPMM support (`ENABLE_MPMM`))
26*91f16700Schasinglulu        endif
27*91f16700Schasinglulu
28*91f16700Schasinglulu        MPMM_SOURCES	+= ${FCONF_MPMM_SOURCES}
29*91f16700Schasingluluendif
30