xref: /arm-trusted-firmware/plat/arm/board/tc/platform_test.mk (revision 91f16700b400a8c0651d24a598fc48ee2997a0d7)
1*91f16700Schasinglulu# Copyright (c) 2022-2023, Arm Limited. All rights reserved.
2*91f16700Schasinglulu#
3*91f16700Schasinglulu# SPDX-License-Identifier: BSD-3-Clause
4*91f16700Schasinglulu#
5*91f16700Schasinglulu
6*91f16700Schasinglulu$(eval $(call add_define,PLATFORM_TESTS))
7*91f16700Schasinglulu
8*91f16700Schasingluluifeq (${PLATFORM_TEST},rss-nv-counters)
9*91f16700Schasinglulu    include drivers/arm/rss/rss_comms.mk
10*91f16700Schasinglulu
11*91f16700Schasinglulu    # Test code.
12*91f16700Schasinglulu    BL31_SOURCES	+=	plat/arm/board/tc/nv_counter_test.c
13*91f16700Schasinglulu
14*91f16700Schasinglulu    # Code under testing.
15*91f16700Schasinglulu    BL31_SOURCES	+=	lib/psa/rss_platform.c \
16*91f16700Schasinglulu				drivers/arm/rss/rss_comms.c \
17*91f16700Schasinglulu				${RSS_COMMS_SOURCES}
18*91f16700Schasinglulu
19*91f16700Schasinglulu    PLAT_INCLUDES	+=	-Iinclude/lib/psa
20*91f16700Schasinglulu
21*91f16700Schasinglulu    $(eval $(call add_define,PLATFORM_TEST_NV_COUNTERS))
22*91f16700Schasingluluelse ifeq (${PLATFORM_TEST},rss-rotpk)
23*91f16700Schasinglulu    include drivers/arm/rss/rss_comms.mk
24*91f16700Schasinglulu
25*91f16700Schasinglulu    # Test code.
26*91f16700Schasinglulu    BL31_SOURCES	+=	plat/arm/board/tc/rotpk_test.c
27*91f16700Schasinglulu
28*91f16700Schasinglulu    # Code under testing.
29*91f16700Schasinglulu    BL31_SOURCES	+=	lib/psa/rss_platform.c \
30*91f16700Schasinglulu				drivers/arm/rss/rss_comms.c \
31*91f16700Schasinglulu				${RSS_COMMS_SOURCES}
32*91f16700Schasinglulu
33*91f16700Schasinglulu    PLAT_INCLUDES	+=	-Iinclude/lib/psa
34*91f16700Schasinglulu
35*91f16700Schasinglulu    $(eval $(call add_define,PLATFORM_TEST_ROTPK))
36*91f16700Schasingluluelse ifeq (${PLATFORM_TEST},tfm-testsuite)
37*91f16700Schasinglulu
38*91f16700Schasinglulu    # The variables need to be set to compile the platform test:
39*91f16700Schasinglulu    ifeq (${TF_M_TESTS_PATH},)
40*91f16700Schasinglulu        # Example: ../rss/tf-m-tests
41*91f16700Schasinglulu        $(error Error: TF_M_TESTS_PATH not set)
42*91f16700Schasinglulu    endif
43*91f16700Schasinglulu    ifeq (${TF_M_EXTRAS_PATH},)
44*91f16700Schasinglulu        # Example: ../rss/tf-m-extras
45*91f16700Schasinglulu        $(error Error: TF_M_EXTRAS_PATH not set)
46*91f16700Schasinglulu    endif
47*91f16700Schasinglulu    ifeq (${MEASUREMENT_VALUE_SIZE},)
48*91f16700Schasinglulu        MEASUREMENT_VALUE_SIZE	:=	32
49*91f16700Schasinglulu    endif
50*91f16700Schasinglulu    ifeq (${MEASURED_BOOT_HASH_ALG},)
51*91f16700Schasinglulu        MEASURED_BOOT_HASH_ALG	:=	"PSA_ALG_SHA_256"
52*91f16700Schasinglulu    endif
53*91f16700Schasinglulu
54*91f16700Schasinglulu    DELEGATED_ATTEST_TESTS_PATH	=	$(TF_M_EXTRAS_PATH)/partitions/delegated_attestation/test
55*91f16700Schasinglulu    MEASURED_BOOT_TESTS_PATH	=	$(TF_M_EXTRAS_PATH)/partitions/measured_boot/test
56*91f16700Schasinglulu
57*91f16700Schasinglulu    MBEDTLS_CONFIG_FILE		=	"<plat_tc_mbedtls_config.h>"
58*91f16700Schasinglulu
59*91f16700Schasinglulu    LIBMBEDTLS_SRCS		+= 	$(addprefix ${MBEDTLS_DIR}/library/,	\
60*91f16700Schasinglulu					entropy.c				\
61*91f16700Schasinglulu					entropy_poll.c				\
62*91f16700Schasinglulu					hmac_drbg.c				\
63*91f16700Schasinglulu					psa_crypto.c				\
64*91f16700Schasinglulu					psa_crypto_client.c			\
65*91f16700Schasinglulu					psa_crypto_driver_wrappers.c		\
66*91f16700Schasinglulu					psa_crypto_hash.c			\
67*91f16700Schasinglulu					psa_crypto_rsa.c			\
68*91f16700Schasinglulu					psa_crypto_ecp.c			\
69*91f16700Schasinglulu					psa_crypto_slot_management.c		\
70*91f16700Schasinglulu					)
71*91f16700Schasinglulu
72*91f16700Schasinglulu    BL31_SOURCES	+=	${RSS_COMMS_SOURCES} 				\
73*91f16700Schasinglulu				plat/arm/common/arm_dyn_cfg.c 			\
74*91f16700Schasinglulu				${TC_BASE}/rss_ap_tests.c 			\
75*91f16700Schasinglulu				${TC_BASE}/rss_ap_testsuites.c 			\
76*91f16700Schasinglulu				${TC_BASE}/rss_ap_test_stubs.c			\
77*91f16700Schasinglulu				$(TF_M_TESTS_PATH)/test/framework/test_framework.c \
78*91f16700Schasinglulu				$(MEASURED_BOOT_TESTS_PATH)/measured_boot_common.c \
79*91f16700Schasinglulu				$(MEASURED_BOOT_TESTS_PATH)/measured_boot_tests_common.c \
80*91f16700Schasinglulu				$(DELEGATED_ATTEST_TESTS_PATH)/delegated_attest_test.c \
81*91f16700Schasinglulu				drivers/auth/mbedtls/mbedtls_common.c 		\
82*91f16700Schasinglulu				lib/psa/measured_boot.c 			\
83*91f16700Schasinglulu				lib/psa/delegated_attestation.c
84*91f16700Schasinglulu
85*91f16700Schasinglulu    PLAT_INCLUDES	+=	-I$(TF_M_EXTRAS_PATH)/partitions/measured_boot/interface/include \
86*91f16700Schasinglulu				-I$(TF_M_EXTRAS_PATH)/partitions/delegated_attestation/interface/include \
87*91f16700Schasinglulu				-I$(TF_M_TESTS_PATH)/test/framework 		\
88*91f16700Schasinglulu				-I$(TF_M_TESTS_PATH)/log 			\
89*91f16700Schasinglulu				-I$(TF_M_TESTS_PATH)/test/secure_fw/suites/extra \
90*91f16700Schasinglulu				-I$(MEASURED_BOOT_TESTS_PATH)/non_secure 	\
91*91f16700Schasinglulu				-I$(DELEGATED_ATTEST_TESTS_PATH) 		\
92*91f16700Schasinglulu				-I$(DELEGATED_ATTEST_TESTS_PATH)/non_secure \
93*91f16700Schasinglulu				-Iplat/arm/board/tc 				\
94*91f16700Schasinglulu				-Iinclude/drivers/auth/mbedtls 			\
95*91f16700Schasinglulu				-Iinclude/drivers/arm
96*91f16700Schasinglulu
97*91f16700Schasinglulu    # Some of the PSA functions are declared in multiple header files, that
98*91f16700Schasinglulu    # triggers this warning.
99*91f16700Schasinglulu    TF_CFLAGS		+=	-Wno-error=redundant-decls
100*91f16700Schasinglulu
101*91f16700Schasinglulu    # TODO: Created patch for warning in tf-m-tests
102*91f16700Schasinglulu    TF_CFLAGS		+=	-Wno-error=return-type
103*91f16700Schasinglulu
104*91f16700Schasinglulu    # Define macros that are used by the code coming from the tf-m-extras repo.
105*91f16700Schasinglulu    $(eval $(call add_define,MEASUREMENT_VALUE_SIZE))
106*91f16700Schasinglulu    $(eval $(call add_define,MEASURED_BOOT_HASH_ALG))
107*91f16700Schasinglulu    $(eval $(call add_define,DELEG_ATTEST_DUMP_TOKEN_AND_KEY))
108*91f16700Schasinglulu
109*91f16700Schasinglulu    $(eval $(call add_define,PLATFORM_TEST_TFM_TESTSUITE))
110*91f16700Schasingluluelse
111*91f16700Schasinglulu    $(error "Unsupported PLATFORM_TEST value")
112*91f16700Schasingluluendif
113