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