blob: 21d4631b57b06a92774922c4376a5f00b9920a5a [file] [log] [blame]
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (c) 2018-2023, Arm Limited. All rights reserved.
SPDX-License-Identifier: BSD-3-Clause
-->
<testsuites>
<testsuite name="FF-A Setup and Discovery"
description="Test FF-A Setup and Discovery interfaces" >
<testcase name="Test FFA_FEATURES"
function="test_ffa_features" />
<testcase name="Same FFA version as SPM"
function="test_ffa_version_equal" />
<testcase name="Setting bit 31 in input version"
function="test_ffa_version_bit31"/>
<testcase name="Bigger FFA version than SPM"
function="test_ffa_version_bigger" />
<testcase name="Smaller FFA version than SPM"
function="test_ffa_version_smaller" />
<testcase name="FF-A RXTX Map API success"
function="test_ffa_rxtx_map_success" />
<testcase name="FF-A RXTX Map API consecutive"
function="test_ffa_rxtx_map_fail" />
<testcase name="FF-A RXTX Map API secure memory"
function="test_ffa_rxtx_map_secure_memory_fail"/>
<testcase name="FF-A RXTX Map API non-secure memory"
function="test_ffa_rxtx_map_nonsecure_memory_fail"/>
<testcase name="FF-A RXTX Map API memory sharing"
function="test_ffa_rxtx_map_memory_share_fail"/>
<testcase name="FF-A RXTX Unmap API ID nonexistent"
function="test_ffa_rxtx_unmap_nonexistent_vm_id_fail"/>
<testcase name="FF-A RXTX Unmap API success"
function="test_ffa_rxtx_unmap_success" />
<testcase name="FF-A RXTX Unmap API consecutive"
function="test_ffa_rxtx_unmap_fail" />
<testcase name="FF-A RXTX remap unmapped region success"
function="test_ffa_rxtx_map_unmapped_success" />
<testcase name="FF-A RXTX map forward success"
function="test_ffa_rxtx_map_forward_success" />
<testcase name="FF-A RXTX map forward consecutive success"
function="test_ffa_rxtx_map_forward_consecutive_success" />
<testcase name="FF-A RXTX map forward with unmapped buffers fail"
function="test_ffa_rxtx_map_forward_unmapped_buffers_fail" />
<testcase name="FF-A RXTX map forward with different IDs fail"
function="test_ffa_rxtx_map_forward_different_ids_fail" />
<testcase name="FF-A RXTX map forward memory share fail"
function="test_ffa_rxtx_map_forward_memory_share_fail" />
<testcase name="FF-A RXTX unmap SP rxtx buffer"
function="test_ffa_rxtx_unmap_fail_if_sp" />
<testcase name="Test FFA_SPM_ID_GET"
function="test_ffa_spm_id_get" />
<testcase name="Test FFA_PARTITION_INFO_GET"
function="test_ffa_partition_info" />
<testcase name="Test FFA_PARTITION_INFO_GET v1.0"
function="test_ffa_partition_info_v1_0" />
</testsuite>
<testsuite name="FF-A SMCCC compliance"
description="SMCCC compliance" >
<testcase name="FF-A callee preserves GP register set per SMCCC"
function="test_smccc_callee_preserved" />
<testcase name="FF-A callee preserves extended GP register set per SMCCC"
function="test_smccc_ext_callee_preserved" />
</testsuite>
<testsuite name="SP exceptions"
description="SP exceptions" >
<testcase name="Access from a SP to a Realm region"
function="rl_memory_cannot_be_accessed_in_s" />
</testsuite>
<testsuite name="FF-A Direct messaging"
description="Test FF-A Direct messaging" >
<testcase name="FF-A direct messaging"
function="test_ffa_direct_messaging" />
<testcase name="FF-A Request SP-to-SP direct messaging"
function="test_ffa_sp_to_sp_direct_messaging" />
<testcase name="FF-A Request SP-to-SP direct messaging deadlock"
function="test_ffa_sp_to_sp_deadlock" />
<testcase name="MTE regs preserved across context switch"
function="test_spm_mte_regs_ctxt_mgmt" />
</testsuite>
<testsuite name="FF-A Group0 interrupts"
description="Test FF-A Group0 secure interrupt delegation to EL3" >
<testcase name="FF-A Group0 secure world"
function="test_ffa_group0_interrupt_sp_running" />
<testcase name="FF-A Group0 normal world"
function="test_ffa_group0_interrupt_in_nwd" />
</testsuite>
<testsuite name="FF-A Power management"
description="Test FF-A power management" >
<testcase name="FF-A SP hotplug"
function="test_ffa_secondary_core_direct_msg" />
</testsuite>
<testsuite name="FF-A Memory Sharing"
description="Test FF-A Memory Sharing ABIs" >
<testcase name="Hypervisor share + memory retrieve request"
function="test_hypervisor_share_retrieve" />
<testcase name="Hypervisor lend + memory retrieve request"
function="test_hypervisor_lend_retrieve" />
<testcase name="Hypervisor donate + memory retrieve request"
function="test_hypervisor_donate_retrieve" />
<testcase name="Hypervisor share + memory retrieve request (multiple receivers)"
function="test_hypervisor_share_retrieve_multiple_receivers" />
<testcase name="Hypervisor lend + memory retrieve request (multiple receivers)"
function="test_hypervisor_lend_retrieve_multiple_receivers" />
<testcase name="Hypervisor share + memory retrieve request (fragmented)"
function="test_hypervisor_share_retrieve_fragmented" />
<testcase name="Hypervisor lend + memory retrieve request (fragmented)"
function="test_hypervisor_lend_retrieve_fragmented" />
<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="SIMD,SVE Registers context"
description="Validate context switch between NWd and SWd" >
<testcase name="Check that SIMD registers context is preserved"
function="test_simd_vectors_preserved" />
<testcase name="Check that SVE registers context is preserved"
function="test_sve_vectors_preserved" />
<testcase name="Check that SVE operations in NWd are unaffected by SWd"
function="test_sve_vectors_operations" />
</testsuite>
<testsuite name="FF-A Interrupt"
description="Test non-secure Interrupts" >
<!--
<testcase name="Test SPx with NS Interrupt queued"
function="test_ffa_ns_interrupt_queued" />
-->
<testcase name="Test SPx with NS Interrupt signaled and SPy with Managed Exit"
function="test_ffa_SPx_signaled_SPy_ME" />
<testcase name="Test Managed Exit in SP call chain"
function="test_ffa_ns_interrupt_managed_exit_chained" />
<testcase name="Test SPx with Managed Exit and SPy with NS Interrupt signaled"
function="test_ffa_SPx_ME_SPy_signaled" />
<testcase name="Test Managed Exit"
function="test_ffa_ns_interrupt_managed_exit" />
<testcase name="Test NS interrupt Signalable"
function="test_ffa_ns_interrupt_signaled" />
<testcase name="Test Secure interrupt handling while SP running"
function="test_ffa_sec_interrupt_sp_running" />
<testcase name="Test Secure interrupt handling while SP waiting"
function="test_ffa_sec_interrupt_sp_waiting" />
<testcase name="Test Secure interrupt handling while SP blocked"
function="test_ffa_sec_interrupt_sp_blocked" />
<testcase name="Test Secure interrupt handling while SP1 waiting SP2 running"
function="test_ffa_sec_interrupt_sp1_waiting_sp2_running" />
<testcase name="Test ESPI Secure interrupt handling"
function="test_ffa_espi_sec_interrupt" />
</testsuite>
<testsuite name="SMMUv3 tests"
description="Initiate stage2 translation for streams from upstream peripherals" >
<testcase name="Check DMA command by SMMUv3TestEngine completes"
function="test_smmu_spm" />
<testcase name="Check secure peripheral access to a realm region is aborted"
function="test_smmu_spm_invalid_access" />
</testsuite>
<testsuite name="FF-A Notifications"
description="Test Notifications functionality" >
<testcase name="Notifications interrupts ID retrieval with FFA_FEATURES"
function= "test_notifications_retrieve_int_ids" />
<testcase name="Notifications bitmap create and destroy"
function="test_ffa_notifications_bitmap_create_destroy" />
<testcase name="Notifications bitmap destroy not created"
function="test_ffa_notifications_destroy_not_created" />
<testcase name="Notifications bitmap create after create"
function="test_ffa_notifications_create_after_create" />
<testcase name="SP Notifications bind and unbind"
function="test_ffa_notifications_sp_bind_unbind" />
<testcase name="VM Notifications bind and unbind"
function="test_ffa_notifications_vm_bind_unbind" />
<testcase name="VM Notifications bind NS Sender"
function="test_ffa_notifications_vm_bind_vm" />
<testcase name="Notifications bind/unbind of bound Notifications"
function="test_ffa_notifications_already_bound" />
<testcase name="Notifications bind/unbind SPs spoofing receiver"
function="test_ffa_notifications_bind_unbind_spoofing" />
<testcase name="Notifications zeroed in bind and unbind"
function="test_ffa_notifications_bind_unbind_zeroed" />
<testcase name="Notifications VM signals SP"
function="test_ffa_notifications_vm_signals_sp" />
<testcase name="Notifications SP signals SP"
function="test_ffa_notifications_sp_signals_sp" />
<testcase name="Notifications SP signals VM"
function="test_ffa_notifications_sp_signals_vm" />
<testcase name="Notifications SP signals SP with immediate SRI"
function="test_ffa_notifications_sp_signals_sp_immediate_sri" />
<testcase name="Notifications SP signals SP with delayed SRI"
function="test_ffa_notifications_sp_signals_sp_delayed_sri" />
<testcase name="Notifications unbind while pending"
function="test_ffa_notifications_unbind_pending" />
<testcase name="Notifications MP SP signals UP SP per-vCPU"
function="test_ffa_notifications_mp_sp_signals_up_sp" />
<testcase name="Notifications info get no data"
function="test_ffa_notifications_info_get_none" />
<testcase name="Notifications VM signals SP per-vCPU"
function="test_ffa_notifications_vm_signals_sp_per_vcpu" />
<testcase name="Notifications SP signals SP per-vCPU"
function="test_ffa_notifications_sp_signals_sp_per_vcpu" />
<testcase name="Notifications SP signals VM per-vCPU"
function="test_ffa_notifications_sp_signals_vm_per_vcpu" />
</testsuite>
</testsuites>