blob: 53ead265bd07723c26e505712a8ef62c7f970fd2 [file] [log] [blame]
Nobuhiro Iwamatsu52b96742014-03-27 16:11:17 +09001/*
2 * arch/arm/include/asm/arch-rmobile/rcar-base.h
3 *
4 * Copyright (C) 2013,2014 Renesas Electronics Corporation
5 *
6 * SPDX-License-Identifier: GPL-2.0
7*/
8
9#ifndef __ASM_ARCH_RCAR_BASE_H
10#define __ASM_ARCH_RCAR_BASE_H
11
12/*
Nobuhiro Iwamatsu032d59c2014-11-05 06:50:06 +090013 * R-Car (R8A7790/R8A7791/R8A7793/R8A7794) I/O Addresses
Nobuhiro Iwamatsu52b96742014-03-27 16:11:17 +090014 */
15#define RWDT_BASE 0xE6020000
16#define SWDT_BASE 0xE6030000
17#define LBSC_BASE 0xFEC00200
18#define DBSC3_0_BASE 0xE6790000
19#define DBSC3_1_BASE 0xE67A0000
20#define TMU_BASE 0xE61E0000
21#define GPIO5_BASE 0xE6055000
22#define SH_QSPI_BASE 0xE6B10000
23
Nobuhiro Iwamatsu036de7e2014-04-07 11:19:03 +090024/* SCIF */
25#define SCIF0_BASE 0xE6E60000
26#define SCIF1_BASE 0xE6E68000
27#define SCIF2_BASE 0xE6E58000
28#define SCIF3_BASE 0xE6EA8000
29#define SCIF4_BASE 0xE6EE0000
30#define SCIF5_BASE 0xE6EE8000
Vladimir Barinov4f9fb9a2015-07-20 20:49:49 +030031#define SCIFA0_BASE 0xE6C40000
32#define SCIFA1_BASE 0xE6C50000
33#define SCIFA2_BASE 0xE6C60000
Nobuhiro Iwamatsu036de7e2014-04-07 11:19:03 +090034
Nobuhiro Iwamatsua4c82312014-12-02 16:52:18 +090035/* Module stop status register */
36#define MSTPSR0 0xE6150030
37#define MSTPSR1 0xE6150038
38#define MSTPSR2 0xE6150040
39#define MSTPSR3 0xE6150048
40#define MSTPSR4 0xE615004C
41#define MSTPSR5 0xE615003C
42#define MSTPSR7 0xE61501C4
43#define MSTPSR8 0xE61509A0
44#define MSTPSR9 0xE61509A4
45#define MSTPSR10 0xE61509A8
46#define MSTPSR11 0xE61509AC
47
48/* Realtime module stop control register */
49#define RMSTPCR0 0xE6150110
50#define RMSTPCR1 0xE6150114
51#define RMSTPCR2 0xE6150118
52#define RMSTPCR3 0xE615011C
53#define RMSTPCR4 0xE6150120
54#define RMSTPCR5 0xE6150124
55#define RMSTPCR7 0xE615012C
56#define RMSTPCR8 0xE6150980
57#define RMSTPCR9 0xE6150984
58#define RMSTPCR10 0xE6150988
59#define RMSTPCR11 0xE615098C
60
61/* System module stop control register */
62#define SMSTPCR0 0xE6150130
63#define SMSTPCR1 0xE6150134
64#define SMSTPCR2 0xE6150138
65#define SMSTPCR3 0xE615013C
66#define SMSTPCR4 0xE6150140
67#define SMSTPCR5 0xE6150144
68#define SMSTPCR7 0xE615014C
69#define SMSTPCR8 0xE6150990
70#define SMSTPCR9 0xE6150994
71#define SMSTPCR10 0xE6150998
72#define SMSTPCR11 0xE615099C
73
Nobuhiro Iwamatsudc2c4f02014-11-06 16:03:47 +090074/*
75 * SH-I2C
76 * Ch2 and ch3 are different address. These are defined
77 * in the header of each SoCs.
78 */
79#define CONFIG_SYS_I2C_SH_BASE0 0xE6500000
80#define CONFIG_SYS_I2C_SH_BASE1 0xE6510000
81
Nobuhiro Iwamatsu825bde62014-11-06 16:03:48 +090082/* RCAR-I2C */
83#define CONFIG_SYS_RCAR_I2C0_BASE 0xE6508000
84#define CONFIG_SYS_RCAR_I2C1_BASE 0xE6518000
85#define CONFIG_SYS_RCAR_I2C2_BASE 0xE6530000
86#define CONFIG_SYS_RCAR_I2C3_BASE 0xE6540000
87
Nobuhiro Iwamatsu3ec5f862014-12-17 08:03:00 +090088/* SDHI */
89#define CONFIG_SYS_SH_SDHI0_BASE 0xEE100000
90
Nobuhiro Iwamatsu52b96742014-03-27 16:11:17 +090091#define S3C_BASE 0xE6784000
92#define S3C_INT_BASE 0xE6784A00
93#define S3C_MEDIA_BASE 0xE6784B00
94
95#define S3C_QOS_DCACHE_BASE 0xE6784BDC
96#define S3C_QOS_CCI0_BASE 0xE6784C00
97#define S3C_QOS_CCI1_BASE 0xE6784C24
98#define S3C_QOS_MXI_BASE 0xE6784C48
99#define S3C_QOS_AXI_BASE 0xE6784C6C
100
101#define DBSC3_0_QOS_R0_BASE 0xE6791000
102#define DBSC3_0_QOS_R1_BASE 0xE6791100
103#define DBSC3_0_QOS_R2_BASE 0xE6791200
104#define DBSC3_0_QOS_R3_BASE 0xE6791300
105#define DBSC3_0_QOS_R4_BASE 0xE6791400
106#define DBSC3_0_QOS_R5_BASE 0xE6791500
107#define DBSC3_0_QOS_R6_BASE 0xE6791600
108#define DBSC3_0_QOS_R7_BASE 0xE6791700
109#define DBSC3_0_QOS_R8_BASE 0xE6791800
110#define DBSC3_0_QOS_R9_BASE 0xE6791900
111#define DBSC3_0_QOS_R10_BASE 0xE6791A00
112#define DBSC3_0_QOS_R11_BASE 0xE6791B00
113#define DBSC3_0_QOS_R12_BASE 0xE6791C00
114#define DBSC3_0_QOS_R13_BASE 0xE6791D00
115#define DBSC3_0_QOS_R14_BASE 0xE6791E00
116#define DBSC3_0_QOS_R15_BASE 0xE6791F00
117#define DBSC3_0_QOS_W0_BASE 0xE6792000
118#define DBSC3_0_QOS_W1_BASE 0xE6792100
119#define DBSC3_0_QOS_W2_BASE 0xE6792200
120#define DBSC3_0_QOS_W3_BASE 0xE6792300
121#define DBSC3_0_QOS_W4_BASE 0xE6792400
122#define DBSC3_0_QOS_W5_BASE 0xE6792500
123#define DBSC3_0_QOS_W6_BASE 0xE6792600
124#define DBSC3_0_QOS_W7_BASE 0xE6792700
125#define DBSC3_0_QOS_W8_BASE 0xE6792800
126#define DBSC3_0_QOS_W9_BASE 0xE6792900
127#define DBSC3_0_QOS_W10_BASE 0xE6792A00
128#define DBSC3_0_QOS_W11_BASE 0xE6792B00
129#define DBSC3_0_QOS_W12_BASE 0xE6792C00
130#define DBSC3_0_QOS_W13_BASE 0xE6792D00
131#define DBSC3_0_QOS_W14_BASE 0xE6792E00
132#define DBSC3_0_QOS_W15_BASE 0xE6792F00
133#define DBSC3_0_DBADJ2 0xE67900C8
134
135#define CCI_400_MAXOT_1 0xF0091110
136#define CCI_400_MAXOT_2 0xF0092110
137#define CCI_400_QOSCNTL_1 0xF009110C
138#define CCI_400_QOSCNTL_2 0xF009210C
139
140#define MXI_BASE 0xFE960000
141#define MXI_QOS_BASE 0xFE960300
142
143#define SYS_AXI_SYX64TO128_BASE 0xFF800300
144#define SYS_AXI_AVB_BASE 0xFF800340
145#define SYS_AXI_G2D_BASE 0xFF800540
146#define SYS_AXI_IMP0_BASE 0xFF800580
147#define SYS_AXI_IMP1_BASE 0xFF8005C0
148#define SYS_AXI_IMUX0_BASE 0xFF800600
149#define SYS_AXI_IMUX1_BASE 0xFF800640
150#define SYS_AXI_IMUX2_BASE 0xFF800680
151#define SYS_AXI_LBS_BASE 0xFF8006C0
152#define SYS_AXI_MMUDS_BASE 0xFF800700
153#define SYS_AXI_MMUM_BASE 0xFF800740
154#define SYS_AXI_MMUR_BASE 0xFF800780
155#define SYS_AXI_MMUS0_BASE 0xFF8007C0
156#define SYS_AXI_MMUS1_BASE 0xFF800800
157#define SYS_AXI_MTSB0_BASE 0xFF800880
158#define SYS_AXI_MTSB1_BASE 0xFF8008C0
159#define SYS_AXI_PCI_BASE 0xFF800900
160#define SYS_AXI_RTX_BASE 0xFF800940
161#define SYS_AXI_SDS0_BASE 0xFF800A80
162#define SYS_AXI_SDS1_BASE 0xFF800AC0
163#define SYS_AXI_USB20_BASE 0xFF800C00
164#define SYS_AXI_USB21_BASE 0xFF800C40
165#define SYS_AXI_USB22_BASE 0xFF800C80
166#define SYS_AXI_USB30_BASE 0xFF800CC0
167#define SYS_AXI_AX2M_BASE 0xFF800380
168#define SYS_AXI_CC50_BASE 0xFF8003C0
169#define SYS_AXI_CCI_BASE 0xFF800440
170#define SYS_AXI_CS_BASE 0xFF800480
171#define SYS_AXI_DDM_BASE 0xFF8004C0
172#define SYS_AXI_ETH_BASE 0xFF800500
173#define SYS_AXI_MPXM_BASE 0xFF800840
174#define SYS_AXI_SAT0_BASE 0xFF800980
175#define SYS_AXI_SAT1_BASE 0xFF8009C0
176#define SYS_AXI_SDM0_BASE 0xFF800A00
177#define SYS_AXI_SDM1_BASE 0xFF800A40
Nobuhiro Iwamatsu1b15ba62014-06-24 17:10:02 +0900178#define SYS_AXI_TRAB_BASE 0xFF800B00 /* SYS_AXI_TRKF_BASE in R*A7794 */
Nobuhiro Iwamatsu52b96742014-03-27 16:11:17 +0900179#define SYS_AXI_UDM0_BASE 0xFF800B80
180#define SYS_AXI_UDM1_BASE 0xFF800BC0
181
182#define RT_AXI_SHX_BASE 0xFF810100
183#define RT_AXI_DBG_BASE 0xFF810140 /* R8A7791 only */
184#define RT_AXI_RDM_BASE 0xFF810180 /* R8A7791 only */
185#define RT_AXI_RDS_BASE 0xFF8101C0
186#define RT_AXI_RTX64TO128_BASE 0xFF810200
187#define RT_AXI_STPRO_BASE 0xFF810240
188#define RT_AXI_SY2RT_BASE 0xFF810280 /* R8A7791 only */
189
190#define MP_AXI_ADSP_BASE 0xFF820100
191#define MP_AXI_ASDS0_BASE 0xFF8201C0
192#define MP_AXI_ASDS1_BASE 0xFF820200
193#define MP_AXI_MLP_BASE 0xFF820240
194#define MP_AXI_MMUMP_BASE 0xFF820280
195#define MP_AXI_SPU_BASE 0xFF8202C0
196#define MP_AXI_SPUC_BASE 0xFF820300
197
198#define SYS_AXI256_AXI128TO256_BASE 0xFF860100
199#define SYS_AXI256_SYX_BASE 0xFF860140
200#define SYS_AXI256_MPX_BASE 0xFF860180
201#define SYS_AXI256_MXI_BASE 0xFF8601C0
202
203#define CCI_AXI_MMUS0_BASE 0xFF880100
204#define CCI_AXI_SYX2_BASE 0xFF880140
205#define CCI_AXI_MMUR_BASE 0xFF880180
206#define CCI_AXI_MMUDS_BASE 0xFF8801C0
207#define CCI_AXI_MMUM_BASE 0xFF880200
208#define CCI_AXI_MXI_BASE 0xFF880240
209#define CCI_AXI_MMUS1_BASE 0xFF880280
210#define CCI_AXI_MMUMP_BASE 0xFF8802C0
211
212#define MEDIA_AXI_MXR_BASE 0xFE960080 /* R8A7791 only */
213#define MEDIA_AXI_MXW_BASE 0xFE9600C0 /* R8A7791 only */
214#define MEDIA_AXI_JPR_BASE 0xFE964100
215#define MEDIA_AXI_JPW_BASE 0xFE966100
216#define MEDIA_AXI_GCU0R_BASE 0xFE964140
217#define MEDIA_AXI_GCU0W_BASE 0xFE966140
218#define MEDIA_AXI_GCU1R_BASE 0xFE964180
219#define MEDIA_AXI_GCU1W_BASE 0xFE966180
220#define MEDIA_AXI_TDMR_BASE 0xFE964500
221#define MEDIA_AXI_TDMW_BASE 0xFE966500
222#define MEDIA_AXI_VSP0CR_BASE 0xFE964540
223#define MEDIA_AXI_VSP0CW_BASE 0xFE966540
224#define MEDIA_AXI_VSP1CR_BASE 0xFE964580
225#define MEDIA_AXI_VSP1CW_BASE 0xFE966580
226#define MEDIA_AXI_VSPDU0CR_BASE 0xFE9645C0
227#define MEDIA_AXI_VSPDU0CW_BASE 0xFE9665C0
228#define MEDIA_AXI_VSPDU1CR_BASE 0xFE964600
229#define MEDIA_AXI_VSPDU1CW_BASE 0xFE966600
230#define MEDIA_AXI_VIN0W_BASE 0xFE966900
231#define MEDIA_AXI_VSP0R_BASE 0xFE964D00
232#define MEDIA_AXI_VSP0W_BASE 0xFE966D00
233#define MEDIA_AXI_FDP0R_BASE 0xFE964D40
234#define MEDIA_AXI_FDP0W_BASE 0xFE966D40
235#define MEDIA_AXI_IMSR_BASE 0xFE964D80
236#define MEDIA_AXI_IMSW_BASE 0xFE966D80
237#define MEDIA_AXI_VSP1R_BASE 0xFE965100
238#define MEDIA_AXI_VSP1W_BASE 0xFE967100
239#define MEDIA_AXI_FDP1R_BASE 0xFE965140
240#define MEDIA_AXI_FDP1W_BASE 0xFE967140
241#define MEDIA_AXI_IMRR_BASE 0xFE965180
242#define MEDIA_AXI_IMRW_BASE 0xFE967180
243#define MEDIA_AXI_FDP2R_BASE 0xFE9651C0
244#define MEDIA_AXI_FDP2W_BASE 0xFE966DC0
245#define MEDIA_AXI_VSPD0R_BASE 0xFE965500
246#define MEDIA_AXI_VSPD0W_BASE 0xFE967500
247#define MEDIA_AXI_VSPD1R_BASE 0xFE965540
248#define MEDIA_AXI_VSPD1W_BASE 0xFE967540
249#define MEDIA_AXI_DU0R_BASE 0xFE965580
250#define MEDIA_AXI_DU0W_BASE 0xFE967580
251#define MEDIA_AXI_DU1R_BASE 0xFE9655C0
252#define MEDIA_AXI_DU1W_BASE 0xFE9675C0
253#define MEDIA_AXI_VCP0CR_BASE 0xFE965900
254#define MEDIA_AXI_VCP0CW_BASE 0xFE967900
255#define MEDIA_AXI_VCP0VR_BASE 0xFE965940
256#define MEDIA_AXI_VCP0VW_BASE 0xFE967940
257#define MEDIA_AXI_VPC0R_BASE 0xFE965980
258#define MEDIA_AXI_VCP1CR_BASE 0xFE965D00
259#define MEDIA_AXI_VCP1CW_BASE 0xFE967D00
260#define MEDIA_AXI_VCP1VR_BASE 0xFE965D40
261#define MEDIA_AXI_VCP1VW_BASE 0xFE967D40
262#define MEDIA_AXI_VPC1R_BASE 0xFE965D80
263
264#define SYS_AXI_AVBDMSCR 0xFF802000
265#define SYS_AXI_SYX2DMSCR 0xFF802004
266#define SYS_AXI_CC50DMSCR 0xFF802008
267#define SYS_AXI_CC51DMSCR 0xFF80200C
268#define SYS_AXI_CCIDMSCR 0xFF802010
269#define SYS_AXI_CSDMSCR 0xFF802014
270#define SYS_AXI_DDMDMSCR 0xFF802018
271#define SYS_AXI_ETHDMSCR 0xFF80201C
272#define SYS_AXI_G2DDMSCR 0xFF802020
273#define SYS_AXI_IMP0DMSCR 0xFF802024
274#define SYS_AXI_IMP1DMSCR 0xFF802028
275#define SYS_AXI_LBSDMSCR 0xFF80202C
276#define SYS_AXI_MMUDSDMSCR 0xFF802030
277#define SYS_AXI_MMUMXDMSCR 0xFF802034
278#define SYS_AXI_MMURDDMSCR 0xFF802038
279#define SYS_AXI_MMUS0DMSCR 0xFF80203C
280#define SYS_AXI_MMUS1DMSCR 0xFF802040
281#define SYS_AXI_MPXDMSCR 0xFF802044
282#define SYS_AXI_MTSB0DMSCR 0xFF802048
283#define SYS_AXI_MTSB1DMSCR 0xFF80204C
284#define SYS_AXI_PCIDMSCR 0xFF802050
285#define SYS_AXI_RTXDMSCR 0xFF802054
286#define SYS_AXI_SAT0DMSCR 0xFF802058
287#define SYS_AXI_SAT1DMSCR 0xFF80205C
288#define SYS_AXI_SDM0DMSCR 0xFF802060
289#define SYS_AXI_SDM1DMSCR 0xFF802064
290#define SYS_AXI_SDS0DMSCR 0xFF802068
291#define SYS_AXI_SDS1DMSCR 0xFF80206C
292#define SYS_AXI_ETRABDMSCR 0xFF802070
293#define SYS_AXI_ETRKFDMSCR 0xFF802074
294#define SYS_AXI_UDM0DMSCR 0xFF802078
295#define SYS_AXI_UDM1DMSCR 0xFF80207C
296#define SYS_AXI_USB20DMSCR 0xFF802080
297#define SYS_AXI_USB21DMSCR 0xFF802084
298#define SYS_AXI_USB22DMSCR 0xFF802088
299#define SYS_AXI_USB30DMSCR 0xFF80208C
300#define SYS_AXI_X128TO64SLVDMSCR 0xFF802100
301#define SYS_AXI_X64TO128SLVDMSCR 0xFF802104
302#define SYS_AXI_AVBSLVDMSCR 0xFF802108
303#define SYS_AXI_SYX2SLVDMSCR 0xFF80210C
304#define SYS_AXI_ETHSLVDMSCR 0xFF802110
305#define SYS_AXI_GICSLVDMSCR 0xFF802114
306#define SYS_AXI_IMPSLVDMSCR 0xFF802118
307#define SYS_AXI_IMX0SLVDMSCR 0xFF80211C
308#define SYS_AXI_IMX1SLVDMSCR 0xFF802120
309#define SYS_AXI_IMX2SLVDMSCR 0xFF802124
310#define SYS_AXI_LBSSLVDMSCR 0xFF802128
311#define SYS_AXI_MMC0SLVDMSCR 0xFF80212C
312#define SYS_AXI_MMC1SLVDMSCR 0xFF802130
313#define SYS_AXI_MPXSLVDMSCR 0xFF802134
314#define SYS_AXI_MTSB0SLVDMSCR 0xFF802138
315#define SYS_AXI_MTSB1SLVDMSCR 0xFF80213C
316#define SYS_AXI_MXTSLVDMSCR 0xFF802140
317#define SYS_AXI_PCISLVDMSCR 0xFF802144
318#define SYS_AXI_SYAPBSLVDMSCR 0xFF802148
319#define SYS_AXI_QSAPBSLVDMSCR 0xFF80214C
320#define SYS_AXI_RTXSLVDMSCR 0xFF802150
321#define SYS_AXI_SAT0SLVDMSCR 0xFF802168
322#define SYS_AXI_SAT1SLVDMSCR 0xFF80216C
323#define SYS_AXI_SDAP0SLVDMSCR 0xFF802170
324#define SYS_AXI_SDAP1SLVDMSCR 0xFF802174
325#define SYS_AXI_SDAP2SLVDMSCR 0xFF802178
326#define SYS_AXI_SDAP3SLVDMSCR 0xFF80217C
327#define SYS_AXI_SGXSLVDMSCR 0xFF802180
328#define SYS_AXI_STBSLVDMSCR 0xFF802188
329#define SYS_AXI_STMSLVDMSCR 0xFF80218C
330#define SYS_AXI_TSPL0SLVDMSCR 0xFF802194
331#define SYS_AXI_TSPL1SLVDMSCR 0xFF802198
332#define SYS_AXI_TSPL2SLVDMSCR 0xFF80219C
333#define SYS_AXI_USB20SLVDMSCR 0xFF8021A0
334#define SYS_AXI_USB21SLVDMSCR 0xFF8021A4
335#define SYS_AXI_USB22SLVDMSCR 0xFF8021A8
336#define SYS_AXI_USB30SLVDMSCR 0xFF8021AC
337
338#define RT_AXI_CBMDMSCR 0xFF812000
339#define RT_AXI_DBDMSCR 0xFF812004
340#define RT_AXI_RDMDMSCR 0xFF812008
341#define RT_AXI_RDSDMSCR 0xFF81200C
342#define RT_AXI_STRDMSCR 0xFF812010
343#define RT_AXI_SY2RTDMSCR 0xFF812014
344#define RT_AXI_CBSSLVDMSCR 0xFF812100
345#define RT_AXI_DBSSLVDMSCR 0xFF812104
346#define RT_AXI_RTAP1SLVDMSCR 0xFF812108
347#define RT_AXI_RTAP2SLVDMSCR 0xFF81210C
348#define RT_AXI_RTAP3SLVDMSCR 0xFF812110
349#define RT_AXI_RT2SYSLVDMSCR 0xFF812114
350#define RT_AXI_A128TO64SLVDMSCR 0xFF812118
351#define RT_AXI_A64TO128SLVDMSCR 0xFF81211C
352#define RT_AXI_A64TO128CSLVDMSCR 0xFF812120
353#define RT_AXI_UTLBRSLVDMSCR 0xFF812128
354
355#define MP_AXI_ADSPDMSCR 0xFF822000
356#define MP_AXI_ASDM0DMSCR 0xFF822004
357#define MP_AXI_ASDM1DMSCR 0xFF822008
358#define MP_AXI_ASDS0DMSCR 0xFF82200C
359#define MP_AXI_ASDS1DMSCR 0xFF822010
360#define MP_AXI_MLPDMSCR 0xFF822014
361#define MP_AXI_MMUMPDMSCR 0xFF822018
362#define MP_AXI_SPUDMSCR 0xFF82201C
363#define MP_AXI_SPUCDMSCR 0xFF822020
364#define MP_AXI_SY2MPDMSCR 0xFF822024
365#define MP_AXI_ADSPSLVDMSCR 0xFF822100
366#define MP_AXI_MLMSLVDMSCR 0xFF822104
367#define MP_AXI_MPAP4SLVDMSCR 0xFF822108
368#define MP_AXI_MPAP5SLVDMSCR 0xFF82210C
369#define MP_AXI_MPAP6SLVDMSCR 0xFF822110
370#define MP_AXI_MPAP7SLVDMSCR 0xFF822114
371#define MP_AXI_MP2SYSLVDMSCR 0xFF822118
372#define MP_AXI_MP2SY2SLVDMSCR 0xFF82211C
373#define MP_AXI_MPXAPSLVDMSCR 0xFF822124
374#define MP_AXI_SPUSLVDMSCR 0xFF822128
375#define MP_AXI_UTLBMPSLVDMSCR 0xFF82212C
376
377#define ADM_AXI_ASDM0DMSCR 0xFF842000
378#define ADM_AXI_ASDM1DMSCR 0xFF842004
379#define ADM_AXI_MPAP1SLVDMSCR 0xFF842104
380#define ADM_AXI_MPAP2SLVDMSCR 0xFF842108
381#define ADM_AXI_MPAP3SLVDMSCR 0xFF84210C
382
383#define DM_AXI_RDMDMSCR 0xFF852000
384#define DM_AXI_SDM0DMSCR 0xFF852004
385#define DM_AXI_SDM1DMSCR 0xFF852008
386#define DM_AXI_MMAP0SLVDMSCR 0xFF852100
387#define DM_AXI_MMAP1SLVDMSCR 0xFF852104
388#define DM_AXI_QSPAPSLVDMSCR 0xFF852108
389#define DM_AXI_RAP4SLVDMSCR 0xFF85210C
390#define DM_AXI_RAP5SLVDMSCR 0xFF852110
391#define DM_AXI_SAP4SLVDMSCR 0xFF852114
392#define DM_AXI_SAP5SLVDMSCR 0xFF852118
393#define DM_AXI_SAP6SLVDMSCR 0xFF85211C
394#define DM_AXI_SAP65SLVDMSCR 0xFF852120
395#define DM_AXI_SDAP0SLVDMSCR 0xFF852124
396#define DM_AXI_SDAP1SLVDMSCR 0xFF852128
397#define DM_AXI_SDAP2SLVDMSCR 0xFF85212C
398#define DM_AXI_SDAP3SLVDMSCR 0xFF852130
399
400#define SYS_AXI256_SYXDMSCR 0xFF862000
401#define SYS_AXI256_MPXDMSCR 0xFF862004
402#define SYS_AXI256_MXIDMSCR 0xFF862008
403#define SYS_AXI256_X128TO256SLVDMSCR 0xFF862100
404#define SYS_AXI256_X256TO128SLVDMSCR 0xFF862104
405#define SYS_AXI256_SYXSLVDMSCR 0xFF862108
406#define SYS_AXI256_CCXSLVDMSCR 0xFF86210C
407#define SYS_AXI256_S3CSLVDMSCR 0xFF862110
408
409#define MXT_SYXDMSCR 0xFF872000
410#define MXT_CMM0SLVDMSCR 0xFF872100
411#define MXT_CMM1SLVDMSCR 0xFF872104
412#define MXT_CMM2SLVDMSCR 0xFF872108
413#define MXT_FDPSLVDMSCR 0xFF87210C
414#define MXT_IMRSLVDMSCR 0xFF872110
415#define MXT_VINSLVDMSCR 0xFF872114
416#define MXT_VPC0SLVDMSCR 0xFF872118
417#define MXT_VPC1SLVDMSCR 0xFF87211C
418#define MXT_VSP0SLVDMSCR 0xFF872120
419#define MXT_VSP1SLVDMSCR 0xFF872124
420#define MXT_VSPD0SLVDMSCR 0xFF872128
421#define MXT_VSPD1SLVDMSCR 0xFF87212C
422#define MXT_MAP1SLVDMSCR 0xFF872130
423#define MXT_MAP2SLVDMSCR 0xFF872134
424
425#define CCI_AXI_MMUS0DMSCR 0xFF882000
426#define CCI_AXI_SYX2DMSCR 0xFF882004
427#define CCI_AXI_MMURDMSCR 0xFF882008
428#define CCI_AXI_MMUDSDMSCR 0xFF88200C
429#define CCI_AXI_MMUMDMSCR 0xFF882010
430#define CCI_AXI_MXIDMSCR 0xFF882014
431#define CCI_AXI_MMUS1DMSCR 0xFF882018
432#define CCI_AXI_MMUMPDMSCR 0xFF88201C
433#define CCI_AXI_DVMDMSCR 0xFF882020
434#define CCI_AXI_CCISLVDMSCR 0xFF882100
435
436#define CCI_AXI_IPMMUIDVMCR 0xFF880400
437#define CCI_AXI_IPMMURDVMCR 0xFF880404
438#define CCI_AXI_IPMMUS0DVMCR 0xFF880408
439#define CCI_AXI_IPMMUS1DVMCR 0xFF88040C
440#define CCI_AXI_IPMMUMPDVMCR 0xFF880410
441#define CCI_AXI_IPMMUDSDVMCR 0xFF880414
442#define CCI_AXI_AX2ADDRMASK 0xFF88041C
443
Nobuhiro Iwamatsu8f40a372014-03-31 11:51:57 +0900444#define PLL0CR 0xE61500D8
445#define PLL0_STC_MASK 0x7F000000
446#define PLL0_STC_BIT 24
Nobuhiro Iwamatsu67fd59b2014-10-31 16:08:11 +0900447#define PLLECR 0xE61500D0
448#define PLL0ST 0x100
Nobuhiro Iwamatsu8f40a372014-03-31 11:51:57 +0900449
Nobuhiro Iwamatsu52b96742014-03-27 16:11:17 +0900450#ifndef __ASSEMBLY__
451#include <asm/types.h>
452
453/* RWDT */
454struct rcar_rwdt {
455 u32 rwtcnt; /* 0x00 */
456 u32 rwtcsra; /* 0x04 */
457 u16 rwtcsrb; /* 0x08 */
458};
459
460/* SWDT */
461struct rcar_swdt {
462 u32 swtcnt; /* 0x00 */
463 u32 swtcsra; /* 0x04 */
464 u16 swtcsrb; /* 0x08 */
465};
466
467/* LBSC */
468struct rcar_lbsc {
469 u32 cs0ctrl;
470 u32 cs1ctrl;
471 u32 ecs0ctrl;
472 u32 ecs1ctrl;
473 u32 ecs2ctrl;
474 u32 ecs3ctrl;
475 u32 ecs4ctrl;
476 u32 ecs5ctrl;
477 u32 dummy0[4]; /* 0x20 .. 0x2C */
478 u32 cswcr0;
479 u32 cswcr1;
480 u32 ecswcr0;
481 u32 ecswcr1;
482 u32 ecswcr2;
483 u32 ecswcr3;
484 u32 ecswcr4;
485 u32 ecswcr5;
486 u32 exdmawcr0;
487 u32 exdmawcr1;
488 u32 exdmawcr2;
489 u32 dummy1[9]; /* 0x5C .. 0x7C */
490 u32 cspwcr0;
491 u32 cspwcr1;
492 u32 ecspwcr0;
493 u32 ecspwcr1;
494 u32 ecspwcr2;
495 u32 ecspwcr3;
496 u32 ecspwcr4;
497 u32 ecspwcr5;
498 u32 exwtsync;
499 u32 dummy2[3]; /* 0xA4 .. 0xAC */
500 u32 cs0bstctl;
501 u32 cs0btph;
502 u32 dummy3[2]; /* 0xB8 .. 0xBC */
503 u32 cs1gdst;
504 u32 ecs0gdst;
505 u32 ecs1gdst;
506 u32 ecs2gdst;
507 u32 ecs3gdst;
508 u32 ecs4gdst;
509 u32 ecs5gdst;
510 u32 dummy4[5]; /* 0xDC .. 0xEC */
511 u32 exdmaset0;
512 u32 exdmaset1;
513 u32 exdmaset2;
514 u32 dummy5[5]; /* 0xFC .. 0x10C */
515 u32 exdmcr0;
516 u32 exdmcr1;
517 u32 exdmcr2;
518 u32 dummy6[5]; /* 0x11C .. 0x12C */
519 u32 bcintsr;
520 u32 bcintcr;
521 u32 bcintmr;
522 u32 dummy7; /* 0x13C */
523 u32 exbatlv;
524 u32 exwtsts;
525 u32 dummy8[14]; /* 0x148 .. 0x17C */
526 u32 atacsctrl;
527 u32 dummy9[15]; /* 0x184 .. 0x1BC */
528 u32 exbct;
529 u32 extct;
530};
531
532/* DBSC3 */
533struct rcar_dbsc3 {
534 u32 dummy0[3]; /* 0x00 .. 0x08 */
535 u32 dbstate1;
536 u32 dbacen;
537 u32 dbrfen;
538 u32 dbcmd;
539 u32 dbwait;
540 u32 dbkind;
541 u32 dbconf0;
542 u32 dummy1[2]; /* 0x28 .. 0x2C */
543 u32 dbphytype;
544 u32 dummy2[3]; /* 0x34 .. 0x3C */
545 u32 dbtr0;
546 u32 dbtr1;
547 u32 dbtr2;
548 u32 dummy3; /* 0x4C */
549 u32 dbtr3;
550 u32 dbtr4;
551 u32 dbtr5;
552 u32 dbtr6;
553 u32 dbtr7;
554 u32 dbtr8;
555 u32 dbtr9;
556 u32 dbtr10;
557 u32 dbtr11;
558 u32 dbtr12;
559 u32 dbtr13;
560 u32 dbtr14;
561 u32 dbtr15;
562 u32 dbtr16;
563 u32 dbtr17;
564 u32 dbtr18;
565 u32 dbtr19;
566 u32 dummy4[7]; /* 0x94 .. 0xAC */
567 u32 dbbl;
568 u32 dummy5[3]; /* 0xB4 .. 0xBC */
569 u32 dbadj0;
570 u32 dummy6; /* 0xC4 */
571 u32 dbadj2;
572 u32 dummy7[5]; /* 0xCC .. 0xDC */
573 u32 dbrfcnf0;
574 u32 dbrfcnf1;
575 u32 dbrfcnf2;
576 u32 dummy8[2]; /* 0xEC .. 0xF0 */
577 u32 dbcalcnf;
578 u32 dbcaltr;
579 u32 dummy9; /* 0xFC */
580 u32 dbrnk0;
581 u32 dummy10[31]; /* 0x104 .. 0x17C */
582 u32 dbpdncnf;
583 u32 dummy11[47]; /* 0x184 ..0x23C */
584 u32 dbdfistat;
585 u32 dbdficnt;
586 u32 dummy12[14]; /* 0x248 .. 0x27C */
587 u32 dbpdlck;
588 u32 dummy13[3]; /* 0x284 .. 0x28C */
589 u32 dbpdrga;
590 u32 dummy14[3]; /* 0x294 .. 0x29C */
591 u32 dbpdrgd;
592 u32 dummy15[24]; /* 0x2A4 .. 0x300 */
593 u32 dbbs0cnt1;
594 u32 dummy16[30]; /* 0x308 .. 0x37C */
595 u32 dbwt0cnf0;
596 u32 dbwt0cnf1;
597 u32 dbwt0cnf2;
598 u32 dbwt0cnf3;
599 u32 dbwt0cnf4;
600};
601
602/* GPIO */
603struct rcar_gpio {
604 u32 iointsel;
605 u32 inoutsel;
606 u32 outdt;
607 u32 indt;
608 u32 intdt;
609 u32 intclr;
610 u32 intmsk;
611 u32 posneg;
612 u32 edglevel;
613 u32 filonoff;
614 u32 intmsks;
615 u32 mskclrs;
616 u32 outdtsel;
617 u32 outdth;
618 u32 outdtl;
619 u32 bothedge;
620};
621
622/* S3C(QoS) */
623struct rcar_s3c {
624 u32 s3cexcladdmsk;
625 u32 s3cexclidmsk;
626 u32 s3cadsplcr;
627 u32 s3cmaar;
Nobuhiro Iwamatsudc7ef502014-03-28 13:43:40 +0900628 u32 s3carcr11;
Nobuhiro Iwamatsu52b96742014-03-27 16:11:17 +0900629 u32 s3crorr;
630 u32 s3cworr;
631 u32 s3carcr22;
632 u32 dummy1[2]; /* 0x20 .. 0x24 */
633 u32 s3cmctr;
634 u32 dummy2; /* 0x2C */
635 u32 cconf0;
636 u32 cconf1;
637 u32 cconf2;
638 u32 cconf3;
639};
640
641struct rcar_s3c_qos {
642 u32 s3cqos0;
643 u32 s3cqos1;
644 u32 s3cqos2;
645 u32 s3cqos3;
646 u32 s3cqos4;
647 u32 s3cqos5;
648 u32 s3cqos6;
649 u32 s3cqos7;
650 u32 s3cqos8;
651};
652
653/* DBSC(QoS) */
654struct rcar_dbsc3_qos {
655 u32 dblgcnt;
656 u32 dbtmval0;
657 u32 dbtmval1;
658 u32 dbtmval2;
659 u32 dbtmval3;
660 u32 dbrqctr;
661 u32 dbthres0;
662 u32 dbthres1;
663 u32 dbthres2;
664 u32 dummy0; /* 0x24 */
665 u32 dblgqon;
666};
667
668/* MXI(QoS) */
669struct rcar_mxi {
670 u32 mxsaar0;
671 u32 mxsaar1;
672 u32 dummy0[7]; /* 0x08 .. 0x20 */
673 u32 mxaxiracr; /* R8a7790 only */
674 u32 mxs3cracr;
675 u32 dummy1[2]; /* 0x2C .. 0x30 */
676 u32 mxaxiwacr; /* R8a7790 only */
677 u32 mxs3cwacr;
678 u32 dummy2; /* 0x3C */
679 u32 mxrtcr;
680 u32 mxwtcr;
681};
682
683struct rcar_mxi_qos {
684 u32 vspdu0;
685 u32 vspdu1;
686 u32 du0;
687 u32 du1;
688};
689
690/* AXI(QoS) */
691struct rcar_axi_qos {
692 u32 qosconf;
693 u32 qosctset0;
694 u32 qosctset1;
695 u32 qosctset2;
696 u32 qosctset3;
697 u32 qosreqctr;
698 u32 qosthres0;
699 u32 qosthres1;
700 u32 qosthres2;
701 u32 qosqon;
702};
703
704#endif
705
706#endif /* __ASM_ARCH_RCAR_BASE_H */