1 /*
2  * Arm SCP/MCP Software
3  * Copyright (c) 2020-2021, Arm Limited and Contributors. All rights reserved.
4  *
5  * SPDX-License-Identifier: BSD-3-Clause
6  */
7 
8 #ifndef PVT_SENSOR_CALIBRATION_H
9 #define PVT_SENSOR_CALIBRATION_H
10 
11 #include "juno_mmap.h"
12 
13 #include <fwk_macros.h>
14 
15 #include <stdint.h>
16 
17 #define SOC_PART_ID_LEN     7
18 
19 /*
20  * PVT Sensor Calibration register definitions.
21  */
22 struct juno_pvt_calibration_reg {
23     FWK_R   char        PART_ID_PREFIX;
24     FWK_R   char        PART_ID[SOC_PART_ID_LEN];
25 
26     /* Temperature type sensors: PVTs */
27     FWK_R   uint16_t    G1_S0_810MV_45C;
28     FWK_R   uint16_t    G1_S0_810MV_85C;
29     FWK_R   uint16_t    G1_S0_900MV_45C;
30     FWK_R   uint16_t    G1_S0_900MV_85C;
31     FWK_R   uint16_t    G2_S0_810MV_45C;
32     FWK_R   uint16_t    G2_S0_810MV_85C;
33     FWK_R   uint16_t    G2_S0_900MV_45C;
34     FWK_R   uint16_t    G2_S0_900MV_85C;
35     FWK_R   uint16_t    G2_S1_810MV_45C;
36     FWK_R   uint16_t    G2_S1_810MV_85C;
37     FWK_R   uint16_t    G2_S1_900MV_45C;
38     FWK_R   uint16_t    G2_S1_900MV_85C;
39     FWK_R   uint16_t    G3_S0_810MV_45C;
40     FWK_R   uint16_t    G3_S0_810MV_85C;
41     FWK_R   uint16_t    G3_S0_900MV_45C;
42     FWK_R   uint16_t    G3_S0_900MV_85C;
43     FWK_R   uint16_t    G4_S0_810MV_45C;
44     FWK_R   uint16_t    G4_S0_810MV_85C;
45     FWK_R   uint16_t    G4_S0_900MV_45C;
46     FWK_R   uint16_t    G4_S0_900MV_85C;
47 
48     /* Voltage type sensors: Ring oscillators */
49     FWK_R   uint16_t    G0_S1_810MV_85C;
50     FWK_R   uint16_t    G0_S1_900MV_85C;
51     FWK_R   uint16_t    G0_S9_810MV_85C;
52     FWK_R   uint16_t    G0_S9_900MV_85C;
53     FWK_R   uint16_t    G3_S1_810MV_85C;
54     FWK_R   uint16_t    G3_S1_900MV_85C;
55     FWK_R   uint16_t    G4_S1_810MV_85C;
56     FWK_R   uint16_t    G4_S1_900MV_85C;
57 };
58 
59 #define JUNO_PVT_CALIBRATION ((struct juno_pvt_calibration_reg *) \
60                                  SENSOR_CALIBRATION_BASE)
61 
62 #endif /* PVT_SENSOR_CALIBRATION_H */
63