Loading...
1/*
2 * Device Tree Source for the r7s72100 SoC
3 *
4 * Copyright (C) 2013-14 Renesas Solutions Corp.
5 * Copyright (C) 2014 Wolfram Sang, Sang Engineering <wsa@sang-engineering.com>
6 *
7 * This file is licensed under the terms of the GNU General Public License
8 * version 2. This program is licensed "as is" without any warranty of any
9 * kind, whether express or implied.
10 */
11
12#include <dt-bindings/clock/r7s72100-clock.h>
13#include <dt-bindings/interrupt-controller/arm-gic.h>
14#include <dt-bindings/interrupt-controller/irq.h>
15
16/ {
17 compatible = "renesas,r7s72100";
18 interrupt-parent = <&gic>;
19 #address-cells = <1>;
20 #size-cells = <1>;
21
22 aliases {
23 i2c0 = &i2c0;
24 i2c1 = &i2c1;
25 i2c2 = &i2c2;
26 i2c3 = &i2c3;
27 spi0 = &spi0;
28 spi1 = &spi1;
29 spi2 = &spi2;
30 spi3 = &spi3;
31 spi4 = &spi4;
32 };
33
34 clocks {
35 ranges;
36 #address-cells = <1>;
37 #size-cells = <1>;
38
39 /* External clocks */
40 extal_clk: extal {
41 #clock-cells = <0>;
42 compatible = "fixed-clock";
43 /* If clk present, value must be set by board */
44 clock-frequency = <0>;
45 };
46
47 usb_x1_clk: usb_x1 {
48 #clock-cells = <0>;
49 compatible = "fixed-clock";
50 /* If clk present, value must be set by board */
51 clock-frequency = <0>;
52 };
53
54 rtc_x1_clk: rtc_x1 {
55 #clock-cells = <0>;
56 compatible = "fixed-clock";
57 /* If clk present, value must be set by board to 32678 */
58 clock-frequency = <0>;
59 };
60
61 rtc_x3_clk: rtc_x3 {
62 #clock-cells = <0>;
63 compatible = "fixed-clock";
64 /* If clk present, value must be set by board to 4000000 */
65 clock-frequency = <0>;
66 };
67
68 /* Fixed factor clocks */
69 b_clk: b {
70 #clock-cells = <0>;
71 compatible = "fixed-factor-clock";
72 clocks = <&cpg_clocks R7S72100_CLK_PLL>;
73 clock-mult = <1>;
74 clock-div = <3>;
75 };
76 p1_clk: p1 {
77 #clock-cells = <0>;
78 compatible = "fixed-factor-clock";
79 clocks = <&cpg_clocks R7S72100_CLK_PLL>;
80 clock-mult = <1>;
81 clock-div = <6>;
82 };
83 p0_clk: p0 {
84 #clock-cells = <0>;
85 compatible = "fixed-factor-clock";
86 clocks = <&cpg_clocks R7S72100_CLK_PLL>;
87 clock-mult = <1>;
88 clock-div = <12>;
89 };
90
91 /* Special CPG clocks */
92 cpg_clocks: cpg_clocks@fcfe0000 {
93 #clock-cells = <1>;
94 compatible = "renesas,r7s72100-cpg-clocks",
95 "renesas,rz-cpg-clocks";
96 reg = <0xfcfe0000 0x18>;
97 clocks = <&extal_clk>, <&usb_x1_clk>;
98 clock-output-names = "pll", "i", "g";
99 #power-domain-cells = <0>;
100 };
101
102 /* MSTP clocks */
103 mstp3_clks: mstp3_clks@fcfe0420 {
104 #clock-cells = <1>;
105 compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
106 reg = <0xfcfe0420 4>;
107 clocks = <&p0_clk>;
108 clock-indices = <R7S72100_CLK_MTU2>;
109 clock-output-names = "mtu2";
110 };
111
112 mstp4_clks: mstp4_clks@fcfe0424 {
113 #clock-cells = <1>;
114 compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
115 reg = <0xfcfe0424 4>;
116 clocks = <&p1_clk>, <&p1_clk>, <&p1_clk>, <&p1_clk>,
117 <&p1_clk>, <&p1_clk>, <&p1_clk>, <&p1_clk>;
118 clock-indices = <
119 R7S72100_CLK_SCIF0 R7S72100_CLK_SCIF1 R7S72100_CLK_SCIF2 R7S72100_CLK_SCIF3
120 R7S72100_CLK_SCIF4 R7S72100_CLK_SCIF5 R7S72100_CLK_SCIF6 R7S72100_CLK_SCIF7
121 >;
122 clock-output-names = "scif0", "scif1", "scif2", "scif3", "scif4", "scif5", "scif6", "scif7";
123 };
124
125 mstp5_clks: mstp5_clks@fcfe0428 {
126 #clock-cells = <1>;
127 compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
128 reg = <0xfcfe0428 4>;
129 clocks = <&p0_clk>, <&p0_clk>;
130 clock-indices = <R7S72100_CLK_OSTM0 R7S72100_CLK_OSTM1>;
131 clock-output-names = "ostm0", "ostm1";
132 };
133
134 mstp6_clks: mstp6_clks@fcfe042c {
135 #clock-cells = <1>;
136 compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
137 reg = <0xfcfe042c 4>;
138 clocks = <&p0_clk>;
139 clock-indices = <R7S72100_CLK_RTC>;
140 clock-output-names = "rtc";
141 };
142
143 mstp7_clks: mstp7_clks@fcfe0430 {
144 #clock-cells = <1>;
145 compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
146 reg = <0xfcfe0430 4>;
147 clocks = <&b_clk>, <&p1_clk>, <&p1_clk>;
148 clock-indices = <R7S72100_CLK_ETHER R7S72100_CLK_USB0 R7S72100_CLK_USB1>;
149 clock-output-names = "ether", "usb0", "usb1";
150 };
151
152 mstp8_clks: mstp8_clks@fcfe0434 {
153 #clock-cells = <1>;
154 compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
155 reg = <0xfcfe0434 4>;
156 clocks = <&p1_clk>;
157 clock-indices = <R7S72100_CLK_MMCIF>;
158 clock-output-names = "mmcif";
159 };
160
161 mstp9_clks: mstp9_clks@fcfe0438 {
162 #clock-cells = <1>;
163 compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
164 reg = <0xfcfe0438 4>;
165 clocks = <&p0_clk>, <&p0_clk>, <&p0_clk>, <&p0_clk>;
166 clock-indices = <
167 R7S72100_CLK_I2C0 R7S72100_CLK_I2C1 R7S72100_CLK_I2C2 R7S72100_CLK_I2C3
168 >;
169 clock-output-names = "i2c0", "i2c1", "i2c2", "i2c3";
170 };
171
172 mstp10_clks: mstp10_clks@fcfe043c {
173 #clock-cells = <1>;
174 compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
175 reg = <0xfcfe043c 4>;
176 clocks = <&p1_clk>, <&p1_clk>, <&p1_clk>, <&p1_clk>,
177 <&p1_clk>;
178 clock-indices = <
179 R7S72100_CLK_SPI0 R7S72100_CLK_SPI1 R7S72100_CLK_SPI2 R7S72100_CLK_SPI3
180 R7S72100_CLK_SPI4
181 >;
182 clock-output-names = "spi0", "spi1", "spi2", "spi3", "spi4";
183 };
184 mstp12_clks: mstp12_clks@fcfe0444 {
185 #clock-cells = <1>;
186 compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
187 reg = <0xfcfe0444 4>;
188 clocks = <&p1_clk>, <&p1_clk>, <&p1_clk>, <&p1_clk>;
189 clock-indices = <
190 R7S72100_CLK_SDHI00 R7S72100_CLK_SDHI01
191 R7S72100_CLK_SDHI10 R7S72100_CLK_SDHI11
192 >;
193 clock-output-names = "sdhi00", "sdhi01", "sdhi10", "sdhi11";
194 };
195 };
196
197 cpus {
198 #address-cells = <1>;
199 #size-cells = <0>;
200
201 cpu@0 {
202 device_type = "cpu";
203 compatible = "arm,cortex-a9";
204 reg = <0>;
205 clock-frequency = <400000000>;
206 clocks = <&cpg_clocks R7S72100_CLK_I>;
207 next-level-cache = <&L2>;
208 };
209 };
210
211 pinctrl: pin-controller@fcfe3000 {
212 compatible = "renesas,r7s72100-ports";
213
214 reg = <0xfcfe3000 0x4230>;
215
216 port0: gpio-0 {
217 gpio-controller;
218 #gpio-cells = <2>;
219 gpio-ranges = <&pinctrl 0 0 6>;
220 };
221
222 port1: gpio-1 {
223 gpio-controller;
224 #gpio-cells = <2>;
225 gpio-ranges = <&pinctrl 0 16 16>;
226 };
227
228 port2: gpio-2 {
229 gpio-controller;
230 #gpio-cells = <2>;
231 gpio-ranges = <&pinctrl 0 32 16>;
232 };
233
234 port3: gpio-3 {
235 gpio-controller;
236 #gpio-cells = <2>;
237 gpio-ranges = <&pinctrl 0 48 16>;
238 };
239
240 port4: gpio-4 {
241 gpio-controller;
242 #gpio-cells = <2>;
243 gpio-ranges = <&pinctrl 0 64 16>;
244 };
245
246 port5: gpio-5 {
247 gpio-controller;
248 #gpio-cells = <2>;
249 gpio-ranges = <&pinctrl 0 80 11>;
250 };
251
252 port6: gpio-6 {
253 gpio-controller;
254 #gpio-cells = <2>;
255 gpio-ranges = <&pinctrl 0 96 16>;
256 };
257
258 port7: gpio-7 {
259 gpio-controller;
260 #gpio-cells = <2>;
261 gpio-ranges = <&pinctrl 0 112 16>;
262 };
263
264 port8: gpio-8 {
265 gpio-controller;
266 #gpio-cells = <2>;
267 gpio-ranges = <&pinctrl 0 128 16>;
268 };
269
270 port9: gpio-9 {
271 gpio-controller;
272 #gpio-cells = <2>;
273 gpio-ranges = <&pinctrl 0 144 8>;
274 };
275
276 port10: gpio-10 {
277 gpio-controller;
278 #gpio-cells = <2>;
279 gpio-ranges = <&pinctrl 0 160 16>;
280 };
281
282 port11: gpio-11 {
283 gpio-controller;
284 #gpio-cells = <2>;
285 gpio-ranges = <&pinctrl 0 176 16>;
286 };
287 };
288
289 scif0: serial@e8007000 {
290 compatible = "renesas,scif-r7s72100", "renesas,scif";
291 reg = <0xe8007000 64>;
292 interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>,
293 <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>,
294 <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>,
295 <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
296 clocks = <&mstp4_clks R7S72100_CLK_SCIF0>;
297 clock-names = "fck";
298 power-domains = <&cpg_clocks>;
299 status = "disabled";
300 };
301
302 scif1: serial@e8007800 {
303 compatible = "renesas,scif-r7s72100", "renesas,scif";
304 reg = <0xe8007800 64>;
305 interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>,
306 <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>,
307 <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>,
308 <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>;
309 clocks = <&mstp4_clks R7S72100_CLK_SCIF1>;
310 clock-names = "fck";
311 power-domains = <&cpg_clocks>;
312 status = "disabled";
313 };
314
315 scif2: serial@e8008000 {
316 compatible = "renesas,scif-r7s72100", "renesas,scif";
317 reg = <0xe8008000 64>;
318 interrupts = <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>,
319 <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>,
320 <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>,
321 <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>;
322 clocks = <&mstp4_clks R7S72100_CLK_SCIF2>;
323 clock-names = "fck";
324 power-domains = <&cpg_clocks>;
325 status = "disabled";
326 };
327
328 scif3: serial@e8008800 {
329 compatible = "renesas,scif-r7s72100", "renesas,scif";
330 reg = <0xe8008800 64>;
331 interrupts = <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>,
332 <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>,
333 <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>,
334 <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>;
335 clocks = <&mstp4_clks R7S72100_CLK_SCIF3>;
336 clock-names = "fck";
337 power-domains = <&cpg_clocks>;
338 status = "disabled";
339 };
340
341 scif4: serial@e8009000 {
342 compatible = "renesas,scif-r7s72100", "renesas,scif";
343 reg = <0xe8009000 64>;
344 interrupts = <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>,
345 <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>,
346 <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>,
347 <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>;
348 clocks = <&mstp4_clks R7S72100_CLK_SCIF4>;
349 clock-names = "fck";
350 power-domains = <&cpg_clocks>;
351 status = "disabled";
352 };
353
354 scif5: serial@e8009800 {
355 compatible = "renesas,scif-r7s72100", "renesas,scif";
356 reg = <0xe8009800 64>;
357 interrupts = <GIC_SPI 210 IRQ_TYPE_LEVEL_HIGH>,
358 <GIC_SPI 211 IRQ_TYPE_LEVEL_HIGH>,
359 <GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH>,
360 <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>;
361 clocks = <&mstp4_clks R7S72100_CLK_SCIF5>;
362 clock-names = "fck";
363 power-domains = <&cpg_clocks>;
364 status = "disabled";
365 };
366
367 scif6: serial@e800a000 {
368 compatible = "renesas,scif-r7s72100", "renesas,scif";
369 reg = <0xe800a000 64>;
370 interrupts = <GIC_SPI 214 IRQ_TYPE_LEVEL_HIGH>,
371 <GIC_SPI 215 IRQ_TYPE_LEVEL_HIGH>,
372 <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>,
373 <GIC_SPI 213 IRQ_TYPE_LEVEL_HIGH>;
374 clocks = <&mstp4_clks R7S72100_CLK_SCIF6>;
375 clock-names = "fck";
376 power-domains = <&cpg_clocks>;
377 status = "disabled";
378 };
379
380 scif7: serial@e800a800 {
381 compatible = "renesas,scif-r7s72100", "renesas,scif";
382 reg = <0xe800a800 64>;
383 interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>,
384 <GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH>,
385 <GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH>,
386 <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>;
387 clocks = <&mstp4_clks R7S72100_CLK_SCIF7>;
388 clock-names = "fck";
389 power-domains = <&cpg_clocks>;
390 status = "disabled";
391 };
392
393 spi0: spi@e800c800 {
394 compatible = "renesas,rspi-r7s72100", "renesas,rspi-rz";
395 reg = <0xe800c800 0x24>;
396 interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>,
397 <GIC_SPI 239 IRQ_TYPE_LEVEL_HIGH>,
398 <GIC_SPI 240 IRQ_TYPE_LEVEL_HIGH>;
399 interrupt-names = "error", "rx", "tx";
400 clocks = <&mstp10_clks R7S72100_CLK_SPI0>;
401 power-domains = <&cpg_clocks>;
402 num-cs = <1>;
403 #address-cells = <1>;
404 #size-cells = <0>;
405 status = "disabled";
406 };
407
408 spi1: spi@e800d000 {
409 compatible = "renesas,rspi-r7s72100", "renesas,rspi-rz";
410 reg = <0xe800d000 0x24>;
411 interrupts = <GIC_SPI 241 IRQ_TYPE_LEVEL_HIGH>,
412 <GIC_SPI 242 IRQ_TYPE_LEVEL_HIGH>,
413 <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH>;
414 interrupt-names = "error", "rx", "tx";
415 clocks = <&mstp10_clks R7S72100_CLK_SPI1>;
416 power-domains = <&cpg_clocks>;
417 num-cs = <1>;
418 #address-cells = <1>;
419 #size-cells = <0>;
420 status = "disabled";
421 };
422
423 spi2: spi@e800d800 {
424 compatible = "renesas,rspi-r7s72100", "renesas,rspi-rz";
425 reg = <0xe800d800 0x24>;
426 interrupts = <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>,
427 <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>,
428 <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>;
429 interrupt-names = "error", "rx", "tx";
430 clocks = <&mstp10_clks R7S72100_CLK_SPI2>;
431 power-domains = <&cpg_clocks>;
432 num-cs = <1>;
433 #address-cells = <1>;
434 #size-cells = <0>;
435 status = "disabled";
436 };
437
438 spi3: spi@e800e000 {
439 compatible = "renesas,rspi-r7s72100", "renesas,rspi-rz";
440 reg = <0xe800e000 0x24>;
441 interrupts = <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>,
442 <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>,
443 <GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>;
444 interrupt-names = "error", "rx", "tx";
445 clocks = <&mstp10_clks R7S72100_CLK_SPI3>;
446 power-domains = <&cpg_clocks>;
447 num-cs = <1>;
448 #address-cells = <1>;
449 #size-cells = <0>;
450 status = "disabled";
451 };
452
453 spi4: spi@e800e800 {
454 compatible = "renesas,rspi-r7s72100", "renesas,rspi-rz";
455 reg = <0xe800e800 0x24>;
456 interrupts = <GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>,
457 <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>,
458 <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>;
459 interrupt-names = "error", "rx", "tx";
460 clocks = <&mstp10_clks R7S72100_CLK_SPI4>;
461 power-domains = <&cpg_clocks>;
462 num-cs = <1>;
463 #address-cells = <1>;
464 #size-cells = <0>;
465 status = "disabled";
466 };
467
468 gic: interrupt-controller@e8201000 {
469 compatible = "arm,pl390";
470 #interrupt-cells = <3>;
471 #address-cells = <0>;
472 interrupt-controller;
473 reg = <0xe8201000 0x1000>,
474 <0xe8202000 0x1000>;
475 };
476
477 L2: cache-controller@3ffff000 {
478 compatible = "arm,pl310-cache";
479 reg = <0x3ffff000 0x1000>;
480 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
481 arm,early-bresp-disable;
482 arm,full-line-zero-disable;
483 cache-unified;
484 cache-level = <2>;
485 };
486
487 wdt: watchdog@fcfe0000 {
488 compatible = "renesas,r7s72100-wdt", "renesas,rza-wdt";
489 reg = <0xfcfe0000 0x6>;
490 interrupts = <GIC_SPI 106 IRQ_TYPE_EDGE_RISING>;
491 clocks = <&p0_clk>;
492 };
493
494 i2c0: i2c@fcfee000 {
495 #address-cells = <1>;
496 #size-cells = <0>;
497 compatible = "renesas,riic-r7s72100", "renesas,riic-rz";
498 reg = <0xfcfee000 0x44>;
499 interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>,
500 <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>,
501 <GIC_SPI 159 IRQ_TYPE_EDGE_RISING>,
502 <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
503 <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>,
504 <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>,
505 <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>,
506 <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
507 clocks = <&mstp9_clks R7S72100_CLK_I2C0>;
508 clock-frequency = <100000>;
509 power-domains = <&cpg_clocks>;
510 status = "disabled";
511 };
512
513 i2c1: i2c@fcfee400 {
514 #address-cells = <1>;
515 #size-cells = <0>;
516 compatible = "renesas,riic-r7s72100", "renesas,riic-rz";
517 reg = <0xfcfee400 0x44>;
518 interrupts = <GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH>,
519 <GIC_SPI 166 IRQ_TYPE_EDGE_RISING>,
520 <GIC_SPI 167 IRQ_TYPE_EDGE_RISING>,
521 <GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>,
522 <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>,
523 <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
524 <GIC_SPI 171 IRQ_TYPE_LEVEL_HIGH>,
525 <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>;
526 clocks = <&mstp9_clks R7S72100_CLK_I2C1>;
527 clock-frequency = <100000>;
528 power-domains = <&cpg_clocks>;
529 status = "disabled";
530 };
531
532 i2c2: i2c@fcfee800 {
533 #address-cells = <1>;
534 #size-cells = <0>;
535 compatible = "renesas,riic-r7s72100", "renesas,riic-rz";
536 reg = <0xfcfee800 0x44>;
537 interrupts = <GIC_SPI 173 IRQ_TYPE_LEVEL_HIGH>,
538 <GIC_SPI 174 IRQ_TYPE_EDGE_RISING>,
539 <GIC_SPI 175 IRQ_TYPE_EDGE_RISING>,
540 <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>,
541 <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>,
542 <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>,
543 <GIC_SPI 179 IRQ_TYPE_LEVEL_HIGH>,
544 <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>;
545 clocks = <&mstp9_clks R7S72100_CLK_I2C2>;
546 clock-frequency = <100000>;
547 power-domains = <&cpg_clocks>;
548 status = "disabled";
549 };
550
551 i2c3: i2c@fcfeec00 {
552 #address-cells = <1>;
553 #size-cells = <0>;
554 compatible = "renesas,riic-r7s72100", "renesas,riic-rz";
555 reg = <0xfcfeec00 0x44>;
556 interrupts = <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>,
557 <GIC_SPI 182 IRQ_TYPE_EDGE_RISING>,
558 <GIC_SPI 183 IRQ_TYPE_EDGE_RISING>,
559 <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>,
560 <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>,
561 <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>,
562 <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>,
563 <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>;
564 clocks = <&mstp9_clks R7S72100_CLK_I2C3>;
565 clock-frequency = <100000>;
566 power-domains = <&cpg_clocks>;
567 status = "disabled";
568 };
569
570 mtu2: timer@fcff0000 {
571 compatible = "renesas,mtu2-r7s72100", "renesas,mtu2";
572 reg = <0xfcff0000 0x400>;
573 interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;
574 interrupt-names = "tgi0a";
575 clocks = <&mstp3_clks R7S72100_CLK_MTU2>;
576 clock-names = "fck";
577 power-domains = <&cpg_clocks>;
578 status = "disabled";
579 };
580
581 ether: ethernet@e8203000 {
582 compatible = "renesas,ether-r7s72100";
583 reg = <0xe8203000 0x800>,
584 <0xe8204800 0x200>;
585 interrupts = <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>;
586 clocks = <&mstp7_clks R7S72100_CLK_ETHER>;
587 power-domains = <&cpg_clocks>;
588 phy-mode = "mii";
589 #address-cells = <1>;
590 #size-cells = <0>;
591 status = "disabled";
592 };
593
594 mmcif: mmc@e804c800 {
595 compatible = "renesas,mmcif-r7s72100", "renesas,sh-mmcif";
596 reg = <0xe804c800 0x80>;
597 interrupts = <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH
598 GIC_SPI 269 IRQ_TYPE_LEVEL_HIGH
599 GIC_SPI 267 IRQ_TYPE_LEVEL_HIGH>;
600 clocks = <&mstp8_clks R7S72100_CLK_MMCIF>;
601 power-domains = <&cpg_clocks>;
602 reg-io-width = <4>;
603 bus-width = <8>;
604 status = "disabled";
605 };
606
607 sdhi0: sd@e804e000 {
608 compatible = "renesas,sdhi-r7s72100";
609 reg = <0xe804e000 0x100>;
610 interrupts = <GIC_SPI 270 IRQ_TYPE_LEVEL_HIGH
611 GIC_SPI 271 IRQ_TYPE_LEVEL_HIGH
612 GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>;
613
614 clocks = <&mstp12_clks R7S72100_CLK_SDHI00>,
615 <&mstp12_clks R7S72100_CLK_SDHI01>;
616 clock-names = "core", "cd";
617 power-domains = <&cpg_clocks>;
618 cap-sd-highspeed;
619 cap-sdio-irq;
620 status = "disabled";
621 };
622
623 sdhi1: sd@e804e800 {
624 compatible = "renesas,sdhi-r7s72100";
625 reg = <0xe804e800 0x100>;
626 interrupts = <GIC_SPI 273 IRQ_TYPE_LEVEL_HIGH
627 GIC_SPI 274 IRQ_TYPE_LEVEL_HIGH
628 GIC_SPI 275 IRQ_TYPE_LEVEL_HIGH>;
629
630 clocks = <&mstp12_clks R7S72100_CLK_SDHI10>,
631 <&mstp12_clks R7S72100_CLK_SDHI11>;
632 clock-names = "core", "cd";
633 power-domains = <&cpg_clocks>;
634 cap-sd-highspeed;
635 cap-sdio-irq;
636 status = "disabled";
637 };
638
639 ostm0: timer@fcfec000 {
640 compatible = "renesas,r7s72100-ostm", "renesas,ostm";
641 reg = <0xfcfec000 0x30>;
642 interrupts = <GIC_SPI 102 IRQ_TYPE_EDGE_RISING>;
643 clocks = <&mstp5_clks R7S72100_CLK_OSTM0>;
644 power-domains = <&cpg_clocks>;
645 status = "disabled";
646 };
647
648 ostm1: timer@fcfec400 {
649 compatible = "renesas,r7s72100-ostm", "renesas,ostm";
650 reg = <0xfcfec400 0x30>;
651 interrupts = <GIC_SPI 103 IRQ_TYPE_EDGE_RISING>;
652 clocks = <&mstp5_clks R7S72100_CLK_OSTM1>;
653 power-domains = <&cpg_clocks>;
654 status = "disabled";
655 };
656
657 rtc: rtc@fcff1000 {
658 compatible = "renesas,r7s72100-rtc", "renesas,sh-rtc";
659 reg = <0xfcff1000 0x2e>;
660 interrupts = <GIC_SPI 276 IRQ_TYPE_EDGE_RISING
661 GIC_SPI 277 IRQ_TYPE_EDGE_RISING
662 GIC_SPI 278 IRQ_TYPE_EDGE_RISING>;
663 interrupt-names = "alarm", "period", "carry";
664 clocks = <&mstp6_clks R7S72100_CLK_RTC>, <&rtc_x1_clk>,
665 <&rtc_x3_clk>, <&extal_clk>;
666 clock-names = "fck", "rtc_x1", "rtc_x3", "extal";
667 power-domains = <&cpg_clocks>;
668 status = "disabled";
669 };
670};
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Device Tree Source for the r7s72100 SoC
4 *
5 * Copyright (C) 2013-14 Renesas Solutions Corp.
6 * Copyright (C) 2014 Wolfram Sang, Sang Engineering <wsa@sang-engineering.com>
7 */
8
9#include <dt-bindings/clock/r7s72100-clock.h>
10#include <dt-bindings/interrupt-controller/arm-gic.h>
11#include <dt-bindings/interrupt-controller/irq.h>
12
13/ {
14 compatible = "renesas,r7s72100";
15 #address-cells = <1>;
16 #size-cells = <1>;
17
18 aliases {
19 i2c0 = &i2c0;
20 i2c1 = &i2c1;
21 i2c2 = &i2c2;
22 i2c3 = &i2c3;
23 spi0 = &spi0;
24 spi1 = &spi1;
25 spi2 = &spi2;
26 spi3 = &spi3;
27 spi4 = &spi4;
28 };
29
30 /* Fixed factor clocks */
31 b_clk: b {
32 #clock-cells = <0>;
33 compatible = "fixed-factor-clock";
34 clocks = <&cpg_clocks R7S72100_CLK_PLL>;
35 clock-mult = <1>;
36 clock-div = <3>;
37 };
38
39 cpus {
40 #address-cells = <1>;
41 #size-cells = <0>;
42
43 cpu@0 {
44 device_type = "cpu";
45 compatible = "arm,cortex-a9";
46 reg = <0>;
47 clock-frequency = <400000000>;
48 clocks = <&cpg_clocks R7S72100_CLK_I>;
49 next-level-cache = <&L2>;
50 };
51 };
52
53 /* External clocks */
54 extal_clk: extal {
55 #clock-cells = <0>;
56 compatible = "fixed-clock";
57 /* If clk present, value must be set by board */
58 clock-frequency = <0>;
59 };
60
61 p0_clk: p0 {
62 #clock-cells = <0>;
63 compatible = "fixed-factor-clock";
64 clocks = <&cpg_clocks R7S72100_CLK_PLL>;
65 clock-mult = <1>;
66 clock-div = <12>;
67 };
68
69 p1_clk: p1 {
70 #clock-cells = <0>;
71 compatible = "fixed-factor-clock";
72 clocks = <&cpg_clocks R7S72100_CLK_PLL>;
73 clock-mult = <1>;
74 clock-div = <6>;
75 };
76
77 pmu {
78 compatible = "arm,cortex-a9-pmu";
79 interrupts-extended = <&gic GIC_PPI 0 IRQ_TYPE_LEVEL_HIGH>;
80 };
81
82 rtc_x1_clk: rtc_x1 {
83 #clock-cells = <0>;
84 compatible = "fixed-clock";
85 /* If clk present, value must be set by board to 32678 */
86 clock-frequency = <0>;
87 };
88
89 rtc_x3_clk: rtc_x3 {
90 #clock-cells = <0>;
91 compatible = "fixed-clock";
92 /* If clk present, value must be set by board to 4000000 */
93 clock-frequency = <0>;
94 };
95
96 soc {
97 compatible = "simple-bus";
98 interrupt-parent = <&gic>;
99
100 #address-cells = <1>;
101 #size-cells = <1>;
102 ranges;
103
104 L2: cache-controller@3ffff000 {
105 compatible = "arm,pl310-cache";
106 reg = <0x3ffff000 0x1000>;
107 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
108 arm,early-bresp-disable;
109 arm,full-line-zero-disable;
110 cache-unified;
111 cache-level = <2>;
112 };
113
114 scif0: serial@e8007000 {
115 compatible = "renesas,scif-r7s72100", "renesas,scif";
116 reg = <0xe8007000 64>;
117 interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>,
118 <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>,
119 <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>,
120 <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
121 clocks = <&mstp4_clks R7S72100_CLK_SCIF0>;
122 clock-names = "fck";
123 power-domains = <&cpg_clocks>;
124 status = "disabled";
125 };
126
127 scif1: serial@e8007800 {
128 compatible = "renesas,scif-r7s72100", "renesas,scif";
129 reg = <0xe8007800 64>;
130 interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>,
131 <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>,
132 <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>,
133 <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>;
134 clocks = <&mstp4_clks R7S72100_CLK_SCIF1>;
135 clock-names = "fck";
136 power-domains = <&cpg_clocks>;
137 status = "disabled";
138 };
139
140 scif2: serial@e8008000 {
141 compatible = "renesas,scif-r7s72100", "renesas,scif";
142 reg = <0xe8008000 64>;
143 interrupts = <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>,
144 <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>,
145 <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>,
146 <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>;
147 clocks = <&mstp4_clks R7S72100_CLK_SCIF2>;
148 clock-names = "fck";
149 power-domains = <&cpg_clocks>;
150 status = "disabled";
151 };
152
153 scif3: serial@e8008800 {
154 compatible = "renesas,scif-r7s72100", "renesas,scif";
155 reg = <0xe8008800 64>;
156 interrupts = <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>,
157 <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>,
158 <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>,
159 <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>;
160 clocks = <&mstp4_clks R7S72100_CLK_SCIF3>;
161 clock-names = "fck";
162 power-domains = <&cpg_clocks>;
163 status = "disabled";
164 };
165
166 scif4: serial@e8009000 {
167 compatible = "renesas,scif-r7s72100", "renesas,scif";
168 reg = <0xe8009000 64>;
169 interrupts = <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>,
170 <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>,
171 <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>,
172 <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>;
173 clocks = <&mstp4_clks R7S72100_CLK_SCIF4>;
174 clock-names = "fck";
175 power-domains = <&cpg_clocks>;
176 status = "disabled";
177 };
178
179 scif5: serial@e8009800 {
180 compatible = "renesas,scif-r7s72100", "renesas,scif";
181 reg = <0xe8009800 64>;
182 interrupts = <GIC_SPI 210 IRQ_TYPE_LEVEL_HIGH>,
183 <GIC_SPI 211 IRQ_TYPE_LEVEL_HIGH>,
184 <GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH>,
185 <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>;
186 clocks = <&mstp4_clks R7S72100_CLK_SCIF5>;
187 clock-names = "fck";
188 power-domains = <&cpg_clocks>;
189 status = "disabled";
190 };
191
192 scif6: serial@e800a000 {
193 compatible = "renesas,scif-r7s72100", "renesas,scif";
194 reg = <0xe800a000 64>;
195 interrupts = <GIC_SPI 214 IRQ_TYPE_LEVEL_HIGH>,
196 <GIC_SPI 215 IRQ_TYPE_LEVEL_HIGH>,
197 <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>,
198 <GIC_SPI 213 IRQ_TYPE_LEVEL_HIGH>;
199 clocks = <&mstp4_clks R7S72100_CLK_SCIF6>;
200 clock-names = "fck";
201 power-domains = <&cpg_clocks>;
202 status = "disabled";
203 };
204
205 scif7: serial@e800a800 {
206 compatible = "renesas,scif-r7s72100", "renesas,scif";
207 reg = <0xe800a800 64>;
208 interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>,
209 <GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH>,
210 <GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH>,
211 <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>;
212 clocks = <&mstp4_clks R7S72100_CLK_SCIF7>;
213 clock-names = "fck";
214 power-domains = <&cpg_clocks>;
215 status = "disabled";
216 };
217
218 spi0: spi@e800c800 {
219 compatible = "renesas,rspi-r7s72100", "renesas,rspi-rz";
220 reg = <0xe800c800 0x24>;
221 interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>,
222 <GIC_SPI 239 IRQ_TYPE_LEVEL_HIGH>,
223 <GIC_SPI 240 IRQ_TYPE_LEVEL_HIGH>;
224 interrupt-names = "error", "rx", "tx";
225 clocks = <&mstp10_clks R7S72100_CLK_SPI0>;
226 power-domains = <&cpg_clocks>;
227 num-cs = <1>;
228 #address-cells = <1>;
229 #size-cells = <0>;
230 status = "disabled";
231 };
232
233 spi1: spi@e800d000 {
234 compatible = "renesas,rspi-r7s72100", "renesas,rspi-rz";
235 reg = <0xe800d000 0x24>;
236 interrupts = <GIC_SPI 241 IRQ_TYPE_LEVEL_HIGH>,
237 <GIC_SPI 242 IRQ_TYPE_LEVEL_HIGH>,
238 <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH>;
239 interrupt-names = "error", "rx", "tx";
240 clocks = <&mstp10_clks R7S72100_CLK_SPI1>;
241 power-domains = <&cpg_clocks>;
242 num-cs = <1>;
243 #address-cells = <1>;
244 #size-cells = <0>;
245 status = "disabled";
246 };
247
248 spi2: spi@e800d800 {
249 compatible = "renesas,rspi-r7s72100", "renesas,rspi-rz";
250 reg = <0xe800d800 0x24>;
251 interrupts = <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>,
252 <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>,
253 <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>;
254 interrupt-names = "error", "rx", "tx";
255 clocks = <&mstp10_clks R7S72100_CLK_SPI2>;
256 power-domains = <&cpg_clocks>;
257 num-cs = <1>;
258 #address-cells = <1>;
259 #size-cells = <0>;
260 status = "disabled";
261 };
262
263 spi3: spi@e800e000 {
264 compatible = "renesas,rspi-r7s72100", "renesas,rspi-rz";
265 reg = <0xe800e000 0x24>;
266 interrupts = <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>,
267 <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>,
268 <GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>;
269 interrupt-names = "error", "rx", "tx";
270 clocks = <&mstp10_clks R7S72100_CLK_SPI3>;
271 power-domains = <&cpg_clocks>;
272 num-cs = <1>;
273 #address-cells = <1>;
274 #size-cells = <0>;
275 status = "disabled";
276 };
277
278 spi4: spi@e800e800 {
279 compatible = "renesas,rspi-r7s72100", "renesas,rspi-rz";
280 reg = <0xe800e800 0x24>;
281 interrupts = <GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>,
282 <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>,
283 <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>;
284 interrupt-names = "error", "rx", "tx";
285 clocks = <&mstp10_clks R7S72100_CLK_SPI4>;
286 power-domains = <&cpg_clocks>;
287 num-cs = <1>;
288 #address-cells = <1>;
289 #size-cells = <0>;
290 status = "disabled";
291 };
292
293 usbhs0: usb@e8010000 {
294 compatible = "renesas,usbhs-r7s72100", "renesas,rza1-usbhs";
295 reg = <0xe8010000 0x1a0>;
296 interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
297 clocks = <&mstp7_clks R7S72100_CLK_USB0>;
298 renesas,buswait = <4>;
299 power-domains = <&cpg_clocks>;
300 status = "disabled";
301 };
302
303 usbhs1: usb@e8207000 {
304 compatible = "renesas,usbhs-r7s72100", "renesas,rza1-usbhs";
305 reg = <0xe8207000 0x1a0>;
306 interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
307 clocks = <&mstp7_clks R7S72100_CLK_USB1>;
308 renesas,buswait = <4>;
309 power-domains = <&cpg_clocks>;
310 status = "disabled";
311 };
312
313 mmcif: mmc@e804c800 {
314 compatible = "renesas,mmcif-r7s72100", "renesas,sh-mmcif";
315 reg = <0xe804c800 0x80>;
316 interrupts = <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>,
317 <GIC_SPI 269 IRQ_TYPE_LEVEL_HIGH>,
318 <GIC_SPI 267 IRQ_TYPE_LEVEL_HIGH>;
319 clocks = <&mstp8_clks R7S72100_CLK_MMCIF>;
320 power-domains = <&cpg_clocks>;
321 reg-io-width = <4>;
322 bus-width = <8>;
323 status = "disabled";
324 };
325
326 sdhi0: mmc@e804e000 {
327 compatible = "renesas,sdhi-r7s72100";
328 reg = <0xe804e000 0x100>;
329 interrupts = <GIC_SPI 270 IRQ_TYPE_LEVEL_HIGH>,
330 <GIC_SPI 271 IRQ_TYPE_LEVEL_HIGH>,
331 <GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>;
332
333 clocks = <&mstp12_clks R7S72100_CLK_SDHI00>,
334 <&mstp12_clks R7S72100_CLK_SDHI01>;
335 clock-names = "core", "cd";
336 power-domains = <&cpg_clocks>;
337 cap-sd-highspeed;
338 cap-sdio-irq;
339 status = "disabled";
340 };
341
342 sdhi1: mmc@e804e800 {
343 compatible = "renesas,sdhi-r7s72100";
344 reg = <0xe804e800 0x100>;
345 interrupts = <GIC_SPI 273 IRQ_TYPE_LEVEL_HIGH>,
346 <GIC_SPI 274 IRQ_TYPE_LEVEL_HIGH>,
347 <GIC_SPI 275 IRQ_TYPE_LEVEL_HIGH>;
348
349 clocks = <&mstp12_clks R7S72100_CLK_SDHI10>,
350 <&mstp12_clks R7S72100_CLK_SDHI11>;
351 clock-names = "core", "cd";
352 power-domains = <&cpg_clocks>;
353 cap-sd-highspeed;
354 cap-sdio-irq;
355 status = "disabled";
356 };
357
358 gic: interrupt-controller@e8201000 {
359 compatible = "arm,pl390";
360 #interrupt-cells = <3>;
361 #address-cells = <0>;
362 interrupt-controller;
363 reg = <0xe8201000 0x1000>,
364 <0xe8202000 0x1000>;
365 };
366
367 ether: ethernet@e8203000 {
368 compatible = "renesas,ether-r7s72100";
369 reg = <0xe8203000 0x800>,
370 <0xe8204800 0x200>;
371 interrupts = <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>;
372 clocks = <&mstp7_clks R7S72100_CLK_ETHER>;
373 power-domains = <&cpg_clocks>;
374 phy-mode = "mii";
375 #address-cells = <1>;
376 #size-cells = <0>;
377 status = "disabled";
378 };
379
380 ceu: camera@e8210000 {
381 reg = <0xe8210000 0x3000>;
382 compatible = "renesas,r7s72100-ceu";
383 interrupts = <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>;
384 clocks = <&mstp6_clks R7S72100_CLK_CEU>;
385 power-domains = <&cpg_clocks>;
386 status = "disabled";
387 };
388
389 wdt: watchdog@fcfe0000 {
390 compatible = "renesas,r7s72100-wdt", "renesas,rza-wdt";
391 reg = <0xfcfe0000 0x6>;
392 interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
393 clocks = <&p0_clk>;
394 };
395
396 /* Special CPG clocks */
397 cpg_clocks: cpg_clocks@fcfe0000 {
398 #clock-cells = <1>;
399 compatible = "renesas,r7s72100-cpg-clocks",
400 "renesas,rz-cpg-clocks";
401 reg = <0xfcfe0000 0x18>;
402 clocks = <&extal_clk>, <&usb_x1_clk>;
403 clock-output-names = "pll", "i", "g";
404 #power-domain-cells = <0>;
405 };
406
407 /* MSTP clocks */
408 mstp3_clks: mstp3_clks@fcfe0420 {
409 #clock-cells = <1>;
410 compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
411 reg = <0xfcfe0420 4>;
412 clocks = <&p0_clk>;
413 clock-indices = <R7S72100_CLK_MTU2>;
414 clock-output-names = "mtu2";
415 };
416
417 mstp4_clks: mstp4_clks@fcfe0424 {
418 #clock-cells = <1>;
419 compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
420 reg = <0xfcfe0424 4>;
421 clocks = <&p1_clk>, <&p1_clk>, <&p1_clk>, <&p1_clk>,
422 <&p1_clk>, <&p1_clk>, <&p1_clk>, <&p1_clk>;
423 clock-indices = <
424 R7S72100_CLK_SCIF0 R7S72100_CLK_SCIF1 R7S72100_CLK_SCIF2 R7S72100_CLK_SCIF3
425 R7S72100_CLK_SCIF4 R7S72100_CLK_SCIF5 R7S72100_CLK_SCIF6 R7S72100_CLK_SCIF7
426 >;
427 clock-output-names = "scif0", "scif1", "scif2", "scif3", "scif4", "scif5", "scif6", "scif7";
428 };
429
430 mstp5_clks: mstp5_clks@fcfe0428 {
431 #clock-cells = <1>;
432 compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
433 reg = <0xfcfe0428 4>;
434 clocks = <&p0_clk>, <&p0_clk>;
435 clock-indices = <R7S72100_CLK_OSTM0 R7S72100_CLK_OSTM1>;
436 clock-output-names = "ostm0", "ostm1";
437 };
438
439 mstp6_clks: mstp6_clks@fcfe042c {
440 #clock-cells = <1>;
441 compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
442 reg = <0xfcfe042c 4>;
443 clocks = <&b_clk>, <&p0_clk>;
444 clock-indices = <R7S72100_CLK_CEU R7S72100_CLK_RTC>;
445 clock-output-names = "ceu", "rtc";
446 };
447
448 mstp7_clks: mstp7_clks@fcfe0430 {
449 #clock-cells = <1>;
450 compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
451 reg = <0xfcfe0430 4>;
452 clocks = <&b_clk>, <&p1_clk>, <&p1_clk>;
453 clock-indices = <R7S72100_CLK_ETHER R7S72100_CLK_USB0 R7S72100_CLK_USB1>;
454 clock-output-names = "ether", "usb0", "usb1";
455 };
456
457 mstp8_clks: mstp8_clks@fcfe0434 {
458 #clock-cells = <1>;
459 compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
460 reg = <0xfcfe0434 4>;
461 clocks = <&p1_clk>;
462 clock-indices = <R7S72100_CLK_MMCIF>;
463 clock-output-names = "mmcif";
464 };
465
466 mstp9_clks: mstp9_clks@fcfe0438 {
467 #clock-cells = <1>;
468 compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
469 reg = <0xfcfe0438 4>;
470 clocks = <&p0_clk>, <&p0_clk>, <&p0_clk>, <&p0_clk>, <&b_clk>, <&b_clk>;
471 clock-indices = <
472 R7S72100_CLK_I2C0 R7S72100_CLK_I2C1 R7S72100_CLK_I2C2 R7S72100_CLK_I2C3
473 R7S72100_CLK_SPIBSC0 R7S72100_CLK_SPIBSC1
474 >;
475 clock-output-names = "i2c0", "i2c1", "i2c2", "i2c3", "spibsc0", "spibsc1";
476 };
477
478 mstp10_clks: mstp10_clks@fcfe043c {
479 #clock-cells = <1>;
480 compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
481 reg = <0xfcfe043c 4>;
482 clocks = <&p1_clk>, <&p1_clk>, <&p1_clk>, <&p1_clk>,
483 <&p1_clk>;
484 clock-indices = <
485 R7S72100_CLK_SPI0 R7S72100_CLK_SPI1 R7S72100_CLK_SPI2 R7S72100_CLK_SPI3
486 R7S72100_CLK_SPI4
487 >;
488 clock-output-names = "spi0", "spi1", "spi2", "spi3", "spi4";
489 };
490 mstp12_clks: mstp12_clks@fcfe0444 {
491 #clock-cells = <1>;
492 compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
493 reg = <0xfcfe0444 4>;
494 clocks = <&p1_clk>, <&p1_clk>, <&p1_clk>, <&p1_clk>;
495 clock-indices = <
496 R7S72100_CLK_SDHI00 R7S72100_CLK_SDHI01
497 R7S72100_CLK_SDHI10 R7S72100_CLK_SDHI11
498 >;
499 clock-output-names = "sdhi00", "sdhi01", "sdhi10", "sdhi11";
500 };
501
502 pinctrl: pin-controller@fcfe3000 {
503 compatible = "renesas,r7s72100-ports";
504
505 reg = <0xfcfe3000 0x4230>;
506
507 port0: gpio-0 {
508 gpio-controller;
509 #gpio-cells = <2>;
510 gpio-ranges = <&pinctrl 0 0 6>;
511 };
512
513 port1: gpio-1 {
514 gpio-controller;
515 #gpio-cells = <2>;
516 gpio-ranges = <&pinctrl 0 16 16>;
517 };
518
519 port2: gpio-2 {
520 gpio-controller;
521 #gpio-cells = <2>;
522 gpio-ranges = <&pinctrl 0 32 16>;
523 };
524
525 port3: gpio-3 {
526 gpio-controller;
527 #gpio-cells = <2>;
528 gpio-ranges = <&pinctrl 0 48 16>;
529 };
530
531 port4: gpio-4 {
532 gpio-controller;
533 #gpio-cells = <2>;
534 gpio-ranges = <&pinctrl 0 64 16>;
535 };
536
537 port5: gpio-5 {
538 gpio-controller;
539 #gpio-cells = <2>;
540 gpio-ranges = <&pinctrl 0 80 11>;
541 };
542
543 port6: gpio-6 {
544 gpio-controller;
545 #gpio-cells = <2>;
546 gpio-ranges = <&pinctrl 0 96 16>;
547 };
548
549 port7: gpio-7 {
550 gpio-controller;
551 #gpio-cells = <2>;
552 gpio-ranges = <&pinctrl 0 112 16>;
553 };
554
555 port8: gpio-8 {
556 gpio-controller;
557 #gpio-cells = <2>;
558 gpio-ranges = <&pinctrl 0 128 16>;
559 };
560
561 port9: gpio-9 {
562 gpio-controller;
563 #gpio-cells = <2>;
564 gpio-ranges = <&pinctrl 0 144 8>;
565 };
566
567 port10: gpio-10 {
568 gpio-controller;
569 #gpio-cells = <2>;
570 gpio-ranges = <&pinctrl 0 160 16>;
571 };
572
573 port11: gpio-11 {
574 gpio-controller;
575 #gpio-cells = <2>;
576 gpio-ranges = <&pinctrl 0 176 16>;
577 };
578 };
579
580 ostm0: timer@fcfec000 {
581 compatible = "renesas,r7s72100-ostm", "renesas,ostm";
582 reg = <0xfcfec000 0x30>;
583 interrupts = <GIC_SPI 102 IRQ_TYPE_EDGE_RISING>;
584 clocks = <&mstp5_clks R7S72100_CLK_OSTM0>;
585 power-domains = <&cpg_clocks>;
586 status = "disabled";
587 };
588
589 ostm1: timer@fcfec400 {
590 compatible = "renesas,r7s72100-ostm", "renesas,ostm";
591 reg = <0xfcfec400 0x30>;
592 interrupts = <GIC_SPI 103 IRQ_TYPE_EDGE_RISING>;
593 clocks = <&mstp5_clks R7S72100_CLK_OSTM1>;
594 power-domains = <&cpg_clocks>;
595 status = "disabled";
596 };
597
598 i2c0: i2c@fcfee000 {
599 #address-cells = <1>;
600 #size-cells = <0>;
601 compatible = "renesas,riic-r7s72100", "renesas,riic-rz";
602 reg = <0xfcfee000 0x44>;
603 interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>,
604 <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>,
605 <GIC_SPI 159 IRQ_TYPE_EDGE_RISING>,
606 <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
607 <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>,
608 <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>,
609 <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>,
610 <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
611 clocks = <&mstp9_clks R7S72100_CLK_I2C0>;
612 clock-frequency = <100000>;
613 power-domains = <&cpg_clocks>;
614 status = "disabled";
615 };
616
617 i2c1: i2c@fcfee400 {
618 #address-cells = <1>;
619 #size-cells = <0>;
620 compatible = "renesas,riic-r7s72100", "renesas,riic-rz";
621 reg = <0xfcfee400 0x44>;
622 interrupts = <GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH>,
623 <GIC_SPI 166 IRQ_TYPE_EDGE_RISING>,
624 <GIC_SPI 167 IRQ_TYPE_EDGE_RISING>,
625 <GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>,
626 <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>,
627 <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
628 <GIC_SPI 171 IRQ_TYPE_LEVEL_HIGH>,
629 <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>;
630 clocks = <&mstp9_clks R7S72100_CLK_I2C1>;
631 clock-frequency = <100000>;
632 power-domains = <&cpg_clocks>;
633 status = "disabled";
634 };
635
636 i2c2: i2c@fcfee800 {
637 #address-cells = <1>;
638 #size-cells = <0>;
639 compatible = "renesas,riic-r7s72100", "renesas,riic-rz";
640 reg = <0xfcfee800 0x44>;
641 interrupts = <GIC_SPI 173 IRQ_TYPE_LEVEL_HIGH>,
642 <GIC_SPI 174 IRQ_TYPE_EDGE_RISING>,
643 <GIC_SPI 175 IRQ_TYPE_EDGE_RISING>,
644 <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>,
645 <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>,
646 <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>,
647 <GIC_SPI 179 IRQ_TYPE_LEVEL_HIGH>,
648 <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>;
649 clocks = <&mstp9_clks R7S72100_CLK_I2C2>;
650 clock-frequency = <100000>;
651 power-domains = <&cpg_clocks>;
652 status = "disabled";
653 };
654
655 i2c3: i2c@fcfeec00 {
656 #address-cells = <1>;
657 #size-cells = <0>;
658 compatible = "renesas,riic-r7s72100", "renesas,riic-rz";
659 reg = <0xfcfeec00 0x44>;
660 interrupts = <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>,
661 <GIC_SPI 182 IRQ_TYPE_EDGE_RISING>,
662 <GIC_SPI 183 IRQ_TYPE_EDGE_RISING>,
663 <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>,
664 <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>,
665 <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>,
666 <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>,
667 <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>;
668 clocks = <&mstp9_clks R7S72100_CLK_I2C3>;
669 clock-frequency = <100000>;
670 power-domains = <&cpg_clocks>;
671 status = "disabled";
672 };
673
674 irqc: interrupt-controller@fcfef800 {
675 compatible = "renesas,r7s72100-irqc",
676 "renesas,rza1-irqc";
677 #interrupt-cells = <2>;
678 #address-cells = <0>;
679 interrupt-controller;
680 reg = <0xfcfef800 0x6>;
681 interrupt-map =
682 <0 0 &gic GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
683 <1 0 &gic GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
684 <2 0 &gic GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
685 <3 0 &gic GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
686 <4 0 &gic GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
687 <5 0 &gic GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
688 <6 0 &gic GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
689 <7 0 &gic GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
690 interrupt-map-mask = <7 0>;
691 };
692
693 mtu2: timer@fcff0000 {
694 compatible = "renesas,mtu2-r7s72100", "renesas,mtu2";
695 reg = <0xfcff0000 0x400>;
696 interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;
697 interrupt-names = "tgi0a";
698 clocks = <&mstp3_clks R7S72100_CLK_MTU2>;
699 clock-names = "fck";
700 power-domains = <&cpg_clocks>;
701 status = "disabled";
702 };
703
704 rtc: rtc@fcff1000 {
705 compatible = "renesas,r7s72100-rtc", "renesas,sh-rtc";
706 reg = <0xfcff1000 0x2e>;
707 interrupts = <GIC_SPI 276 IRQ_TYPE_LEVEL_HIGH>,
708 <GIC_SPI 277 IRQ_TYPE_LEVEL_HIGH>,
709 <GIC_SPI 278 IRQ_TYPE_LEVEL_HIGH>;
710 interrupt-names = "alarm", "period", "carry";
711 clocks = <&mstp6_clks R7S72100_CLK_RTC>, <&rtc_x1_clk>,
712 <&rtc_x3_clk>, <&extal_clk>;
713 clock-names = "fck", "rtc_x1", "rtc_x3", "extal";
714 power-domains = <&cpg_clocks>;
715 status = "disabled";
716 };
717 };
718
719 usb_x1_clk: usb_x1 {
720 #clock-cells = <0>;
721 compatible = "fixed-clock";
722 /* If clk present, value must be set by board */
723 clock-frequency = <0>;
724 };
725};