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 * Description: 8 * Definitions for the Juno PVT Sensors 9 */ 10 11 #ifndef JUNO_PVT_H 12 #define JUNO_PVT_H 13 14 #include "juno_mmap.h" 15 16 #include <fwk_macros.h> 17 18 #include <stdint.h> 19 20 /* 21 * PVT-Group register definitions. 22 */ 23 struct juno_pvt_reg { 24 FWK_R uint32_t GROUP_INFO; 25 FWK_RW uint32_t MEASUREMENT_ENABLE; 26 uint8_t RESERVED1[0x10 - 0x08]; 27 FWK_RW uint32_t SENSOR_ENABLE; 28 uint8_t RESERVED2[0x60 - 0x14]; 29 FWK_RW uint32_t SSI_RATE_DIV; 30 uint8_t RESERVED3[0x94 - 0x64]; 31 FWK_RW uint32_t SAMPLE_WINDOW; 32 uint8_t RESERVED4[0xA0 - 0x98]; 33 FWK_R uint32_t SENSOR_DATA_VALID; 34 uint8_t RESERVED5[0xC0 - 0xA4]; 35 FWK_RW uint32_t IRQ_CLEAR; 36 FWK_RW uint32_t IRQ_MASK_SET; 37 FWK_W uint32_t IRQ_MASK_CLEAR; 38 uint8_t RESERVED6[0x100 - 0xCC]; 39 FWK_R uint32_t SENSOR_DATA[32]; 40 }; 41 42 #define PVT_REG_STDCELL ((struct juno_pvt_reg *) PVT_STDCELL_BASE) 43 #define PVT_REG_SOC ((struct juno_pvt_reg *) PVT_SOC_BASE) 44 #define PVT_REG_GPU ((struct juno_pvt_reg *) PVT_GPU_BASE) 45 #define PVT_REG_BIG ((struct juno_pvt_reg *) PVT_BIG_BASE) 46 #define PVT_REG_LITTLE ((struct juno_pvt_reg *) PVT_LITTLE_BASE) 47 48 #endif /* JUNO_PVT_H */ 49