1*91f16700Schasinglulu /* 2*91f16700Schasinglulu * Copyright (c) 2017, ARM Limited and Contributors. All rights reserved. 3*91f16700Schasinglulu * 4*91f16700Schasinglulu * SPDX-License-Identifier: BSD-3-Clause 5*91f16700Schasinglulu */ 6*91f16700Schasinglulu 7*91f16700Schasinglulu #ifndef HI6220_REGS_ACPU_H 8*91f16700Schasinglulu #define HI6220_REGS_ACPU_H 9*91f16700Schasinglulu 10*91f16700Schasinglulu #define ACPU_CTRL_BASE 0xF6504000 11*91f16700Schasinglulu 12*91f16700Schasinglulu #define ACPU_SC_CPU_CTRL (ACPU_CTRL_BASE + 0x000) 13*91f16700Schasinglulu #define ACPU_SC_CPU_STAT (ACPU_CTRL_BASE + 0x008) 14*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_SC_STANDBYWFIL2 (1 << 0) 15*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_SC_STANDBYWFIL2_SHIFT (0) 16*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_SC_STANDBYWFI0 (1 << 1) 17*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_SC_STANDBYWFI0_SHIFT (1) 18*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_SC_STANDBYWFI1 (1 << 2) 19*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_SC_STANDBYWFI1_SHIFT (2) 20*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_SC_STANDBYWFI2 (1 << 3) 21*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_SC_STANDBYWFI2_SHIFT (3) 22*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_SC_STANDBYWFI3 (1 << 4) 23*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_SC_STANDBYWFI3_SHIFT (4) 24*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_A53_1_STANDBYWFIL2 (1 << 8) 25*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_A53_1_STANDBYWFIL2_SHIFT (8) 26*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_A53_1_STANDBYWFI (1 << 9) 27*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_A53_1_STANDBYWFI_SHIFT (9) 28*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_L2FLSHUDONE0 (1 << 16) 29*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_L2FLSHUDONE0_SHIFT (16) 30*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_L2FLSHUDONE1 (1 << 17) 31*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_L2FLSHUDONE1_SHIFT (17) 32*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_CCI400_ACTIVE (1 << 18) 33*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_CCI400_ACTIVE_SHIFT (18) 34*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_CLK_DIV_STATUS_VD (1 << 20) 35*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_CLK_DIV_STATUS_VD_SHIFT (20) 36*91f16700Schasinglulu 37*91f16700Schasinglulu #define ACPU_SC_CLKEN (ACPU_CTRL_BASE + 0x00c) 38*91f16700Schasinglulu #define HPM_L2_1_CLKEN (1 << 9) 39*91f16700Schasinglulu #define G_CPU_1_CLKEN (1 << 8) 40*91f16700Schasinglulu #define HPM_L2_CLKEN (1 << 1) 41*91f16700Schasinglulu #define G_CPU_CLKEN (1 << 0) 42*91f16700Schasinglulu 43*91f16700Schasinglulu #define ACPU_SC_CLKDIS (ACPU_CTRL_BASE + 0x010) 44*91f16700Schasinglulu #define ACPU_SC_CLK_STAT (ACPU_CTRL_BASE + 0x014) 45*91f16700Schasinglulu #define ACPU_SC_RSTEN (ACPU_CTRL_BASE + 0x018) 46*91f16700Schasinglulu #define SRST_PRESET1_RSTEN (1 << 11) 47*91f16700Schasinglulu #define SRST_PRESET0_RSTEN (1 << 10) 48*91f16700Schasinglulu #define SRST_CLUSTER1_RSTEN (1 << 9) 49*91f16700Schasinglulu #define SRST_CLUSTER0_RSTEN (1 << 8) 50*91f16700Schasinglulu #define SRST_L2_HPM_1_RSTEN (1 << 5) 51*91f16700Schasinglulu #define SRST_AARM_L2_1_RSTEN (1 << 4) 52*91f16700Schasinglulu #define SRST_L2_HPM_0_RSTEN (1 << 3) 53*91f16700Schasinglulu #define SRST_AARM_L2_0_RSTEN (1 << 1) 54*91f16700Schasinglulu #define SRST_CLUSTER1 (SRST_PRESET1_RSTEN | \ 55*91f16700Schasinglulu SRST_CLUSTER1_RSTEN | \ 56*91f16700Schasinglulu SRST_L2_HPM_1_RSTEN | \ 57*91f16700Schasinglulu SRST_AARM_L2_1_RSTEN) 58*91f16700Schasinglulu #define SRST_CLUSTER0 (SRST_PRESET0_RSTEN | \ 59*91f16700Schasinglulu SRST_CLUSTER0_RSTEN | \ 60*91f16700Schasinglulu SRST_L2_HPM_0_RSTEN | \ 61*91f16700Schasinglulu SRST_AARM_L2_0_RSTEN) 62*91f16700Schasinglulu 63*91f16700Schasinglulu #define ACPU_SC_RSTDIS (ACPU_CTRL_BASE + 0x01c) 64*91f16700Schasinglulu #define ACPU_SC_RST_STAT (ACPU_CTRL_BASE + 0x020) 65*91f16700Schasinglulu #define ACPU_SC_PDBGUP_MBIST (ACPU_CTRL_BASE + 0x02c) 66*91f16700Schasinglulu #define PDBGUP_CLUSTER1_SHIFT 8 67*91f16700Schasinglulu 68*91f16700Schasinglulu #define ACPU_SC_VD_CTRL (ACPU_CTRL_BASE + 0x054) 69*91f16700Schasinglulu #define ACPU_SC_VD_MASK_PATTERN_CTRL (ACPU_CTRL_BASE + 0x058) 70*91f16700Schasinglulu #define ACPU_SC_VD_MASK_PATTERN_VAL (0xCCB << 12) 71*91f16700Schasinglulu #define ACPU_SC_VD_MASK_PATTERN_MASK ((0x1 << 13) - 1) 72*91f16700Schasinglulu 73*91f16700Schasinglulu #define ACPU_SC_VD_DLY_FIXED_CTRL (ACPU_CTRL_BASE + 0x05c) 74*91f16700Schasinglulu #define ACPU_SC_VD_DLY_TABLE0_CTRL (ACPU_CTRL_BASE + 0x060) 75*91f16700Schasinglulu #define ACPU_SC_VD_DLY_TABLE1_CTRL (ACPU_CTRL_BASE + 0x064) 76*91f16700Schasinglulu #define ACPU_SC_VD_DLY_TABLE2_CTRL (ACPU_CTRL_BASE + 0x068) 77*91f16700Schasinglulu #define ACPU_SC_VD_HPM_CTRL (ACPU_CTRL_BASE + 0x06c) 78*91f16700Schasinglulu #define ACPU_SC_A53_CLUSTER_MTCMOS_EN (ACPU_CTRL_BASE + 0x088) 79*91f16700Schasinglulu #define PW_MTCMOS_EN_A53_1_EN (1 << 1) 80*91f16700Schasinglulu #define PW_MTCMOS_EN_A53_0_EN (1 << 0) 81*91f16700Schasinglulu 82*91f16700Schasinglulu #define ACPU_SC_A53_CLUSTER_MTCMOS_STA (ACPU_CTRL_BASE + 0x090) 83*91f16700Schasinglulu #define ACPU_SC_A53_CLUSTER_ISO_EN (ACPU_CTRL_BASE + 0x098) 84*91f16700Schasinglulu #define PW_ISO_A53_1_EN (1 << 1) 85*91f16700Schasinglulu #define PW_ISO_A53_0_EN (1 << 0) 86*91f16700Schasinglulu 87*91f16700Schasinglulu #define ACPU_SC_A53_CLUSTER_ISO_DIS (ACPU_CTRL_BASE + 0x09c) 88*91f16700Schasinglulu #define ACPU_SC_A53_CLUSTER_ISO_STA (ACPU_CTRL_BASE + 0x0a0) 89*91f16700Schasinglulu #define ACPU_SC_A53_1_MTCMOS_TIMER (ACPU_CTRL_BASE + 0x0b4) 90*91f16700Schasinglulu #define ACPU_SC_A53_0_MTCMOS_TIMER (ACPU_CTRL_BASE + 0x0bc) 91*91f16700Schasinglulu #define ACPU_SC_A53_x_MTCMOS_TIMER(x) ((x) ? ACPU_SC_A53_1_MTCMOS_TIMER : ACPU_SC_A53_0_MTCMOS_TIMER) 92*91f16700Schasinglulu 93*91f16700Schasinglulu #define ACPU_SC_SNOOP_PWD (ACPU_CTRL_BASE + 0xe4) 94*91f16700Schasinglulu #define PD_DETECT_START1 (1 << 16) 95*91f16700Schasinglulu #define PD_DETECT_START0 (1 << 0) 96*91f16700Schasinglulu 97*91f16700Schasinglulu #define ACPU_SC_CPU0_CTRL (ACPU_CTRL_BASE + 0x100) 98*91f16700Schasinglulu #define CPU_CTRL_AARCH64_MODE (1 << 7) 99*91f16700Schasinglulu 100*91f16700Schasinglulu #define ACPU_SC_CPU0_STAT (ACPU_CTRL_BASE + 0x104) 101*91f16700Schasinglulu #define ACPU_SC_CPU0_CLKEN (ACPU_CTRL_BASE + 0x108) 102*91f16700Schasinglulu #define CPU_CLKEN_HPM (1 << 1) 103*91f16700Schasinglulu 104*91f16700Schasinglulu #define ACPU_SC_CPU0_CLK_STAT (ACPU_CTRL_BASE + 0x110) 105*91f16700Schasinglulu 106*91f16700Schasinglulu #define ACPU_SC_CPU0_RSTEN (ACPU_CTRL_BASE + 0x114) 107*91f16700Schasinglulu #define ACPU_SC_CPU0_RSTDIS (ACPU_CTRL_BASE + 0x118) 108*91f16700Schasinglulu #define ACPU_SC_CPU0_MTCMOS_EN (ACPU_CTRL_BASE + 0x120) 109*91f16700Schasinglulu #define CPU_MTCMOS_PW (1 << 0) 110*91f16700Schasinglulu 111*91f16700Schasinglulu #define ACPU_SC_CPU0_PW_ISOEN (ACPU_CTRL_BASE + 0x130) 112*91f16700Schasinglulu #define CPU_PW_ISO (1 << 0) 113*91f16700Schasinglulu 114*91f16700Schasinglulu #define ACPU_SC_CPU0_PW_ISODIS (ACPU_CTRL_BASE + 0x134) 115*91f16700Schasinglulu #define ACPU_SC_CPU0_PW_ISO_STAT (ACPU_CTRL_BASE + 0x138) 116*91f16700Schasinglulu #define ACPU_SC_CPU0_MTCMOS_TIMER_STAT (ACPU_CTRL_BASE + 0x154) 117*91f16700Schasinglulu #define CPU_MTCMOS_TIMER_STA (1 << 0) 118*91f16700Schasinglulu 119*91f16700Schasinglulu #define ACPU_SC_CPU0_RVBARADDR (ACPU_CTRL_BASE + 0x158) 120*91f16700Schasinglulu #define ACPU_SC_CPU1_CTRL (ACPU_CTRL_BASE + 0x200) 121*91f16700Schasinglulu #define ACPU_SC_CPU1_STAT (ACPU_CTRL_BASE + 0x204) 122*91f16700Schasinglulu #define ACPU_SC_CPU1_CLKEN (ACPU_CTRL_BASE + 0x208) 123*91f16700Schasinglulu #define ACPU_SC_CPU1_CLK_STAT (ACPU_CTRL_BASE + 0x210) 124*91f16700Schasinglulu #define ACPU_SC_CPU1_RSTEN (ACPU_CTRL_BASE + 0x214) 125*91f16700Schasinglulu #define ACPU_SC_CPU1_RSTDIS (ACPU_CTRL_BASE + 0x218) 126*91f16700Schasinglulu #define ACPU_SC_CPU1_MTCMOS_EN (ACPU_CTRL_BASE + 0x220) 127*91f16700Schasinglulu #define ACPU_SC_CPU1_PW_ISODIS (ACPU_CTRL_BASE + 0x234) 128*91f16700Schasinglulu #define ACPU_SC_CPU1_PW_ISO_STAT (ACPU_CTRL_BASE + 0x238) 129*91f16700Schasinglulu #define ACPU_SC_CPU1_MTCMOS_TIMER_STAT (ACPU_CTRL_BASE + 0x254) 130*91f16700Schasinglulu #define ACPU_SC_CPU1_RVBARADDR (ACPU_CTRL_BASE + 0x258) 131*91f16700Schasinglulu #define ACPU_SC_CPU2_CTRL (ACPU_CTRL_BASE + 0x300) 132*91f16700Schasinglulu #define ACPU_SC_CPU2_STAT (ACPU_CTRL_BASE + 0x304) 133*91f16700Schasinglulu #define ACPU_SC_CPU2_CLKEN (ACPU_CTRL_BASE + 0x308) 134*91f16700Schasinglulu #define ACPU_SC_CPU2_CLK_STAT (ACPU_CTRL_BASE + 0x310) 135*91f16700Schasinglulu #define ACPU_SC_CPU2_RSTEN (ACPU_CTRL_BASE + 0x314) 136*91f16700Schasinglulu #define ACPU_SC_CPU2_RSTDIS (ACPU_CTRL_BASE + 0x318) 137*91f16700Schasinglulu #define ACPU_SC_CPU2_MTCMOS_EN (ACPU_CTRL_BASE + 0x320) 138*91f16700Schasinglulu #define ACPU_SC_CPU2_PW_ISODIS (ACPU_CTRL_BASE + 0x334) 139*91f16700Schasinglulu #define ACPU_SC_CPU2_PW_ISO_STAT (ACPU_CTRL_BASE + 0x338) 140*91f16700Schasinglulu #define ACPU_SC_CPU2_MTCMOS_TIMER_STAT (ACPU_CTRL_BASE + 0x354) 141*91f16700Schasinglulu #define ACPU_SC_CPU2_RVBARADDR (ACPU_CTRL_BASE + 0x358) 142*91f16700Schasinglulu #define ACPU_SC_CPU3_CTRL (ACPU_CTRL_BASE + 0x400) 143*91f16700Schasinglulu #define ACPU_SC_CPU3_STAT (ACPU_CTRL_BASE + 0x404) 144*91f16700Schasinglulu #define ACPU_SC_CPU3_CLKEN (ACPU_CTRL_BASE + 0x408) 145*91f16700Schasinglulu #define ACPU_SC_CPU3_CLK_STAT (ACPU_CTRL_BASE + 0x410) 146*91f16700Schasinglulu #define ACPU_SC_CPU3_RSTEN (ACPU_CTRL_BASE + 0x414) 147*91f16700Schasinglulu #define ACPU_SC_CPU3_RSTDIS (ACPU_CTRL_BASE + 0x418) 148*91f16700Schasinglulu #define ACPU_SC_CPU3_MTCMOS_EN (ACPU_CTRL_BASE + 0x420) 149*91f16700Schasinglulu #define ACPU_SC_CPU3_PW_ISODIS (ACPU_CTRL_BASE + 0x434) 150*91f16700Schasinglulu #define ACPU_SC_CPU3_PW_ISO_STAT (ACPU_CTRL_BASE + 0x438) 151*91f16700Schasinglulu #define ACPU_SC_CPU3_MTCMOS_TIMER_STAT (ACPU_CTRL_BASE + 0x454) 152*91f16700Schasinglulu #define ACPU_SC_CPU3_RVBARADDR (ACPU_CTRL_BASE + 0x458) 153*91f16700Schasinglulu #define ACPU_SC_CPU4_CTRL (ACPU_CTRL_BASE + 0x500) 154*91f16700Schasinglulu #define ACPU_SC_CPU4_STAT (ACPU_CTRL_BASE + 0x504) 155*91f16700Schasinglulu #define ACPU_SC_CPU4_CLKEN (ACPU_CTRL_BASE + 0x508) 156*91f16700Schasinglulu #define ACPU_SC_CPU4_CLK_STAT (ACPU_CTRL_BASE + 0x510) 157*91f16700Schasinglulu #define ACPU_SC_CPU4_RSTEN (ACPU_CTRL_BASE + 0x514) 158*91f16700Schasinglulu #define ACPU_SC_CPU4_RSTDIS (ACPU_CTRL_BASE + 0x518) 159*91f16700Schasinglulu #define ACPU_SC_CPU4_MTCMOS_EN (ACPU_CTRL_BASE + 0x520) 160*91f16700Schasinglulu #define ACPU_SC_CPU4_PW_ISODIS (ACPU_CTRL_BASE + 0x534) 161*91f16700Schasinglulu #define ACPU_SC_CPU4_PW_ISO_STAT (ACPU_CTRL_BASE + 0x538) 162*91f16700Schasinglulu #define ACPU_SC_CPU4_MTCMOS_TIMER_STAT (ACPU_CTRL_BASE + 0x554) 163*91f16700Schasinglulu #define ACPU_SC_CPU4_RVBARADDR (ACPU_CTRL_BASE + 0x558) 164*91f16700Schasinglulu #define ACPU_SC_CPU5_CTRL (ACPU_CTRL_BASE + 0x600) 165*91f16700Schasinglulu #define ACPU_SC_CPU5_STAT (ACPU_CTRL_BASE + 0x604) 166*91f16700Schasinglulu #define ACPU_SC_CPU5_CLKEN (ACPU_CTRL_BASE + 0x608) 167*91f16700Schasinglulu #define ACPU_SC_CPU5_CLK_STAT (ACPU_CTRL_BASE + 0x610) 168*91f16700Schasinglulu #define ACPU_SC_CPU5_RSTEN (ACPU_CTRL_BASE + 0x614) 169*91f16700Schasinglulu #define ACPU_SC_CPU5_RSTDIS (ACPU_CTRL_BASE + 0x618) 170*91f16700Schasinglulu #define ACPU_SC_CPU5_MTCMOS_EN (ACPU_CTRL_BASE + 0x620) 171*91f16700Schasinglulu #define ACPU_SC_CPU5_PW_ISODIS (ACPU_CTRL_BASE + 0x634) 172*91f16700Schasinglulu #define ACPU_SC_CPU5_PW_ISO_STAT (ACPU_CTRL_BASE + 0x638) 173*91f16700Schasinglulu #define ACPU_SC_CPU5_MTCMOS_TIMER_STAT (ACPU_CTRL_BASE + 0x654) 174*91f16700Schasinglulu #define ACPU_SC_CPU5_RVBARADDR (ACPU_CTRL_BASE + 0x658) 175*91f16700Schasinglulu #define ACPU_SC_CPU6_CTRL (ACPU_CTRL_BASE + 0x700) 176*91f16700Schasinglulu #define ACPU_SC_CPU6_STAT (ACPU_CTRL_BASE + 0x704) 177*91f16700Schasinglulu #define ACPU_SC_CPU6_CLKEN (ACPU_CTRL_BASE + 0x708) 178*91f16700Schasinglulu #define ACPU_SC_CPU6_CLK_STAT (ACPU_CTRL_BASE + 0x710) 179*91f16700Schasinglulu #define ACPU_SC_CPU6_RSTEN (ACPU_CTRL_BASE + 0x714) 180*91f16700Schasinglulu #define ACPU_SC_CPU6_RSTDIS (ACPU_CTRL_BASE + 0x718) 181*91f16700Schasinglulu #define ACPU_SC_CPU6_MTCMOS_EN (ACPU_CTRL_BASE + 0x720) 182*91f16700Schasinglulu #define ACPU_SC_CPU6_PW_ISODIS (ACPU_CTRL_BASE + 0x734) 183*91f16700Schasinglulu #define ACPU_SC_CPU6_PW_ISO_STAT (ACPU_CTRL_BASE + 0x738) 184*91f16700Schasinglulu #define ACPU_SC_CPU6_MTCMOS_TIMER_STAT (ACPU_CTRL_BASE + 0x754) 185*91f16700Schasinglulu #define ACPU_SC_CPU6_RVBARADDR (ACPU_CTRL_BASE + 0x758) 186*91f16700Schasinglulu #define ACPU_SC_CPU7_CTRL (ACPU_CTRL_BASE + 0x800) 187*91f16700Schasinglulu #define ACPU_SC_CPU7_STAT (ACPU_CTRL_BASE + 0x804) 188*91f16700Schasinglulu #define ACPU_SC_CPU7_CLKEN (ACPU_CTRL_BASE + 0x808) 189*91f16700Schasinglulu #define ACPU_SC_CPU7_CLK_STAT (ACPU_CTRL_BASE + 0x810) 190*91f16700Schasinglulu #define ACPU_SC_CPU7_RSTEN (ACPU_CTRL_BASE + 0x814) 191*91f16700Schasinglulu #define ACPU_SC_CPU7_RSTDIS (ACPU_CTRL_BASE + 0x818) 192*91f16700Schasinglulu #define ACPU_SC_CPU7_MTCMOS_EN (ACPU_CTRL_BASE + 0x820) 193*91f16700Schasinglulu #define ACPU_SC_CPU7_PW_ISODIS (ACPU_CTRL_BASE + 0x834) 194*91f16700Schasinglulu #define ACPU_SC_CPU7_PW_ISO_STAT (ACPU_CTRL_BASE + 0x838) 195*91f16700Schasinglulu #define ACPU_SC_CPU7_MTCMOS_TIMER_STAT (ACPU_CTRL_BASE + 0x854) 196*91f16700Schasinglulu #define ACPU_SC_CPU7_RVBARADDR (ACPU_CTRL_BASE + 0x858) 197*91f16700Schasinglulu #define ACPU_SC_CPUx_CTRL(x) ((x < 8) ? (ACPU_SC_CPU0_CTRL + 0x100 * x) : ACPU_SC_CPU0_CTRL) 198*91f16700Schasinglulu #define ACPU_SC_CPUx_STAT(x) ((x < 8) ? (ACPU_SC_CPU0_STAT + 0x100 * x) : ACPU_SC_CPU0_STAT) 199*91f16700Schasinglulu #define ACPU_SC_CPUx_CLKEN(x) ((x < 8) ? (ACPU_SC_CPU0_CLKEN + 0x100 * x) : ACPU_SC_CPU0_CLKEN) 200*91f16700Schasinglulu #define ACPU_SC_CPUx_CLK_STAT(x) ((x < 8) ? (ACPU_SC_CPU0_CLK_STAT + 0x100 * x) : ACPU_SC_CPU0_CLK_STAT) 201*91f16700Schasinglulu #define ACPU_SC_CPUx_RSTEN(x) ((x < 8) ? (ACPU_SC_CPU0_RSTEN + 0x100 * x) : ACPU_SC_CPU0_RSTEN) 202*91f16700Schasinglulu #define ACPU_SC_CPUx_RSTDIS(x) ((x < 8) ? (ACPU_SC_CPU0_RSTDIS + 0x100 * x) : ACPU_SC_CPU0_RSTDIS) 203*91f16700Schasinglulu #define ACPU_SC_CPUx_MTCMOS_EN(x) ((x < 8) ? (ACPU_SC_CPU0_MTCMOS_EN + 0x100 * x) : ACPU_SC_CPU0_MTCMOS_EN) 204*91f16700Schasinglulu #define ACPU_SC_CPUx_PW_ISODIS(x) ((x < 8) ? (ACPU_SC_CPU0_PW_ISODIS + 0x100 * x) : ACPU_SC_CPU0_PW_ISODIS) 205*91f16700Schasinglulu #define ACPU_SC_CPUx_PW_ISO_STAT(x) ((x < 8) ? (ACPU_SC_CPU0_PW_ISO_STAT + 0x100 * x) : ACPU_SC_CPU0_PW_ISO_STAT) 206*91f16700Schasinglulu #define ACPU_SC_CPUx_MTCMOS_TIMER_STAT(x) ((x < 8) ? (ACPU_SC_CPU0_MTCMOS_TIMER_STAT + 0x100 * x) : ACPU_SC_CPU0_MTCMOS_TIMER_STAT) 207*91f16700Schasinglulu #define ACPU_SC_CPUx_RVBARADDR(x) ((x < 8) ? (ACPU_SC_CPU0_RVBARADDR + 0x100 * x) : ACPU_SC_CPU0_RVBARADDR) 208*91f16700Schasinglulu 209*91f16700Schasinglulu #define ACPU_SC_CPU_STAT_CLKDIV_VD_MASK (3 << 20) 210*91f16700Schasinglulu 211*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_TUNE_EN_DIF (1 << 0) 212*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_TUNE_EN_DIF_SHIFT (0) 213*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_TUNE (1 << 1) 214*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_TUNE_SHIFT (1) 215*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_CALIBRATE_EN_DIF (1 << 7) 216*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_CALIBRATE_EN_DIF_SHIFT (7) 217*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_CALIBRATE_EN_INI (1 << 8) 218*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_CALIBRATE_EN_INI_SHIFT (8) 219*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_CLK_DIS_CNT_CLR (1 << 9) 220*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_CLK_DIS_CNT_CLR_SHIFT (9) 221*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_CLK_DIS_CNT_EN (1 << 10) 222*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_CLK_DIS_CNT_EN_SHIFT (10) 223*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_TUNE_EN_INT (1 << 11) 224*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_TUNE_EN_INT_SHIFT (11) 225*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_SHIFT_TABLE0 (1 << 12) 226*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_SHIFT_TABLE0_MASK (0xf << 12) 227*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_SHIFT_TABLE0_SHIFT (12) 228*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_SHIFT_TABLE1 (1 << 16) 229*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_SHIFT_TABLE1_MASK (0xf << 16) 230*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_SHIFT_TABLE1_SHIFT (16) 231*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_SHIFT_TABLE2 (1 << 20) 232*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_SHIFT_TABLE2_MASK (0xf << 20) 233*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_SHIFT_TABLE2_SHIFT (20) 234*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_SHIFT_TABLE3 (1 << 24) 235*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_SHIFT_TABLE3_MASK (0xf << 24) 236*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_SHIFT_TABLE3_SHIFT (24) 237*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_FORCE_CLK_EN (1 << 28) 238*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_FORCE_CLK_EN_SHIFT (28) 239*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_DIV_EN_DIF (1 << 29) 240*91f16700Schasinglulu #define ACPU_SC_VD_CTRL_DIV_EN_DIF_SHIFT (29) 241*91f16700Schasinglulu 242*91f16700Schasinglulu #define ACPU_SC_VD_SHIFT_TABLE_TUNE_VAL \ 243*91f16700Schasinglulu ((0x1 << ACPU_SC_VD_CTRL_SHIFT_TABLE0_SHIFT) | \ 244*91f16700Schasinglulu (0x3 << ACPU_SC_VD_CTRL_SHIFT_TABLE1_SHIFT) | \ 245*91f16700Schasinglulu (0x5 << ACPU_SC_VD_CTRL_SHIFT_TABLE2_SHIFT) | \ 246*91f16700Schasinglulu (0x6 << ACPU_SC_VD_CTRL_SHIFT_TABLE3_SHIFT) | \ 247*91f16700Schasinglulu (0x7 << ACPU_SC_VD_CTRL_TUNE_SHIFT)) 248*91f16700Schasinglulu 249*91f16700Schasinglulu #define ACPU_SC_VD_SHIFT_TABLE_TUNE_MASK \ 250*91f16700Schasinglulu ((0xF << ACPU_SC_VD_CTRL_SHIFT_TABLE0_SHIFT) | \ 251*91f16700Schasinglulu (0xF << ACPU_SC_VD_CTRL_SHIFT_TABLE1_SHIFT) | \ 252*91f16700Schasinglulu (0xF << ACPU_SC_VD_CTRL_SHIFT_TABLE2_SHIFT) | \ 253*91f16700Schasinglulu (0xF << ACPU_SC_VD_CTRL_SHIFT_TABLE3_SHIFT) | \ 254*91f16700Schasinglulu (0x3F << ACPU_SC_VD_CTRL_TUNE_SHIFT)) 255*91f16700Schasinglulu 256*91f16700Schasinglulu #define ACPU_SC_VD_HPM_CTRL_OSC_DIV (1 << 0) 257*91f16700Schasinglulu #define ACPU_SC_VD_HPM_CTRL_OSC_DIV_SHIFT (0) 258*91f16700Schasinglulu #define ACPU_SC_VD_HPM_CTRL_OSC_DIV_MASK (0x000000FF) 259*91f16700Schasinglulu #define ACPU_SC_VD_HPM_CTRL_DLY_EXP (1 << 8) 260*91f16700Schasinglulu #define ACPU_SC_VD_HPM_CTRL_DLY_EXP_SHIFT (8) 261*91f16700Schasinglulu #define ACPU_SC_VD_HPM_CTRL_DLY_EXP_MASK (0x001FFF00) 262*91f16700Schasinglulu 263*91f16700Schasinglulu #define HPM_OSC_DIV_VAL \ 264*91f16700Schasinglulu (0x56 << ACPU_SC_VD_HPM_CTRL_OSC_DIV_SHIFT) 265*91f16700Schasinglulu #define HPM_OSC_DIV_MASK \ 266*91f16700Schasinglulu (ACPU_SC_VD_HPM_CTRL_OSC_DIV_MASK) 267*91f16700Schasinglulu 268*91f16700Schasinglulu #define HPM_DLY_EXP_VAL \ 269*91f16700Schasinglulu (0xC7A << ACPU_SC_VD_HPM_CTRL_DLY_EXP_SHIFT) 270*91f16700Schasinglulu #define HPM_DLY_EXP_MASK \ 271*91f16700Schasinglulu (ACPU_SC_VD_HPM_CTRL_DLY_EXP_MASK) 272*91f16700Schasinglulu 273*91f16700Schasinglulu #define ACPU_SC_VD_EN_ASIC_VAL \ 274*91f16700Schasinglulu ((0x0 << ACPU_SC_VD_CTRL_FORCE_CLK_EN_SHIFT) | \ 275*91f16700Schasinglulu (0x0 << ACPU_SC_VD_CTRL_CLK_DIS_CNT_EN_SHIFT) | \ 276*91f16700Schasinglulu (0x0 << ACPU_SC_VD_CTRL_CALIBRATE_EN_INI_SHIFT) | \ 277*91f16700Schasinglulu (0x0 << ACPU_SC_VD_CTRL_CALIBRATE_EN_DIF_SHIFT) | \ 278*91f16700Schasinglulu (0X0 << ACPU_SC_VD_CTRL_DIV_EN_DIF_SHIFT) | \ 279*91f16700Schasinglulu (0X0 << ACPU_SC_VD_CTRL_TUNE_EN_INT_SHIFT) | \ 280*91f16700Schasinglulu (0x0 << ACPU_SC_VD_CTRL_TUNE_EN_DIF_SHIFT)) 281*91f16700Schasinglulu 282*91f16700Schasinglulu #define ACPU_SC_VD_EN_SFT_VAL \ 283*91f16700Schasinglulu ((0x0 << ACPU_SC_VD_CTRL_FORCE_CLK_EN_SHIFT) | \ 284*91f16700Schasinglulu (0x0 << ACPU_SC_VD_CTRL_CLK_DIS_CNT_EN_SHIFT) | \ 285*91f16700Schasinglulu (0x0 << ACPU_SC_VD_CTRL_CALIBRATE_EN_INI_SHIFT) | \ 286*91f16700Schasinglulu (0x0 << ACPU_SC_VD_CTRL_CALIBRATE_EN_DIF_SHIFT) | \ 287*91f16700Schasinglulu (0x0 << ACPU_SC_VD_CTRL_DIV_EN_DIF_SHIFT) | \ 288*91f16700Schasinglulu (0x0 << ACPU_SC_VD_CTRL_TUNE_EN_INT_SHIFT) | \ 289*91f16700Schasinglulu (0x0 << ACPU_SC_VD_CTRL_TUNE_EN_DIF_SHIFT)) 290*91f16700Schasinglulu 291*91f16700Schasinglulu #define ACPU_SC_VD_EN_MASK \ 292*91f16700Schasinglulu ((0x1 << ACPU_SC_VD_CTRL_FORCE_CLK_EN_SHIFT) | \ 293*91f16700Schasinglulu (0x1 << ACPU_SC_VD_CTRL_CLK_DIS_CNT_EN_SHIFT) | \ 294*91f16700Schasinglulu (0x1 << ACPU_SC_VD_CTRL_CALIBRATE_EN_INI_SHIFT) | \ 295*91f16700Schasinglulu (0x1 << ACPU_SC_VD_CTRL_CALIBRATE_EN_DIF_SHIFT) | \ 296*91f16700Schasinglulu (0x1 << ACPU_SC_VD_CTRL_DIV_EN_DIF_SHIFT) | \ 297*91f16700Schasinglulu (0x1 << ACPU_SC_VD_CTRL_TUNE_EN_INT_SHIFT) | \ 298*91f16700Schasinglulu (0x1 << ACPU_SC_VD_CTRL_TUNE_EN_DIF_SHIFT)) 299*91f16700Schasinglulu 300*91f16700Schasinglulu #endif /* HI6220_REGS_ACPU_H */ 301