1*4122151fSVarun Wadekar /* 2*4122151fSVarun Wadekar * Copyright (c) 2016, ARM Limited and Contributors. All rights reserved. 3*4122151fSVarun Wadekar * 4*4122151fSVarun Wadekar * Redistribution and use in source and binary forms, with or without 5*4122151fSVarun Wadekar * modification, are permitted provided that the following conditions are met: 6*4122151fSVarun Wadekar * 7*4122151fSVarun Wadekar * Redistributions of source code must retain the above copyright notice, this 8*4122151fSVarun Wadekar * list of conditions and the following disclaimer. 9*4122151fSVarun Wadekar * 10*4122151fSVarun Wadekar * Redistributions in binary form must reproduce the above copyright notice, 11*4122151fSVarun Wadekar * this list of conditions and the following disclaimer in the documentation 12*4122151fSVarun Wadekar * and/or other materials provided with the distribution. 13*4122151fSVarun Wadekar * 14*4122151fSVarun Wadekar * Neither the name of ARM nor the names of its contributors may be used 15*4122151fSVarun Wadekar * to endorse or promote products derived from this software without specific 16*4122151fSVarun Wadekar * prior written permission. 17*4122151fSVarun Wadekar * 18*4122151fSVarun Wadekar * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 19*4122151fSVarun Wadekar * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20*4122151fSVarun Wadekar * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 21*4122151fSVarun Wadekar * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE 22*4122151fSVarun Wadekar * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 23*4122151fSVarun Wadekar * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 24*4122151fSVarun Wadekar * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 25*4122151fSVarun Wadekar * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 26*4122151fSVarun Wadekar * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 27*4122151fSVarun Wadekar * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 28*4122151fSVarun Wadekar * POSSIBILITY OF SUCH DAMAGE. 29*4122151fSVarun Wadekar */ 30*4122151fSVarun Wadekar 31*4122151fSVarun Wadekar #ifndef __SMMU_H 32*4122151fSVarun Wadekar #define __SMMU_H 33*4122151fSVarun Wadekar 34*4122151fSVarun Wadekar #include <mmio.h> 35*4122151fSVarun Wadekar #include <tegra_def.h> 36*4122151fSVarun Wadekar 37*4122151fSVarun Wadekar /******************************************************************************* 38*4122151fSVarun Wadekar * SMMU Register constants 39*4122151fSVarun Wadekar ******************************************************************************/ 40*4122151fSVarun Wadekar #define SMMU_CBn_SCTLR (0x0) 41*4122151fSVarun Wadekar #define SMMU_CBn_SCTLR_STAGE2 (0x0) 42*4122151fSVarun Wadekar #define SMMU_CBn_ACTLR (0x4) 43*4122151fSVarun Wadekar #define SMMU_CBn_RESUME (0x8) 44*4122151fSVarun Wadekar #define SMMU_CBn_TCR2 (0x10) 45*4122151fSVarun Wadekar #define SMMU_CBn_TTBR0_LO (0x20) 46*4122151fSVarun Wadekar #define SMMU_CBn_TTBR0_HI (0x24) 47*4122151fSVarun Wadekar #define SMMU_CBn_TTBR1_LO (0x28) 48*4122151fSVarun Wadekar #define SMMU_CBn_TTBR1_HI (0x2c) 49*4122151fSVarun Wadekar #define SMMU_CBn_TCR_LPAE (0x30) 50*4122151fSVarun Wadekar #define SMMU_CBn_TCR (0x30) 51*4122151fSVarun Wadekar #define SMMU_CBn_TCR_EAE_1 (0x30) 52*4122151fSVarun Wadekar #define SMMU_CBn_TCR (0x30) 53*4122151fSVarun Wadekar #define SMMU_CBn_CONTEXTIDR (0x34) 54*4122151fSVarun Wadekar #define SMMU_CBn_CONTEXTIDR_EAE_1 (0x34) 55*4122151fSVarun Wadekar #define SMMU_CBn_PRRR_MAIR0 (0x38) 56*4122151fSVarun Wadekar #define SMMU_CBn_NMRR_MAIR1 (0x3c) 57*4122151fSVarun Wadekar #define SMMU_CBn_SMMU_CBn_PAR (0x50) 58*4122151fSVarun Wadekar #define SMMU_CBn_SMMU_CBn_PAR0 (0x50) 59*4122151fSVarun Wadekar #define SMMU_CBn_SMMU_CBn_PAR1 (0x54) 60*4122151fSVarun Wadekar /* SMMU_CBn_SMMU_CBn_PAR0_Fault (0x50) */ 61*4122151fSVarun Wadekar /* SMMU_CBn_SMMU_CBn_PAR0_Fault (0x54) */ 62*4122151fSVarun Wadekar #define SMMU_CBn_FSR (0x58) 63*4122151fSVarun Wadekar #define SMMU_CBn_FSRRESTORE (0x5c) 64*4122151fSVarun Wadekar #define SMMU_CBn_FAR_LO (0x60) 65*4122151fSVarun Wadekar #define SMMU_CBn_FAR_HI (0x64) 66*4122151fSVarun Wadekar #define SMMU_CBn_FSYNR0 (0x68) 67*4122151fSVarun Wadekar #define SMMU_CBn_IPAFAR_LO (0x70) 68*4122151fSVarun Wadekar #define SMMU_CBn_IPAFAR_HI (0x74) 69*4122151fSVarun Wadekar #define SMMU_CBn_TLBIVA_LO (0x600) 70*4122151fSVarun Wadekar #define SMMU_CBn_TLBIVA_HI (0x604) 71*4122151fSVarun Wadekar #define SMMU_CBn_TLBIVA_AARCH_32 (0x600) 72*4122151fSVarun Wadekar #define SMMU_CBn_TLBIVAA_LO (0x608) 73*4122151fSVarun Wadekar #define SMMU_CBn_TLBIVAA_HI (0x60c) 74*4122151fSVarun Wadekar #define SMMU_CBn_TLBIVAA_AARCH_32 (0x608) 75*4122151fSVarun Wadekar #define SMMU_CBn_TLBIASID (0x610) 76*4122151fSVarun Wadekar #define SMMU_CBn_TLBIALL (0x618) 77*4122151fSVarun Wadekar #define SMMU_CBn_TLBIVAL_LO (0x620) 78*4122151fSVarun Wadekar #define SMMU_CBn_TLBIVAL_HI (0x624) 79*4122151fSVarun Wadekar #define SMMU_CBn_TLBIVAL_AARCH_32 (0x618) 80*4122151fSVarun Wadekar #define SMMU_CBn_TLBIVAAL_LO (0x628) 81*4122151fSVarun Wadekar #define SMMU_CBn_TLBIVAAL_HI (0x62c) 82*4122151fSVarun Wadekar #define SMMU_CBn_TLBIVAAL_AARCH_32 (0x628) 83*4122151fSVarun Wadekar #define SMMU_CBn_TLBIIPAS2_LO (0x630) 84*4122151fSVarun Wadekar #define SMMU_CBn_TLBIIPAS2_HI (0x634) 85*4122151fSVarun Wadekar #define SMMU_CBn_TLBIIPAS2L_LO (0x638) 86*4122151fSVarun Wadekar #define SMMU_CBn_TLBIIPAS2L_HI (0x63c) 87*4122151fSVarun Wadekar #define SMMU_CBn_TLBSYNC (0x7f0) 88*4122151fSVarun Wadekar #define SMMU_CBn_TLBSTATUS (0x7f4) 89*4122151fSVarun Wadekar #define SMMU_CBn_ATSR (0x800) 90*4122151fSVarun Wadekar #define SMMU_CBn_PMEVCNTR0 (0xe00) 91*4122151fSVarun Wadekar #define SMMU_CBn_PMEVCNTR1 (0xe04) 92*4122151fSVarun Wadekar #define SMMU_CBn_PMEVCNTR2 (0xe08) 93*4122151fSVarun Wadekar #define SMMU_CBn_PMEVCNTR3 (0xe0c) 94*4122151fSVarun Wadekar #define SMMU_CBn_PMEVTYPER0 (0xe80) 95*4122151fSVarun Wadekar #define SMMU_CBn_PMEVTYPER1 (0xe84) 96*4122151fSVarun Wadekar #define SMMU_CBn_PMEVTYPER2 (0xe88) 97*4122151fSVarun Wadekar #define SMMU_CBn_PMEVTYPER3 (0xe8c) 98*4122151fSVarun Wadekar #define SMMU_CBn_PMCFGR (0xf00) 99*4122151fSVarun Wadekar #define SMMU_CBn_PMCR (0xf04) 100*4122151fSVarun Wadekar #define SMMU_CBn_PMCEID (0xf20) 101*4122151fSVarun Wadekar #define SMMU_CBn_PMCNTENSE (0xf40) 102*4122151fSVarun Wadekar #define SMMU_CBn_PMCNTENCLR (0xf44) 103*4122151fSVarun Wadekar #define SMMU_CBn_PMCNTENSET (0xf48) 104*4122151fSVarun Wadekar #define SMMU_CBn_PMINTENCLR (0xf4c) 105*4122151fSVarun Wadekar #define SMMU_CBn_PMOVSCLR (0xf50) 106*4122151fSVarun Wadekar #define SMMU_CBn_PMOVSSET (0xf58) 107*4122151fSVarun Wadekar #define SMMU_CBn_PMAUTHSTATUS (0xfb8) 108*4122151fSVarun Wadekar #define SMMU_GNSR0_CR0 (0x0) 109*4122151fSVarun Wadekar #define SMMU_GNSR0_CR2 (0x8) 110*4122151fSVarun Wadekar #define SMMU_GNSR0_ACR (0x10) 111*4122151fSVarun Wadekar #define SMMU_GNSR0_IDR0 (0x20) 112*4122151fSVarun Wadekar #define SMMU_GNSR0_IDR1 (0x24) 113*4122151fSVarun Wadekar #define SMMU_GNSR0_IDR2 (0x28) 114*4122151fSVarun Wadekar #define SMMU_GNSR0_IDR7 (0x3c) 115*4122151fSVarun Wadekar #define SMMU_GNSR0_GFAR_LO (0x40) 116*4122151fSVarun Wadekar #define SMMU_GNSR0_GFAR_HI (0x44) 117*4122151fSVarun Wadekar #define SMMU_GNSR0_GFSR (0x48) 118*4122151fSVarun Wadekar #define SMMU_GNSR0_GFSRRESTORE (0x4c) 119*4122151fSVarun Wadekar #define SMMU_GNSR0_GFSYNR0 (0x50) 120*4122151fSVarun Wadekar #define SMMU_GNSR0_GFSYNR1 (0x54) 121*4122151fSVarun Wadekar #define SMMU_GNSR0_GFSYNR1_v2 (0x54) 122*4122151fSVarun Wadekar #define SMMU_GNSR0_TLBIVMID (0x64) 123*4122151fSVarun Wadekar #define SMMU_GNSR0_TLBIALLNSNH (0x68) 124*4122151fSVarun Wadekar #define SMMU_GNSR0_TLBIALLH (0x6c) 125*4122151fSVarun Wadekar #define SMMU_GNSR0_TLBGSYNC (0x70) 126*4122151fSVarun Wadekar #define SMMU_GNSR0_TLBGSTATUS (0x74) 127*4122151fSVarun Wadekar #define SMMU_GNSR0_TLBIVAH_LO (0x78) 128*4122151fSVarun Wadekar #define SMMU_GNSR0_TLBIVALH64_LO (0xb0) 129*4122151fSVarun Wadekar #define SMMU_GNSR0_TLBIVALH64_HI (0xb4) 130*4122151fSVarun Wadekar #define SMMU_GNSR0_TLBIVMIDS1 (0xb8) 131*4122151fSVarun Wadekar #define SMMU_GNSR0_TLBIVAH64_LO (0xc0) 132*4122151fSVarun Wadekar #define SMMU_GNSR0_TLBIVAH64_HI (0xc4) 133*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR0 (0x800) 134*4122151fSVarun Wadekar #define SMMU_GNSR0_SMRn (0x800) 135*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR1 (0x804) 136*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR2 (0x808) 137*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR3 (0x80c) 138*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR4 (0x810) 139*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR5 (0x814) 140*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR6 (0x818) 141*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR7 (0x81c) 142*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR8 (0x820) 143*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR9 (0x824) 144*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR10 (0x828) 145*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR11 (0x82c) 146*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR12 (0x830) 147*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR13 (0x834) 148*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR14 (0x838) 149*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR15 (0x83c) 150*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR16 (0x840) 151*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR17 (0x844) 152*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR18 (0x848) 153*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR19 (0x84c) 154*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR20 (0x850) 155*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR21 (0x854) 156*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR22 (0x858) 157*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR23 (0x85c) 158*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR24 (0x860) 159*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR25 (0x864) 160*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR26 (0x868) 161*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR27 (0x86c) 162*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR28 (0x870) 163*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR29 (0x874) 164*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR30 (0x878) 165*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR31 (0x87c) 166*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR32 (0x880) 167*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR33 (0x884) 168*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR34 (0x888) 169*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR35 (0x88c) 170*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR36 (0x890) 171*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR37 (0x894) 172*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR38 (0x898) 173*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR39 (0x89c) 174*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR40 (0x8a0) 175*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR41 (0x8a4) 176*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR42 (0x8a8) 177*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR43 (0x8ac) 178*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR44 (0x8b0) 179*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR45 (0x8b4) 180*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR46 (0x8b8) 181*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR47 (0x8bc) 182*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR48 (0x8c0) 183*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR49 (0x8c4) 184*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR50 (0x8c8) 185*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR51 (0x8cc) 186*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR52 (0x8d0) 187*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR53 (0x8d4) 188*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR54 (0x8d8) 189*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR55 (0x8dc) 190*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR56 (0x8e0) 191*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR57 (0x8e4) 192*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR58 (0x8e8) 193*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR59 (0x8ec) 194*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR60 (0x8f0) 195*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR61 (0x8f4) 196*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR62 (0x8f8) 197*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR63 (0x8fc) 198*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR64 (0x900) 199*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR65 (0x904) 200*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR66 (0x908) 201*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR67 (0x90c) 202*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR68 (0x910) 203*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR69 (0x914) 204*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR70 (0x918) 205*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR71 (0x91c) 206*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR72 (0x920) 207*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR73 (0x924) 208*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR74 (0x928) 209*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR75 (0x92c) 210*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR76 (0x930) 211*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR77 (0x934) 212*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR78 (0x938) 213*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR79 (0x93c) 214*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR80 (0x940) 215*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR81 (0x944) 216*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR82 (0x948) 217*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR83 (0x94c) 218*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR84 (0x950) 219*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR85 (0x954) 220*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR86 (0x958) 221*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR87 (0x95c) 222*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR88 (0x960) 223*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR89 (0x964) 224*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR90 (0x968) 225*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR91 (0x96c) 226*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR92 (0x970) 227*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR93 (0x974) 228*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR94 (0x978) 229*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR95 (0x97c) 230*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR96 (0x980) 231*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR97 (0x984) 232*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR98 (0x988) 233*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR99 (0x98c) 234*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR100 (0x990) 235*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR101 (0x994) 236*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR102 (0x998) 237*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR103 (0x99c) 238*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR104 (0x9a0) 239*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR105 (0x9a4) 240*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR106 (0x9a8) 241*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR107 (0x9ac) 242*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR108 (0x9b0) 243*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR109 (0x9b4) 244*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR110 (0x9b8) 245*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR111 (0x9bc) 246*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR112 (0x9c0) 247*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR113 (0x9c4) 248*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR114 (0x9c8) 249*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR115 (0x9cc) 250*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR116 (0x9d0) 251*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR117 (0x9d4) 252*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR118 (0x9d8) 253*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR119 (0x9dc) 254*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR120 (0x9e0) 255*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR121 (0x9e4) 256*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR122 (0x9e8) 257*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR123 (0x9ec) 258*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR124 (0x9f0) 259*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR125 (0x9f4) 260*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR126 (0x9f8) 261*4122151fSVarun Wadekar #define SMMU_GNSR0_SMR127 (0x9fc) 262*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR0 (0xc00) 263*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CRn (0xc00) 264*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CRn (0xc00) 265*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR1 (0xc04) 266*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR2 (0xc08) 267*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR3 (0xc0c) 268*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR4 (0xc10) 269*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR5 (0xc14) 270*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR6 (0xc18) 271*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR7 (0xc1c) 272*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR8 (0xc20) 273*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR9 (0xc24) 274*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR10 (0xc28) 275*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR11 (0xc2c) 276*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR12 (0xc30) 277*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR13 (0xc34) 278*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR14 (0xc38) 279*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR15 (0xc3c) 280*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR16 (0xc40) 281*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR17 (0xc44) 282*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR18 (0xc48) 283*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR19 (0xc4c) 284*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR20 (0xc50) 285*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR21 (0xc54) 286*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR22 (0xc58) 287*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR23 (0xc5c) 288*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR24 (0xc60) 289*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR25 (0xc64) 290*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR26 (0xc68) 291*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR27 (0xc6c) 292*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR28 (0xc70) 293*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR29 (0xc74) 294*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR30 (0xc78) 295*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR31 (0xc7c) 296*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR32 (0xc80) 297*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR33 (0xc84) 298*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR34 (0xc88) 299*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR35 (0xc8c) 300*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR36 (0xc90) 301*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR37 (0xc94) 302*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR38 (0xc98) 303*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR39 (0xc9c) 304*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR40 (0xca0) 305*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR41 (0xca4) 306*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR42 (0xca8) 307*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR43 (0xcac) 308*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR44 (0xcb0) 309*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR45 (0xcb4) 310*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR46 (0xcb8) 311*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR47 (0xcbc) 312*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR48 (0xcc0) 313*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR49 (0xcc4) 314*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR50 (0xcc8) 315*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR51 (0xccc) 316*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR52 (0xcd0) 317*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR53 (0xcd4) 318*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR54 (0xcd8) 319*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR55 (0xcdc) 320*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR56 (0xce0) 321*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR57 (0xce4) 322*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR58 (0xce8) 323*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR59 (0xcec) 324*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR60 (0xcf0) 325*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR61 (0xcf4) 326*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR62 (0xcf8) 327*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR63 (0xcfc) 328*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR64 (0xd00) 329*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR65 (0xd04) 330*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR66 (0xd08) 331*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR67 (0xd0c) 332*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR68 (0xd10) 333*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR69 (0xd14) 334*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR70 (0xd18) 335*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR71 (0xd1c) 336*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR72 (0xd20) 337*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR73 (0xd24) 338*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR74 (0xd28) 339*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR75 (0xd2c) 340*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR76 (0xd30) 341*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR77 (0xd34) 342*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR78 (0xd38) 343*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR79 (0xd3c) 344*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR80 (0xd40) 345*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR81 (0xd44) 346*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR82 (0xd48) 347*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR83 (0xd4c) 348*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR84 (0xd50) 349*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR85 (0xd54) 350*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR86 (0xd58) 351*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR87 (0xd5c) 352*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR88 (0xd60) 353*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR89 (0xd64) 354*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR90 (0xd68) 355*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR91 (0xd6c) 356*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR92 (0xd70) 357*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR93 (0xd74) 358*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR94 (0xd78) 359*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR95 (0xd7c) 360*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR96 (0xd80) 361*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR97 (0xd84) 362*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR98 (0xd88) 363*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR99 (0xd8c) 364*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR100 (0xd90) 365*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR101 (0xd94) 366*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR102 (0xd98) 367*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR103 (0xd9c) 368*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR104 (0xda0) 369*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR105 (0xda4) 370*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR106 (0xda8) 371*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR107 (0xdac) 372*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR108 (0xdb0) 373*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR109 (0xdb4) 374*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR110 (0xdb8) 375*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR111 (0xdbc) 376*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR112 (0xdc0) 377*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR113 (0xdc4) 378*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR114 (0xdc8) 379*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR115 (0xdcc) 380*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR116 (0xdd0) 381*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR117 (0xdd4) 382*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR118 (0xdd8) 383*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR119 (0xddc) 384*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR120 (0xde0) 385*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR121 (0xde4) 386*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR122 (0xde8) 387*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR123 (0xdec) 388*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR124 (0xdf0) 389*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR125 (0xdf4) 390*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR126 (0xdf8) 391*4122151fSVarun Wadekar #define SMMU_GNSR0_S2CR127 (0xdfc) 392*4122151fSVarun Wadekar #define SMMU_GNSR0_PIDR0 (0xfe0) 393*4122151fSVarun Wadekar #define SMMU_GNSR0_PIDR1 (0xfe4) 394*4122151fSVarun Wadekar #define SMMU_GNSR0_PIDR2 (0xfe8) 395*4122151fSVarun Wadekar #define SMMU_GNSR0_PIDR3 (0xfec) 396*4122151fSVarun Wadekar #define SMMU_GNSR0_PIDR4 (0xfd0) 397*4122151fSVarun Wadekar #define SMMU_GNSR0_PIDR5 (0xfd4) 398*4122151fSVarun Wadekar #define SMMU_GNSR0_PIDR6 (0xfd8) 399*4122151fSVarun Wadekar #define SMMU_GNSR0_PIDR7 (0xfdc) 400*4122151fSVarun Wadekar #define SMMU_GNSR0_CIDR0 (0xff0) 401*4122151fSVarun Wadekar #define SMMU_GNSR0_CIDR1 (0xff4) 402*4122151fSVarun Wadekar #define SMMU_GNSR0_CIDR2 (0xff8) 403*4122151fSVarun Wadekar #define SMMU_GNSR0_CIDR3 (0xffc) 404*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR0 (0x0) 405*4122151fSVarun Wadekar #define SMMU_GNSR1_CBARn (0x0) 406*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA0 (0x400) 407*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R0 (0x800) 408*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR1 (0x4) 409*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA1 (0x404) 410*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R1 (0x804) 411*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR2 (0x8) 412*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA2 (0x408) 413*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R2 (0x808) 414*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR3 (0xc) 415*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA3 (0x40c) 416*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R3 (0x80c) 417*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR4 (0x10) 418*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA4 (0x410) 419*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R4 (0x810) 420*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR5 (0x14) 421*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA5 (0x414) 422*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R5 (0x814) 423*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR6 (0x18) 424*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA6 (0x418) 425*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R6 (0x818) 426*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR7 (0x1c) 427*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA7 (0x41c) 428*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R7 (0x81c) 429*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR8 (0x20) 430*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA8 (0x420) 431*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R8 (0x820) 432*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR9 (0x24) 433*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA9 (0x424) 434*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R9 (0x824) 435*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR10 (0x28) 436*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA10 (0x428) 437*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R10 (0x828) 438*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR11 (0x2c) 439*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA11 (0x42c) 440*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R11 (0x82c) 441*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR12 (0x30) 442*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA12 (0x430) 443*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R12 (0x830) 444*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR13 (0x34) 445*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA13 (0x434) 446*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R13 (0x834) 447*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR14 (0x38) 448*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA14 (0x438) 449*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R14 (0x838) 450*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR15 (0x3c) 451*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA15 (0x43c) 452*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R15 (0x83c) 453*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR16 (0x40) 454*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA16 (0x440) 455*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R16 (0x840) 456*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR17 (0x44) 457*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA17 (0x444) 458*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R17 (0x844) 459*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR18 (0x48) 460*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA18 (0x448) 461*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R18 (0x848) 462*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR19 (0x4c) 463*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA19 (0x44c) 464*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R19 (0x84c) 465*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR20 (0x50) 466*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA20 (0x450) 467*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R20 (0x850) 468*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR21 (0x54) 469*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA21 (0x454) 470*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R21 (0x854) 471*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR22 (0x58) 472*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA22 (0x458) 473*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R22 (0x858) 474*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR23 (0x5c) 475*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA23 (0x45c) 476*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R23 (0x85c) 477*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR24 (0x60) 478*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA24 (0x460) 479*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R24 (0x860) 480*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR25 (0x64) 481*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA25 (0x464) 482*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R25 (0x864) 483*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR26 (0x68) 484*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA26 (0x468) 485*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R26 (0x868) 486*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR27 (0x6c) 487*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA27 (0x46c) 488*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R27 (0x86c) 489*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR28 (0x70) 490*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA28 (0x470) 491*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R28 (0x870) 492*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR29 (0x74) 493*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA29 (0x474) 494*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R29 (0x874) 495*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR30 (0x78) 496*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA30 (0x478) 497*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R30 (0x878) 498*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR31 (0x7c) 499*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA31 (0x47c) 500*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R31 (0x87c) 501*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR32 (0x80) 502*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA32 (0x480) 503*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R32 (0x880) 504*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR33 (0x84) 505*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA33 (0x484) 506*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R33 (0x884) 507*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR34 (0x88) 508*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA34 (0x488) 509*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R34 (0x888) 510*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR35 (0x8c) 511*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA35 (0x48c) 512*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R35 (0x88c) 513*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR36 (0x90) 514*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA36 (0x490) 515*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R36 (0x890) 516*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR37 (0x94) 517*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA37 (0x494) 518*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R37 (0x894) 519*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR38 (0x98) 520*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA38 (0x498) 521*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R38 (0x898) 522*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR39 (0x9c) 523*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA39 (0x49c) 524*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R39 (0x89c) 525*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR40 (0xa0) 526*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA40 (0x4a0) 527*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R40 (0x8a0) 528*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR41 (0xa4) 529*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA41 (0x4a4) 530*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R41 (0x8a4) 531*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR42 (0xa8) 532*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA42 (0x4a8) 533*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R42 (0x8a8) 534*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR43 (0xac) 535*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA43 (0x4ac) 536*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R43 (0x8ac) 537*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR44 (0xb0) 538*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA44 (0x4b0) 539*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R44 (0x8b0) 540*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR45 (0xb4) 541*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA45 (0x4b4) 542*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R45 (0x8b4) 543*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR46 (0xb8) 544*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA46 (0x4b8) 545*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R46 (0x8b8) 546*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR47 (0xbc) 547*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA47 (0x4bc) 548*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R47 (0x8bc) 549*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR48 (0xc0) 550*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA48 (0x4c0) 551*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R48 (0x8c0) 552*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR49 (0xc4) 553*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA49 (0x4c4) 554*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R49 (0x8c4) 555*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR50 (0xc8) 556*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA50 (0x4c8) 557*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R50 (0x8c8) 558*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR51 (0xcc) 559*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA51 (0x4cc) 560*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R51 (0x8cc) 561*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR52 (0xd0) 562*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA52 (0x4d0) 563*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R52 (0x8d0) 564*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR53 (0xd4) 565*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA53 (0x4d4) 566*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R53 (0x8d4) 567*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR54 (0xd8) 568*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA54 (0x4d8) 569*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R54 (0x8d8) 570*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR55 (0xdc) 571*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA55 (0x4dc) 572*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R55 (0x8dc) 573*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR56 (0xe0) 574*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA56 (0x4e0) 575*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R56 (0x8e0) 576*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR57 (0xe4) 577*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA57 (0x4e4) 578*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R57 (0x8e4) 579*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR58 (0xe8) 580*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA58 (0x4e8) 581*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R58 (0x8e8) 582*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR59 (0xec) 583*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA59 (0x4ec) 584*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R59 (0x8ec) 585*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR60 (0xf0) 586*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA60 (0x4f0) 587*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R60 (0x8f0) 588*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR61 (0xf4) 589*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA61 (0x4f4) 590*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R61 (0x8f4) 591*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR62 (0xf8) 592*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA62 (0x4f8) 593*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R62 (0x8f8) 594*4122151fSVarun Wadekar #define SMMU_GNSR1_CBAR63 (0xfc) 595*4122151fSVarun Wadekar #define SMMU_GNSR1_CBFRSYNRA63 (0x4fc) 596*4122151fSVarun Wadekar #define SMMU_GNSR1_CBA2R63 (0x8fc) 597*4122151fSVarun Wadekar 598*4122151fSVarun Wadekar /******************************************************************************* 599*4122151fSVarun Wadekar * SMMU Global Secure Aux. Configuration Register 600*4122151fSVarun Wadekar ******************************************************************************/ 601*4122151fSVarun Wadekar #define SMMU_GSR0_SECURE_ACR 0x10 602*4122151fSVarun Wadekar #define SMMU_GSR0_PGSIZE_SHIFT 16 603*4122151fSVarun Wadekar #define SMMU_GSR0_PGSIZE_4K (0 << SMMU_GSR0_PGSIZE_SHIFT) 604*4122151fSVarun Wadekar #define SMMU_GSR0_PGSIZE_64K (1 << SMMU_GSR0_PGSIZE_SHIFT) 605*4122151fSVarun Wadekar 606*4122151fSVarun Wadekar /******************************************************************************* 607*4122151fSVarun Wadekar * SMMU configuration constants 608*4122151fSVarun Wadekar ******************************************************************************/ 609*4122151fSVarun Wadekar #define ID1_PAGESIZE (1 << 31) 610*4122151fSVarun Wadekar #define ID1_NUMPAGENDXB_SHIFT 28 611*4122151fSVarun Wadekar #define ID1_NUMPAGENDXB_MASK 7 612*4122151fSVarun Wadekar #define ID1_NUMS2CB_SHIFT 16 613*4122151fSVarun Wadekar #define ID1_NUMS2CB_MASK 0xff 614*4122151fSVarun Wadekar #define ID1_NUMCB_SHIFT 0 615*4122151fSVarun Wadekar #define ID1_NUMCB_MASK 0xff 616*4122151fSVarun Wadekar #define PGSHIFT 16 617*4122151fSVarun Wadekar #define CB_SIZE 0x800000 618*4122151fSVarun Wadekar 619*4122151fSVarun Wadekar static inline uint32_t tegra_smmu_read_32(uint32_t off) 620*4122151fSVarun Wadekar { 621*4122151fSVarun Wadekar return mmio_read_32(TEGRA_SMMU_BASE + off); 622*4122151fSVarun Wadekar } 623*4122151fSVarun Wadekar 624*4122151fSVarun Wadekar static inline void tegra_smmu_write_32(uint32_t off, uint32_t val) 625*4122151fSVarun Wadekar { 626*4122151fSVarun Wadekar mmio_write_32(TEGRA_SMMU_BASE + off, val); 627*4122151fSVarun Wadekar } 628*4122151fSVarun Wadekar 629*4122151fSVarun Wadekar void tegra_smmu_init(void); 630*4122151fSVarun Wadekar void tegra_smmu_save_context(void); 631*4122151fSVarun Wadekar 632*4122151fSVarun Wadekar #endif /*__SMMU_H */ 633