Test: Enable FP usage in NSPE
1. Enable FP usage in NSPE by adding FP compile option for NS test
framework and NS library.
2. Add FP test cases in NSPE.
Signed-off-by: Feder Liang <Feder.Liang@arm.com>
Change-Id: I95d97fbfb06e40ef3d4caa5b8f85a52a29c37a46
diff --git a/test/config/check_config.cmake b/test/config/check_config.cmake
index 81d8e70..3e38a60 100644
--- a/test/config/check_config.cmake
+++ b/test/config/check_config.cmake
@@ -1,5 +1,5 @@
#-------------------------------------------------------------------------------
-# Copyright (c) 2021, Arm Limited. All rights reserved.
+# Copyright (c) 2021-2022, Arm Limited. All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause
#
@@ -27,6 +27,7 @@
message(STATUS "TEST_NS_MULTI_CORE is set as ${TEST_NS_MULTI_CORE}")
message(STATUS "TEST_NS_MANAGE_NSID is set as ${TEST_NS_MANAGE_NSID}")
message(STATUS "TEST_NS_SFN_BACKEND is set as ${TEST_NS_SFN_BACKEND}")
+message(STATUS "TEST_NS_FPU is set as ${TEST_NS_FPU}")
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}")
@@ -49,8 +50,8 @@
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((TFM_LIB_MODEL) AND (TEST_NS_IPC OR TEST_S_IPC OR TEST_NS_SLIH_IRQ OR TEST_NS_FLIH_IRQ))
-tfm_invalid_config(CONFIG_TFM_SPE_FP STREQUAL "0" AND TEST_S_FPU)
-tfm_invalid_config(TFM_LIB_MODEL AND TEST_S_FPU)
+tfm_invalid_config(CONFIG_TFM_FP STREQUAL "soft" AND (TEST_S_FPU OR TEST_NS_FPU))
+tfm_invalid_config(TFM_LIB_MODEL AND (TEST_S_FPU OR TEST_NS_FPU))
tfm_invalid_config((NOT TFM_MULTI_CORE_TOPOLOGY) AND TEST_NS_MULTI_CORE)
tfm_invalid_config(TEST_NS_T_COSE AND SYMMETRIC_INITIAL_ATTESTATION)
tfm_invalid_config((NOT TFM_NS_MANAGE_NSID) AND TEST_NS_MANAGE_NSID)
diff --git a/test/config/default_ns_test_config.cmake b/test/config/default_ns_test_config.cmake
index e023776..f601e15 100644
--- a/test/config/default_ns_test_config.cmake
+++ b/test/config/default_ns_test_config.cmake
@@ -1,5 +1,5 @@
#-------------------------------------------------------------------------------
-# Copyright (c) 2021, Arm Limited. All rights reserved.
+# Copyright (c) 2021-2022, Arm Limited. All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause
#
@@ -26,6 +26,7 @@
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")
set(TEST_NS_MANAGE_NSID ON CACHE BOOL "Whether to build NS regression NSID management tests")
+set(TEST_NS_FPU OFF CACHE BOOL "Whether to build NS regression FPU tests")
######################### Platform specific setting ############################
diff --git a/test/config/default_test_config.cmake b/test/config/default_test_config.cmake
index 443aee3..c2e325a 100644
--- a/test/config/default_test_config.cmake
+++ b/test/config/default_test_config.cmake
@@ -1,5 +1,5 @@
#-------------------------------------------------------------------------------
-# Copyright (c) 2021, Arm Limited. All rights reserved.
+# Copyright (c) 2021-2022, Arm Limited. All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause
#
@@ -27,6 +27,7 @@
set(TEST_NS_MULTI_CORE OFF CACHE BOOL "Whether to build NS regression multi-core tests")
set(TEST_NS_MANAGE_NSID OFF CACHE BOOL "Whether to build NS regression NSID management tests")
set(TEST_NS_SFN_BACKEND OFF CACHE BOOL "Whether to build NS regression SFN backend tests")
+set(TEST_NS_FPU OFF CACHE BOOL "Whether to build NS regression FPU tests")
########################## S test framework ####################################
diff --git a/test/config/set_config.cmake b/test/config/set_config.cmake
index a3f0cf5..9da5b85 100644
--- a/test/config/set_config.cmake
+++ b/test/config/set_config.cmake
@@ -1,5 +1,5 @@
#-------------------------------------------------------------------------------
-# Copyright (c) 2021, Arm Limited. All rights reserved.
+# Copyright (c) 2021-2022, Arm Limited. All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause
#
@@ -67,8 +67,9 @@
set(TEST_NS_MANAGE_NSID OFF CACHE BOOL "Whether to build NS regression NSID management tests")
endif()
-if (CONFIG_TFM_SPE_FP STREQUAL "0")
- set(TEST_S_FPU OFF CACHE BOOL "Whether to build S regression FPU tests")
+if (CONFIG_TFM_FP STREQUAL "soft")
+ set(TEST_S_FPU OFF CACHE BOOL "Whether to build S regression FPU tests")
+ set(TEST_NS_FPU OFF CACHE BOOL "Whether to build NS regression FPU tests")
endif()
########################## Test framework sync #################################
@@ -158,4 +159,11 @@
set(TFM_PARTITION_ATTESTATION_TEST OFF)
endif()
+# Enable FPU test partition if S or NS FP test enabled
+if (TEST_S_FPU OR TEST_NS_FPU)
+ set(TEST_PARTITION_FPU_TEST ON)
+else()
+ set(TEST_PARTITION_FPU_TEST OFF)
+endif()
+
include(${TFM_TEST_PATH}/config/default_test_config.cmake)