1Hafnium Documentation 2===================== 3 4.. toctree:: 5 :maxdepth: 1 6 :numbered: 7 8 Home<self> 9 about 10 getting_started/index 11 secure-partition-manager/index 12 threat_model_spm 13 change-log 14 appendix 15 glossary 16 17Hafnium is the Secure Partition Manager (SPM) reference implementation, following the 18`Arm's Firmware Framework specification`_. 19 20It leverages Arm's virtualization extensions in the secure world of Arm's A class of 21devices (feature introduced with Armv8.4 FEAT_SEL2) to allow multiple Trusted OSes or 22Applications to run concurrently, inside the Trusted Execution Environment, each running 23as a Secure Partition (SP). 24Its main goal is to control the system access given to Trusted OSes, and serve as 25a mediator to the rest of the system. 26 27For example, it limits the memory use, and handles all system calls from Trusted OS. 28Thus the SPM can enforce spacial isolation, and enforce some level of access control, 29protecting other critical system resources such as: the secure monitor, the normal world 30software stack, the SPM itself and other SPs/Trusted Applications. 31Other important features are: secure interrupt handling, device assignment, inter-partition 32communication and with the Normal World Software stack, also known as Rich Execution 33Environment (REE). 34 35.. image:: ./resources/diagrams/Hafnium_overview.png 36 37To start using Hafnium, check the :ref:`Getting Started` guide which contains information about 38how to setup the environment, build and run the tests, coding guidelines, and how to contribute. 39 40The section :ref:`Secure Partition Manager` provides important details about the implementation. 41 42For security information, check the :ref:`Threat Model` section, which documents identified 43vulnerabilities and respective mitigations. 44 45On our releases, the section :ref:`Change Log` will be updated to contain the summary of updates 46since previous releases. 47 48For support queries, get in touch and keep up-to-date: 49 50- Through our mailing list `hafnium@lists.trustedfirmware.org`_. 51- At the community `Discord`_. 52 53Refer to `github`_ for feature requests and reporting bugs. 54 55.. _Arm's Firmware Framework specification: https://developer.arm.com/documentation/den0077/latest/ 56.. _hafnium@lists.trustedfirmware.org: https://lists.trustedfirmware.org/mailman3/lists/hafnium.lists.trustedfirmware.org/ 57.. _github: https://github.com/TF-Hafnium/hafnium/issues 58.. _Discord: https://discord.gg/8bxF2rRZBg 59 60-------------- 61 62*Copyright (c) 2023, Arm Limited and Contributors. All rights reserved.* 63