Build: Decouple tf-m-tests config setting from TF-M repo
Move tf-m-tests specific config setting to tf-m-tests repo to decouple
tf-m-tests config from TF-M.
In the meantime, move tf-m-tests repo fetch operation during TF-M config
setting. Therefore, tf-m-tests specific config file is available when
TF-M config starts as tf-m-tests configs are coupled with those in TF-M.
Change-Id: I5dd7e382378990c6dfe7a5a148d0e12d7933d1a1
Signed-off-by: David Hu <david.hu@arm.com>
diff --git a/config/check_config.cmake b/config/check_config.cmake
index ce65791..4204200 100644
--- a/config/check_config.cmake
+++ b/config/check_config.cmake
@@ -88,5 +88,5 @@
########################### Test check config ##################################
if(TFM_S_REG_TEST OR TFM_NS_REG_TEST)
- include(config/tests/check_config.cmake)
+ include(${TFM_TEST_PATH}/config/check_config.cmake)
endif()
diff --git a/config/config_default.cmake b/config/config_default.cmake
index d0aee19..a0046b0 100644
--- a/config/config_default.cmake
+++ b/config/config_default.cmake
@@ -181,10 +181,6 @@
set(TFM_MBEDCRYPTO_CONFIG_PATH "${CMAKE_SOURCE_DIR}/lib/ext/mbedcrypto/mbedcrypto_config/tfm_mbedcrypto_config_default.h" CACHE PATH "Config to use for Mbed Crypto")
set(TFM_MBEDCRYPTO_PLATFORM_EXTRA_CONFIG_PATH "" CACHE PATH "Config to append to standard Mbed Crypto config, used by platforms to cnfigure feature support")
-set(TFM_TEST_REPO_PATH "DOWNLOAD" CACHE PATH "Path to TFM-TEST repo (or DOWNLOAD to fetch automatically")
-set(TFM_TEST_REPO_VERSION "24aae0b" CACHE STRING "The version of tf-m-tests to use")
-set(CMSIS_5_PATH "DOWNLOAD" CACHE PATH "Path to CMSIS_5 (or DOWNLOAD to fetch automatically")
-
set(MCUBOOT_PATH "DOWNLOAD" CACHE PATH "Path to MCUboot (or DOWNLOAD to fetch automatically")
set(MCUBOOT_VERSION "TF-Mv1.4-integ" CACHE STRING "The version of MCUboot to use")
diff --git a/config/set_config.cmake b/config/set_config.cmake
index 0027063..941d386 100644
--- a/config/set_config.cmake
+++ b/config/set_config.cmake
@@ -50,35 +50,12 @@
# Load defaults, setting options not already set
include(config/config_default.cmake)
+# Fetch tf-m-tests repo during config, if NS or regression test is required.
+# Therefore tf-m-tests configs can be set with TF-M configs since their configs
+# are coupled.
+include(lib/ext/tf-m-tests/tf-m-tests.cmake)
+
# Load TF-M regression test suites setting
-
-get_cmake_property(CACHE_VARS CACHE_VARIABLES)
-# By default all non-secure regression tests are disabled.
-# If TEST_NS or TEST_NS_XXX flag is passed via command line and set to ON,
-# selected corresponding features to support non-secure regression tests.
-foreach(CACHE_VAR ${CACHE_VARS})
- string(REGEX MATCH "^TEST_NS.*" _NS_TEST_FOUND "${CACHE_VAR}")
- if (_NS_TEST_FOUND AND "${${CACHE_VAR}}")
- # TFM_NS_REG_TEST is a TF-M internal cmake flag to manage building
- # tf-m-tests non-secure regression tests related source
- set(TFM_NS_REG_TEST ON)
- break()
- endif()
-endforeach()
-
-# By default all secure regression tests are disabled.
-# If TEST_S or TEST_S_XXX flag is passed via command line and set to ON,
-# selected corresponding features to support secure regression tests.
-foreach(CACHE_VAR ${CACHE_VARS})
- string(REGEX MATCH "^TEST_S.*" _S_TEST_FOUND "${CACHE_VAR}")
- if (_S_TEST_FOUND AND "${${CACHE_VAR}}")
- # TFM_S_REG_TEST is a TF-M internal cmake flag to manage building
- # tf-m-tests secure regression tests related source
- set(TFM_S_REG_TEST ON)
- break()
- endif()
-endforeach()
-
if (TFM_NS_REG_TEST OR TFM_S_REG_TEST)
- include(config/tests/set_config.cmake)
+ include(${TFM_TEST_PATH}/config/set_config.cmake)
endif()
diff --git a/config/tests/check_config.cmake b/config/tests/check_config.cmake
deleted file mode 100644
index cae376a..0000000
--- a/config/tests/check_config.cmake
+++ /dev/null
@@ -1,58 +0,0 @@
-#-------------------------------------------------------------------------------
-# Copyright (c) 2021, Arm Limited. All rights reserved.
-#
-# SPDX-License-Identifier: BSD-3-Clause
-#
-#-------------------------------------------------------------------------------
-
-########################## TEST Configuration ##################################
-
-message(STATUS "---------- Display TEST Configuration - start --------------")
-
-message(STATUS "TEST_NS is set as ${TEST_NS}")
-message(STATUS "TEST_S is set as ${TEST_S}")
-message(STATUS "TEST_NS_ATTESTATION is set as ${TEST_NS_ATTESTATION}")
-message(STATUS "TEST_NS_AUDIT is set as ${TEST_NS_AUDIT}")
-message(STATUS "TEST_NS_CORE is set as ${TEST_NS_CORE}")
-message(STATUS "TEST_NS_CRYPTO is set as ${TEST_NS_CRYPTO}")
-message(STATUS "TEST_NS_ITS is set as ${TEST_NS_ITS}")
-message(STATUS "TEST_NS_QCBOR is set as ${TEST_NS_QCBOR}")
-message(STATUS "TEST_NS_PS is set as ${TEST_NS_PS}")
-message(STATUS "TEST_NS_T_COSE is set as ${TEST_NS_T_COSE}")
-message(STATUS "TEST_NS_PLATFORM is set as ${TEST_NS_PLATFORM}")
-message(STATUS "TEST_NS_FWU is set as ${TEST_NS_FWU}")
-message(STATUS "TEST_NS_IPC is set as ${TEST_NS_IPC}")
-message(STATUS "TEST_NS_SLIH_IRQ is set as ${TEST_NS_SLIH_IRQ}")
-message(STATUS "TEST_NS_FLIH_IRQ is set as ${TEST_NS_FLIH_IRQ}")
-message(STATUS "TEST_NS_MULTI_CORE is set as ${TEST_NS_MULTI_CORE}")
-message(STATUS "TEST_S_ATTESTATION is set as ${TEST_S_ATTESTATION}")
-message(STATUS "TEST_S_AUDIT is set as ${TEST_S_AUDIT}")
-message(STATUS "TEST_S_CRYPTO is set as ${TEST_S_CRYPTO}")
-message(STATUS "TEST_S_ITS is set as ${TEST_S_ITS}")
-message(STATUS "TEST_S_PS is set as ${TEST_S_PS}")
-message(STATUS "TEST_S_PLATFORM is set as ${TEST_S_PLATFORM}")
-message(STATUS "TEST_S_FWU is set as ${TEST_S_FWU}")
-message(STATUS "TEST_S_IPC is set as ${TEST_S_IPC}")
-
-message(STATUS "---------- Display TEST Configuration - stop ---------------")
-
-########################## Check Flags Input ###################################
-
-tfm_invalid_config((NOT TFM_PARTITION_PROTECTED_STORAGE AND NOT FORWARD_PROT_MSG) AND (TEST_NS_PS OR TEST_S_PS))
-tfm_invalid_config((NOT TFM_PARTITION_INTERNAL_TRUSTED_STORAGE AND NOT FORWARD_PROT_MSG) AND (TEST_NS_ITS OR TEST_S_ITS OR TEST_NS_PS))
-tfm_invalid_config((NOT TFM_PARTITION_CRYPTO AND NOT FORWARD_PROT_MSG) AND (TEST_NS_CRYPTO OR TEST_S_CRYPTO))
-tfm_invalid_config((NOT TFM_PARTITION_INITIAL_ATTESTATION AND NOT FORWARD_PROT_MSG) AND (TEST_NS_ATTESTATION OR TEST_S_ATTESTATION OR TEST_NS_QCBOR OR TEST_NS_T_COSE))
-tfm_invalid_config((NOT TFM_PARTITION_PLATFORM AND NOT FORWARD_PROT_MSG) AND (TEST_NS_PLATFORM OR TEST_S_PLATFORM))
-tfm_invalid_config(NOT TFM_PARTITION_FIRMWARE_UPDATE AND (TEST_NS_FWU OR TEST_S_FWU))
-tfm_invalid_config(NOT TFM_PARTITION_AUDIT_LOG AND (TEST_NS_AUDIT OR TEST_S_AUDIT))
-tfm_invalid_config((NOT TFM_PSA_API) AND (TEST_NS_IPC OR TEST_S_IPC OR TEST_NS_SLIH_IRQ OR TEST_NS_FLIH_IRQ))
-tfm_invalid_config((NOT TFM_MULTI_CORE_TOPOLOGY) AND TEST_NS_MULTI_CORE)
-tfm_invalid_config(TEST_NS_T_COSE AND SYMMETRIC_INITIAL_ATTESTATION)
-
-# So far all regression tests are triggered from NS app
-tfm_invalid_config(NOT NS)
-
-########################## Check suites dependence #############################
-
-tfm_invalid_config(TEST_NS_PS AND NOT TEST_NS_ITS)
-tfm_invalid_config(TEST_NS_SLIH_IRQ AND TEST_NS_FLIH_IRQ)
diff --git a/config/tests/default_ns_test_config.cmake b/config/tests/default_ns_test_config.cmake
deleted file mode 100644
index e0ff37c..0000000
--- a/config/tests/default_ns_test_config.cmake
+++ /dev/null
@@ -1,27 +0,0 @@
-#-------------------------------------------------------------------------------
-# Copyright (c) 2021, Arm Limited. All rights reserved.
-#
-# SPDX-License-Identifier: BSD-3-Clause
-#
-#-------------------------------------------------------------------------------
-
-########################## NS test framework ###################################
-
-set(TEST_FRAMEWORK_NS ON CACHE BOOL "Whether to build NS regression tests framework")
-
-########################## NS test suites ######################################
-
-set(TEST_NS_ATTESTATION ON CACHE BOOL "Whether to build NS regression Attestation tests")
-set(TEST_NS_T_COSE ON CACHE BOOL "Whether to build NS regression t_cose tests")
-set(TEST_NS_QCBOR ON CACHE BOOL "Whether to build NS regression QCBOR tests")
-set(TEST_NS_AUDIT ON CACHE BOOL "Whether to build NS regression Audit log tests")
-set(TEST_NS_CORE ON CACHE BOOL "Whether to build NS regression Core tests")
-set(TEST_NS_CRYPTO ON CACHE BOOL "Whether to build NS regression Crypto tests")
-set(TEST_NS_ITS ON CACHE BOOL "Whether to build NS regression ITS tests")
-set(TEST_NS_PS ON CACHE BOOL "Whether to build NS regression PS tests")
-set(TEST_NS_PLATFORM ON CACHE BOOL "Whether to build NS regression Platform tests")
-set(TEST_NS_FWU ON CACHE BOOL "Whether to build NS regression FWU tests")
-set(TEST_NS_IPC ON CACHE BOOL "Whether to build NS regression IPC tests")
-set(TEST_NS_SLIH_IRQ OFF CACHE BOOL "Whether to build NS regression Second-Level Interrupt Handling tests")
-set(TEST_NS_FLIH_IRQ OFF CACHE BOOL "Whether to build NS regression First-Level Interrupt Handling tests")
-set(TEST_NS_MULTI_CORE ON CACHE BOOL "Whether to build NS regression multi-core tests")
diff --git a/config/tests/default_s_test_config.cmake b/config/tests/default_s_test_config.cmake
deleted file mode 100644
index 4a38da7..0000000
--- a/config/tests/default_s_test_config.cmake
+++ /dev/null
@@ -1,21 +0,0 @@
-#-------------------------------------------------------------------------------
-# Copyright (c) 2021, Arm Limited. All rights reserved.
-#
-# SPDX-License-Identifier: BSD-3-Clause
-#
-#-------------------------------------------------------------------------------
-
-########################## S test framework ####################################
-
-set(TEST_FRAMEWORK_S ON CACHE BOOL "Whether to build S regression tests framework")
-
-########################## S test suites #######################################
-
-set(TEST_S_ATTESTATION ON CACHE BOOL "Whether to build S regression Attestation tests")
-set(TEST_S_AUDIT ON CACHE BOOL "Whether to build S regression Audit log tests")
-set(TEST_S_CRYPTO ON CACHE BOOL "Whether to build S regression Crypto tests")
-set(TEST_S_ITS ON CACHE BOOL "Whether to build S regression ITS tests")
-set(TEST_S_PS ON CACHE BOOL "Whether to build S regression PS tests")
-set(TEST_S_PLATFORM ON CACHE BOOL "Whether to build S regression Platform tests")
-set(TEST_S_FWU OFF CACHE BOOL "Whether to build S regression FWU tests")
-set(TEST_S_IPC ON CACHE BOOL "Whether to build S regression IPC tests")
diff --git a/config/tests/default_test_config.cmake b/config/tests/default_test_config.cmake
deleted file mode 100644
index 7d38666..0000000
--- a/config/tests/default_test_config.cmake
+++ /dev/null
@@ -1,42 +0,0 @@
-#-------------------------------------------------------------------------------
-# Copyright (c) 2021, Arm Limited. All rights reserved.
-#
-# SPDX-License-Identifier: BSD-3-Clause
-#
-#-------------------------------------------------------------------------------
-
-########################## NS test framework ###################################
-
-set(TEST_FRAMEWORK_NS OFF CACHE BOOL "Whether to build NS regression tests framework")
-
-########################## NS test suites ######################################
-
-set(TEST_NS_ATTESTATION OFF CACHE BOOL "Whether to build NS regression Attestation tests")
-set(TEST_NS_T_COSE OFF CACHE BOOL "Whether to build NS regression t_cose tests")
-set(TEST_NS_QCBOR OFF CACHE BOOL "Whether to build NS regression QCBOR tests")
-set(TEST_NS_AUDIT OFF CACHE BOOL "Whether to build NS regression Audit log tests")
-set(TEST_NS_CORE OFF CACHE BOOL "Whether to build NS regression Core tests")
-set(TEST_NS_CRYPTO OFF CACHE BOOL "Whether to build NS regression Crypto tests")
-set(TEST_NS_ITS OFF CACHE BOOL "Whether to build NS regression ITS tests")
-set(TEST_NS_PS OFF CACHE BOOL "Whether to build NS regression PS tests")
-set(TEST_NS_PLATFORM OFF CACHE BOOL "Whether to build NS regression Platform tests")
-set(TEST_NS_FWU OFF CACHE BOOL "Whether to build NS regression FWU tests")
-set(TEST_NS_IPC OFF CACHE BOOL "Whether to build NS regression IPC tests")
-set(TEST_NS_SLIH_IRQ OFF CACHE BOOL "Whether to build NS regression Second-Level Interrupt Handling tests")
-set(TEST_NS_FLIH_IRQ OFF CACHE BOOL "Whether to build NS regression First-Level Interrupt Handling tests")
-set(TEST_NS_MULTI_CORE OFF CACHE BOOL "Whether to build NS regression multi-core tests")
-
-########################## S test framework ####################################
-
-set(TEST_FRAMEWORK_S OFF CACHE BOOL "Whether to build S regression tests framework")
-
-########################## S test suites #######################################
-
-set(TEST_S_ATTESTATION OFF CACHE BOOL "Whether to build S regression Attestation tests")
-set(TEST_S_AUDIT OFF CACHE BOOL "Whether to build S regression Audit log tests")
-set(TEST_S_CRYPTO OFF CACHE BOOL "Whether to build S regression Crypto tests")
-set(TEST_S_ITS OFF CACHE BOOL "Whether to build S regression ITS tests")
-set(TEST_S_PS OFF CACHE BOOL "Whether to build S regression PS tests")
-set(TEST_S_PLATFORM OFF CACHE BOOL "Whether to build S regression Platform tests")
-set(TEST_S_FWU OFF CACHE BOOL "Whether to build S regression FWU tests")
-set(TEST_S_IPC OFF CACHE BOOL "Whether to build S regression IPC tests")
diff --git a/config/tests/set_config.cmake b/config/tests/set_config.cmake
deleted file mode 100644
index 2536d3a..0000000
--- a/config/tests/set_config.cmake
+++ /dev/null
@@ -1,96 +0,0 @@
-#-------------------------------------------------------------------------------
-# Copyright (c) 2021, Arm Limited. All rights reserved.
-#
-# SPDX-License-Identifier: BSD-3-Clause
-#
-#-------------------------------------------------------------------------------
-
-########################## TEST SYNC ###########################################
-
-if ((NOT TFM_PARTITION_PROTECTED_STORAGE AND NOT FORWARD_PROT_MSG))
- set(TEST_NS_PS OFF CACHE BOOL "Whether to build NS regression PS tests")
- set(TEST_S_PS OFF CACHE BOOL "Whether to build S regression PS tests")
-endif()
-
-if (NOT TFM_PARTITION_INTERNAL_TRUSTED_STORAGE AND NOT FORWARD_PROT_MSG)
- set(TEST_NS_ITS OFF CACHE BOOL "Whether to build NS regression ITS tests")
- set(TEST_S_ITS OFF CACHE BOOL "Whether to build S regression ITS tests")
-
- # TEST_NS_PS relies on TEST_NS_ITS
- set(TEST_NS_PS OFF CACHE BOOL "Whether to build NS regression PS tests")
-endif()
-
-if (NOT TFM_PARTITION_CRYPTO AND NOT FORWARD_PROT_MSG)
- set(TEST_NS_CRYPTO OFF CACHE BOOL "Whether to build NS regression Crypto tests")
- set(TEST_S_CRYPTO OFF CACHE BOOL "Whether to build S regression Crypto tests")
-endif()
-
-if (NOT TFM_PARTITION_INITIAL_ATTESTATION AND NOT FORWARD_PROT_MSG)
- set(TEST_NS_ATTESTATION OFF CACHE BOOL "Whether to build NS regression Attestation tests")
- set(TEST_S_ATTESTATION OFF CACHE BOOL "Whether to build S regression Attestation tests")
- set(TEST_NS_QCBOR OFF CACHE BOOL "Whether to build NS regression QCBOR tests")
- set(TEST_NS_T_COSE OFF CACHE BOOL "Whether to build NS regression t_cose tests")
-endif()
-
-if (SYMMETRIC_INITIAL_ATTESTATION)
- set(TEST_NS_T_COSE OFF CACHE BOOL "Whether to build NS regression t_cose tests")
-endif()
-
-if (NOT TFM_PARTITION_PLATFORM AND NOT FORWARD_PROT_MSG)
- set(TEST_NS_PLATFORM OFF CACHE BOOL "Whether to build NS regression Platform tests")
- set(TEST_S_PLATFORM OFF CACHE BOOL "Whether to build S regression Platform tests")
-endif()
-
-if (NOT TFM_PARTITION_FIRMWARE_UPDATE)
- set(TEST_NS_FWU OFF CACHE BOOL "Whether to build NS regression FWU tests")
- set(TEST_S_FWU OFF CACHE BOOL "Whether to build S regression FWU tests")
-endif()
-
-if (NOT TFM_PARTITION_AUDIT_LOG)
- set(TEST_NS_AUDIT OFF CACHE BOOL "Whether to build NS regression Audit log tests")
- set(TEST_S_AUDIT OFF CACHE BOOL "Whether to build S regression Audit log tests")
-endif()
-
-if (NOT TFM_PSA_API)
- set(TEST_NS_IPC OFF CACHE BOOL "Whether to build NS regression IPC tests")
- set(TEST_S_IPC OFF CACHE BOOL "Whether to build S regression IPC tests")
-
- set(TEST_NS_SLIH_IRQ OFF CACHE BOOL "Whether to build NS regression Second-Level Interrupt Handling tests")
- set(TEST_NS_FLIH_IRQ OFF CACHE BOOL "Whether to build NS regression First-Level Interrupt Handling tests")
-endif()
-
-if (NOT TFM_MULTI_CORE_TOPOLOGY)
- set(TEST_NS_MULTI_CORE OFF CACHE BOOL "Whether to build NS regression multi-core tests")
-endif()
-
-########################## Test framework sync #################################
-
-get_cmake_property(CACHE_VARS CACHE_VARIABLES)
-# Force TEST_FRAMEWORK_NS ON if single NS test ON
-foreach(CACHE_VAR ${CACHE_VARS})
- string(REGEX MATCH "^TEST_NS_.*" _NS_TEST_FOUND "${CACHE_VAR}")
- if (_NS_TEST_FOUND AND "${${CACHE_VAR}}")
- set(TEST_FRAMEWORK_NS ON CACHE BOOL "Whether to build NS regression tests framework")
- break()
- endif()
-endforeach()
-
-# Force TEST_FRAMEWORK_S ON if single S test ON
-foreach(CACHE_VAR ${CACHE_VARS})
- string(REGEX MATCH "^TEST_S_.*" _S_TEST_FOUND "${CACHE_VAR}")
- if (_S_TEST_FOUND AND "${${CACHE_VAR}}")
- set(TEST_FRAMEWORK_S ON CACHE BOOL "Whether to build S regression tests framework")
- break()
- endif()
-endforeach()
-
-########################## Load default config #################################
-
-if (TEST_S)
- include(config/tests/default_s_test_config.cmake)
-endif()
-if (TEST_NS)
- include(config/tests/default_ns_test_config.cmake)
-endif()
-
-include(config/tests/default_test_config.cmake)
diff --git a/lib/ext/CMakeLists.txt b/lib/ext/CMakeLists.txt
index ced2557..cbe86e7 100644
--- a/lib/ext/CMakeLists.txt
+++ b/lib/ext/CMakeLists.txt
@@ -1,5 +1,5 @@
#-------------------------------------------------------------------------------
-# Copyright (c) 2020, Arm Limited. All rights reserved.
+# Copyright (c) 2020-2021, Arm Limited. All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause
#
@@ -9,7 +9,6 @@
add_subdirectory(qcbor)
add_subdirectory(t_cose)
add_subdirectory(mbedcrypto)
-add_subdirectory(tf-m-tests)
add_subdirectory(CMSIS_5)
if(BL2)
add_subdirectory(mcuboot)
diff --git a/lib/ext/tf-m-tests/CMakeLists.txt b/lib/ext/tf-m-tests/fetch_repo.cmake
similarity index 90%
rename from lib/ext/tf-m-tests/CMakeLists.txt
rename to lib/ext/tf-m-tests/fetch_repo.cmake
index e0b0bde..47bce13 100644
--- a/lib/ext/tf-m-tests/CMakeLists.txt
+++ b/lib/ext/tf-m-tests/fetch_repo.cmake
@@ -1,18 +1,20 @@
#-------------------------------------------------------------------------------
-# Copyright (c) 2020, Arm Limited. All rights reserved.
+# Copyright (c) 2020-2021, Arm Limited. All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause
#
#-------------------------------------------------------------------------------
-include(FetchContent)
-set(FETCHCONTENT_QUIET FALSE)
-
# Set to not download submodules if that option is available
if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.16.0")
cmake_policy(SET CMP0097 NEW)
endif()
+include(FetchContent)
+set(FETCHCONTENT_QUIET FALSE)
+
+set(FETCHCONTENT_BASE_DIR ${CMAKE_BINARY_DIR}/lib/ext CACHE STRING "" FORCE)
+
if ("${TFM_TEST_REPO_PATH}" STREQUAL "DOWNLOAD")
FetchContent_Declare(tfm_test_repo
GIT_REPOSITORY https://git.trustedfirmware.org/TF-M/tf-m-tests.git
diff --git a/lib/ext/tf-m-tests/repo_config_default.cmake b/lib/ext/tf-m-tests/repo_config_default.cmake
new file mode 100644
index 0000000..7b6b916
--- /dev/null
+++ b/lib/ext/tf-m-tests/repo_config_default.cmake
@@ -0,0 +1,12 @@
+#-------------------------------------------------------------------------------
+# Copyright (c) 2021, Arm Limited. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause
+#
+#-------------------------------------------------------------------------------
+
+# Default configs of tf-m-tests repo
+
+set(TFM_TEST_REPO_PATH "DOWNLOAD" CACHE PATH "Path to TFM-TEST repo (or DOWNLOAD to fetch automatically")
+set(TFM_TEST_REPO_VERSION "0326315" CACHE STRING "The version of tf-m-tests to use")
+set(CMSIS_5_PATH "DOWNLOAD" CACHE PATH "Path to CMSIS_5 (or DOWNLOAD to fetch automatically")