1*6add7154SYann Gautier /* 2*6add7154SYann Gautier * Copyright (c) 2018-2024, STMicroelectronics - All Rights Reserved 3*6add7154SYann Gautier * 4*6add7154SYann Gautier * SPDX-License-Identifier: BSD-3-Clause 5*6add7154SYann Gautier */ 6*6add7154SYann Gautier 7*6add7154SYann Gautier #ifndef STM32MP2_PWR_H 8*6add7154SYann Gautier #define STM32MP2_PWR_H 9*6add7154SYann Gautier 10*6add7154SYann Gautier #include <lib/utils_def.h> 11*6add7154SYann Gautier 12*6add7154SYann Gautier #define PWR_CR1 U(0x00) 13*6add7154SYann Gautier #define PWR_CR2 U(0x04) 14*6add7154SYann Gautier #define PWR_CR3 U(0x08) 15*6add7154SYann Gautier #define PWR_CR4 U(0x0C) 16*6add7154SYann Gautier #define PWR_CR5 U(0x10) 17*6add7154SYann Gautier #define PWR_CR6 U(0x14) 18*6add7154SYann Gautier #define PWR_CR7 U(0x18) 19*6add7154SYann Gautier #define PWR_CR8 U(0x1C) 20*6add7154SYann Gautier #define PWR_CR9 U(0x20) 21*6add7154SYann Gautier #define PWR_CR10 U(0x24) 22*6add7154SYann Gautier #define PWR_CR11 U(0x28) 23*6add7154SYann Gautier #define PWR_CR12 U(0x2C) 24*6add7154SYann Gautier #define PWR_UCPDR U(0x30) 25*6add7154SYann Gautier #define PWR_BDCR1 U(0x38) 26*6add7154SYann Gautier #define PWR_BDCR2 U(0x3C) 27*6add7154SYann Gautier #define PWR_CPU1CR U(0x40) 28*6add7154SYann Gautier #define PWR_CPU2CR U(0x44) 29*6add7154SYann Gautier #define PWR_CPU3CR U(0x48) 30*6add7154SYann Gautier #define PWR_D1CR U(0x4C) 31*6add7154SYann Gautier #define PWR_D2CR U(0x50) 32*6add7154SYann Gautier #define PWR_D3CR U(0x54) 33*6add7154SYann Gautier #define PWR_WKUPCR1 U(0x60) 34*6add7154SYann Gautier #define PWR_WKUPCR2 U(0x64) 35*6add7154SYann Gautier #define PWR_WKUPCR3 U(0x68) 36*6add7154SYann Gautier #define PWR_WKUPCR4 U(0x6C) 37*6add7154SYann Gautier #define PWR_WKUPCR5 U(0x70) 38*6add7154SYann Gautier #define PWR_WKUPCR6 U(0x74) 39*6add7154SYann Gautier #define PWR_D3WKUPENR U(0x98) 40*6add7154SYann Gautier #define PWR_RSECCFGR U(0x100) 41*6add7154SYann Gautier #define PWR_RPRIVCFGR U(0x104) 42*6add7154SYann Gautier #define PWR_R0CIDCFGR U(0x108) 43*6add7154SYann Gautier #define PWR_R1CIDCFGR U(0x10C) 44*6add7154SYann Gautier #define PWR_R2CIDCFGR U(0x110) 45*6add7154SYann Gautier #define PWR_R3CIDCFGR U(0x114) 46*6add7154SYann Gautier #define PWR_R4CIDCFGR U(0x118) 47*6add7154SYann Gautier #define PWR_R5CIDCFGR U(0x11C) 48*6add7154SYann Gautier #define PWR_R6CIDCFGR U(0x120) 49*6add7154SYann Gautier #define PWR_WIOSECCFGR U(0x180) 50*6add7154SYann Gautier #define PWR_WIOPRIVCFGR U(0x184) 51*6add7154SYann Gautier #define PWR_WIO1CIDCFGR U(0x188) 52*6add7154SYann Gautier #define PWR_WIO1SEMCR U(0x18C) 53*6add7154SYann Gautier #define PWR_WIO2CIDCFGR U(0x190) 54*6add7154SYann Gautier #define PWR_WIO2SEMCR U(0x194) 55*6add7154SYann Gautier #define PWR_WIO3CIDCFGR U(0x198) 56*6add7154SYann Gautier #define PWR_WIO3SEMCR U(0x19C) 57*6add7154SYann Gautier #define PWR_WIO4CIDCFGR U(0x1A0) 58*6add7154SYann Gautier #define PWR_WIO4SEMCR U(0x1A4) 59*6add7154SYann Gautier #define PWR_WIO5CIDCFGR U(0x1A8) 60*6add7154SYann Gautier #define PWR_WIO5SEMCR U(0x1AC) 61*6add7154SYann Gautier #define PWR_WIO6CIDCFGR U(0x1B0) 62*6add7154SYann Gautier #define PWR_WIO6SEMCR U(0x1B4) 63*6add7154SYann Gautier #define PWR_CPU1D1SR U(0x200) 64*6add7154SYann Gautier #define PWR_CPU2D2SR U(0x204) 65*6add7154SYann Gautier #define PWR_CPU3D3SR U(0x208) 66*6add7154SYann Gautier #define PWR_DBGR U(0x308) 67*6add7154SYann Gautier #define PWR_VERR U(0x3F4) 68*6add7154SYann Gautier #define PWR_IPIDR U(0x3F8) 69*6add7154SYann Gautier #define PWR_SIDR U(0x3FC) 70*6add7154SYann Gautier 71*6add7154SYann Gautier /* PWR_CR1 register fields */ 72*6add7154SYann Gautier #define PWR_CR1_VDDIO3VMEN BIT_32(0) 73*6add7154SYann Gautier #define PWR_CR1_VDDIO4VMEN BIT_32(1) 74*6add7154SYann Gautier #define PWR_CR1_USB33VMEN BIT_32(2) 75*6add7154SYann Gautier #define PWR_CR1_UCPDVMEN BIT_32(3) 76*6add7154SYann Gautier #define PWR_CR1_AVMEN BIT_32(4) 77*6add7154SYann Gautier #define PWR_CR1_VDDIO3SV BIT_32(8) 78*6add7154SYann Gautier #define PWR_CR1_VDDIO4SV BIT_32(9) 79*6add7154SYann Gautier #define PWR_CR1_USB33SV BIT_32(10) 80*6add7154SYann Gautier #define PWR_CR1_UCPDSV BIT_32(11) 81*6add7154SYann Gautier #define PWR_CR1_ASV BIT_32(12) 82*6add7154SYann Gautier #define PWR_CR1_VDDIO3RDY BIT_32(16) 83*6add7154SYann Gautier #define PWR_CR1_VDDIO4RDY BIT_32(17) 84*6add7154SYann Gautier #define PWR_CR1_USB33RDY BIT_32(18) 85*6add7154SYann Gautier #define PWR_CR1_UCPDRDY BIT_32(19) 86*6add7154SYann Gautier #define PWR_CR1_ARDY BIT_32(20) 87*6add7154SYann Gautier #define PWR_CR1_VDDIOVRSEL BIT_32(24) 88*6add7154SYann Gautier #define PWR_CR1_VDDIO3VRSEL BIT_32(25) 89*6add7154SYann Gautier #define PWR_CR1_VDDIO4VRSEL BIT_32(26) 90*6add7154SYann Gautier #define PWR_CR1_GPVMO BIT_32(31) 91*6add7154SYann Gautier 92*6add7154SYann Gautier /* PWR_CR2 register fields */ 93*6add7154SYann Gautier #define PWR_CR2_MONEN BIT_32(0) 94*6add7154SYann Gautier #define PWR_CR2_VBATL BIT_32(8) 95*6add7154SYann Gautier #define PWR_CR2_VBATH BIT_32(9) 96*6add7154SYann Gautier #define PWR_CR2_TEMPL BIT_32(10) 97*6add7154SYann Gautier #define PWR_CR2_TEMPH BIT_32(11) 98*6add7154SYann Gautier 99*6add7154SYann Gautier /* PWR_CR3 register fields */ 100*6add7154SYann Gautier #define PWR_CR3_PVDEN BIT_32(0) 101*6add7154SYann Gautier #define PWR_CR3_PVDO BIT_32(8) 102*6add7154SYann Gautier 103*6add7154SYann Gautier /* PWR_CR5 register fields */ 104*6add7154SYann Gautier #define PWR_CR5_VCOREMONEN BIT_32(0) 105*6add7154SYann Gautier #define PWR_CR5_VCOREL BIT_32(8) 106*6add7154SYann Gautier #define PWR_CR5_VCOREH BIT_32(9) 107*6add7154SYann Gautier 108*6add7154SYann Gautier /* PWR_CR6 register fields */ 109*6add7154SYann Gautier #define PWR_CR6_VCPUMONEN BIT_32(0) 110*6add7154SYann Gautier #define PWR_CR6_VCPULLS BIT_32(4) 111*6add7154SYann Gautier #define PWR_CR6_VCPUL BIT_32(8) 112*6add7154SYann Gautier #define PWR_CR6_VCPUH BIT_32(9) 113*6add7154SYann Gautier 114*6add7154SYann Gautier /* PWR_CR7 register fields */ 115*6add7154SYann Gautier #define PWR_CR7_VDDIO2VMEN BIT_32(0) 116*6add7154SYann Gautier #define PWR_CR7_VDDIO2SV BIT_32(8) 117*6add7154SYann Gautier #define PWR_CR7_VDDIO2RDY BIT_32(16) 118*6add7154SYann Gautier #define PWR_CR7_VDDIO2VRSEL BIT_32(24) 119*6add7154SYann Gautier #define PWR_CR7_VDDIO2VRSTBY BIT_32(25) 120*6add7154SYann Gautier 121*6add7154SYann Gautier /* PWR_CR8 register fields */ 122*6add7154SYann Gautier #define PWR_CR8_VDDIO1VMEN BIT_32(0) 123*6add7154SYann Gautier #define PWR_CR8_VDDIO1SV BIT_32(8) 124*6add7154SYann Gautier #define PWR_CR8_VDDIO1RDY BIT_32(16) 125*6add7154SYann Gautier #define PWR_CR8_VDDIO1VRSEL BIT_32(24) 126*6add7154SYann Gautier #define PWR_CR8_VDDIO1VRSTBY BIT_32(25) 127*6add7154SYann Gautier 128*6add7154SYann Gautier /* PWR_CR9 register fields */ 129*6add7154SYann Gautier #define PWR_CR9_BKPRBSEN BIT_32(0) 130*6add7154SYann Gautier #define PWR_CR9_LPR1BSEN BIT_32(4) 131*6add7154SYann Gautier 132*6add7154SYann Gautier /* PWR_CR10 register fields */ 133*6add7154SYann Gautier #define PWR_CR10_RETRBSEN_MASK GENMASK_32(1, 0) 134*6add7154SYann Gautier #define PWR_CR10_RETRBSEN_SHIFT U(0) 135*6add7154SYann Gautier 136*6add7154SYann Gautier /* PWR_CR11 register fields */ 137*6add7154SYann Gautier #define PWR_CR11_DDRRETDIS BIT_32(0) 138*6add7154SYann Gautier 139*6add7154SYann Gautier /* PWR_CR12 register fields */ 140*6add7154SYann Gautier #define PWR_CR12_GPUVMEN BIT_32(0) 141*6add7154SYann Gautier #define PWR_CR12_GPULVTEN BIT_32(1) 142*6add7154SYann Gautier #define PWR_CR12_GPUSV BIT_32(8) 143*6add7154SYann Gautier #define PWR_CR12_VDDGPURDY BIT_32(16) 144*6add7154SYann Gautier 145*6add7154SYann Gautier /* PWR_UCPDR register fields */ 146*6add7154SYann Gautier #define PWR_UCPDR_UCPD_DBDIS BIT_32(0) 147*6add7154SYann Gautier #define PWR_UCPDR_UCPD_STBY BIT_32(1) 148*6add7154SYann Gautier 149*6add7154SYann Gautier /* PWR_BDCR1 register fields */ 150*6add7154SYann Gautier #define PWR_BDCR1_DBD3P BIT_32(0) 151*6add7154SYann Gautier 152*6add7154SYann Gautier /* PWR_BDCR2 register fields */ 153*6add7154SYann Gautier #define PWR_BDCR2_DBP BIT_32(0) 154*6add7154SYann Gautier 155*6add7154SYann Gautier /* PWR_CPU1CR register fields */ 156*6add7154SYann Gautier #define PWR_CPU1CR_PDDS_D2 BIT_32(0) 157*6add7154SYann Gautier #define PWR_CPU1CR_PDDS_D1 BIT_32(1) 158*6add7154SYann Gautier #define PWR_CPU1CR_VBF BIT_32(4) 159*6add7154SYann Gautier #define PWR_CPU1CR_STOPF BIT_32(5) 160*6add7154SYann Gautier #define PWR_CPU1CR_SBF BIT_32(6) 161*6add7154SYann Gautier #define PWR_CPU1CR_SBF_D1 BIT_32(7) 162*6add7154SYann Gautier #define PWR_CPU1CR_SBF_D3 BIT_32(8) 163*6add7154SYann Gautier #define PWR_CPU1CR_CSSF BIT_32(9) 164*6add7154SYann Gautier #define PWR_CPU1CR_STANDBYWFIL2 BIT_32(15) 165*6add7154SYann Gautier #define PWR_CPU1CR_LPDS_D1 BIT_32(16) 166*6add7154SYann Gautier #define PWR_CPU1CR_LVDS_D1 BIT_32(17) 167*6add7154SYann Gautier 168*6add7154SYann Gautier /* PWR_CPU2CR register fields */ 169*6add7154SYann Gautier #define PWR_CPU2CR_PDDS_D2 BIT_32(0) 170*6add7154SYann Gautier #define PWR_CPU2CR_VBF BIT_32(4) 171*6add7154SYann Gautier #define PWR_CPU2CR_STOPF BIT_32(5) 172*6add7154SYann Gautier #define PWR_CPU2CR_SBF BIT_32(6) 173*6add7154SYann Gautier #define PWR_CPU2CR_SBF_D2 BIT_32(7) 174*6add7154SYann Gautier #define PWR_CPU2CR_SBF_D3 BIT_32(8) 175*6add7154SYann Gautier #define PWR_CPU2CR_CSSF BIT_32(9) 176*6add7154SYann Gautier #define PWR_CPU2CR_DEEPSLEEP BIT_32(15) 177*6add7154SYann Gautier #define PWR_CPU2CR_LPDS_D2 BIT_32(16) 178*6add7154SYann Gautier #define PWR_CPU2CR_LVDS_D2 BIT_32(17) 179*6add7154SYann Gautier 180*6add7154SYann Gautier /* PWR_CPU3CR register fields */ 181*6add7154SYann Gautier #define PWR_CPU3CR_VBF BIT_32(4) 182*6add7154SYann Gautier #define PWR_CPU3CR_SBF_D3 BIT_32(8) 183*6add7154SYann Gautier #define PWR_CPU3CR_CSSF BIT_32(9) 184*6add7154SYann Gautier #define PWR_CPU3CR_DEEPSLEEP BIT_32(15) 185*6add7154SYann Gautier 186*6add7154SYann Gautier /* PWR_D1CR register fields */ 187*6add7154SYann Gautier #define PWR_D1CR_LPCFG_D1 BIT_32(0) 188*6add7154SYann Gautier #define PWR_D1CR_POPL_D1_MASK GENMASK_32(12, 8) 189*6add7154SYann Gautier #define PWR_D1CR_POPL_D1_SHIFT U(8) 190*6add7154SYann Gautier 191*6add7154SYann Gautier /* PWR_D2CR register fields */ 192*6add7154SYann Gautier #define PWR_D2CR_LPCFG_D2 BIT_32(0) 193*6add7154SYann Gautier #define PWR_D2CR_POPL_D2_MASK GENMASK_32(12, 8) 194*6add7154SYann Gautier #define PWR_D2CR_POPL_D2_SHIFT U(8) 195*6add7154SYann Gautier #define PWR_D2CR_LPLVDLY_D2_MASK GENMASK_32(18, 16) 196*6add7154SYann Gautier #define PWR_D2CR_LPLVDLY_D2_SHIFT U(16) 197*6add7154SYann Gautier #define PWR_D2CR_PODH_D2_MASK GENMASK_32(27, 24) 198*6add7154SYann Gautier #define PWR_D2CR_PODH_D2_SHIFT U(24) 199*6add7154SYann Gautier 200*6add7154SYann Gautier /* PWR_D3CR register fields */ 201*6add7154SYann Gautier #define PWR_D3CR_PDDS_D3 BIT_32(0) 202*6add7154SYann Gautier #define PWR_D3CR_D3RDY BIT_32(31) 203*6add7154SYann Gautier 204*6add7154SYann Gautier /* PWR_WKUPCR1 register fields */ 205*6add7154SYann Gautier #define PWR_WKUPCR1_WKUPC BIT_32(0) 206*6add7154SYann Gautier #define PWR_WKUPCR1_WKUPP BIT_32(8) 207*6add7154SYann Gautier #define PWR_WKUPCR1_WKUPPUPD_MASK GENMASK_32(13, 12) 208*6add7154SYann Gautier #define PWR_WKUPCR1_WKUPPUPD_SHIFT U(12) 209*6add7154SYann Gautier #define PWR_WKUPCR1_WKUPENCPU1 BIT_32(16) 210*6add7154SYann Gautier #define PWR_WKUPCR1_WKUPENCPU2 BIT_32(17) 211*6add7154SYann Gautier #define PWR_WKUPCR1_WKUPF BIT_32(31) 212*6add7154SYann Gautier 213*6add7154SYann Gautier /* PWR_WKUPCR2 register fields */ 214*6add7154SYann Gautier #define PWR_WKUPCR2_WKUPC BIT_32(0) 215*6add7154SYann Gautier #define PWR_WKUPCR2_WKUPP BIT_32(8) 216*6add7154SYann Gautier #define PWR_WKUPCR2_WKUPPUPD_MASK GENMASK_32(13, 12) 217*6add7154SYann Gautier #define PWR_WKUPCR2_WKUPPUPD_SHIFT U(12) 218*6add7154SYann Gautier #define PWR_WKUPCR2_WKUPENCPU1 BIT_32(16) 219*6add7154SYann Gautier #define PWR_WKUPCR2_WKUPENCPU2 BIT_32(17) 220*6add7154SYann Gautier #define PWR_WKUPCR2_WKUPF BIT_32(31) 221*6add7154SYann Gautier 222*6add7154SYann Gautier /* PWR_WKUPCR3 register fields */ 223*6add7154SYann Gautier #define PWR_WKUPCR3_WKUPC BIT_32(0) 224*6add7154SYann Gautier #define PWR_WKUPCR3_WKUPP BIT_32(8) 225*6add7154SYann Gautier #define PWR_WKUPCR3_WKUPPUPD_MASK GENMASK_32(13, 12) 226*6add7154SYann Gautier #define PWR_WKUPCR3_WKUPPUPD_SHIFT U(12) 227*6add7154SYann Gautier #define PWR_WKUPCR3_WKUPENCPU1 BIT_32(16) 228*6add7154SYann Gautier #define PWR_WKUPCR3_WKUPENCPU2 BIT_32(17) 229*6add7154SYann Gautier #define PWR_WKUPCR3_WKUPF BIT_32(31) 230*6add7154SYann Gautier 231*6add7154SYann Gautier /* PWR_WKUPCR4 register fields */ 232*6add7154SYann Gautier #define PWR_WKUPCR4_WKUPC BIT_32(0) 233*6add7154SYann Gautier #define PWR_WKUPCR4_WKUPP BIT_32(8) 234*6add7154SYann Gautier #define PWR_WKUPCR4_WKUPPUPD_MASK GENMASK_32(13, 12) 235*6add7154SYann Gautier #define PWR_WKUPCR4_WKUPPUPD_SHIFT U(12) 236*6add7154SYann Gautier #define PWR_WKUPCR4_WKUPENCPU1 BIT_32(16) 237*6add7154SYann Gautier #define PWR_WKUPCR4_WKUPENCPU2 BIT_32(17) 238*6add7154SYann Gautier #define PWR_WKUPCR4_WKUPF BIT_32(31) 239*6add7154SYann Gautier 240*6add7154SYann Gautier /* PWR_WKUPCR5 register fields */ 241*6add7154SYann Gautier #define PWR_WKUPCR5_WKUPC BIT_32(0) 242*6add7154SYann Gautier #define PWR_WKUPCR5_WKUPP BIT_32(8) 243*6add7154SYann Gautier #define PWR_WKUPCR5_WKUPPUPD_MASK GENMASK_32(13, 12) 244*6add7154SYann Gautier #define PWR_WKUPCR5_WKUPPUPD_SHIFT U(12) 245*6add7154SYann Gautier #define PWR_WKUPCR5_WKUPENCPU1 BIT_32(16) 246*6add7154SYann Gautier #define PWR_WKUPCR5_WKUPENCPU2 BIT_32(17) 247*6add7154SYann Gautier #define PWR_WKUPCR5_WKUPF BIT_32(31) 248*6add7154SYann Gautier 249*6add7154SYann Gautier /* PWR_WKUPCR6 register fields */ 250*6add7154SYann Gautier #define PWR_WKUPCR6_WKUPC BIT_32(0) 251*6add7154SYann Gautier #define PWR_WKUPCR6_WKUPP BIT_32(8) 252*6add7154SYann Gautier #define PWR_WKUPCR6_WKUPPUPD_MASK GENMASK_32(13, 12) 253*6add7154SYann Gautier #define PWR_WKUPCR6_WKUPPUPD_SHIFT U(12) 254*6add7154SYann Gautier #define PWR_WKUPCR6_WKUPENCPU1 BIT_32(16) 255*6add7154SYann Gautier #define PWR_WKUPCR6_WKUPENCPU2 BIT_32(17) 256*6add7154SYann Gautier #define PWR_WKUPCR6_WKUPF BIT_32(31) 257*6add7154SYann Gautier 258*6add7154SYann Gautier /* PWR_D3WKUPENR register fields */ 259*6add7154SYann Gautier #define PWR_D3WKUPENR_TAMP_WKUPEN_D3 BIT_32(0) 260*6add7154SYann Gautier 261*6add7154SYann Gautier /* PWR_RSECCFGR register fields */ 262*6add7154SYann Gautier #define PWR_RSECCFGR_RSEC0 BIT_32(0) 263*6add7154SYann Gautier #define PWR_RSECCFGR_RSEC1 BIT_32(1) 264*6add7154SYann Gautier #define PWR_RSECCFGR_RSEC2 BIT_32(2) 265*6add7154SYann Gautier #define PWR_RSECCFGR_RSEC3 BIT_32(3) 266*6add7154SYann Gautier #define PWR_RSECCFGR_RSEC4 BIT_32(4) 267*6add7154SYann Gautier #define PWR_RSECCFGR_RSEC5 BIT_32(5) 268*6add7154SYann Gautier #define PWR_RSECCFGR_RSEC6 BIT_32(6) 269*6add7154SYann Gautier 270*6add7154SYann Gautier /* PWR_RPRIVCFGR register fields */ 271*6add7154SYann Gautier #define PWR_RPRIVCFGR_RPRIV0 BIT_32(0) 272*6add7154SYann Gautier #define PWR_RPRIVCFGR_RPRIV1 BIT_32(1) 273*6add7154SYann Gautier #define PWR_RPRIVCFGR_RPRIV2 BIT_32(2) 274*6add7154SYann Gautier #define PWR_RPRIVCFGR_RPRIV3 BIT_32(3) 275*6add7154SYann Gautier #define PWR_RPRIVCFGR_RPRIV4 BIT_32(4) 276*6add7154SYann Gautier #define PWR_RPRIVCFGR_RPRIV5 BIT_32(5) 277*6add7154SYann Gautier #define PWR_RPRIVCFGR_RPRIV6 BIT_32(6) 278*6add7154SYann Gautier 279*6add7154SYann Gautier /* PWR_R0CIDCFGR register fields */ 280*6add7154SYann Gautier #define PWR_R0CIDCFGR_CFEN BIT_32(0) 281*6add7154SYann Gautier #define PWR_R0CIDCFGR_SCID_MASK GENMASK_32(6, 4) 282*6add7154SYann Gautier #define PWR_R0CIDCFGR_SCID_SHIFT U(4) 283*6add7154SYann Gautier 284*6add7154SYann Gautier /* PWR_R1CIDCFGR register fields */ 285*6add7154SYann Gautier #define PWR_R1CIDCFGR_CFEN BIT_32(0) 286*6add7154SYann Gautier #define PWR_R1CIDCFGR_SCID_MASK GENMASK_32(6, 4) 287*6add7154SYann Gautier #define PWR_R1CIDCFGR_SCID_SHIFT U(4) 288*6add7154SYann Gautier 289*6add7154SYann Gautier /* PWR_R2CIDCFGR register fields */ 290*6add7154SYann Gautier #define PWR_R2CIDCFGR_CFEN BIT_32(0) 291*6add7154SYann Gautier #define PWR_R2CIDCFGR_SCID_MASK GENMASK_32(6, 4) 292*6add7154SYann Gautier #define PWR_R2CIDCFGR_SCID_SHIFT U(4) 293*6add7154SYann Gautier 294*6add7154SYann Gautier /* PWR_R3CIDCFGR register fields */ 295*6add7154SYann Gautier #define PWR_R3CIDCFGR_CFEN BIT_32(0) 296*6add7154SYann Gautier #define PWR_R3CIDCFGR_SCID_MASK GENMASK_32(6, 4) 297*6add7154SYann Gautier #define PWR_R3CIDCFGR_SCID_SHIFT U(4) 298*6add7154SYann Gautier 299*6add7154SYann Gautier /* PWR_R4CIDCFGR register fields */ 300*6add7154SYann Gautier #define PWR_R4CIDCFGR_CFEN BIT_32(0) 301*6add7154SYann Gautier #define PWR_R4CIDCFGR_SCID_MASK GENMASK_32(6, 4) 302*6add7154SYann Gautier #define PWR_R4CIDCFGR_SCID_SHIFT U(4) 303*6add7154SYann Gautier 304*6add7154SYann Gautier /* PWR_R5CIDCFGR register fields */ 305*6add7154SYann Gautier #define PWR_R5CIDCFGR_CFEN BIT_32(0) 306*6add7154SYann Gautier #define PWR_R5CIDCFGR_SCID_MASK GENMASK_32(6, 4) 307*6add7154SYann Gautier #define PWR_R5CIDCFGR_SCID_SHIFT U(4) 308*6add7154SYann Gautier 309*6add7154SYann Gautier /* PWR_R6CIDCFGR register fields */ 310*6add7154SYann Gautier #define PWR_R6CIDCFGR_CFEN BIT_32(0) 311*6add7154SYann Gautier #define PWR_R6CIDCFGR_SCID_MASK GENMASK_32(6, 4) 312*6add7154SYann Gautier #define PWR_R6CIDCFGR_SCID_SHIFT U(4) 313*6add7154SYann Gautier 314*6add7154SYann Gautier /* PWR_WIOSECCFGR register fields */ 315*6add7154SYann Gautier #define PWR_WIOSECCFGR_WIOSEC1 BIT_32(0) 316*6add7154SYann Gautier #define PWR_WIOSECCFGR_WIOSEC2 BIT_32(1) 317*6add7154SYann Gautier #define PWR_WIOSECCFGR_WIOSEC3 BIT_32(2) 318*6add7154SYann Gautier #define PWR_WIOSECCFGR_WIOSEC4 BIT_32(3) 319*6add7154SYann Gautier #define PWR_WIOSECCFGR_WIOSEC5 BIT_32(4) 320*6add7154SYann Gautier #define PWR_WIOSECCFGR_WIOSEC6 BIT_32(5) 321*6add7154SYann Gautier 322*6add7154SYann Gautier /* PWR_WIOPRIVCFGR register fields */ 323*6add7154SYann Gautier #define PWR_WIOPRIVCFGR_WIOPRIV1 BIT_32(0) 324*6add7154SYann Gautier #define PWR_WIOPRIVCFGR_WIOPRIV2 BIT_32(1) 325*6add7154SYann Gautier #define PWR_WIOPRIVCFGR_WIOPRIV3 BIT_32(2) 326*6add7154SYann Gautier #define PWR_WIOPRIVCFGR_WIOPRIV4 BIT_32(3) 327*6add7154SYann Gautier #define PWR_WIOPRIVCFGR_WIOPRIV5 BIT_32(4) 328*6add7154SYann Gautier #define PWR_WIOPRIVCFGR_WIOPRIV6 BIT_32(5) 329*6add7154SYann Gautier 330*6add7154SYann Gautier /* PWR_WIO1CIDCFGR register fields */ 331*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_CFEN BIT_32(0) 332*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SEM_EN BIT_32(1) 333*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SCID_MASK GENMASK_32(6, 4) 334*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SCID_SHIFT U(4) 335*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SEMWLC0 BIT_32(16) 336*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SEMWLC1 BIT_32(17) 337*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SEMWLC2 BIT_32(18) 338*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SEMWLC3 BIT_32(19) 339*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SEMWLC4 BIT_32(20) 340*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SEMWLC5 BIT_32(21) 341*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SEMWLC6 BIT_32(22) 342*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SEMWLC7 BIT_32(23) 343*6add7154SYann Gautier 344*6add7154SYann Gautier /* PWR_WIO1SEMCR register fields */ 345*6add7154SYann Gautier #define PWR_WIO1SEMCR_SEM_MUTEX BIT_32(0) 346*6add7154SYann Gautier #define PWR_WIO1SEMCR_SEMCID_MASK GENMASK_32(6, 4) 347*6add7154SYann Gautier #define PWR_WIO1SEMCR_SEMCID_SHIFT U(4) 348*6add7154SYann Gautier 349*6add7154SYann Gautier /* PWR_WIO2CIDCFGR register fields */ 350*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_CFEN BIT_32(0) 351*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SEM_EN BIT_32(1) 352*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SCID_MASK GENMASK_32(6, 4) 353*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SCID_SHIFT U(4) 354*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SEMWLC0 BIT_32(16) 355*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SEMWLC1 BIT_32(17) 356*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SEMWLC2 BIT_32(18) 357*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SEMWLC3 BIT_32(19) 358*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SEMWLC4 BIT_32(20) 359*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SEMWLC5 BIT_32(21) 360*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SEMWLC6 BIT_32(22) 361*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SEMWLC7 BIT_32(23) 362*6add7154SYann Gautier 363*6add7154SYann Gautier /* PWR_WIO2SEMCR register fields */ 364*6add7154SYann Gautier #define PWR_WIO2SEMCR_SEM_MUTEX BIT_32(0) 365*6add7154SYann Gautier #define PWR_WIO2SEMCR_SEMCID_MASK GENMASK_32(6, 4) 366*6add7154SYann Gautier #define PWR_WIO2SEMCR_SEMCID_SHIFT U(4) 367*6add7154SYann Gautier 368*6add7154SYann Gautier /* PWR_WIO3CIDCFGR register fields */ 369*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_CFEN BIT_32(0) 370*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SEM_EN BIT_32(1) 371*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SCID_MASK GENMASK_32(6, 4) 372*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SCID_SHIFT U(4) 373*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SEMWLC0 BIT_32(16) 374*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SEMWLC1 BIT_32(17) 375*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SEMWLC2 BIT_32(18) 376*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SEMWLC3 BIT_32(19) 377*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SEMWLC4 BIT_32(20) 378*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SEMWLC5 BIT_32(21) 379*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SEMWLC6 BIT_32(22) 380*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SEMWLC7 BIT_32(23) 381*6add7154SYann Gautier 382*6add7154SYann Gautier /* PWR_WIO3SEMCR register fields */ 383*6add7154SYann Gautier #define PWR_WIO3SEMCR_SEM_MUTEX BIT_32(0) 384*6add7154SYann Gautier #define PWR_WIO3SEMCR_SEMCID_MASK GENMASK_32(6, 4) 385*6add7154SYann Gautier #define PWR_WIO3SEMCR_SEMCID_SHIFT U(4) 386*6add7154SYann Gautier 387*6add7154SYann Gautier /* PWR_WIO4CIDCFGR register fields */ 388*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_CFEN BIT_32(0) 389*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SEM_EN BIT_32(1) 390*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SCID_MASK GENMASK_32(6, 4) 391*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SCID_SHIFT U(4) 392*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SEMWLC0 BIT_32(16) 393*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SEMWLC1 BIT_32(17) 394*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SEMWLC2 BIT_32(18) 395*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SEMWLC3 BIT_32(19) 396*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SEMWLC4 BIT_32(20) 397*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SEMWLC5 BIT_32(21) 398*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SEMWLC6 BIT_32(22) 399*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SEMWLC7 BIT_32(23) 400*6add7154SYann Gautier 401*6add7154SYann Gautier /* PWR_WIO4SEMCR register fields */ 402*6add7154SYann Gautier #define PWR_WIO4SEMCR_SEM_MUTEX BIT_32(0) 403*6add7154SYann Gautier #define PWR_WIO4SEMCR_SEMCID_MASK GENMASK_32(6, 4) 404*6add7154SYann Gautier #define PWR_WIO4SEMCR_SEMCID_SHIFT U(4) 405*6add7154SYann Gautier 406*6add7154SYann Gautier /* PWR_WIO5CIDCFGR register fields */ 407*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_CFEN BIT_32(0) 408*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SEM_EN BIT_32(1) 409*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SCID_MASK GENMASK_32(6, 4) 410*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SCID_SHIFT U(4) 411*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SEMWLC0 BIT_32(16) 412*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SEMWLC1 BIT_32(17) 413*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SEMWLC2 BIT_32(18) 414*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SEMWLC3 BIT_32(19) 415*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SEMWLC4 BIT_32(20) 416*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SEMWLC5 BIT_32(21) 417*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SEMWLC6 BIT_32(22) 418*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SEMWLC7 BIT_32(23) 419*6add7154SYann Gautier 420*6add7154SYann Gautier /* PWR_WIO5SEMCR register fields */ 421*6add7154SYann Gautier #define PWR_WIO5SEMCR_SEM_MUTEX BIT_32(0) 422*6add7154SYann Gautier #define PWR_WIO5SEMCR_SEMCID_MASK GENMASK_32(6, 4) 423*6add7154SYann Gautier #define PWR_WIO5SEMCR_SEMCID_SHIFT U(4) 424*6add7154SYann Gautier 425*6add7154SYann Gautier /* PWR_WIO6CIDCFGR register fields */ 426*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_CFEN BIT_32(0) 427*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SEM_EN BIT_32(1) 428*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SCID_MASK GENMASK_32(6, 4) 429*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SCID_SHIFT U(4) 430*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SEMWLC0 BIT_32(16) 431*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SEMWLC1 BIT_32(17) 432*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SEMWLC2 BIT_32(18) 433*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SEMWLC3 BIT_32(19) 434*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SEMWLC4 BIT_32(20) 435*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SEMWLC5 BIT_32(21) 436*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SEMWLC6 BIT_32(22) 437*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SEMWLC7 BIT_32(23) 438*6add7154SYann Gautier 439*6add7154SYann Gautier /* PWR_WIO6SEMCR register fields */ 440*6add7154SYann Gautier #define PWR_WIO6SEMCR_SEM_MUTEX BIT_32(0) 441*6add7154SYann Gautier #define PWR_WIO6SEMCR_SEMCID_MASK GENMASK_32(6, 4) 442*6add7154SYann Gautier #define PWR_WIO6SEMCR_SEMCID_SHIFT U(4) 443*6add7154SYann Gautier 444*6add7154SYann Gautier /* PWR_CPU1D1SR register fields */ 445*6add7154SYann Gautier #define PWR_CPU1D1SR_HOLD_BOOT BIT_32(0) 446*6add7154SYann Gautier #define PWR_CPU1D1SR_CSTATE_MASK GENMASK_32(3, 2) 447*6add7154SYann Gautier #define PWR_CPU1D1SR_CSTATE_SHIFT U(2) 448*6add7154SYann Gautier #define PWR_CPU1D1SR_DSTATE_MASK GENMASK_32(10, 8) 449*6add7154SYann Gautier #define PWR_CPU1D1SR_DSTATE_SHIFT U(8) 450*6add7154SYann Gautier 451*6add7154SYann Gautier /* PWR_CPU2D2SR register fields */ 452*6add7154SYann Gautier #define PWR_CPU2D2SR_HOLD_BOOT BIT_32(0) 453*6add7154SYann Gautier #define PWR_CPU2D2SR_WFBEN BIT_32(1) 454*6add7154SYann Gautier #define PWR_CPU2D2SR_CSTATE_MASK GENMASK_32(3, 2) 455*6add7154SYann Gautier #define PWR_CPU2D2SR_CSTATE_SHIFT U(2) 456*6add7154SYann Gautier #define PWR_CPU2D2SR_DSTATE_MASK GENMASK_32(10, 8) 457*6add7154SYann Gautier #define PWR_CPU2D2SR_DSTATE_SHIFT U(8) 458*6add7154SYann Gautier 459*6add7154SYann Gautier /* PWR_CPU3D3SR register fields */ 460*6add7154SYann Gautier #define PWR_CPU3D3SR_CSTATE_MASK GENMASK_32(3, 2) 461*6add7154SYann Gautier #define PWR_CPU3D3SR_CSTATE_SHIFT U(2) 462*6add7154SYann Gautier #define PWR_CPU3D3SR_DSTATE_MASK GENMASK_32(10, 8) 463*6add7154SYann Gautier #define PWR_CPU3D3SR_DSTATE_SHIFT U(8) 464*6add7154SYann Gautier 465*6add7154SYann Gautier /* PWR_DBGR register fields */ 466*6add7154SYann Gautier #define PWR_DBGR_FD3S BIT_32(0) 467*6add7154SYann Gautier #define PWR_DBGR_VDDIOKRETRAM BIT_32(16) 468*6add7154SYann Gautier #define PWR_DBGR_VDDIOKBKPRAM BIT_32(17) 469*6add7154SYann Gautier #define PWR_DBGR_VDDIOKD3 BIT_32(18) 470*6add7154SYann Gautier #define PWR_DBGR_VDDIOKLPSRAM1 BIT_32(19) 471*6add7154SYann Gautier 472*6add7154SYann Gautier /* PWR_VERR register fields */ 473*6add7154SYann Gautier #define PWR_VERR_MINREV_MASK GENMASK_32(3, 0) 474*6add7154SYann Gautier #define PWR_VERR_MINREV_SHIFT U(0) 475*6add7154SYann Gautier #define PWR_VERR_MAJREV_MASK GENMASK_32(7, 4) 476*6add7154SYann Gautier #define PWR_VERR_MAJREV_SHIFT U(4) 477*6add7154SYann Gautier 478*6add7154SYann Gautier #endif /* STM32MP2_PWR_H */ 479