1 /******************************************************************************
2 ** File Name: sprd_reg_base.h *
5 ** Copyright: 2010 Spreadtrum, Incoporated. All Rights Reserved. *
8 ******************************************************************************
10 ******************************************************************************
12 ** ------------------------------------------------------------------------- *
13 ** DATE NAME DESCRIPTION *
14 ** 07/08/2010 Tim.Luo Create. *
15 ******************************************************************************/
17 #ifndef _SPRD_REG_BASE_H_
18 #define _SPRD_REG_BASE_H_
24 /**---------------------------------------------------------------------------*
25 ** Constant Variables *
26 **---------------------------------------------------------------------------*/
27 /*----------memory map address----------*/
30 #define CTL_BASE_IRAM 0x00000000
31 #define CTL_BASE_IRAM_END 0x00001FFF
32 #define IRAM_SIZE (CTL_BASE_IRAM_END+1-CTL_BASE_IRAM)
33 #define CTL_BASE_CORE_STM 0x01000000
34 #define CTL_BASE_CORE_SIGHT 0x10000000
35 #define CTL_BASE_MP4 0x12000000
36 //#define CTL_BASE_CPU 0x10600000
37 //#define CTL_BASE_L2_CACHE 0x10800000
38 #define CTL_BASE_DMA 0x20100000
39 #define CTL_BASE_USB 0x20200000
41 #define CTL_BASE_SDIO0 0x20300000
42 #define CTL_BASE_SDIO CTL_BASE_SDIO0
43 #define CTL_BASE_SDIO1 0x20400000
44 #define CTL_BASE_SDIO2 0x20500000
45 #define CTL_BASE_EMMC 0x20600000
46 #define CTL_BASE_DRM 0x20700000
49 #define CTL_BASE_DISP0 0x20800000
50 #define CTL_BASE_DISP CTL_BASE_DISP0
51 #define CTL_BASE_DISP1 0x20900000
52 #define CTL_BASE_GSP 0x20A00000
53 #define CTL_BASE_NFC 0x20B00000
55 #define CTL_BASE_SPIN_LCK 0x20C00000
56 #define CTL_BASE_AHB 0x20D00000
57 #define CTL_BASE_AXI_BUSMON0 0x20E00000
58 #define CTL_BASE_AXI_BUSMON1 0x20F00000
59 #define CTL_BASE_AXI_BUSMON2 0x21000000
61 #define CTL_BASE_DSI 0x21800000
62 #define CTL_BASE_GPS 0x21C00000
64 #define CTL_BASE_LPDDR2_CTL 0x30000000
65 #define CTL_BASE_LPDDR2_PHY_PUBL 0x30010000
66 #define CTL_BASE_PUB_APB 0x30020000
67 #define CTL_BASE_PUB_AXI_BUSMON0 0x30040000
68 #define CTL_BASE_PUB_AXI_BUSMON1 0x30050000
69 #define CTL_BASE_PUB_AXI_BUSMON2 0x30060000
70 #define CTL_BASE_PUB_AXI_BUSMON3 0x30070000
71 #define CTL_BASE_PUB_AXI_BUSMON4 0x30080000
72 #define CTL_BASE_PUB_AXI_BUSMON5 0x30090000
73 #define CTL_BASE_PUB_AXI_BUSMON6 0x300A0000
74 #define CTL_BASE_PUB_AXI_BUSMON7 0x300B0000
75 #define CTL_BASE_PUB_AXI_BUSMON8 0x300C0000
76 #define CTL_BASE_PUB_AXI_BUSMON9 0x300D0000
77 #define CTL_BASE_AUDIO 0x40000000
78 #define CTL_BASE_AUDIO_IF 0x40010000
79 #define CTL_BASE_VBC 0x40020000
80 #define CTL_BASE_ADI 0x40030000
81 #define CTL_BASE_AON_SYS_TMR 0x40040000
82 #define CTL_BASE_AON_TMR 0x40050000
83 #define CTL_BASE_SPIN_LCK_REG 0x40060000
84 #define CTL_BASE_RF_SPI 0x40070000
85 #define CTL_BASE_AON_I2C 0x40080000
86 #define CTL_BASE_INT 0x40200000
87 #define CTL_BASE_AP_TMR0 0x40220000
88 #define CTL_BASE_AP_SYS_TMR 0x40230000
89 #define CTL_BASE_EFUSE 0x40240000
90 #define CTL_BASE_KEYPAD 0x40250000
91 #define CTL_BASE_PWM 0x40260000
92 #define CTL_BASE_FM 0x40270000
93 #define CTL_BASE_GPIO 0x40280000
94 #define CTL_BASE_AP_WDG 0x40290000
95 #define CTL_BASE_PIN_REG 0x402A0000
96 #define CTL_BASE_PMU 0x402B0000
97 #define CTL_BASE_IPI 0x402C0000
98 #define CTL_BASE_AON_CKG 0x402D0000
99 #define CTL_BASE_AON_APB 0x402E0000
100 #define CTL_BASE_GLB_REG CTL_BASE_AON_APB
101 #define CTL_BASE_THM 0x402F0000
102 #define CTL_BASE_AVS_CA7 0x40300000
103 #define CTL_BASE_AVS_TOP 0x40310000
104 #define CTL_BASE_CA7_WDG 0x40320000
105 #define CTL_BASE_AP_TMR1 0x40330000
106 #define CTL_BASE_AP_TMR2 0x40340000
107 #define CTL_BASE_ANA_RTC 0x40038080
108 #define CTL_BASE_EIC 0x40038100
109 #define CTL_BASE_ADC 0x40038300
110 #define CTL_BASE_CA7_TS0 0x40400000
111 #define CTL_BASE_CA7_TS1 0x40410000
113 #define CTL_BASE_SHARE_MEM0 0x50000000 //cp0 w share mem
114 #define CTL_BASE_SHARE_MEM1 0x50001000 //cp1 td share men
115 #define CTL_BASE_SHARE_MEM2 0x50002000 //cp2 trout share mem
116 #define CTL_BASE_SHARE_MEM_ALL 0x50003000 //cp all, can access
117 #define CTL_BASE_SHARE_MEM CTL_BASE_SHARE_MEM0
119 #define CTL_BASE_MALI 0x60000000
120 #define CTL_BASE_GPU_APB 0x60100000
121 #define CTL_BASE_GPU_CKG 0x60200000
122 #define CTL_BASE_DCAM 0x60800000
123 #define CTL_BASE_VSP 0x60900000
124 #define CTL_BASE_ISP 0x60A00000
125 #define CTL_BASE_JPG 0x60B00000
126 #define CTL_BASE_CSI2 0x60C00000
127 #define CTL_BASE_MM_AHB 0x60D00000
128 #define CTL_BASE_MM_CKG 0x60E00000
130 #define CTL_BASE_UART0 0x70000000
131 #define CTL_BASE_UART CTL_BASE_UART0
132 #define CTL_BASE_UART1 0x70100000
133 #define CTL_BASE_UART2 0x70200000
134 #define CTL_BASE_UART3 0x70300000
135 #define CTL_BASE_UART4 0x70400000
137 #define CTL_BASE_DDR CTL_BASE_LPDDR2_CTL
138 #define CTL_BASE_DDR_PHY CTL_BASE_LPDDR2_PHY_PUBL
139 #define CTL_BASE_KPD CTL_BASE_KEYPAD
141 #define CTL_BASE_IIC0 0x70500000
142 #define CTL_BASE_IIC CTL_BASE_IIC0
143 #define CTL_BASE_I2C CTL_BASE_IIC
144 #define CTL_BASE_IIC1 0x70600000
145 #define CTL_BASE_IIC2 0x70700000
146 #define CTL_BASE_IIC3 0x70800000
147 #define CTL_BASE_IIC4 0x70900000
149 #define CTL_BASE_SPI0 0x70A01000
150 #define CTL_BASE_SPI CTL_BASE_SPI0
151 #define CTL_BASE_SPI1 0x70B02000
152 #define CTL_BASE_SPI2 0x70C00000
154 #define CTL_BASE_IIS0 0x70D00000
155 #define CTL_BASE_IIS CTL_BASE_IIS0
156 #define CTL_BASE_I2S CTL_BASE_IIS
157 #define CTL_BASE_IIS1 0x70E00000
158 #define CTL_BASE_IIS2 0x70F00000
159 #define CTL_BASE_IIS3 0x71000000
161 #define CTL_BASE_SIM0 0x71100000
162 #define CTL_BASE_SIM CTL_BASE_SIM0
163 #define CTL_BASE_SIM1 CTL_BASE_SIM0
165 #define CTL_BASE_AP_CKG 0x71200000
166 #define CTL_BASE_APB 0x71300000
168 #define CTL_BASE_INTC0 0x71401000
169 #define CTL_BASE_INTC CTL_BASE_INTC0
170 #define CTL_BASE_INTC1 0x71500000
171 #define CTL_BASE_INTC2 0x71600000
172 #define CTL_BASE_INTC3 0x71700000
174 #define CTL_BASE_EMC0 0x80000000
175 #define CTL_BASE_EMC CTL_BASE_EMC0
176 #define CTL_BASE_EMC1 0x90000000
177 #define CTL_BASE_EMC2 0xA0000000
178 #define CTL_BASE_EMC3 0xB0000000
179 #define CTL_BASE_EMC4 0xC0000000
180 #define CTL_BASE_EMC5 0xD0000000
181 #define CTL_BASE_EMC6 0xE0000000
182 #define CTL_BASE_EMC7 0xF0000000
184 #define CTL_BASE_CP_DSP 0xFFE00000
185 #define CTL_BASE_IROM 0xFFFF0000
187 #define IRAM_BASE (CTL_BASE_IRAM)
188 #define ARM_VBC_BASE CTL_BASE_VBC
189 #define SYSTIMER_BASE CTL_BASE_AP_SYS_TMR //System timer
190 #define TIMER_CTL_BASE CTL_BASE_GLB_TMR //Timer0 (RTC)
191 #define PIN_CTL_BASE CTL_BASE_PIN_REG
192 #define ARM_UART0_BASE CTL_BASE_UART0
193 #define ARM_UART1_BASE CTL_BASE_UART1
194 #define ARM_UART2_BASE CTL_BASE_UART2
195 #define ARM_UART3_BASE CTL_BASE_UART3
196 #define ARM_UART4_BASE CTL_BASE_UART4
197 #define I2C_BASE CTL_BASE_IIC0
198 #define I2C0_BASE CTL_BASE_IIC0
199 #define I2C1_BASE CTL_BASE_IIC1
200 #define I2C2_BASE CTL_BASE_IIC2
201 #define I2C3_BASE CTL_BASE_IIC3
202 #define I2C4_BASE CTL_BASE_IIC4
204 #define SPI_BASE CTL_BASE_SPI0 // SPI0:0x8E002000 SPI1:0x8E003000
205 #define SPI1_BASE CTL_BASE_SPI1
206 #define SPI2_BASE CTL_BASE_SPI2
207 #define IIS_BASE CTL_BASE_IIS0
208 #define IIS1_BASE CTL_BASE_IIS1
209 #define IIS2_BASE CTL_BASE_IIS2
210 #define IIS3_BASE CTL_BASE_IIS3
211 #define SIM0_BASE CTL_BASE_SIM0 //SIM0
212 #define SIM1_BASE CTL_BASE_SIM1 //SIM1
213 #define KPD_BASE CTL_BASE_KEYPAD
214 #define EFUSE_BASE CTL_BASE_EFUSE
215 #define GPIO_BASE CTL_BASE_GPIO
216 #define PWM_BASE CTL_BASE_PWM
217 #define GREG_BASE CTL_BASE_GLB_REG
219 #define WDG_BASE 0x40038040 //CHGR_WDG:0x820003C0 WDG:0x82000040
220 #define RTC_BASE 0x40038080
221 #define TPC_BASE 0x42000280 //Touch Panel Controller
222 #define ARM_WDG_BASE WDG_BASE
223 #define ADC_BASE 0x40038300 //Aux ADC
224 #define GEA_BASE 0x8D000000
225 #define EPT_BASE GEA_BASE //need confirm
227 #define EMC_BASE CTL_BASE_EMC0
228 #define DMAC_BASE CTL_BASE_DMA
229 #define DCAM_BASE CTL_BASE_DCAM
230 #define USB_BASE CTL_BASE_USB
231 #define BUSMON0_BASE CTL_BASE_AXI_BUSMON0
232 #define BUSMON1_BASE CTL_BASE_AXI_BUSMON1
233 #define SDIO0_BASE CTL_BASE_SDIO0
234 #define SDIO1_BASE CTL_BASE_SDIO1
235 #define LCDC_BASE CTL_BASE_DISP
236 #define ROTATION_BASE 0x20800000
237 #define AHB_REG_BASE CTL_BASE_AHB
238 #define AXI_BUSMON0_BASE CTL_BASE_AXI_BUSMON0
239 #define AXI_BUSMON1_BASE CTL_BASE_AXI_BUSMON1
240 #define SPINLOCK_BASE CTL_BASE_SPIN_LCK
241 #define DRMC_BASE CTL_BASE_DRM
242 #define VSPC_BASE CTL_BASE_VSP
244 #define CP_DMAC_BASE 0x30100000
245 #define CP_BUSMON0_BASE 0x30200000
246 #define CP_BUSMON1_BASE 0x30201000
247 #define CP_INTC_BASE 0x30300000
248 #define CP_SYSTMR_BASE 0x30301000
249 #define CP_WDG_BASE 0x30302000
250 #define CP_GPIO_BASE 0x30303000
251 #define CP_GLBREG_BASE 0x30304000
252 #define CP_GRTC_BASE 0x31000000
254 #define SDIO2_BASE CTL_BASE_SDIO2
255 #define EMMC_BASE CTL_BASE_EMMC
257 #define SDIO0_BASE_ADDR CTL_BASE_SDIO0
258 #define SDIO1_BASE_ADDR CTL_BASE_SDIO1
259 #define SDIO2_BASE_ADDR CTL_BASE_SDIO2
260 #define EMMC_BASE_ADDR CTL_BASE_EMMC
262 #define DISPC_BASE CTL_BASE_DISP
263 #define ISPC_BASE CTL_BASE_ISP
264 #define INTC0_BASE CTL_BASE_INTC0
265 #define INTC1_BASE CTL_BASE_INTC1
266 #define INTC2_BASE CTL_BASE_INTC2
267 #define INTC3_BASE CTL_BASE_INTC3
268 #define CP_GLB_REG_BASE CTL_BASE_GLB_REG
269 #define GRTC_BASE CTL_BASE_GLB_TMR
270 #define ADIM_BASE CTL_BASE_ADI
271 #define ADI_BASE CTL_BASE_ADI
273 #define ANA_WTG_BASE 0x40038040
274 #define ANA_RTC_BASE 0x40038080
275 //#define ANA_DOPHIN_BASE 0x42000100
276 #define ANA_PINREG_BASE 0x40038180
277 //#define ANA_TPC_BASE 0x42000280
278 #define ANA_AUXADC_BASE 0x40038300
279 #define ANA_INTC_BASE 0x40038380
280 //#define ANA_CHAGWDG_BASE 0x420003C0
281 //#define ANA_COMSLAVE_BASE 0x42000400
282 #define ANA_GPIO_BASE 0x40038480
283 #define ANA_REG_BASE 0x40038800
284 #define ANA_EIC_BASE CTL_BASE_EIC
286 #define USB_REG_BASE CTL_BASE_USB
287 #define VBC_BASE CTL_BASE_VBC
288 #define AUDIOTOP_BASE CTL_BASE_AUDIO
289 #define AUDIOIF_BASE CTL_BASE_AUDIO_IF
290 #define UART0_BASE CTL_BASE_UART0
291 #define UART1_BASE CTL_BASE_UART1
292 #define SIM0_BASE CTL_BASE_SIM0
293 #define I2C0_BASE CTL_BASE_IIC0
294 #define I2C1_BASE CTL_BASE_IIC1
295 #define I2C2_BASE CTL_BASE_IIC2
296 #define I2C3_BASE CTL_BASE_IIC3
297 #define KPD_BASE CTL_BASE_KEYPAD
298 #define SYSTIMER_BASE CTL_BASE_AP_SYS_TMR
299 #define PWM_BASE CTL_BASE_PWM
300 #define EFUSE_BASE CTL_BASE_EFUSE
301 #define GPIO_BASE CTL_BASE_GPIO
302 #define EIC_BASE CTL_BASE_EIC
303 #define IPI_BASE 0x4A002000
304 #define GLBREG_BASE CTL_BASE_GLB_REG
305 #define PINREG_BASE CTL_BASE_PIN_REG
306 #define UART2_BASE CTL_BASE_UART2
307 #define IIS0_BASE CTL_BASE_IIS0
308 #define SPI0_BASE CTL_BASE_SPI0
309 #define SPI1_BASE CTL_BASE_SPI1
310 #define IIS1_BASE CTL_BASE_IIS1
311 #define UART3_BASE CTL_BASE_UART3
312 #define SPI2_BASE CTL_BASE_SPI2
313 #define SHAREMEM_BASE CTL_BASE_SHARE_MEM
314 #define MIPIDSIC_BASE 0x50100000
315 #define MIPICSIC_BASE 0x50101000
316 #define LPDDR2C_BASE CTL_BASE_LPDDR2_CTL
317 #define LPDDR2P_BASE CTL_BASE_LPDDR2_PHY_PUBL
318 #define NANDC_BASE CTL_BASE_NFC
319 #define DISPC_CTL_BEGIN CTL_BASE_DISP0
321 #define ANA_LDO_PD_CTL0 (ANA_REG_BASE + 0x10)
322 #define ANA_LDO_PD_CTL1 (ANA_REG_BASE + 0x14)
328 #endif //_SPRD_REG_BASE_H_