test(memory share): leverage rme for lend/donate
Add the memory sharing test suite to invalid-access, and rename
it to memory-access.
In such configuration the TF-A is meant to provide services
accessible via SMC, to update the security state of the memory
lent/donated between NWd to SWd.
Signed-off-by: J-Alves <joao.alves@arm.com>
Change-Id: I4a6f2de612dbd9de2db757e3baf2613c47b8a09b
diff --git a/tftf/tests/tests-invalid-access.xml b/tftf/tests/tests-invalid-access.xml
deleted file mode 100644
index 33b85c5..0000000
--- a/tftf/tests/tests-invalid-access.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-
-<!--
- Copyright (c) 2023, Arm Limited. All rights reserved.
-
- SPDX-License-Identifier: BSD-3-Clause
--->
-
-<testsuites>
- <testsuite name="Invalid memory access" description="Invalid memory access">
- <testcase name="Access EL3 memory from NS world"
- function="el3_memory_cannot_be_accessed_in_ns" />
- <testcase name="Access Secure memory from NS world"
- function="s_memory_cannot_be_accessed_in_ns" />
- </testsuite>
-
- <testsuite name="Invalid memory access with RME extension"
- description="Invalid memory access with RME extension">
- <testcase name="Access Realm memory from NS world"
- function="rl_memory_cannot_be_accessed_in_ns" />
- <testcase name="Access Secure memory from Realm world"
- function="s_memory_cannot_be_accessed_in_rl" />
- <testcase name="Access Root memory from Realm world"
- function="rt_memory_cannot_be_accessed_in_rl" />
- <testcase name="Share memory to an SP from a Root region"
- function="rt_memory_cannot_be_accessed_in_s" />
- </testsuite>
-</testsuites>
diff --git a/tftf/tests/tests-invalid-access.mk b/tftf/tests/tests-memory-access.mk
similarity index 94%
rename from tftf/tests/tests-invalid-access.mk
rename to tftf/tests/tests-memory-access.mk
index 346ba9d..13b2241 100644
--- a/tftf/tests/tests-invalid-access.mk
+++ b/tftf/tests/tests-memory-access.mk
@@ -24,6 +24,7 @@
${ARCH}/ffa_arch_helpers.S \
ffa_helpers.c \
spm_common.c \
+ test_ffa_memory_sharing.c \
test_ffa_setup_and_discovery.c \
spm_test_helpers.c \
)
diff --git a/tftf/tests/tests-memory-access.xml b/tftf/tests/tests-memory-access.xml
new file mode 100644
index 0000000..42f21cc
--- /dev/null
+++ b/tftf/tests/tests-memory-access.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<!--
+ Copyright (c) 2024, Arm Limited. All rights reserved.
+
+ SPDX-License-Identifier: BSD-3-Clause
+-->
+
+<testsuites>
+
+ <testsuite name="FF-A Memory Sharing (RME)"
+ description="Test FF-A Memory Sharing ABIs" >
+ <testcase name="Lend Memory to Secure World"
+ function="test_mem_lend_sp" />
+ <testcase name="Lend memory, clear flag set"
+ function="test_mem_share_to_sp_clear_memory"/>
+ <testcase name="Share Memory with Secure World"
+ function="test_mem_share_sp" />
+ <testcase name="Donate Memory to Secure World"
+ function="test_mem_donate_sp"/>
+ <testcase name="Request Share Memory SP-to-SP"
+ function="test_req_mem_share_sp_to_sp" />
+ <testcase name="Request Lend Memory SP-to-SP"
+ function="test_req_mem_lend_sp_to_sp" />
+ <testcase name="Request Donate Memory SP-to-SP"
+ function="test_req_mem_donate_sp_to_sp" />
+ <testcase name="Request Share NS Memory (large PA) SP-to-SP"
+ function="test_req_ns_mem_share_sp_to_sp" />
+ <testcase name="Request Share Memory SP-to-VM"
+ function="test_req_mem_share_sp_to_vm" />
+ <testcase name="Request Lend Memory SP-to-VM"
+ function="test_req_mem_lend_sp_to_vm" />
+ <testcase name="Share forbidden memory with SP"
+ function="test_share_forbidden_ranges" />
+ <testcase name="Donate consecutively"
+ function="test_consecutive_donate" />
+ </testsuite>
+
+ <testsuite name="Invalid memory access" description="Invalid memory access">
+ <testcase name="Access EL3 memory from NS world"
+ function="el3_memory_cannot_be_accessed_in_ns" />
+ <testcase name="Access Secure memory from NS world"
+ function="s_memory_cannot_be_accessed_in_ns" />
+ </testsuite>
+
+ <testsuite name="Invalid memory access with RME extension"
+ description="Invalid memory access with RME extension">
+ <testcase name="Access Realm memory from NS world"
+ function="rl_memory_cannot_be_accessed_in_ns" />
+ <testcase name="Access Secure memory from Realm world"
+ function="s_memory_cannot_be_accessed_in_rl" />
+ <testcase name="Access Root memory from Realm world"
+ function="rt_memory_cannot_be_accessed_in_rl" />
+ <testcase name="Share memory to an SP from a Root region"
+ function="rt_memory_cannot_be_accessed_in_s" />
+ </testsuite>
+
+</testsuites>
diff --git a/tftf/tests/tests-rmi-spm.mk b/tftf/tests/tests-rmi-spm.mk
index 12ebb5a..735e191 100644
--- a/tftf/tests/tests-rmi-spm.mk
+++ b/tftf/tests/tests-rmi-spm.mk
@@ -21,6 +21,7 @@
${ARCH}/ffa_arch_helpers.S \
ffa_helpers.c \
spm_common.c \
+ spm_test_helpers.c \
)
TESTS_SOURCES += \