1 /* 2 * Copyright (c) 2017-2021, ARM Limited and Contributors. All rights reserved. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 #ifndef AMU_PRIVATE_H 8 #define AMU_PRIVATE_H 9 10 #include <stdint.h> 11 12 #include <lib/cassert.h> 13 #include <lib/extensions/amu.h> 14 #include <lib/utils_def.h> 15 16 #include <platform_def.h> 17 18 #define AMU_GROUP0_MAX_COUNTERS U(16) 19 #define AMU_GROUP1_MAX_COUNTERS U(16) 20 21 #define AMU_AMCGCR_CG0NC_MAX U(16) 22 23 uint64_t amu_group0_cnt_read_internal(unsigned int idx); 24 void amu_group0_cnt_write_internal(unsigned int idx, uint64_t val); 25 26 uint64_t amu_group1_cnt_read_internal(unsigned int idx); 27 void amu_group1_cnt_write_internal(unsigned int idx, uint64_t val); 28 void amu_group1_set_evtype_internal(unsigned int idx, unsigned int val); 29 30 #if __aarch64__ 31 uint64_t amu_group0_voffset_read_internal(unsigned int idx); 32 void amu_group0_voffset_write_internal(unsigned int idx, uint64_t val); 33 34 uint64_t amu_group1_voffset_read_internal(unsigned int idx); 35 void amu_group1_voffset_write_internal(unsigned int idx, uint64_t val); 36 #endif 37 38 #endif /* AMU_PRIVATE_H */ 39