blob: 57eb88177e92880e194377d81a3ab1c79a79f444 [file] [log] [blame]
Marek Vasutadaa0162020-04-04 16:12:48 +02001// SPDX-License-Identifier: GPL-2.0
2/*
3 * Device Tree Source for the R-Car H3 (R8A77950) SoC
4 *
5 * Copyright (C) 2015 Renesas Electronics Corp.
6 */
7
8#include "r8a77951.dtsi"
9
Marek Vasut2a8450f2023-01-26 21:01:32 +010010#undef SOC_HAS_USB2_CH3
11
Marek Vasutadaa0162020-04-04 16:12:48 +020012&audma0 {
13 iommus = <&ipmmu_mp1 0>, <&ipmmu_mp1 1>,
14 <&ipmmu_mp1 2>, <&ipmmu_mp1 3>,
15 <&ipmmu_mp1 4>, <&ipmmu_mp1 5>,
16 <&ipmmu_mp1 6>, <&ipmmu_mp1 7>,
17 <&ipmmu_mp1 8>, <&ipmmu_mp1 9>,
18 <&ipmmu_mp1 10>, <&ipmmu_mp1 11>,
19 <&ipmmu_mp1 12>, <&ipmmu_mp1 13>,
20 <&ipmmu_mp1 14>, <&ipmmu_mp1 15>;
21};
22
23&audma1 {
24 iommus = <&ipmmu_mp1 16>, <&ipmmu_mp1 17>,
25 <&ipmmu_mp1 18>, <&ipmmu_mp1 19>,
26 <&ipmmu_mp1 20>, <&ipmmu_mp1 21>,
27 <&ipmmu_mp1 22>, <&ipmmu_mp1 23>,
28 <&ipmmu_mp1 24>, <&ipmmu_mp1 25>,
29 <&ipmmu_mp1 26>, <&ipmmu_mp1 27>,
30 <&ipmmu_mp1 28>, <&ipmmu_mp1 29>,
31 <&ipmmu_mp1 30>, <&ipmmu_mp1 31>;
32};
33
Marek Vasut2a8450f2023-01-26 21:01:32 +010034&cluster0_opp {
35 /delete-node/ opp-1600000000;
36 /delete-node/ opp-1700000000;
37};
38
Marek Vasutadaa0162020-04-04 16:12:48 +020039&du {
Marek Vasut2a8450f2023-01-26 21:01:32 +010040 renesas,vsps = <&vspd0 0>, <&vspd1 0>, <&vspd2 0>, <&vspd3 0>;
Marek Vasutadaa0162020-04-04 16:12:48 +020041};
42
43&fcpvb1 {
44 iommus = <&ipmmu_vp0 7>;
45};
46
47&fcpf1 {
48 iommus = <&ipmmu_vp0 1>;
49};
50
51&fcpvi1 {
52 iommus = <&ipmmu_vp0 9>;
53};
54
55&fcpvd2 {
56 iommus = <&ipmmu_vi0 10>;
57};
58
59&gpio1 {
60 gpio-ranges = <&pfc 0 32 28>;
61};
62
63&ipmmu_vi0 {
64 renesas,ipmmu-main = <&ipmmu_mm 11>;
65};
66
67&ipmmu_vp0 {
68 renesas,ipmmu-main = <&ipmmu_mm 12>;
69};
70
71&ipmmu_vc0 {
72 renesas,ipmmu-main = <&ipmmu_mm 9>;
73};
74
75&ipmmu_vc1 {
76 renesas,ipmmu-main = <&ipmmu_mm 10>;
77};
78
79&ipmmu_rt {
80 renesas,ipmmu-main = <&ipmmu_mm 7>;
81};
82
83&soc {
84 /delete-node/ dma-controller@e6460000;
85 /delete-node/ dma-controller@e6470000;
86
Marek Vasut2a8450f2023-01-26 21:01:32 +010087 ipmmu_mp1: iommu@ec680000 {
Marek Vasutadaa0162020-04-04 16:12:48 +020088 compatible = "renesas,ipmmu-r8a7795";
89 reg = <0 0xec680000 0 0x1000>;
90 renesas,ipmmu-main = <&ipmmu_mm 5>;
91 power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
92 #iommu-cells = <1>;
93 };
94
Marek Vasut2a8450f2023-01-26 21:01:32 +010095 ipmmu_sy: iommu@e7730000 {
Marek Vasutadaa0162020-04-04 16:12:48 +020096 compatible = "renesas,ipmmu-r8a7795";
97 reg = <0 0xe7730000 0 0x1000>;
98 renesas,ipmmu-main = <&ipmmu_mm 8>;
99 power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
100 #iommu-cells = <1>;
101 };
102
Marek Vasut2a8450f2023-01-26 21:01:32 +0100103 /delete-node/ iommu@fd950000;
104 /delete-node/ iommu@fd960000;
105 /delete-node/ iommu@fd970000;
106 /delete-node/ iommu@febe0000;
107 /delete-node/ iommu@fe980000;
Marek Vasutadaa0162020-04-04 16:12:48 +0200108
109 xhci1: usb@ee040000 {
110 compatible = "renesas,xhci-r8a7795", "renesas,rcar-gen3-xhci";
111 reg = <0 0xee040000 0 0xc00>;
112 interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
113 clocks = <&cpg CPG_MOD 327>;
114 power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
115 resets = <&cpg 327>;
116 status = "disabled";
117 };
118
119 /delete-node/ usb@e659c000;
120 /delete-node/ usb@ee0e0000;
121 /delete-node/ usb@ee0e0100;
122
123 /delete-node/ usb-phy@ee0e0200;
124
125 fdp1@fe948000 {
126 compatible = "renesas,fdp1";
127 reg = <0 0xfe948000 0 0x2400>;
128 interrupts = <GIC_SPI 264 IRQ_TYPE_LEVEL_HIGH>;
129 clocks = <&cpg CPG_MOD 117>;
130 power-domains = <&sysc R8A7795_PD_A3VP>;
131 resets = <&cpg 117>;
132 renesas,fcp = <&fcpf2>;
133 };
134
135 fcpf2: fcp@fe952000 {
136 compatible = "renesas,fcpf";
137 reg = <0 0xfe952000 0 0x200>;
138 clocks = <&cpg CPG_MOD 613>;
139 power-domains = <&sysc R8A7795_PD_A3VP>;
140 resets = <&cpg 613>;
141 iommus = <&ipmmu_vp0 2>;
142 };
143
144 fcpvd3: fcp@fea3f000 {
145 compatible = "renesas,fcpv";
146 reg = <0 0xfea3f000 0 0x200>;
147 clocks = <&cpg CPG_MOD 600>;
148 power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
149 resets = <&cpg 600>;
150 iommus = <&ipmmu_vi0 11>;
151 };
152
153 fcpvi2: fcp@fe9cf000 {
154 compatible = "renesas,fcpv";
155 reg = <0 0xfe9cf000 0 0x200>;
156 clocks = <&cpg CPG_MOD 609>;
157 power-domains = <&sysc R8A7795_PD_A3VP>;
158 resets = <&cpg 609>;
159 iommus = <&ipmmu_vp0 10>;
160 };
161
162 vspd3: vsp@fea38000 {
163 compatible = "renesas,vsp2";
164 reg = <0 0xfea38000 0 0x5000>;
165 interrupts = <GIC_SPI 469 IRQ_TYPE_LEVEL_HIGH>;
166 clocks = <&cpg CPG_MOD 620>;
167 power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
168 resets = <&cpg 620>;
169
170 renesas,fcp = <&fcpvd3>;
171 };
172
173 vspi2: vsp@fe9c0000 {
174 compatible = "renesas,vsp2";
175 reg = <0 0xfe9c0000 0 0x8000>;
176 interrupts = <GIC_SPI 446 IRQ_TYPE_LEVEL_HIGH>;
177 clocks = <&cpg CPG_MOD 629>;
178 power-domains = <&sysc R8A7795_PD_A3VP>;
179 resets = <&cpg 629>;
180
181 renesas,fcp = <&fcpvi2>;
182 };
183
184 csi21: csi2@fea90000 {
185 compatible = "renesas,r8a7795-csi2";
186 reg = <0 0xfea90000 0 0x10000>;
187 interrupts = <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>;
188 clocks = <&cpg CPG_MOD 713>;
189 power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
190 resets = <&cpg 713>;
191 status = "disabled";
192
193 ports {
194 #address-cells = <1>;
195 #size-cells = <0>;
196
Marek Vasut2a8450f2023-01-26 21:01:32 +0100197 port@0 {
198 reg = <0>;
199 };
200
Marek Vasutadaa0162020-04-04 16:12:48 +0200201 port@1 {
202 #address-cells = <1>;
203 #size-cells = <0>;
204
205 reg = <1>;
206
207 csi21vin0: endpoint@0 {
208 reg = <0>;
209 remote-endpoint = <&vin0csi21>;
210 };
211 csi21vin1: endpoint@1 {
212 reg = <1>;
213 remote-endpoint = <&vin1csi21>;
214 };
215 csi21vin2: endpoint@2 {
216 reg = <2>;
217 remote-endpoint = <&vin2csi21>;
218 };
219 csi21vin3: endpoint@3 {
220 reg = <3>;
221 remote-endpoint = <&vin3csi21>;
222 };
223 csi21vin4: endpoint@4 {
224 reg = <4>;
225 remote-endpoint = <&vin4csi21>;
226 };
227 csi21vin5: endpoint@5 {
228 reg = <5>;
229 remote-endpoint = <&vin5csi21>;
230 };
231 csi21vin6: endpoint@6 {
232 reg = <6>;
233 remote-endpoint = <&vin6csi21>;
234 };
235 csi21vin7: endpoint@7 {
236 reg = <7>;
237 remote-endpoint = <&vin7csi21>;
238 };
239 };
240 };
241 };
242};
243
244&vin0 {
245 ports {
246 port@1 {
247 vin0csi21: endpoint@1 {
248 reg = <1>;
249 remote-endpoint = <&csi21vin0>;
250 };
251 };
252 };
253};
254
255&vin1 {
256 ports {
257 port@1 {
258 vin1csi21: endpoint@1 {
259 reg = <1>;
260 remote-endpoint = <&csi21vin1>;
261 };
262 };
263 };
264};
265
266&vin2 {
267 ports {
268 port@1 {
269 vin2csi21: endpoint@1 {
270 reg = <1>;
271 remote-endpoint = <&csi21vin2>;
272 };
273 };
274 };
275};
276
277&vin3 {
278 ports {
279 port@1 {
280 vin3csi21: endpoint@1 {
281 reg = <1>;
282 remote-endpoint = <&csi21vin3>;
283 };
284 };
285 };
286};
287
288&vin4 {
289 ports {
290 port@1 {
291 vin4csi21: endpoint@1 {
292 reg = <1>;
293 remote-endpoint = <&csi21vin4>;
294 };
295 };
296 };
297};
298
299&vin5 {
300 ports {
301 port@1 {
302 vin5csi21: endpoint@1 {
303 reg = <1>;
304 remote-endpoint = <&csi21vin5>;
305 };
306 };
307 };
308};
309
310&vin6 {
311 ports {
312 port@1 {
313 vin6csi21: endpoint@1 {
314 reg = <1>;
315 remote-endpoint = <&csi21vin6>;
316 };
317 };
318 };
319};
320
321&vin7 {
322 ports {
323 port@1 {
324 vin7csi21: endpoint@1 {
325 reg = <1>;
326 remote-endpoint = <&csi21vin7>;
327 };
328 };
329 };
330};