| <?xml version="1.0" encoding="utf-8"?> |
| |
| <!-- |
| Copyright (c) 2018-2024, 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="Test FFA_FEATURES (FFA_RXTX_MAP)" |
| function="test_ffa_features_rxtx_map" /> |
| |
| <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" /> |
| </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="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" /> |
| <testcase name="Normal World VM retrieve request into SPMC" |
| function="test_ffa_memory_retrieve_request_from_vm" /> |
| </testsuite> |
| |
| <testsuite name="SIMD context switch tests" |
| description="Validate context switch between NWd and SWd" > |
| <testcase name="Check that Adv. 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" /> |
| <testcase name="Enter SPMC with SME SSVE enabled" |
| function="test_sme_streaming_sve" /> |
| <testcase name="Enter SPMC with SME ZA enabled" |
| function="test_sme_za" /> |
| <testcase name="Enter SPMC with SME SM+ZA enabled" |
| function="test_sme_streaming_sve_za" /> |
| </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" /> |
| <testcase name="Notifications VM signals SP, with SRI flag set and fail" |
| function="test_ffa_notifications_vm_signals_sp_delay_sri_fail" /> |
| </testsuite> |
| |
| <testsuite name="FF-A Indirect Messaging" |
| description="Test FF-A Indirect messaging" > |
| <testcase name="FF-A Indirect Message from SP to VM" |
| function="test_ffa_indirect_message_sp_to_vm" /> |
| </testsuite> |
| |
| <testsuite name="EL1 Physical arch timer tests" |
| description="Test the physical arch timer can be used from an SP" > |
| <testcase name="NWd physical timer deadline expires in secure world " |
| function="test_ffa_physical_arch_timer_nwd_set_swd_preempt" /> |
| </testsuite> |
| |
| </testsuites> |