diff options
author | Dimitris Papastamos <dimitris.papastamos@arm.com> | 2017-11-13 09:49:45 +0000 |
---|---|---|
committer | Dimitris Papastamos <dimitris.papastamos@arm.com> | 2018-01-11 12:27:29 +0000 |
commit | 0767d50e699d3d9cb827172dd7742618d37aabe0 (patch) | |
tree | 22751037e5b73d4329eb45b3289d899cbbbf9dcf /include/lib/extensions/amu.h | |
parent | 59902b7c4ca2413c2ee783da1bc66789e35868e5 (diff) | |
download | platform_external_arm-trusted-firmware-0767d50e699d3d9cb827172dd7742618d37aabe0.tar.gz platform_external_arm-trusted-firmware-0767d50e699d3d9cb827172dd7742618d37aabe0.tar.bz2 platform_external_arm-trusted-firmware-0767d50e699d3d9cb827172dd7742618d37aabe0.zip |
AMU: Add configuration helpers for aarch64
Add some AMU helper functions to allow configuring, reading and
writing of the Group 0 and Group 1 counters. Documentation for these
helpers will come in a separate patch.
Change-Id: I656e070d2dae830c22414f694aa655341d4e2c40
Signed-off-by: Dimitris Papastamos <dimitris.papastamos@arm.com>
Diffstat (limited to 'include/lib/extensions/amu.h')
-rw-r--r-- | include/lib/extensions/amu.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/include/lib/extensions/amu.h b/include/lib/extensions/amu.h index 2ecbea568..faa0ee125 100644 --- a/include/lib/extensions/amu.h +++ b/include/lib/extensions/amu.h @@ -10,6 +10,7 @@ #include <sys/cdefs.h> /* for CASSERT() */ #include <cassert.h> #include <platform_def.h> +#include <stdint.h> /* All group 0 counters */ #define AMU_GROUP0_COUNTERS_MASK 0xf @@ -29,6 +30,16 @@ CASSERT(AMU_GROUP1_COUNTERS_MASK <= 0xffff, invalid_amu_group1_counters_mask); CASSERT(AMU_GROUP1_NR_COUNTERS <= 16, invalid_amu_group1_nr_counters); +int amu_supported(void); void amu_enable(int el2_unused); +/* Group 0 configuration helpers */ +uint64_t amu_group0_cnt_read(int idx); +void amu_group0_cnt_write(int idx, uint64_t val); + +/* Group 1 configuration helpers */ +uint64_t amu_group1_cnt_read(int idx); +void amu_group1_cnt_write(int idx, uint64_t val); +void amu_group1_set_evtype(int idx, unsigned int val); + #endif /* __AMU_H__ */ |