Test: Correct delay function for FP interrupt test
Use osDelay instead of osDelayUntil, for osDelayUntil waits until
specified time which is not suitable for FP interrupt test.
Signed-off-by: Feder Liang <feder.liang@arm.com>
Change-Id: I6c96d17107a078963d952b397c9372118636f7f5
diff --git a/app/os_wrapper_cmsis_rtos_v2.c b/app/os_wrapper_cmsis_rtos_v2.c
index 1e188ab..f582b07 100755
--- a/app/os_wrapper_cmsis_rtos_v2.c
+++ b/app/os_wrapper_cmsis_rtos_v2.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017-2021, Arm Limited. All rights reserved.
+ * Copyright (c) 2017-2022, Arm Limited. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*
@@ -262,11 +262,11 @@
return OS_WRAPPER_ERROR;
}
-int32_t os_wrapper_delay_until(uint32_t ticks)
+int32_t os_wrapper_delay(uint32_t ticks)
{
osStatus_t status;
- status = osDelayUntil(ticks);
+ status = osDelay(ticks);
if (status == osOK) {
return OS_WRAPPER_SUCCESS;
}
diff --git a/ns_interface/os_wrapper/delay.h b/ns_interface/os_wrapper/delay.h
index 9eaf95f..4242b81 100644
--- a/ns_interface/os_wrapper/delay.h
+++ b/ns_interface/os_wrapper/delay.h
@@ -15,12 +15,12 @@
#include "common.h"
/**
- * \brief Wait until an absolute time (specified in kernel ticks) is reached.
+ * \brief Waits for a time period specified in kernel ticks.
*
* \return \ref OS_WRAPPER_SUCCESS if the time delay is executed, or
* \ref OS_WRAPPER_ERROR in case of error
*/
-int32_t os_wrapper_delay_until(uint32_t ticks);
+int32_t os_wrapper_delay(uint32_t ticks);
#ifdef __cplusplus
}
diff --git a/test/secure_fw/suites/fpu/fpu_tests_common.h b/test/secure_fw/suites/fpu/fpu_tests_common.h
index 1787032..794ae90 100644
--- a/test/secure_fw/suites/fpu/fpu_tests_common.h
+++ b/test/secure_fw/suites/fpu/fpu_tests_common.h
@@ -23,7 +23,7 @@
#define LOOP_ITERATIONS (300U)
#define LOOPS_S_INT_TEST (50U)
#define LOOPS_NS_INT_TEST (5000000U)
-#define WAIT_S_INT (20000U)
+#define WAIT_S_INT (2000U)
#define NR_FP_REG (32U)
#define NR_FP_CALLER_REG (NR_FP_REG / 2)
diff --git a/test/secure_fw/suites/fpu/non_secure/fpu_ns_interface_testsuite.c b/test/secure_fw/suites/fpu/non_secure/fpu_ns_interface_testsuite.c
index ded6ca0..42b6e56 100644
--- a/test/secure_fw/suites/fpu/non_secure/fpu_ns_interface_testsuite.c
+++ b/test/secure_fw/suites/fpu/non_secure/fpu_ns_interface_testsuite.c
@@ -225,7 +225,7 @@
/* Spin here */
while (1) {
/* Wait S interrupt triggered */
- os_wrapper_delay_until(WAIT_S_INT);
+ os_wrapper_delay(WAIT_S_INT);
status = psa_call(handle, PSA_IPC_CALL, NULL, 0, outvecs, 1);
if (status == PSA_SUCCESS) {
diff --git a/test/secure_fw/suites/fpu/service/tfm_fpu_service_test.c b/test/secure_fw/suites/fpu/service/tfm_fpu_service_test.c
index 206b27a..6270e45 100644
--- a/test/secure_fw/suites/fpu/service/tfm_fpu_service_test.c
+++ b/test/secure_fw/suites/fpu/service/tfm_fpu_service_test.c
@@ -508,7 +508,7 @@
fpu_client_start_secure_timer();
} else if (signals & TFM_FPU_SERVICE_CHECK_S_TIMER_TRIGGERED_SIGNAL) {
fpu_client_check_secure_timer_triggered();
- } else if (signals & TFM_FPU_SERVICE_CHECK_NS_INTERRUPT_S_TEST_SIGNAL) {
+ } else if (signals & TFM_FPU_SERVICE_CHECK_NS_INTERRUPT_S_TEST_SIGNAL) {
fpu_client_non_secure_interrupt_secure_test();
} else {
psa_panic();