########
Examples
########

The list and simple introduction of the examples in this folder.

corstone310_fvp_dma
===================

Description
-----------

* DMA-350 Secure tests
* Non-secure DMA-350 examples for the Corstone-310 FVP platform

Maintainers
-----------
- Bence Balogh `<bence.balogh@arm.com> <bence.balogh@arm.com>`_
- Mark Horvath `<mark.horvath@arm.com> <mark.horvath@arm.com>`_

extra_test_suites_example
=========================

Description
-----------
An example and template of out-of-tree build of extra regression test suites.

Maintainers
-----------
Jianliang Shen `<jianliang.shen@arm.com> <jianliang.shen@arm.com>`_

example_partition
=================

Description
-----------
A simple secure partition implementation.

Maintainers
-----------
Jianliang Shen `<jianliang.shen@arm.com> <jianliang.shen@arm.com>`_

vad_an552
=========

Description
-----------
Example application for the AN552 FPGA image, details can be found
`here </examples/vad_an552/readme.rst>`.

Maintainers
-----------
- Gabor Toth `<gabor.toth@arm.com> <gabor.toth@arm.com>`_
- Mark Horvath `<mark.horvath@arm.com> <mark.horvath@arm.com>`_

---------------------------

*Copyright (c) 2021-2022, Arm Limited. All rights reserved.*
