]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/blob - arch/arm/boot/dts/sh73a0.dtsi
Merge tag 'xtensa-20190715' of git://github.com/jcmvbkbc/linux-xtensa
[mirror_ubuntu-eoan-kernel.git] / arch / arm / boot / dts / sh73a0.dtsi
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3 * Device Tree Source for the SH-Mobile AG5 (R8A73A00/SH73A0) SoC
4 *
5 * Copyright (C) 2012 Renesas Solutions Corp.
6 */
7
8 #include <dt-bindings/clock/sh73a0-clock.h>
9 #include <dt-bindings/interrupt-controller/arm-gic.h>
10 #include <dt-bindings/interrupt-controller/irq.h>
11
12 / {
13 compatible = "renesas,sh73a0";
14 interrupt-parent = <&gic>;
15 #address-cells = <1>;
16 #size-cells = <1>;
17
18 cpus {
19 #address-cells = <1>;
20 #size-cells = <0>;
21
22 cpu0: cpu@0 {
23 device_type = "cpu";
24 compatible = "arm,cortex-a9";
25 reg = <0>;
26 clock-frequency = <1196000000>;
27 clocks = <&cpg_clocks SH73A0_CLK_Z>;
28 power-domains = <&pd_a2sl>;
29 next-level-cache = <&L2>;
30 };
31 cpu1: cpu@1 {
32 device_type = "cpu";
33 compatible = "arm,cortex-a9";
34 reg = <1>;
35 clock-frequency = <1196000000>;
36 clocks = <&cpg_clocks SH73A0_CLK_Z>;
37 power-domains = <&pd_a2sl>;
38 next-level-cache = <&L2>;
39 };
40 };
41
42 timer@f0000600 {
43 compatible = "arm,cortex-a9-twd-timer";
44 reg = <0xf0000600 0x20>;
45 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>;
46 clocks = <&twd_clk>;
47 };
48
49 gic: interrupt-controller@f0001000 {
50 compatible = "arm,cortex-a9-gic";
51 #interrupt-cells = <3>;
52 interrupt-controller;
53 reg = <0xf0001000 0x1000>,
54 <0xf0000100 0x100>;
55 };
56
57 L2: cache-controller@f0100000 {
58 compatible = "arm,pl310-cache";
59 reg = <0xf0100000 0x1000>;
60 interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
61 power-domains = <&pd_a3sm>;
62 arm,data-latency = <3 3 3>;
63 arm,tag-latency = <2 2 2>;
64 arm,shared-override;
65 cache-unified;
66 cache-level = <2>;
67 };
68
69 sbsc2: memory-controller@fb400000 {
70 compatible = "renesas,sbsc-sh73a0";
71 reg = <0xfb400000 0x400>;
72 interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>,
73 <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
74 interrupt-names = "sec", "temp";
75 power-domains = <&pd_a4bc1>;
76 };
77
78 sbsc1: memory-controller@fe400000 {
79 compatible = "renesas,sbsc-sh73a0";
80 reg = <0xfe400000 0x400>;
81 interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
82 <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
83 interrupt-names = "sec", "temp";
84 power-domains = <&pd_a4bc0>;
85 };
86
87 pmu {
88 compatible = "arm,cortex-a9-pmu";
89 interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>,
90 <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
91 interrupt-affinity = <&cpu0>, <&cpu1>;
92 };
93
94 cmt1: timer@e6138000 {
95 compatible = "renesas,cmt-48-sh73a0", "renesas,cmt-48";
96 reg = <0xe6138000 0x200>;
97 interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
98 clocks = <&mstp3_clks SH73A0_CLK_CMT1>;
99 clock-names = "fck";
100 power-domains = <&pd_c5>;
101 status = "disabled";
102 };
103
104 irqpin0: interrupt-controller@e6900000 {
105 compatible = "renesas,intc-irqpin-sh73a0", "renesas,intc-irqpin";
106 #interrupt-cells = <2>;
107 interrupt-controller;
108 reg = <0xe6900000 4>,
109 <0xe6900010 4>,
110 <0xe6900020 1>,
111 <0xe6900040 1>,
112 <0xe6900060 1>;
113 interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH
114 GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH
115 GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH
116 GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH
117 GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH
118 GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH
119 GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH
120 GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
121 clocks = <&mstp5_clks SH73A0_CLK_INTCA0>;
122 power-domains = <&pd_a4s>;
123 control-parent;
124 };
125
126 irqpin1: interrupt-controller@e6900004 {
127 compatible = "renesas,intc-irqpin-sh73a0", "renesas,intc-irqpin";
128 #interrupt-cells = <2>;
129 interrupt-controller;
130 reg = <0xe6900004 4>,
131 <0xe6900014 4>,
132 <0xe6900024 1>,
133 <0xe6900044 1>,
134 <0xe6900064 1>;
135 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH
136 GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH
137 GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH
138 GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH
139 GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH
140 GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH
141 GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH
142 GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
143 clocks = <&mstp5_clks SH73A0_CLK_INTCA0>;
144 power-domains = <&pd_a4s>;
145 control-parent;
146 };
147
148 irqpin2: interrupt-controller@e6900008 {
149 compatible = "renesas,intc-irqpin-sh73a0", "renesas,intc-irqpin";
150 #interrupt-cells = <2>;
151 interrupt-controller;
152 reg = <0xe6900008 4>,
153 <0xe6900018 4>,
154 <0xe6900028 1>,
155 <0xe6900048 1>,
156 <0xe6900068 1>;
157 interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH
158 GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH
159 GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH
160 GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH
161 GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH
162 GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH
163 GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH
164 GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
165 clocks = <&mstp5_clks SH73A0_CLK_INTCA0>;
166 power-domains = <&pd_a4s>;
167 control-parent;
168 };
169
170 irqpin3: interrupt-controller@e690000c {
171 compatible = "renesas,intc-irqpin-sh73a0", "renesas,intc-irqpin";
172 #interrupt-cells = <2>;
173 interrupt-controller;
174 reg = <0xe690000c 4>,
175 <0xe690001c 4>,
176 <0xe690002c 1>,
177 <0xe690004c 1>,
178 <0xe690006c 1>;
179 interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH
180 GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH
181 GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH
182 GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH
183 GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH
184 GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH
185 GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH
186 GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
187 clocks = <&mstp5_clks SH73A0_CLK_INTCA0>;
188 power-domains = <&pd_a4s>;
189 control-parent;
190 };
191
192 i2c0: i2c@e6820000 {
193 #address-cells = <1>;
194 #size-cells = <0>;
195 compatible = "renesas,iic-sh73a0", "renesas,rmobile-iic";
196 reg = <0xe6820000 0x425>;
197 interrupts = <GIC_SPI 167 IRQ_TYPE_LEVEL_HIGH
198 GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH
199 GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH
200 GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>;
201 clocks = <&mstp1_clks SH73A0_CLK_IIC0>;
202 power-domains = <&pd_a3sp>;
203 status = "disabled";
204 };
205
206 i2c1: i2c@e6822000 {
207 #address-cells = <1>;
208 #size-cells = <0>;
209 compatible = "renesas,iic-sh73a0", "renesas,rmobile-iic";
210 reg = <0xe6822000 0x425>;
211 interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH
212 GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH
213 GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH
214 GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
215 clocks = <&mstp3_clks SH73A0_CLK_IIC1>;
216 power-domains = <&pd_a3sp>;
217 status = "disabled";
218 };
219
220 i2c2: i2c@e6824000 {
221 #address-cells = <1>;
222 #size-cells = <0>;
223 compatible = "renesas,iic-sh73a0", "renesas,rmobile-iic";
224 reg = <0xe6824000 0x425>;
225 interrupts = <GIC_SPI 171 IRQ_TYPE_LEVEL_HIGH
226 GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH
227 GIC_SPI 173 IRQ_TYPE_LEVEL_HIGH
228 GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;
229 clocks = <&mstp0_clks SH73A0_CLK_IIC2>;
230 power-domains = <&pd_a3sp>;
231 status = "disabled";
232 };
233
234 i2c3: i2c@e6826000 {
235 #address-cells = <1>;
236 #size-cells = <0>;
237 compatible = "renesas,iic-sh73a0", "renesas,rmobile-iic";
238 reg = <0xe6826000 0x425>;
239 interrupts = <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH
240 GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH
241 GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH
242 GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>;
243 clocks = <&mstp4_clks SH73A0_CLK_IIC3>;
244 power-domains = <&pd_a3sp>;
245 status = "disabled";
246 };
247
248 i2c4: i2c@e6828000 {
249 #address-cells = <1>;
250 #size-cells = <0>;
251 compatible = "renesas,iic-sh73a0", "renesas,rmobile-iic";
252 reg = <0xe6828000 0x425>;
253 interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH
254 GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH
255 GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH
256 GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
257 clocks = <&mstp4_clks SH73A0_CLK_IIC4>;
258 power-domains = <&pd_c5>;
259 status = "disabled";
260 };
261
262 mmcif: mmc@e6bd0000 {
263 compatible = "renesas,mmcif-sh73a0", "renesas,sh-mmcif";
264 reg = <0xe6bd0000 0x100>;
265 interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH
266 GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>;
267 clocks = <&mstp3_clks SH73A0_CLK_MMCIF0>;
268 power-domains = <&pd_a3sp>;
269 reg-io-width = <4>;
270 status = "disabled";
271 };
272
273 msiof0: spi@e6e20000 {
274 compatible = "renesas,msiof-sh73a0", "renesas,sh-mobile-msiof";
275 reg = <0xe6e20000 0x0064>;
276 interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>;
277 clocks = <&mstp0_clks SH73A0_CLK_MSIOF0>;
278 power-domains = <&pd_a3sp>;
279 #address-cells = <1>;
280 #size-cells = <0>;
281 status = "disabled";
282 };
283
284 msiof1: spi@e6e10000 {
285 compatible = "renesas,msiof-sh73a0", "renesas,sh-mobile-msiof";
286 reg = <0xe6e10000 0x0064>;
287 interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
288 clocks = <&mstp2_clks SH73A0_CLK_MSIOF1>;
289 power-domains = <&pd_a3sp>;
290 #address-cells = <1>;
291 #size-cells = <0>;
292 status = "disabled";
293 };
294
295 msiof2: spi@e6e00000 {
296 compatible = "renesas,msiof-sh73a0", "renesas,sh-mobile-msiof";
297 reg = <0xe6e00000 0x0064>;
298 interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
299 clocks = <&mstp2_clks SH73A0_CLK_MSIOF2>;
300 power-domains = <&pd_a3sp>;
301 #address-cells = <1>;
302 #size-cells = <0>;
303 status = "disabled";
304 };
305
306 msiof3: spi@e6c90000 {
307 compatible = "renesas,msiof-sh73a0", "renesas,sh-mobile-msiof";
308 reg = <0xe6c90000 0x0064>;
309 interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
310 clocks = <&mstp2_clks SH73A0_CLK_MSIOF3>;
311 power-domains = <&pd_a3sp>;
312 #address-cells = <1>;
313 #size-cells = <0>;
314 status = "disabled";
315 };
316
317 sdhi0: sd@ee100000 {
318 compatible = "renesas,sdhi-sh73a0";
319 reg = <0xee100000 0x100>;
320 interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH
321 GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH
322 GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
323 clocks = <&mstp3_clks SH73A0_CLK_SDHI0>;
324 power-domains = <&pd_a3sp>;
325 cap-sd-highspeed;
326 status = "disabled";
327 };
328
329 /* SDHI1 and SDHI2 have no CD pins, no need for CD IRQ */
330 sdhi1: sd@ee120000 {
331 compatible = "renesas,sdhi-sh73a0";
332 reg = <0xee120000 0x100>;
333 interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH
334 GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
335 clocks = <&mstp3_clks SH73A0_CLK_SDHI1>;
336 power-domains = <&pd_a3sp>;
337 disable-wp;
338 cap-sd-highspeed;
339 status = "disabled";
340 };
341
342 sdhi2: sd@ee140000 {
343 compatible = "renesas,sdhi-sh73a0";
344 reg = <0xee140000 0x100>;
345 interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH
346 GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
347 clocks = <&mstp3_clks SH73A0_CLK_SDHI2>;
348 power-domains = <&pd_a3sp>;
349 disable-wp;
350 cap-sd-highspeed;
351 status = "disabled";
352 };
353
354 scifa0: serial@e6c40000 {
355 compatible = "renesas,scifa-sh73a0", "renesas,scifa";
356 reg = <0xe6c40000 0x100>;
357 interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
358 clocks = <&mstp2_clks SH73A0_CLK_SCIFA0>;
359 clock-names = "fck";
360 power-domains = <&pd_a3sp>;
361 status = "disabled";
362 };
363
364 scifa1: serial@e6c50000 {
365 compatible = "renesas,scifa-sh73a0", "renesas,scifa";
366 reg = <0xe6c50000 0x100>;
367 interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
368 clocks = <&mstp2_clks SH73A0_CLK_SCIFA1>;
369 clock-names = "fck";
370 power-domains = <&pd_a3sp>;
371 status = "disabled";
372 };
373
374 scifa2: serial@e6c60000 {
375 compatible = "renesas,scifa-sh73a0", "renesas,scifa";
376 reg = <0xe6c60000 0x100>;
377 interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
378 clocks = <&mstp2_clks SH73A0_CLK_SCIFA2>;
379 clock-names = "fck";
380 power-domains = <&pd_a3sp>;
381 status = "disabled";
382 };
383
384 scifa3: serial@e6c70000 {
385 compatible = "renesas,scifa-sh73a0", "renesas,scifa";
386 reg = <0xe6c70000 0x100>;
387 interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
388 clocks = <&mstp2_clks SH73A0_CLK_SCIFA3>;
389 clock-names = "fck";
390 power-domains = <&pd_a3sp>;
391 status = "disabled";
392 };
393
394 scifa4: serial@e6c80000 {
395 compatible = "renesas,scifa-sh73a0", "renesas,scifa";
396 reg = <0xe6c80000 0x100>;
397 interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
398 clocks = <&mstp2_clks SH73A0_CLK_SCIFA4>;
399 clock-names = "fck";
400 power-domains = <&pd_a3sp>;
401 status = "disabled";
402 };
403
404 scifa5: serial@e6cb0000 {
405 compatible = "renesas,scifa-sh73a0", "renesas,scifa";
406 reg = <0xe6cb0000 0x100>;
407 interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
408 clocks = <&mstp2_clks SH73A0_CLK_SCIFA5>;
409 clock-names = "fck";
410 power-domains = <&pd_a3sp>;
411 status = "disabled";
412 };
413
414 scifa6: serial@e6cc0000 {
415 compatible = "renesas,scifa-sh73a0", "renesas,scifa";
416 reg = <0xe6cc0000 0x100>;
417 interrupts = <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>;
418 clocks = <&mstp3_clks SH73A0_CLK_SCIFA6>;
419 clock-names = "fck";
420 power-domains = <&pd_a3sp>;
421 status = "disabled";
422 };
423
424 scifa7: serial@e6cd0000 {
425 compatible = "renesas,scifa-sh73a0", "renesas,scifa";
426 reg = <0xe6cd0000 0x100>;
427 interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>;
428 clocks = <&mstp2_clks SH73A0_CLK_SCIFA7>;
429 clock-names = "fck";
430 power-domains = <&pd_a3sp>;
431 status = "disabled";
432 };
433
434 scifb: serial@e6c30000 {
435 compatible = "renesas,scifb-sh73a0", "renesas,scifb";
436 reg = <0xe6c30000 0x100>;
437 interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
438 clocks = <&mstp2_clks SH73A0_CLK_SCIFB>;
439 clock-names = "fck";
440 power-domains = <&pd_a3sp>;
441 status = "disabled";
442 };
443
444 pfc: pin-controller@e6050000 {
445 compatible = "renesas,pfc-sh73a0";
446 reg = <0xe6050000 0x8000>,
447 <0xe605801c 0x1c>;
448 gpio-controller;
449 #gpio-cells = <2>;
450 gpio-ranges =
451 <&pfc 0 0 119>, <&pfc 128 128 37>, <&pfc 192 192 91>,
452 <&pfc 288 288 22>;
453 interrupts-extended =
454 <&irqpin0 0 0>, <&irqpin0 1 0>, <&irqpin0 2 0>, <&irqpin0 3 0>,
455 <&irqpin0 4 0>, <&irqpin0 5 0>, <&irqpin0 6 0>, <&irqpin0 7 0>,
456 <&irqpin1 0 0>, <&irqpin1 1 0>, <&irqpin1 2 0>, <&irqpin1 3 0>,
457 <&irqpin1 4 0>, <&irqpin1 5 0>, <&irqpin1 6 0>, <&irqpin1 7 0>,
458 <&irqpin2 0 0>, <&irqpin2 1 0>, <&irqpin2 2 0>, <&irqpin2 3 0>,
459 <&irqpin2 4 0>, <&irqpin2 5 0>, <&irqpin2 6 0>, <&irqpin2 7 0>,
460 <&irqpin3 0 0>, <&irqpin3 1 0>, <&irqpin3 2 0>, <&irqpin3 3 0>,
461 <&irqpin3 4 0>, <&irqpin3 5 0>, <&irqpin3 6 0>, <&irqpin3 7 0>;
462 power-domains = <&pd_c5>;
463 };
464
465 sysc: system-controller@e6180000 {
466 compatible = "renesas,sysc-sh73a0", "renesas,sysc-rmobile";
467 reg = <0xe6180000 0x8000>, <0xe6188000 0x8000>;
468
469 pm-domains {
470 pd_c5: c5 {
471 #address-cells = <1>;
472 #size-cells = <0>;
473 #power-domain-cells = <0>;
474
475 pd_c4: c4@0 {
476 reg = <0>;
477 #power-domain-cells = <0>;
478 };
479
480 pd_d4: d4@1 {
481 reg = <1>;
482 #power-domain-cells = <0>;
483 };
484
485 pd_a4bc0: a4bc0@4 {
486 reg = <4>;
487 #power-domain-cells = <0>;
488 };
489
490 pd_a4bc1: a4bc1@5 {
491 reg = <5>;
492 #power-domain-cells = <0>;
493 };
494
495 pd_a4lc0: a4lc0@6 {
496 reg = <6>;
497 #power-domain-cells = <0>;
498 };
499
500 pd_a4lc1: a4lc1@7 {
501 reg = <7>;
502 #power-domain-cells = <0>;
503 };
504
505 pd_a4mp: a4mp@8 {
506 reg = <8>;
507 #address-cells = <1>;
508 #size-cells = <0>;
509 #power-domain-cells = <0>;
510
511 pd_a3mp: a3mp@9 {
512 reg = <9>;
513 #power-domain-cells = <0>;
514 };
515
516 pd_a3vc: a3vc@10 {
517 reg = <10>;
518 #power-domain-cells = <0>;
519 };
520 };
521
522 pd_a4rm: a4rm@12 {
523 reg = <12>;
524 #address-cells = <1>;
525 #size-cells = <0>;
526 #power-domain-cells = <0>;
527
528 pd_a3r: a3r@13 {
529 reg = <13>;
530 #address-cells = <1>;
531 #size-cells = <0>;
532 #power-domain-cells = <0>;
533
534 pd_a2rv: a2rv@14 {
535 reg = <14>;
536 #address-cells = <1>;
537 #size-cells = <0>;
538 #power-domain-cells = <0>;
539 };
540 };
541 };
542
543 pd_a4s: a4s@16 {
544 reg = <16>;
545 #address-cells = <1>;
546 #size-cells = <0>;
547 #power-domain-cells = <0>;
548
549 pd_a3sp: a3sp@17 {
550 reg = <17>;
551 #power-domain-cells = <0>;
552 };
553
554 pd_a3sg: a3sg@18 {
555 reg = <18>;
556 #power-domain-cells = <0>;
557 };
558
559 pd_a3sm: a3sm@19 {
560 reg = <19>;
561 #address-cells = <1>;
562 #size-cells = <0>;
563 #power-domain-cells = <0>;
564
565 pd_a2sl: a2sl@20 {
566 reg = <20>;
567 #power-domain-cells = <0>;
568 };
569 };
570 };
571 };
572 };
573 };
574
575 sh_fsi2: sound@ec230000 {
576 #sound-dai-cells = <1>;
577 compatible = "renesas,fsi2-sh73a0", "renesas,sh_fsi2";
578 reg = <0xec230000 0x400>;
579 interrupts = <GIC_SPI 146 0x4>;
580 power-domains = <&pd_a4mp>;
581 status = "disabled";
582 };
583
584 bsc: bus@fec10000 {
585 compatible = "renesas,bsc-sh73a0", "renesas,bsc",
586 "simple-pm-bus";
587 #address-cells = <1>;
588 #size-cells = <1>;
589 ranges = <0 0 0x20000000>;
590 reg = <0xfec10000 0x400>;
591 interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
592 clocks = <&zb_clk>;
593 power-domains = <&pd_a4s>;
594 };
595
596 clocks {
597 #address-cells = <1>;
598 #size-cells = <1>;
599 ranges;
600
601 /* External root clocks */
602 extalr_clk: extalr {
603 compatible = "fixed-clock";
604 #clock-cells = <0>;
605 clock-frequency = <32768>;
606 };
607 extal1_clk: extal1 {
608 compatible = "fixed-clock";
609 #clock-cells = <0>;
610 clock-frequency = <26000000>;
611 };
612 extal2_clk: extal2 {
613 compatible = "fixed-clock";
614 #clock-cells = <0>;
615 };
616 extcki_clk: extcki {
617 compatible = "fixed-clock";
618 #clock-cells = <0>;
619 };
620 fsiack_clk: fsiack {
621 compatible = "fixed-clock";
622 #clock-cells = <0>;
623 clock-frequency = <0>;
624 };
625 fsibck_clk: fsibck {
626 compatible = "fixed-clock";
627 #clock-cells = <0>;
628 clock-frequency = <0>;
629 };
630
631 /* Special CPG clocks */
632 cpg_clocks: cpg_clocks@e6150000 {
633 compatible = "renesas,sh73a0-cpg-clocks";
634 reg = <0xe6150000 0x10000>;
635 clocks = <&extal1_clk>, <&extal2_clk>;
636 #clock-cells = <1>;
637 clock-output-names = "main", "pll0", "pll1", "pll2",
638 "pll3", "dsi0phy", "dsi1phy",
639 "zg", "m3", "b", "m1", "m2",
640 "z", "zx", "hp";
641 };
642
643 /* Variable factor clocks (DIV6) */
644 vclk1_clk: vclk1@e6150008 {
645 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
646 reg = <0xe6150008 4>;
647 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>,
648 <&extcki_clk>, <&extal2_clk>, <&main_div2_clk>,
649 <&extalr_clk>, <&cpg_clocks SH73A0_CLK_MAIN>,
650 <0>;
651 #clock-cells = <0>;
652 };
653 vclk2_clk: vclk2@e615000c {
654 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
655 reg = <0xe615000c 4>;
656 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>,
657 <&extcki_clk>, <&extal2_clk>, <&main_div2_clk>,
658 <&extalr_clk>, <&cpg_clocks SH73A0_CLK_MAIN>,
659 <0>;
660 #clock-cells = <0>;
661 };
662 vclk3_clk: vclk3@e615001c {
663 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
664 reg = <0xe615001c 4>;
665 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>,
666 <&extcki_clk>, <&extal2_clk>, <&main_div2_clk>,
667 <&extalr_clk>, <&cpg_clocks SH73A0_CLK_MAIN>,
668 <0>;
669 #clock-cells = <0>;
670 };
671 zb_clk: zb_clk@e6150010 {
672 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
673 reg = <0xe6150010 4>;
674 clocks = <&pll1_div2_clk>, <0>,
675 <&cpg_clocks SH73A0_CLK_PLL2>, <0>;
676 #clock-cells = <0>;
677 clock-output-names = "zb";
678 };
679 flctl_clk: flctlck@e6150014 {
680 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
681 reg = <0xe6150014 4>;
682 clocks = <&pll1_div2_clk>, <0>,
683 <&cpg_clocks SH73A0_CLK_PLL2>, <0>;
684 #clock-cells = <0>;
685 };
686 sdhi0_clk: sdhi0ck@e6150074 {
687 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
688 reg = <0xe6150074 4>;
689 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>,
690 <&pll1_div13_clk>, <0>;
691 #clock-cells = <0>;
692 };
693 sdhi1_clk: sdhi1ck@e6150078 {
694 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
695 reg = <0xe6150078 4>;
696 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>,
697 <&pll1_div13_clk>, <0>;
698 #clock-cells = <0>;
699 };
700 sdhi2_clk: sdhi2ck@e615007c {
701 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
702 reg = <0xe615007c 4>;
703 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>,
704 <&pll1_div13_clk>, <0>;
705 #clock-cells = <0>;
706 };
707 fsia_clk: fsia@e6150018 {
708 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
709 reg = <0xe6150018 4>;
710 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>,
711 <&fsiack_clk>, <&fsiack_clk>;
712 #clock-cells = <0>;
713 };
714 fsib_clk: fsib@e6150090 {
715 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
716 reg = <0xe6150090 4>;
717 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>,
718 <&fsibck_clk>, <&fsibck_clk>;
719 #clock-cells = <0>;
720 };
721 sub_clk: sub@e6150080 {
722 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
723 reg = <0xe6150080 4>;
724 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>,
725 <&extal2_clk>, <&extal2_clk>;
726 #clock-cells = <0>;
727 };
728 spua_clk: spua@e6150084 {
729 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
730 reg = <0xe6150084 4>;
731 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>,
732 <&extal2_clk>, <&extal2_clk>;
733 #clock-cells = <0>;
734 };
735 spuv_clk: spuv@e6150094 {
736 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
737 reg = <0xe6150094 4>;
738 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>,
739 <&extal2_clk>, <&extal2_clk>;
740 #clock-cells = <0>;
741 };
742 msu_clk: msu@e6150088 {
743 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
744 reg = <0xe6150088 4>;
745 clocks = <&pll1_div2_clk>, <0>,
746 <&cpg_clocks SH73A0_CLK_PLL2>, <0>;
747 #clock-cells = <0>;
748 };
749 hsi_clk: hsi@e615008c {
750 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
751 reg = <0xe615008c 4>;
752 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>,
753 <&pll1_div7_clk>, <0>;
754 #clock-cells = <0>;
755 };
756 mfg1_clk: mfg1@e6150098 {
757 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
758 reg = <0xe6150098 4>;
759 clocks = <&pll1_div2_clk>, <0>,
760 <&cpg_clocks SH73A0_CLK_PLL2>, <0>;
761 #clock-cells = <0>;
762 };
763 mfg2_clk: mfg2@e615009c {
764 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
765 reg = <0xe615009c 4>;
766 clocks = <&pll1_div2_clk>, <0>,
767 <&cpg_clocks SH73A0_CLK_PLL2>, <0>;
768 #clock-cells = <0>;
769 };
770 dsit_clk: dsit@e6150060 {
771 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
772 reg = <0xe6150060 4>;
773 clocks = <&pll1_div2_clk>, <0>,
774 <&cpg_clocks SH73A0_CLK_PLL2>, <0>;
775 #clock-cells = <0>;
776 };
777 dsi0p_clk: dsi0pck@e6150064 {
778 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock";
779 reg = <0xe6150064 4>;
780 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>,
781 <&cpg_clocks SH73A0_CLK_MAIN>, <&extal2_clk>,
782 <&extcki_clk>, <0>, <0>, <0>;
783 #clock-cells = <0>;
784 };
785
786 /* Fixed factor clocks */
787 main_div2_clk: main_div2 {
788 compatible = "fixed-factor-clock";
789 clocks = <&cpg_clocks SH73A0_CLK_MAIN>;
790 #clock-cells = <0>;
791 clock-div = <2>;
792 clock-mult = <1>;
793 };
794 pll1_div2_clk: pll1_div2 {
795 compatible = "fixed-factor-clock";
796 clocks = <&cpg_clocks SH73A0_CLK_PLL1>;
797 #clock-cells = <0>;
798 clock-div = <2>;
799 clock-mult = <1>;
800 };
801 pll1_div7_clk: pll1_div7 {
802 compatible = "fixed-factor-clock";
803 clocks = <&cpg_clocks SH73A0_CLK_PLL1>;
804 #clock-cells = <0>;
805 clock-div = <7>;
806 clock-mult = <1>;
807 };
808 pll1_div13_clk: pll1_div13 {
809 compatible = "fixed-factor-clock";
810 clocks = <&cpg_clocks SH73A0_CLK_PLL1>;
811 #clock-cells = <0>;
812 clock-div = <13>;
813 clock-mult = <1>;
814 };
815 twd_clk: twd {
816 compatible = "fixed-factor-clock";
817 clocks = <&cpg_clocks SH73A0_CLK_Z>;
818 #clock-cells = <0>;
819 clock-div = <4>;
820 clock-mult = <1>;
821 };
822
823 /* Gate clocks */
824 mstp0_clks: mstp0_clks@e6150130 {
825 compatible = "renesas,sh73a0-mstp-clocks", "renesas,cpg-mstp-clocks";
826 reg = <0xe6150130 4>, <0xe6150030 4>;
827 clocks = <&cpg_clocks SH73A0_CLK_HP>, <&sub_clk>;
828 #clock-cells = <1>;
829 clock-indices = <
830 SH73A0_CLK_IIC2 SH73A0_CLK_MSIOF0
831 >;
832 clock-output-names =
833 "iic2", "msiof0";
834 };
835 mstp1_clks: mstp1_clks@e6150134 {
836 compatible = "renesas,sh73a0-mstp-clocks", "renesas,cpg-mstp-clocks";
837 reg = <0xe6150134 4>, <0xe6150038 4>;
838 clocks = <&cpg_clocks SH73A0_CLK_B>,
839 <&cpg_clocks SH73A0_CLK_B>,
840 <&cpg_clocks SH73A0_CLK_B>,
841 <&cpg_clocks SH73A0_CLK_B>,
842 <&sub_clk>, <&cpg_clocks SH73A0_CLK_B>,
843 <&cpg_clocks SH73A0_CLK_HP>,
844 <&cpg_clocks SH73A0_CLK_ZG>,
845 <&cpg_clocks SH73A0_CLK_B>;
846 #clock-cells = <1>;
847 clock-indices = <
848 SH73A0_CLK_CEU1 SH73A0_CLK_CSI2_RX1
849 SH73A0_CLK_CEU0 SH73A0_CLK_CSI2_RX0
850 SH73A0_CLK_TMU0 SH73A0_CLK_DSITX0
851 SH73A0_CLK_IIC0 SH73A0_CLK_SGX
852 SH73A0_CLK_LCDC0
853 >;
854 clock-output-names =
855 "ceu1", "csi2_rx1", "ceu0", "csi2_rx0",
856 "tmu0", "dsitx0", "iic0", "sgx", "lcdc0";
857 };
858 mstp2_clks: mstp2_clks@e6150138 {
859 compatible = "renesas,sh73a0-mstp-clocks", "renesas,cpg-mstp-clocks";
860 reg = <0xe6150138 4>, <0xe6150040 4>;
861 clocks = <&sub_clk>, <&cpg_clocks SH73A0_CLK_HP>,
862 <&cpg_clocks SH73A0_CLK_HP>, <&sub_clk>,
863 <&sub_clk>, <&sub_clk>, <&sub_clk>,
864 <&sub_clk>, <&sub_clk>, <&sub_clk>,
865 <&sub_clk>, <&sub_clk>, <&sub_clk>;
866 #clock-cells = <1>;
867 clock-indices = <
868 SH73A0_CLK_SCIFA7 SH73A0_CLK_SY_DMAC
869 SH73A0_CLK_MP_DMAC SH73A0_CLK_MSIOF3
870 SH73A0_CLK_MSIOF1 SH73A0_CLK_SCIFA5
871 SH73A0_CLK_SCIFB SH73A0_CLK_MSIOF2
872 SH73A0_CLK_SCIFA0 SH73A0_CLK_SCIFA1
873 SH73A0_CLK_SCIFA2 SH73A0_CLK_SCIFA3
874 SH73A0_CLK_SCIFA4
875 >;
876 clock-output-names =
877 "scifa7", "sy_dmac", "mp_dmac", "msiof3",
878 "msiof1", "scifa5", "scifb", "msiof2",
879 "scifa0", "scifa1", "scifa2", "scifa3",
880 "scifa4";
881 };
882 mstp3_clks: mstp3_clks@e615013c {
883 compatible = "renesas,sh73a0-mstp-clocks", "renesas,cpg-mstp-clocks";
884 reg = <0xe615013c 4>, <0xe6150048 4>;
885 clocks = <&sub_clk>, <&extalr_clk>,
886 <&cpg_clocks SH73A0_CLK_HP>, <&sub_clk>,
887 <&cpg_clocks SH73A0_CLK_HP>,
888 <&cpg_clocks SH73A0_CLK_HP>, <&flctl_clk>,
889 <&sdhi0_clk>, <&sdhi1_clk>,
890 <&cpg_clocks SH73A0_CLK_HP>, <&sdhi2_clk>,
891 <&main_div2_clk>, <&main_div2_clk>,
892 <&main_div2_clk>, <&main_div2_clk>,
893 <&main_div2_clk>;
894 #clock-cells = <1>;
895 clock-indices = <
896 SH73A0_CLK_SCIFA6 SH73A0_CLK_CMT1
897 SH73A0_CLK_FSI SH73A0_CLK_IRDA
898 SH73A0_CLK_IIC1 SH73A0_CLK_USB SH73A0_CLK_FLCTL
899 SH73A0_CLK_SDHI0 SH73A0_CLK_SDHI1
900 SH73A0_CLK_MMCIF0 SH73A0_CLK_SDHI2
901 SH73A0_CLK_TPU0 SH73A0_CLK_TPU1
902 SH73A0_CLK_TPU2 SH73A0_CLK_TPU3
903 SH73A0_CLK_TPU4
904 >;
905 clock-output-names =
906 "scifa6", "cmt1", "fsi", "irda", "iic1",
907 "usb", "flctl", "sdhi0", "sdhi1", "mmcif0", "sdhi2",
908 "tpu0", "tpu1", "tpu2", "tpu3", "tpu4";
909 };
910 mstp4_clks: mstp4_clks@e6150140 {
911 compatible = "renesas,sh73a0-mstp-clocks", "renesas,cpg-mstp-clocks";
912 reg = <0xe6150140 4>, <0xe615004c 4>;
913 clocks = <&cpg_clocks SH73A0_CLK_HP>,
914 <&cpg_clocks SH73A0_CLK_HP>, <&extalr_clk>;
915 #clock-cells = <1>;
916 clock-indices = <
917 SH73A0_CLK_IIC3 SH73A0_CLK_IIC4
918 SH73A0_CLK_KEYSC
919 >;
920 clock-output-names =
921 "iic3", "iic4", "keysc";
922 };
923 mstp5_clks: mstp5_clks@e6150144 {
924 compatible = "renesas,sh73a0-mstp-clocks", "renesas,cpg-mstp-clocks";
925 reg = <0xe6150144 4>, <0xe615003c 4>;
926 clocks = <&cpg_clocks SH73A0_CLK_HP>;
927 #clock-cells = <1>;
928 clock-indices = <
929 SH73A0_CLK_INTCA0
930 >;
931 clock-output-names =
932 "intca0";
933 };
934 };
935 };