1*83d290c5STom Rini /* SPDX-License-Identifier: GPL-2.0+ */ 2819833afSPeter Tyser /* 3819833afSPeter Tyser * Copyright 2007 (C) 4819833afSPeter Tyser * Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com> 5819833afSPeter Tyser * 6819833afSPeter Tyser * Copyright 2008 (C) 7819833afSPeter Tyser * Mark Jonas <mark.jonas@de.bosch.com> 8819833afSPeter Tyser * 9819833afSPeter Tyser * SH7720 Internal I/O register 10819833afSPeter Tyser */ 11819833afSPeter Tyser 12819833afSPeter Tyser #ifndef _ASM_CPU_SH7720_H_ 13819833afSPeter Tyser #define _ASM_CPU_SH7720_H_ 14819833afSPeter Tyser 15819833afSPeter Tyser #define CACHE_OC_NUM_WAYS 4 16819833afSPeter Tyser #define CCR_CACHE_INIT 0x0000000B 17819833afSPeter Tyser 18819833afSPeter Tyser /* EXP */ 19819833afSPeter Tyser #define TRA 0xFFFFFFD0 20819833afSPeter Tyser #define EXPEVT 0xFFFFFFD4 21819833afSPeter Tyser #define INTEVT 0xFFFFFFD8 22819833afSPeter Tyser 23819833afSPeter Tyser /* MMU */ 24819833afSPeter Tyser #define MMUCR 0xFFFFFFE0 25819833afSPeter Tyser #define PTEH 0xFFFFFFF0 26819833afSPeter Tyser #define PTEL 0xFFFFFFF4 27819833afSPeter Tyser #define TTB 0xFFFFFFF8 28819833afSPeter Tyser 29819833afSPeter Tyser /* CACHE */ 30819833afSPeter Tyser #define CCR 0xFFFFFFEC 31819833afSPeter Tyser 32819833afSPeter Tyser /* INTC */ 33819833afSPeter Tyser #define IPRF 0xA4080000 34819833afSPeter Tyser #define IPRG 0xA4080002 35819833afSPeter Tyser #define IPRH 0xA4080004 36819833afSPeter Tyser #define IPRI 0xA4080006 37819833afSPeter Tyser #define IPRJ 0xA4080008 38819833afSPeter Tyser #define IRR5 0xA4080020 39819833afSPeter Tyser #define IRR6 0xA4080022 40819833afSPeter Tyser #define IRR7 0xA4080024 41819833afSPeter Tyser #define IRR8 0xA4080026 42819833afSPeter Tyser #define IRR9 0xA4080028 43819833afSPeter Tyser #define IRR0 0xA4140004 44819833afSPeter Tyser #define IRR1 0xA4140006 45819833afSPeter Tyser #define IRR2 0xA4140008 46819833afSPeter Tyser #define IRR3 0xA414000A 47819833afSPeter Tyser #define IRR4 0xA414000C 48819833afSPeter Tyser #define ICR1 0xA4140010 49819833afSPeter Tyser #define ICR2 0xA4140012 50819833afSPeter Tyser #define PINTER 0xA4140014 51819833afSPeter Tyser #define IPRC 0xA4140016 52819833afSPeter Tyser #define IPRD 0xA4140018 53819833afSPeter Tyser #define IPRE 0xA414001A 54819833afSPeter Tyser #define ICR0 0xA414FEE0 55819833afSPeter Tyser #define IPRA 0xA414FEE2 56819833afSPeter Tyser #define IPRB 0xA414FEE4 57819833afSPeter Tyser 58819833afSPeter Tyser /* BSC */ 59819833afSPeter Tyser #define BSC_BASE 0xA4FD0000 60819833afSPeter Tyser #define CMNCR (BSC_BASE + 0x00) 61819833afSPeter Tyser #define CS0BCR (BSC_BASE + 0x04) 62819833afSPeter Tyser #define CS2BCR (BSC_BASE + 0x08) 63819833afSPeter Tyser #define CS3BCR (BSC_BASE + 0x0C) 64819833afSPeter Tyser #define CS4BCR (BSC_BASE + 0x10) 65819833afSPeter Tyser #define CS5ABCR (BSC_BASE + 0x14) 66819833afSPeter Tyser #define CS5BBCR (BSC_BASE + 0x18) 67819833afSPeter Tyser #define CS6ABCR (BSC_BASE + 0x1C) 68819833afSPeter Tyser #define CS6BBCR (BSC_BASE + 0x20) 69819833afSPeter Tyser #define CS0WCR (BSC_BASE + 0x24) 70819833afSPeter Tyser #define CS2WCR (BSC_BASE + 0x28) 71819833afSPeter Tyser #define CS3WCR (BSC_BASE + 0x2C) 72819833afSPeter Tyser #define CS4WCR (BSC_BASE + 0x30) 73819833afSPeter Tyser #define CS5AWCR (BSC_BASE + 0x34) 74819833afSPeter Tyser #define CS5BWCR (BSC_BASE + 0x38) 75819833afSPeter Tyser #define CS6AWCR (BSC_BASE + 0x3C) 76819833afSPeter Tyser #define CS6BWCR (BSC_BASE + 0x40) 77819833afSPeter Tyser #define SDCR (BSC_BASE + 0x44) 78819833afSPeter Tyser #define RTCSR (BSC_BASE + 0x48) 79819833afSPeter Tyser #define RTCNR (BSC_BASE + 0x4C) 80819833afSPeter Tyser #define RTCOR (BSC_BASE + 0x50) 81819833afSPeter Tyser #define SDMR2 (BSC_BASE + 0x4000) 82819833afSPeter Tyser #define SDMR3 (BSC_BASE + 0x5000) 83819833afSPeter Tyser 84819833afSPeter Tyser /* DMAC */ 85819833afSPeter Tyser 86819833afSPeter Tyser /* CPG */ 87819833afSPeter Tyser #define UCLKCR 0xA40A0008 88819833afSPeter Tyser #define FRQCR 0xA415FF80 89819833afSPeter Tyser 90819833afSPeter Tyser /* LOW POWER MODE */ 91819833afSPeter Tyser 92819833afSPeter Tyser /* TMU */ 93819833afSPeter Tyser #define TMU_BASE 0xA412FE90 94819833afSPeter Tyser 95819833afSPeter Tyser /* TPU */ 96819833afSPeter Tyser #define TPU_BASE 0xA4480000 97819833afSPeter Tyser #define TPU_TSTR (TPU_BASE + 0x00) 98819833afSPeter Tyser #define TPU_TCR0 (TPU_BASE + 0x10) 99819833afSPeter Tyser #define TPU_TMDR0 (TPU_BASE + 0x14) 100819833afSPeter Tyser #define TPU_TIOR0 (TPU_BASE + 0x18) 101819833afSPeter Tyser #define TPU_TIER0 (TPU_BASE + 0x1C) 102819833afSPeter Tyser #define TPU_TSR0 (TPU_BASE + 0x20) 103819833afSPeter Tyser #define TPU_TCNT0 (TPU_BASE + 0x24) 104819833afSPeter Tyser #define TPU_TGRA0 (TPU_BASE + 0x28) 105819833afSPeter Tyser #define TPU_TGRB0 (TPU_BASE + 0x2C) 106819833afSPeter Tyser #define TPU_TGRC0 (TPU_BASE + 0x30) 107819833afSPeter Tyser #define TPU_TGRD0 (TPU_BASE + 0x34) 108819833afSPeter Tyser #define TPU_TCR1 (TPU_BASE + 0x50) 109819833afSPeter Tyser #define TPU_TMDR1 (TPU_BASE + 0x54) 110819833afSPeter Tyser #define TPU_TIOR1 (TPU_BASE + 0x58) 111819833afSPeter Tyser #define TPU_TIER1 (TPU_BASE + 0x5C) 112819833afSPeter Tyser #define TPU_TSR1 (TPU_BASE + 0x60) 113819833afSPeter Tyser #define TPU_TCNT1 (TPU_BASE + 0x64) 114819833afSPeter Tyser #define TPU_TGRA1 (TPU_BASE + 0x68) 115819833afSPeter Tyser #define TPU_TGRB1 (TPU_BASE + 0x6C) 116819833afSPeter Tyser #define TPU_TGRC1 (TPU_BASE + 0x70) 117819833afSPeter Tyser #define TPU_TGRD1 (TPU_BASE + 0x74) 118819833afSPeter Tyser #define TPU_TCR2 (TPU_BASE + 0x90) 119819833afSPeter Tyser #define TPU_TMDR2 (TPU_BASE + 0x94) 120819833afSPeter Tyser #define TPU_TIOR2 (TPU_BASE + 0x98) 121819833afSPeter Tyser #define TPU_TIER2 (TPU_BASE + 0x9C) 122819833afSPeter Tyser #define TPU_TSR2 (TPU_BASE + 0xB0) 123819833afSPeter Tyser #define TPU_TCNT2 (TPU_BASE + 0xB4) 124819833afSPeter Tyser #define TPU_TGRA2 (TPU_BASE + 0xB8) 125819833afSPeter Tyser #define TPU_TGRB2 (TPU_BASE + 0xBC) 126819833afSPeter Tyser #define TPU_TGRC2 (TPU_BASE + 0xC0) 127819833afSPeter Tyser #define TPU_TGRD2 (TPU_BASE + 0xC4) 128819833afSPeter Tyser #define TPU_TCR3 (TPU_BASE + 0xD0) 129819833afSPeter Tyser #define TPU_TMDR3 (TPU_BASE + 0xD4) 130819833afSPeter Tyser #define TPU_TIOR3 (TPU_BASE + 0xD8) 131819833afSPeter Tyser #define TPU_TIER3 (TPU_BASE + 0xDC) 132819833afSPeter Tyser #define TPU_TSR3 (TPU_BASE + 0xE0) 133819833afSPeter Tyser #define TPU_TCNT3 (TPU_BASE + 0xE4) 134819833afSPeter Tyser #define TPU_TGRA3 (TPU_BASE + 0xE8) 135819833afSPeter Tyser #define TPU_TGRB3 (TPU_BASE + 0xEC) 136819833afSPeter Tyser #define TPU_TGRC3 (TPU_BASE + 0xF0) 137819833afSPeter Tyser #define TPU_TGRD3 (TPU_BASE + 0xF4) 138819833afSPeter Tyser 139819833afSPeter Tyser /* CMT */ 140819833afSPeter Tyser 141819833afSPeter Tyser /* SIOF */ 142819833afSPeter Tyser 143819833afSPeter Tyser /* SCIF */ 144819833afSPeter Tyser #define SCIF0_BASE 0xA4430000 145819833afSPeter Tyser 146819833afSPeter Tyser /* SIM */ 147819833afSPeter Tyser 148819833afSPeter Tyser /* IrDA */ 149819833afSPeter Tyser 150819833afSPeter Tyser /* IIC */ 151819833afSPeter Tyser 152819833afSPeter Tyser /* LCDC */ 153819833afSPeter Tyser 154819833afSPeter Tyser /* USBF */ 155819833afSPeter Tyser 156819833afSPeter Tyser /* MMCIF */ 157819833afSPeter Tyser 158819833afSPeter Tyser /* PFC */ 159819833afSPeter Tyser #define PFC_BASE 0xA4050100 160819833afSPeter Tyser #define PACR (PFC_BASE + 0x00) 161819833afSPeter Tyser #define PBCR (PFC_BASE + 0x02) 162819833afSPeter Tyser #define PCCR (PFC_BASE + 0x04) 163819833afSPeter Tyser #define PDCR (PFC_BASE + 0x06) 164819833afSPeter Tyser #define PECR (PFC_BASE + 0x08) 165819833afSPeter Tyser #define PFCR (PFC_BASE + 0x0A) 166819833afSPeter Tyser #define PGCR (PFC_BASE + 0x0C) 167819833afSPeter Tyser #define PHCR (PFC_BASE + 0x0E) 168819833afSPeter Tyser #define PJCR (PFC_BASE + 0x10) 169819833afSPeter Tyser #define PKCR (PFC_BASE + 0x12) 170819833afSPeter Tyser #define PLCR (PFC_BASE + 0x14) 171819833afSPeter Tyser #define PMCR (PFC_BASE + 0x16) 172819833afSPeter Tyser #define PPCR (PFC_BASE + 0x18) 173819833afSPeter Tyser #define PRCR (PFC_BASE + 0x1A) 174819833afSPeter Tyser #define PSCR (PFC_BASE + 0x1C) 175819833afSPeter Tyser #define PTCR (PFC_BASE + 0x1E) 176819833afSPeter Tyser #define PUCR (PFC_BASE + 0x20) 177819833afSPeter Tyser #define PVCR (PFC_BASE + 0x22) 178819833afSPeter Tyser #define PSELA (PFC_BASE + 0x24) 179819833afSPeter Tyser #define PSELB (PFC_BASE + 0x26) 180819833afSPeter Tyser #define PSELC (PFC_BASE + 0x28) 181819833afSPeter Tyser #define PSELD (PFC_BASE + 0x2A) 182819833afSPeter Tyser 183819833afSPeter Tyser /* I/O Port */ 184819833afSPeter Tyser #define PORT_BASE 0xA4050100 185819833afSPeter Tyser #define PADR (PORT_BASE + 0x40) 186819833afSPeter Tyser #define PBDR (PORT_BASE + 0x42) 187819833afSPeter Tyser #define PCDR (PORT_BASE + 0x44) 188819833afSPeter Tyser #define PDDR (PORT_BASE + 0x46) 189819833afSPeter Tyser #define PEDR (PORT_BASE + 0x48) 190819833afSPeter Tyser #define PFDR (PORT_BASE + 0x4A) 191819833afSPeter Tyser #define PGDR (PORT_BASE + 0x4C) 192819833afSPeter Tyser #define PHDR (PORT_BASE + 0x4E) 193819833afSPeter Tyser #define PJDR (PORT_BASE + 0x50) 194819833afSPeter Tyser #define PKDR (PORT_BASE + 0x52) 195819833afSPeter Tyser #define PLDR (PORT_BASE + 0x54) 196819833afSPeter Tyser #define PMDR (PORT_BASE + 0x56) 197819833afSPeter Tyser #define PPDR (PORT_BASE + 0x58) 198819833afSPeter Tyser #define PRDR (PORT_BASE + 0x5A) 199819833afSPeter Tyser #define PSDR (PORT_BASE + 0x5C) 200819833afSPeter Tyser #define PTDR (PORT_BASE + 0x5E) 201819833afSPeter Tyser #define PUDR (PORT_BASE + 0x60) 202819833afSPeter Tyser #define PVDR (PORT_BASE + 0x62) 203819833afSPeter Tyser 204819833afSPeter Tyser /* H-UDI */ 205819833afSPeter Tyser 206819833afSPeter Tyser #endif /* _ASM_CPU_SH7720_H_ */ 207