################################
Trusted Firmware-M Documentation
################################

.. raw:: html

    <ul class="grid">
        <li class="grid-item">
            <a href="introduction/readme.html">
                <img alt="" src="_static/images/tfm-introduction.png"/>
                <h2>Introduction</h2>
            </a>
            <p>Introducing the Trusted Firmware-M Project: overview,
               architecture, features, and licensing.</p>
        </li>
        <li class="grid-item">
            <a href="getting_started/index.html">
               <img alt="" src="_static/images/tfm-documentation.png"/>
               <h2>Getting Started</h2>
            </a>
            <p>Follow this guide to set up a development environment on your
               system, and then build and run a sample application.</p>
        </li>
        <li class="grid-item">
            <a href="platform/index.html">
                <img alt="" src="_static/images/tfm-platform.png"/>
                <h2>Supported Platforms</h2>
            </a>
            <p>List of supported boards and platforms.</p>
        </li>
        <li class="grid-item">
            <a href="contributing/index.html">
                <img alt="" src="_static/images/tfm-contribution.png"/>
                <h2>Contribution</h2>
            </a>
            <p>As an open-source project, we welcome and encourage the community
               to submit patches directly to the project.</p>
        </li>
        <li class="grid-item">
            <a href="integration_guide/index.html">
                <img alt="" src="_static/images/tfm-integration.png"/>
                <h2>Integration</h2>
            </a>
            <p>Guidelines for integration with TF-M.</p>
        </li>
        <li class="grid-item">
            <a href="design_docs/index.html">
                <img alt="" src="_static/images/tfm-reference.png"/>
                <h2>References</h2>
            </a>
            <p>Design documents.</p>
        </li>
        <li class="grid-item">
            <a href="security/index.html">
                <img alt="" src="_static/images/tfm.png"/>
                <h2>Security</h2>
            </a>
            <p>Requirements, processes, and thread models for ensuring security
               is addressed within the TF-M project.</p>
        </li>
        <li class="grid-item">
            <a href="releases/index.html">
                <img alt="" src="_static/images/tfm-release.png"/>
                <h2>Releases</h2>
            </a>
            <p>Release notes.</p>
        </li>
    </ul>

.. toctree::
    :caption: Overview
    :titlesonly:
    :maxdepth: 1
    :hidden:

    introduction/index
    Getting Started <getting_started/index>
    security/index
    releases/index
    Glossary <glossary>

.. toctree::
    :caption: Development
    :titlesonly:
    :maxdepth: 1
    :hidden:

    Platforms <platform/index>
    building/tfm_build_instruction
    configuration/index
    integration_guide/index
    design_docs/index
    Tools <tools/index>

.. toctree::
    :caption: Contribution
    :titlesonly:
    :hidden:

    Guidelines <contributing/index>
    contributing/lic
    DCO <contributing/dco>

.. toctree::
    :maxdepth: 2
    :hidden:
    :caption: Links

    API Reference <https://ci.trustedfirmware.org/job/tf-m-build-docs-nightly/lastSuccessfulBuild/artifact/trusted-firmware-m/build/docs/reference_manual/html/index.html>
    Security Center <https://developer.trustedfirmware.org/w/collaboration/security_center>
    PSA <https://www.arm.com/architecture/security-features/platform-security>

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

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