1 /*
2  * Arm SCP/MCP Software
3  * Copyright (c) 2021, Arm Limited and Contributors. All rights reserved.
4  *
5  * SPDX-License-Identifier: BSD-3-Clause
6  */
7 
8 #ifndef MPMM_H
9 #define MPMM_H
10 
11 #include <fwk_macros.h>
12 
13 #include <stdint.h>
14 
15 /*! MPMM registers */
16 struct mpmm_reg {
17     FWK_R uint32_t PPMCR;
18     uint32_t RESERVED0[3];
19     FWK_RW uint32_t MPMMCR;
20 };
21 
22 /* PPMCR bits definitions */
23 #define MPMM_PPMCR_NUM_GEARS_MASK UINT32_C(0x00000007)
24 #define MPMM_PPMCR_NUM_GEARS_POS  8
25 
26 /* MPMMCR bits definitions */
27 #define MPMM_MPMMCR_EN_MASK   UINT32_C(0x00000001)
28 #define MPMM_MPMMCR_GEAR_MASK UINT32_C(0x00000003)
29 #define MPMM_MPMMCR_EN_POS    0
30 #define MPMM_MPMMCR_GEAR_POS  1
31 
32 /* AMU Counter */
33 struct amu_reg {
34     FWK_R uint32_t AMEVCNTR_L;
35     FWK_R uint32_t AMEVCNTR_H;
36 };
37 
38 #endif /* MPMM_H */
39