blob: ee280e2878947a49f41beb4d964946ff8a00755f [file] [log] [blame]
Chris Kaycda89212021-08-17 16:24:57 +01001Activity Monitors
2=================
3
4FEAT_AMUv1 of the Armv8-A architecture introduces the Activity Monitors
5extension. This extension describes the architecture for the Activity Monitor
6Unit (|AMU|), an optional non-invasive component for monitoring core events
7through a set of 64-bit counters.
8
9When the ``ENABLE_AMU=1`` build option is provided, Trusted Firmware-A sets up
10the |AMU| prior to its exit from EL3, and will save and restore architected
11|AMU| counters as necessary upon suspend and resume.
12
Chris Kayf11909f2021-08-19 11:21:52 +010013Auxiliary counters
14------------------
15
16FEAT_AMUv1 describes a set of implementation-defined auxiliary counters (also
17known as group 1 counters), controlled by the ``ENABLE_AMU_AUXILIARY_COUNTERS``
18build option.
19
20As a security precaution, Trusted Firmware-A does not enable these by default.
21Instead, platforms may configure their auxiliary counters through one of two
22possible mechanisms:
23
24- |FCONF|, controlled by the ``ENABLE_AMU_FCONF`` build option.
25- A platform implementation of the ``plat_amu_topology`` function (the default).
26
27See :ref:`Activity Monitor Unit (AMU) Bindings` for documentation on the |FCONF|
28device tree bindings.
29
Chris Kaycda89212021-08-17 16:24:57 +010030--------------
31
32*Copyright (c) 2021, Arm Limited. All rights reserved.*