1*a775ef25SJacky Bai /* 2*a775ef25SJacky Bai * Copyright 2020 NXP 3*a775ef25SJacky Bai * 4*a775ef25SJacky Bai * SPDX-License-Identifier: BSD-3-Clause 5*a775ef25SJacky Bai */ 6*a775ef25SJacky Bai 7*a775ef25SJacky Bai #ifndef GPC_REG_H 8*a775ef25SJacky Bai #define GPC_REG_H 9*a775ef25SJacky Bai 10*a775ef25SJacky Bai #define LPCR_A53_BSC 0x0 11*a775ef25SJacky Bai #define LPCR_A53_BSC2 0x180 12*a775ef25SJacky Bai #define LPCR_A53_AD 0x4 13*a775ef25SJacky Bai #define LPCR_M4 0x8 14*a775ef25SJacky Bai #define SLPCR 0x14 15*a775ef25SJacky Bai #define MST_CPU_MAPPING 0x18 16*a775ef25SJacky Bai #define MLPCR 0x20 17*a775ef25SJacky Bai #define PGC_ACK_SEL_A53 0x24 18*a775ef25SJacky Bai #define IMR1_CORE0_A53 0x30 19*a775ef25SJacky Bai #define IMR1_CORE1_A53 0x44 20*a775ef25SJacky Bai #define IMR1_CORE2_A53 0x194 21*a775ef25SJacky Bai #define IMR1_CORE3_A53 0x1A8 22*a775ef25SJacky Bai #define IMR1_CORE0_M4 0x58 23*a775ef25SJacky Bai 24*a775ef25SJacky Bai #define SLT0_CFG 0x200 25*a775ef25SJacky Bai #define GPC_PU_PWRHSK 0x190 26*a775ef25SJacky Bai #define PGC_CPU_0_1_MAPPING 0x1CC 27*a775ef25SJacky Bai #define CPU_PGC_UP_TRG 0xD0 28*a775ef25SJacky Bai #define PU_PGC_UP_TRG 0xD8 29*a775ef25SJacky Bai #define CPU_PGC_DN_TRG 0xDC 30*a775ef25SJacky Bai #define PU_PGC_DN_TRG 0xE4 31*a775ef25SJacky Bai #define LPS_CPU1 0xEC 32*a775ef25SJacky Bai 33*a775ef25SJacky Bai #define A53_CORE0_PGC 0x800 34*a775ef25SJacky Bai #define A53_PLAT_PGC 0x900 35*a775ef25SJacky Bai #define PLAT_PGC_PCR 0x900 36*a775ef25SJacky Bai #define NOC_PGC_PCR 0xa40 37*a775ef25SJacky Bai #define PGC_SCU_TIMING 0x910 38*a775ef25SJacky Bai 39*a775ef25SJacky Bai #define MASK_DSM_TRIGGER_A53 BIT(31) 40*a775ef25SJacky Bai #define IRQ_SRC_A53_WUP BIT(30) 41*a775ef25SJacky Bai #define IRQ_SRC_A53_WUP_SHIFT 30 42*a775ef25SJacky Bai #define IRQ_SRC_C1 BIT(29) 43*a775ef25SJacky Bai #define IRQ_SRC_C0 BIT(28) 44*a775ef25SJacky Bai #define IRQ_SRC_C3 BIT(23) 45*a775ef25SJacky Bai #define IRQ_SRC_C2 BIT(22) 46*a775ef25SJacky Bai #define CPU_CLOCK_ON_LPM BIT(14) 47*a775ef25SJacky Bai #define A53_CLK_ON_LPM BIT(14) 48*a775ef25SJacky Bai #define MASTER0_LPM_HSK BIT(6) 49*a775ef25SJacky Bai #define MASTER1_LPM_HSK BIT(7) 50*a775ef25SJacky Bai #define MASTER2_LPM_HSK BIT(8) 51*a775ef25SJacky Bai 52*a775ef25SJacky Bai #define L2PGE BIT(31) 53*a775ef25SJacky Bai #define EN_L2_WFI_PDN BIT(5) 54*a775ef25SJacky Bai #define EN_PLAT_PDN BIT(4) 55*a775ef25SJacky Bai 56*a775ef25SJacky Bai #define SLPCR_EN_DSM BIT(31) 57*a775ef25SJacky Bai #define SLPCR_RBC_EN BIT(30) 58*a775ef25SJacky Bai #define SLPCR_A53_FASTWUP_STOP_MODE BIT(17) 59*a775ef25SJacky Bai #define SLPCR_A53_FASTWUP_WAIT_MODE BIT(16) 60*a775ef25SJacky Bai #define SLPCR_VSTBY BIT(2) 61*a775ef25SJacky Bai #define SLPCR_SBYOS BIT(1) 62*a775ef25SJacky Bai #define SLPCR_BYPASS_PMIC_READY BIT(0) 63*a775ef25SJacky Bai #define SLPCR_RBC_COUNT_SHIFT 24 64*a775ef25SJacky Bai #define SLPCR_STBY_COUNT_SHFT 3 65*a775ef25SJacky Bai 66*a775ef25SJacky Bai #define A53_DUMMY_PDN_ACK BIT(30) 67*a775ef25SJacky Bai #define A53_DUMMY_PUP_ACK BIT(31) 68*a775ef25SJacky Bai #define A53_PLAT_PDN_ACK BIT(8) 69*a775ef25SJacky Bai #define A53_PLAT_PUP_ACK BIT(9) 70*a775ef25SJacky Bai 71*a775ef25SJacky Bai #define NOC_PDN_SLT_CTRL BIT(12) 72*a775ef25SJacky Bai #define NOC_PUP_SLT_CTRL BIT(13) 73*a775ef25SJacky Bai #define NOC_PGC_PDN_ACK BIT(12) 74*a775ef25SJacky Bai #define NOC_PGC_PUP_ACK BIT(13) 75*a775ef25SJacky Bai 76*a775ef25SJacky Bai #define PLAT_PUP_SLT_CTRL BIT(9) 77*a775ef25SJacky Bai #define PLAT_PDN_SLT_CTRL BIT(8) 78*a775ef25SJacky Bai 79*a775ef25SJacky Bai #define SLT_PLAT_PDN BIT(8) 80*a775ef25SJacky Bai #define SLT_PLAT_PUP BIT(9) 81*a775ef25SJacky Bai 82*a775ef25SJacky Bai #define MASTER1_MAPPING BIT(1) 83*a775ef25SJacky Bai #define MASTER2_MAPPING BIT(2) 84*a775ef25SJacky Bai 85*a775ef25SJacky Bai #define TMR_TCD2_SHIFT 0 86*a775ef25SJacky Bai #define TMC_TMR_SHIFT 10 87*a775ef25SJacky Bai #define TRC1_TMC_SHIFT 20 88*a775ef25SJacky Bai 89*a775ef25SJacky Bai #define MIPI_PHY1_PWR_REQ BIT(0) 90*a775ef25SJacky Bai #define PCIE_PHY_PWR_REQ BIT(1) 91*a775ef25SJacky Bai #define USB1_PHY_PWR_REQ BIT(2) 92*a775ef25SJacky Bai #define USB2_PHY_PWR_REQ BIT(3) 93*a775ef25SJacky Bai #define MLMIX_PWR_REQ BIT(4) 94*a775ef25SJacky Bai #define AUDIOMIX_PWR_REQ BIT(5) 95*a775ef25SJacky Bai #define GPU2D_PWR_REQ BIT(6) 96*a775ef25SJacky Bai #define GPUMIX_PWR_REQ BIT(7) 97*a775ef25SJacky Bai #define VPUMIX_PWR_REQ BIT(8) 98*a775ef25SJacky Bai #define GPU3D_PWR_REQ BIT(9) 99*a775ef25SJacky Bai #define MEDIAMIX_PWR_REQ BIT(10) 100*a775ef25SJacky Bai #define VPU_G1_PWR_REQ BIT(11) 101*a775ef25SJacky Bai #define VPU_G2_PWR_REQ BIT(12) 102*a775ef25SJacky Bai #define VPU_H1_PWR_REQ BIT(13) 103*a775ef25SJacky Bai #define HDMIMIX_PWR_REQ BIT(14) 104*a775ef25SJacky Bai #define HDMI_PHY_PWR_REQ BIT(15) 105*a775ef25SJacky Bai #define MIPI_PHY2_PWR_REQ BIT(16) 106*a775ef25SJacky Bai #define HSIOMIX_PWR_REQ BIT(17) 107*a775ef25SJacky Bai #define MEDIAMIX_ISPDWP_PWR_REQ BIT(18) 108*a775ef25SJacky Bai #define DDRMIX_PWR_REQ BIT(19) 109*a775ef25SJacky Bai 110*a775ef25SJacky Bai #define AUDIOMIX_ADB400_SYNC (BIT(4) | BIT(15)) 111*a775ef25SJacky Bai #define MLMIX_ADB400_SYNC (BIT(7) | BIT(8)) 112*a775ef25SJacky Bai #define GPUMIX_ADB400_SYNC BIT(9) 113*a775ef25SJacky Bai #define VPUMIX_ADB400_SYNC BIT(10) 114*a775ef25SJacky Bai #define DDRMIX_ADB400_SYNC BIT(11) 115*a775ef25SJacky Bai #define HSIOMIX_ADB400_SYNC BIT(12) 116*a775ef25SJacky Bai #define HDMIMIX_ADB400_SYNC BIT(13) 117*a775ef25SJacky Bai #define MEDIAMIX_ADB400_SYNC BIT(14) 118*a775ef25SJacky Bai 119*a775ef25SJacky Bai #define AUDIOMIX_ADB400_ACK (BIT(20) | BIT(31)) 120*a775ef25SJacky Bai #define MLMIX_ADB400_ACK (BIT(23) | BIT(24)) 121*a775ef25SJacky Bai #define GPUMIX_ADB400_ACK BIT(25) 122*a775ef25SJacky Bai #define VPUMIX_ADB400_ACK BIT(26) 123*a775ef25SJacky Bai #define DDRMIX_ADB400_ACK BIT(27) 124*a775ef25SJacky Bai #define HSIOMIX_ADB400_ACK BIT(28) 125*a775ef25SJacky Bai #define HDMIMIX_ADB400_ACK BIT(29) 126*a775ef25SJacky Bai #define MEDIAMIX_ADB400_ACK BIT(30) 127*a775ef25SJacky Bai 128*a775ef25SJacky Bai #define MIPI_PHY1_PGC 0xb00 129*a775ef25SJacky Bai #define PCIE_PHY_PGC 0xb40 130*a775ef25SJacky Bai #define USB1_PHY_PGC 0xb80 131*a775ef25SJacky Bai #define USB2_PHY_PGC 0xbc0 132*a775ef25SJacky Bai #define MLMIX_PGC 0xc00 133*a775ef25SJacky Bai #define AUDIOMIX_PGC 0xc40 134*a775ef25SJacky Bai #define GPU2D_PGC 0xc80 135*a775ef25SJacky Bai #define GPUMIX_PGC 0xcc0 136*a775ef25SJacky Bai #define VPUMIX_PGC 0xd00 137*a775ef25SJacky Bai #define GPU3D_PGC 0xd40 138*a775ef25SJacky Bai #define MEDIAMIX_PGC 0xd80 139*a775ef25SJacky Bai #define VPU_G1_PGC 0xdc0 140*a775ef25SJacky Bai #define VPU_G2_PGC 0xe00 141*a775ef25SJacky Bai #define VPU_H1_PGC 0xe40 142*a775ef25SJacky Bai #define HDMIMIX_PGC 0xe80 143*a775ef25SJacky Bai #define HDMI_PHY_PGC 0xec0 144*a775ef25SJacky Bai #define MIPI_PHY2_PGC 0xf00 145*a775ef25SJacky Bai #define HSIOMIX_PGC 0xf40 146*a775ef25SJacky Bai #define MEDIAMIX_ISPDWP_PGC 0xf80 147*a775ef25SJacky Bai #define DDRMIX_PGC 0xfc0 148*a775ef25SJacky Bai 149*a775ef25SJacky Bai #endif /* GPC_REG_H */ 150