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 CPU_PIK_H 9 #define CPU_PIK_H 10 11 #include "scp_css_mmap.h" 12 13 #include <fwk_macros.h> 14 15 #include <stdint.h> 16 17 /*! 18 * \brief PE Static Configuration register definitions 19 */ 20 struct static_config_reg { 21 FWK_RW uint32_t STATIC_CONFIG; 22 FWK_RW uint32_t RVBARADDR_LW; 23 FWK_RW uint32_t RVBARADDR_UP; 24 uint32_t RESERVED; 25 }; 26 27 /*! 28 * \brief AP cores clock control register definitions 29 */ 30 struct coreclk_reg { 31 FWK_RW uint32_t DIV; 32 FWK_RW uint32_t CTRL; 33 FWK_RW uint32_t MOD; 34 uint32_t RESERVED; 35 }; 36 /*! 37 * \brief CPU PIK register definitions 38 */ 39 struct pik_cpu_reg { 40 FWK_RW uint32_t CLUSTER_CONFIG; 41 uint8_t RESERVED0[0x100 - 0x4]; 42 struct static_config_reg STATIC_CONFIG[10]; 43 uint8_t RESERVED1[0x900 - 0x1a0]; 44 struct coreclk_reg CORECLK[10]; 45 }; 46 47 #define CLUSTER_PIK_PTR(IDX) ((struct pik_cpu_reg *)SCP_PIK_CLUSTER_BASE(IDX)) 48 49 #endif /* CPU_PIK_H */ 50