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