blob: 203fa972895f059efc628dd2ae765559bb60abc7 [file] [log] [blame]
Ludovic Barre8471a202018-02-26 16:35:40 +01001// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
2/*
3 * Copyright (C) STMicroelectronics 2017 - All Rights Reserved
4 * Author: Ludovic Barre <ludovic.barre@st.com> for STMicroelectronics.
5 */
6#include <dt-bindings/interrupt-controller/arm-gic.h>
Gabriel Fernandez3599a8a2018-03-15 08:18:00 +01007#include <dt-bindings/clock/stm32mp1-clks.h>
Gabriel Fernandezbde22822018-05-02 14:14:44 +02008#include <dt-bindings/reset/stm32mp1-resets.h>
Ludovic Barre8471a202018-02-26 16:35:40 +01009
10/ {
11 #address-cells = <1>;
12 #size-cells = <1>;
13
14 cpus {
15 #address-cells = <1>;
16 #size-cells = <0>;
17
18 cpu0: cpu@0 {
19 compatible = "arm,cortex-a7";
20 device_type = "cpu";
21 reg = <0>;
22 };
23
24 cpu1: cpu@1 {
25 compatible = "arm,cortex-a7";
26 device_type = "cpu";
27 reg = <1>;
28 };
29 };
30
31 psci {
32 compatible = "arm,psci";
33 method = "smc";
34 cpu_off = <0x84000002>;
35 cpu_on = <0x84000003>;
36 };
37
38 aliases {
39 gpio0 = &gpioa;
40 gpio1 = &gpiob;
41 gpio2 = &gpioc;
42 gpio3 = &gpiod;
43 gpio4 = &gpioe;
44 gpio5 = &gpiof;
45 gpio6 = &gpiog;
46 gpio7 = &gpioh;
47 gpio8 = &gpioi;
48 gpio9 = &gpioj;
49 gpio10 = &gpiok;
50 };
51
52 intc: interrupt-controller@a0021000 {
53 compatible = "arm,cortex-a7-gic";
54 #interrupt-cells = <3>;
55 interrupt-controller;
56 reg = <0xa0021000 0x1000>,
57 <0xa0022000 0x2000>;
58 };
59
60 timer {
61 compatible = "arm,armv7-timer";
62 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
63 <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
64 <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
65 <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
66 interrupt-parent = <&intc>;
67 };
68
69 clocks {
70 clk_hse: clk-hse {
71 #clock-cells = <0>;
72 compatible = "fixed-clock";
73 clock-frequency = <24000000>;
74 };
75
Ludovic Barre8471a202018-02-26 16:35:40 +010076 clk_hsi: clk-hsi {
77 #clock-cells = <0>;
78 compatible = "fixed-clock";
79 clock-frequency = <64000000>;
80 };
81
82 clk_lse: clk-lse {
83 #clock-cells = <0>;
84 compatible = "fixed-clock";
85 clock-frequency = <32768>;
86 };
87
88 clk_lsi: clk-lsi {
89 #clock-cells = <0>;
90 compatible = "fixed-clock";
91 clock-frequency = <32000>;
92 };
93
94 clk_csi: clk-csi {
95 #clock-cells = <0>;
96 compatible = "fixed-clock";
97 clock-frequency = <4000000>;
98 };
Ludovic Barre8471a202018-02-26 16:35:40 +010099 };
100
101 soc {
102 compatible = "simple-bus";
103 #address-cells = <1>;
104 #size-cells = <1>;
105 interrupt-parent = <&intc>;
106 ranges;
107
Fabrice Gasnier61fc2112018-04-17 15:45:00 +0200108 timers2: timer@40000000 {
109 #address-cells = <1>;
110 #size-cells = <0>;
111 compatible = "st,stm32-timers";
112 reg = <0x40000000 0x400>;
113 clocks = <&rcc TIM2_K>;
114 clock-names = "int";
115 status = "disabled";
116
117 pwm {
118 compatible = "st,stm32-pwm";
119 status = "disabled";
120 };
121
122 timer@1 {
123 compatible = "st,stm32h7-timer-trigger";
124 reg = <1>;
125 status = "disabled";
126 };
127 };
128
129 timers3: timer@40001000 {
130 #address-cells = <1>;
131 #size-cells = <0>;
132 compatible = "st,stm32-timers";
133 reg = <0x40001000 0x400>;
134 clocks = <&rcc TIM3_K>;
135 clock-names = "int";
136 status = "disabled";
137
138 pwm {
139 compatible = "st,stm32-pwm";
140 status = "disabled";
141 };
142
143 timer@2 {
144 compatible = "st,stm32h7-timer-trigger";
145 reg = <2>;
146 status = "disabled";
147 };
148 };
149
150 timers4: timer@40002000 {
151 #address-cells = <1>;
152 #size-cells = <0>;
153 compatible = "st,stm32-timers";
154 reg = <0x40002000 0x400>;
155 clocks = <&rcc TIM4_K>;
156 clock-names = "int";
157 status = "disabled";
158
159 pwm {
160 compatible = "st,stm32-pwm";
161 status = "disabled";
162 };
163
164 timer@3 {
165 compatible = "st,stm32h7-timer-trigger";
166 reg = <3>;
167 status = "disabled";
168 };
169 };
170
171 timers5: timer@40003000 {
172 #address-cells = <1>;
173 #size-cells = <0>;
174 compatible = "st,stm32-timers";
175 reg = <0x40003000 0x400>;
176 clocks = <&rcc TIM5_K>;
177 clock-names = "int";
178 status = "disabled";
179
180 pwm {
181 compatible = "st,stm32-pwm";
182 status = "disabled";
183 };
184
185 timer@4 {
186 compatible = "st,stm32h7-timer-trigger";
187 reg = <4>;
188 status = "disabled";
189 };
190 };
191
192 timers6: timer@40004000 {
193 #address-cells = <1>;
194 #size-cells = <0>;
195 compatible = "st,stm32-timers";
196 reg = <0x40004000 0x400>;
197 clocks = <&rcc TIM6_K>;
198 clock-names = "int";
199 status = "disabled";
200
201 timer@5 {
202 compatible = "st,stm32h7-timer-trigger";
203 reg = <5>;
204 status = "disabled";
205 };
206 };
207
208 timers7: timer@40005000 {
209 #address-cells = <1>;
210 #size-cells = <0>;
211 compatible = "st,stm32-timers";
212 reg = <0x40005000 0x400>;
213 clocks = <&rcc TIM7_K>;
214 clock-names = "int";
215 status = "disabled";
216
217 timer@6 {
218 compatible = "st,stm32h7-timer-trigger";
219 reg = <6>;
220 status = "disabled";
221 };
222 };
223
224 timers12: timer@40006000 {
225 #address-cells = <1>;
226 #size-cells = <0>;
227 compatible = "st,stm32-timers";
228 reg = <0x40006000 0x400>;
229 clocks = <&rcc TIM12_K>;
230 clock-names = "int";
231 status = "disabled";
232
233 pwm {
234 compatible = "st,stm32-pwm";
235 status = "disabled";
236 };
237
238 timer@11 {
239 compatible = "st,stm32h7-timer-trigger";
240 reg = <11>;
241 status = "disabled";
242 };
243 };
244
245 timers13: timer@40007000 {
246 #address-cells = <1>;
247 #size-cells = <0>;
248 compatible = "st,stm32-timers";
249 reg = <0x40007000 0x400>;
250 clocks = <&rcc TIM13_K>;
251 clock-names = "int";
252 status = "disabled";
253
254 pwm {
255 compatible = "st,stm32-pwm";
256 status = "disabled";
257 };
258
259 timer@12 {
260 compatible = "st,stm32h7-timer-trigger";
261 reg = <12>;
262 status = "disabled";
263 };
264 };
265
266 timers14: timer@40008000 {
267 #address-cells = <1>;
268 #size-cells = <0>;
269 compatible = "st,stm32-timers";
270 reg = <0x40008000 0x400>;
271 clocks = <&rcc TIM14_K>;
272 clock-names = "int";
273 status = "disabled";
274
275 pwm {
276 compatible = "st,stm32-pwm";
277 status = "disabled";
278 };
279
280 timer@13 {
281 compatible = "st,stm32h7-timer-trigger";
282 reg = <13>;
283 status = "disabled";
284 };
285 };
286
Fabrice Gasnier966ed872018-05-02 13:53:38 +0200287 lptimer1: timer@40009000 {
288 #address-cells = <1>;
289 #size-cells = <0>;
290 compatible = "st,stm32-lptimer";
291 reg = <0x40009000 0x400>;
292 clocks = <&rcc LPTIM1_K>;
293 clock-names = "mux";
294 status = "disabled";
295
296 pwm {
297 compatible = "st,stm32-pwm-lp";
298 #pwm-cells = <3>;
299 status = "disabled";
300 };
301
302 trigger@0 {
303 compatible = "st,stm32-lptimer-trigger";
304 reg = <0>;
305 status = "disabled";
306 };
307
308 counter {
309 compatible = "st,stm32-lptimer-counter";
310 status = "disabled";
311 };
312 };
313
Ludovic Barre8471a202018-02-26 16:35:40 +0100314 usart2: serial@4000e000 {
315 compatible = "st,stm32h7-uart";
316 reg = <0x4000e000 0x400>;
317 interrupts = <GIC_SPI 38 IRQ_TYPE_NONE>;
Gabriel Fernandez3599a8a2018-03-15 08:18:00 +0100318 clocks = <&rcc USART2_K>;
Ludovic Barre8471a202018-02-26 16:35:40 +0100319 status = "disabled";
320 };
321
322 usart3: serial@4000f000 {
323 compatible = "st,stm32h7-uart";
324 reg = <0x4000f000 0x400>;
325 interrupts = <GIC_SPI 39 IRQ_TYPE_NONE>;
Gabriel Fernandez3599a8a2018-03-15 08:18:00 +0100326 clocks = <&rcc USART3_K>;
Ludovic Barre8471a202018-02-26 16:35:40 +0100327 status = "disabled";
328 };
329
330 uart4: serial@40010000 {
331 compatible = "st,stm32h7-uart";
332 reg = <0x40010000 0x400>;
333 interrupts = <GIC_SPI 52 IRQ_TYPE_NONE>;
Gabriel Fernandez3599a8a2018-03-15 08:18:00 +0100334 clocks = <&rcc UART4_K>;
Ludovic Barre8471a202018-02-26 16:35:40 +0100335 status = "disabled";
336 };
337
338 uart5: serial@40011000 {
339 compatible = "st,stm32h7-uart";
340 reg = <0x40011000 0x400>;
341 interrupts = <GIC_SPI 53 IRQ_TYPE_NONE>;
Gabriel Fernandez3599a8a2018-03-15 08:18:00 +0100342 clocks = <&rcc UART5_K>;
Ludovic Barre8471a202018-02-26 16:35:40 +0100343 status = "disabled";
344 };
345
Pierre-Yves MORDRETd126e862018-04-23 11:48:00 +0200346 i2c1: i2c@40012000 {
347 compatible = "st,stm32f7-i2c";
348 reg = <0x40012000 0x400>;
349 interrupt-names = "event", "error";
350 interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>,
351 <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
352 clocks = <&rcc I2C1_K>;
353 resets = <&rcc I2C1_R>;
354 #address-cells = <1>;
355 #size-cells = <0>;
356 status = "disabled";
357 };
358
359 i2c2: i2c@40013000 {
360 compatible = "st,stm32f7-i2c";
361 reg = <0x40013000 0x400>;
362 interrupt-names = "event", "error";
363 interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
364 <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
365 clocks = <&rcc I2C2_K>;
366 resets = <&rcc I2C2_R>;
367 #address-cells = <1>;
368 #size-cells = <0>;
369 status = "disabled";
370 };
371
372 i2c3: i2c@40014000 {
373 compatible = "st,stm32f7-i2c";
374 reg = <0x40014000 0x400>;
375 interrupt-names = "event", "error";
376 interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>,
377 <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
378 clocks = <&rcc I2C3_K>;
379 resets = <&rcc I2C3_R>;
380 #address-cells = <1>;
381 #size-cells = <0>;
382 status = "disabled";
383 };
384
385 i2c5: i2c@40015000 {
386 compatible = "st,stm32f7-i2c";
387 reg = <0x40015000 0x400>;
388 interrupt-names = "event", "error";
389 interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
390 <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
391 clocks = <&rcc I2C5_K>;
392 resets = <&rcc I2C5_R>;
393 #address-cells = <1>;
394 #size-cells = <0>;
395 status = "disabled";
396 };
397
yannick fertre066f3712018-04-24 09:54:00 +0200398 cec: cec@40016000 {
399 compatible = "st,stm32-cec";
400 reg = <0x40016000 0x400>;
401 interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
402 clocks = <&rcc CEC_K>, <&clk_lse>;
403 clock-names = "cec", "hdmi-cec";
404 status = "disabled";
405 };
406
Fabrice Gasnierda6cddc2018-04-18 17:46:00 +0200407 dac: dac@40017000 {
408 compatible = "st,stm32h7-dac-core";
409 reg = <0x40017000 0x400>;
410 clocks = <&rcc DAC12>;
411 clock-names = "pclk";
412 #address-cells = <1>;
413 #size-cells = <0>;
414 status = "disabled";
415
416 dac1: dac@1 {
417 compatible = "st,stm32-dac";
418 #io-channels-cells = <1>;
419 reg = <1>;
420 status = "disabled";
421 };
422
423 dac2: dac@2 {
424 compatible = "st,stm32-dac";
425 #io-channels-cells = <1>;
426 reg = <2>;
427 status = "disabled";
428 };
429 };
430
Ludovic Barre8471a202018-02-26 16:35:40 +0100431 uart7: serial@40018000 {
432 compatible = "st,stm32h7-uart";
433 reg = <0x40018000 0x400>;
434 interrupts = <GIC_SPI 82 IRQ_TYPE_NONE>;
Gabriel Fernandez3599a8a2018-03-15 08:18:00 +0100435 clocks = <&rcc UART7_K>;
Ludovic Barre8471a202018-02-26 16:35:40 +0100436 status = "disabled";
437 };
438
439 uart8: serial@40019000 {
440 compatible = "st,stm32h7-uart";
441 reg = <0x40019000 0x400>;
442 interrupts = <GIC_SPI 83 IRQ_TYPE_NONE>;
Gabriel Fernandez3599a8a2018-03-15 08:18:00 +0100443 clocks = <&rcc UART8_K>;
Ludovic Barre8471a202018-02-26 16:35:40 +0100444 status = "disabled";
445 };
446
Fabrice Gasnier61fc2112018-04-17 15:45:00 +0200447 timers1: timer@44000000 {
448 #address-cells = <1>;
449 #size-cells = <0>;
450 compatible = "st,stm32-timers";
451 reg = <0x44000000 0x400>;
452 clocks = <&rcc TIM1_K>;
453 clock-names = "int";
454 status = "disabled";
455
456 pwm {
457 compatible = "st,stm32-pwm";
458 status = "disabled";
459 };
460
461 timer@0 {
462 compatible = "st,stm32h7-timer-trigger";
463 reg = <0>;
464 status = "disabled";
465 };
466 };
467
468 timers8: timer@44001000 {
469 #address-cells = <1>;
470 #size-cells = <0>;
471 compatible = "st,stm32-timers";
472 reg = <0x44001000 0x400>;
473 clocks = <&rcc TIM8_K>;
474 clock-names = "int";
475 status = "disabled";
476
477 pwm {
478 compatible = "st,stm32-pwm";
479 status = "disabled";
480 };
481
482 timer@7 {
483 compatible = "st,stm32h7-timer-trigger";
484 reg = <7>;
485 status = "disabled";
486 };
487 };
488
Ludovic Barre8471a202018-02-26 16:35:40 +0100489 usart6: serial@44003000 {
490 compatible = "st,stm32h7-uart";
491 reg = <0x44003000 0x400>;
492 interrupts = <GIC_SPI 71 IRQ_TYPE_NONE>;
Gabriel Fernandez3599a8a2018-03-15 08:18:00 +0100493 clocks = <&rcc USART6_K>;
Ludovic Barre8471a202018-02-26 16:35:40 +0100494 status = "disabled";
495 };
496
Fabrice Gasnier61fc2112018-04-17 15:45:00 +0200497 timers15: timer@44006000 {
498 #address-cells = <1>;
499 #size-cells = <0>;
500 compatible = "st,stm32-timers";
501 reg = <0x44006000 0x400>;
502 clocks = <&rcc TIM15_K>;
503 clock-names = "int";
504 status = "disabled";
505
506 pwm {
507 compatible = "st,stm32-pwm";
508 status = "disabled";
509 };
510
511 timer@14 {
512 compatible = "st,stm32h7-timer-trigger";
513 reg = <14>;
514 status = "disabled";
515 };
516 };
517
518 timers16: timer@44007000 {
519 #address-cells = <1>;
520 #size-cells = <0>;
521 compatible = "st,stm32-timers";
522 reg = <0x44007000 0x400>;
523 clocks = <&rcc TIM16_K>;
524 clock-names = "int";
525 status = "disabled";
526
527 pwm {
528 compatible = "st,stm32-pwm";
529 status = "disabled";
530 };
531 timer@15 {
532 compatible = "st,stm32h7-timer-trigger";
533 reg = <15>;
534 status = "disabled";
535 };
536 };
537
538 timers17: timer@44008000 {
539 #address-cells = <1>;
540 #size-cells = <0>;
541 compatible = "st,stm32-timers";
542 reg = <0x44008000 0x400>;
543 clocks = <&rcc TIM17_K>;
544 clock-names = "int";
545 status = "disabled";
546
547 pwm {
548 compatible = "st,stm32-pwm";
549 status = "disabled";
550 };
551
552 timer@16 {
553 compatible = "st,stm32h7-timer-trigger";
554 reg = <16>;
555 status = "disabled";
556 };
557 };
558
Pierre-Yves MORDRETea1c4042018-04-20 11:14:00 +0200559 dma1: dma@48000000 {
560 compatible = "st,stm32-dma";
561 reg = <0x48000000 0x400>;
562 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
563 <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
564 <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
565 <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
566 <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>,
567 <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>,
568 <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>,
569 <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
570 clocks = <&rcc DMA1>;
571 #dma-cells = <4>;
572 st,mem2mem;
Pierre-Yves MORDRET1cffb562018-04-20 11:14:00 +0200573 dma-requests = <8>;
Pierre-Yves MORDRETea1c4042018-04-20 11:14:00 +0200574 };
575
576 dma2: dma@48001000 {
577 compatible = "st,stm32-dma";
578 reg = <0x48001000 0x400>;
579 interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>,
580 <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
581 <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>,
582 <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>,
583 <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>,
584 <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>,
585 <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>,
586 <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
587 clocks = <&rcc DMA2>;
588 #dma-cells = <4>;
589 st,mem2mem;
Pierre-Yves MORDRET1cffb562018-04-20 11:14:00 +0200590 dma-requests = <8>;
591 };
592
593 dmamux1: dma-router@48002000 {
594 compatible = "st,stm32h7-dmamux";
595 reg = <0x48002000 0x1c>;
596 #dma-cells = <3>;
597 dma-requests = <128>;
598 dma-masters = <&dma1 &dma2>;
599 dma-channels = <16>;
600 clocks = <&rcc DMAMUX>;
Pierre-Yves MORDRETea1c4042018-04-20 11:14:00 +0200601 };
602
Gabriel Fernandez3599a8a2018-03-15 08:18:00 +0100603 rcc: rcc@50000000 {
604 compatible = "st,stm32mp1-rcc", "syscon";
605 reg = <0x50000000 0x1000>;
606 #clock-cells = <1>;
607 #reset-cells = <1>;
608 };
609
Fabrice Gasnier966ed872018-05-02 13:53:38 +0200610 lptimer2: timer@50021000 {
611 #address-cells = <1>;
612 #size-cells = <0>;
613 compatible = "st,stm32-lptimer";
614 reg = <0x50021000 0x400>;
615 clocks = <&rcc LPTIM2_K>;
616 clock-names = "mux";
617 status = "disabled";
618
619 pwm {
620 compatible = "st,stm32-pwm-lp";
621 #pwm-cells = <3>;
622 status = "disabled";
623 };
624
625 trigger@1 {
626 compatible = "st,stm32-lptimer-trigger";
627 reg = <1>;
628 status = "disabled";
629 };
630
631 counter {
632 compatible = "st,stm32-lptimer-counter";
633 status = "disabled";
634 };
635 };
636
637 lptimer3: timer@50022000 {
638 #address-cells = <1>;
639 #size-cells = <0>;
640 compatible = "st,stm32-lptimer";
641 reg = <0x50022000 0x400>;
642 clocks = <&rcc LPTIM3_K>;
643 clock-names = "mux";
644 status = "disabled";
645
646 pwm {
647 compatible = "st,stm32-pwm-lp";
648 #pwm-cells = <3>;
649 status = "disabled";
650 };
651
652 trigger@2 {
653 compatible = "st,stm32-lptimer-trigger";
654 reg = <2>;
655 status = "disabled";
656 };
657 };
658
659 lptimer4: timer@50023000 {
660 compatible = "st,stm32-lptimer";
661 reg = <0x50023000 0x400>;
662 clocks = <&rcc LPTIM4_K>;
663 clock-names = "mux";
664 status = "disabled";
665
666 pwm {
667 compatible = "st,stm32-pwm-lp";
668 #pwm-cells = <3>;
669 status = "disabled";
670 };
671 };
672
673 lptimer5: timer@50024000 {
674 compatible = "st,stm32-lptimer";
675 reg = <0x50024000 0x400>;
676 clocks = <&rcc LPTIM5_K>;
677 clock-names = "mux";
678 status = "disabled";
679
680 pwm {
681 compatible = "st,stm32-pwm-lp";
682 #pwm-cells = <3>;
683 status = "disabled";
684 };
685 };
686
Fabrice Gasnier9f790af2018-04-18 09:47:00 +0200687 vrefbuf: vrefbuf@50025000 {
688 compatible = "st,stm32-vrefbuf";
689 reg = <0x50025000 0x8>;
690 regulator-min-microvolt = <1500000>;
691 regulator-max-microvolt = <2500000>;
692 clocks = <&rcc VREF>;
693 status = "disabled";
694 };
695
Lionel Debievefc9962c2018-04-23 17:19:00 +0200696 cryp1: cryp@54001000 {
697 compatible = "st,stm32mp1-cryp";
698 reg = <0x54001000 0x400>;
699 interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
700 clocks = <&rcc CRYP1>;
701 resets = <&rcc CRYP1_R>;
702 status = "disabled";
703 };
704
Lionel Debieve6973f0a2018-04-23 17:19:00 +0200705 rng1: rng@54003000 {
706 compatible = "st,stm32-rng";
707 reg = <0x54003000 0x400>;
708 clocks = <&rcc RNG1_K>;
709 resets = <&rcc RNG1_R>;
710 status = "disabled";
711 };
712
Pierre-Yves MORDRET8ecf9102018-04-20 11:15:00 +0200713 mdma1: dma@58000000 {
714 compatible = "st,stm32h7-mdma";
715 reg = <0x58000000 0x1000>;
716 interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
717 clocks = <&rcc MDMA>;
718 #dma-cells = <5>;
719 dma-channels = <32>;
720 dma-requests = <48>;
721 };
722
Ludovic Barrec38928d2018-04-30 09:11:00 +0200723 qspi: qspi@58003000 {
724 compatible = "st,stm32f469-qspi";
725 reg = <0x58003000 0x1000>, <0x70000000 0x10000000>;
726 reg-names = "qspi", "qspi_mm";
727 interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
728 clocks = <&rcc QSPI_K>;
729 resets = <&rcc QSPI_R>;
730 status = "disabled";
731 };
732
Lionel Debieve8b2820a2018-04-23 17:19:00 +0200733 crc1: crc@58009000 {
734 compatible = "st,stm32f7-crc";
735 reg = <0x58009000 0x400>;
736 clocks = <&rcc CRC1>;
737 status = "disabled";
738 };
739
Amelie Delaunay949a0c02018-04-24 13:24:00 +0200740 usbh_ohci: usbh-ohci@5800c000 {
741 compatible = "generic-ohci";
742 reg = <0x5800c000 0x1000>;
743 clocks = <&rcc USBH>;
744 resets = <&rcc USBH_R>;
745 interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
746 status = "disabled";
747 };
748
749 usbh_ehci: usbh-ehci@5800d000 {
750 compatible = "generic-ehci";
751 reg = <0x5800d000 0x1000>;
752 clocks = <&rcc USBH>;
753 resets = <&rcc USBH_R>;
754 interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
755 companion = <&usbh_ohci>;
756 status = "disabled";
757 };
758
yannick fertre9d603e42018-04-24 09:54:00 +0200759 dsi: dsi@5a000000 {
760 compatible = "st,stm32-dsi";
761 reg = <0x5a000000 0x800>;
762 clocks = <&rcc DSI_K>, <&clk_hse>, <&rcc DSI_PX>;
763 clock-names = "pclk", "ref", "px_clk";
764 resets = <&rcc DSI_R>;
765 reset-names = "apb";
766 status = "disabled";
767 };
768
yannick fertre570cae62018-04-24 09:54:00 +0200769 ltdc: display-controller@5a001000 {
770 compatible = "st,stm32-ltdc";
771 reg = <0x5a001000 0x400>;
772 interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>,
773 <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
774 clocks = <&rcc LTDC_PX>;
775 clock-names = "lcd";
776 resets = <&rcc LTDC_R>;
777 status = "disabled";
778 };
779
Amelie Delaunay3c004362018-04-24 11:41:00 +0200780 usbphyc: usbphyc@5a006000 {
781 #address-cells = <1>;
782 #size-cells = <0>;
783 compatible = "st,stm32mp1-usbphyc";
784 reg = <0x5a006000 0x1000>;
785 clocks = <&rcc USBPHY_K>;
786 resets = <&rcc USBPHY_R>;
787 status = "disabled";
788
789 usbphyc_port0: usb-phy@0 {
790 #phy-cells = <0>;
791 reg = <0>;
792 };
793
794 usbphyc_port1: usb-phy@1 {
795 #phy-cells = <1>;
796 reg = <1>;
797 };
798 };
799
Ludovic Barre8471a202018-02-26 16:35:40 +0100800 usart1: serial@5c000000 {
801 compatible = "st,stm32h7-uart";
802 reg = <0x5c000000 0x400>;
803 interrupts = <GIC_SPI 37 IRQ_TYPE_NONE>;
Gabriel Fernandez3599a8a2018-03-15 08:18:00 +0100804 clocks = <&rcc USART1_K>;
Ludovic Barre8471a202018-02-26 16:35:40 +0100805 status = "disabled";
806 };
Pierre-Yves MORDRETd126e862018-04-23 11:48:00 +0200807
808 i2c4: i2c@5c002000 {
809 compatible = "st,stm32f7-i2c";
810 reg = <0x5c002000 0x400>;
811 interrupt-names = "event", "error";
812 interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>,
813 <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
814 clocks = <&rcc I2C4_K>;
815 resets = <&rcc I2C4_R>;
816 #address-cells = <1>;
817 #size-cells = <0>;
818 status = "disabled";
819 };
820
821 i2c6: i2c@5c009000 {
822 compatible = "st,stm32f7-i2c";
823 reg = <0x5c009000 0x400>;
824 interrupt-names = "event", "error";
825 interrupts = <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>,
826 <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>;
827 clocks = <&rcc I2C6_K>;
828 resets = <&rcc I2C6_R>;
829 #address-cells = <1>;
830 #size-cells = <0>;
831 status = "disabled";
832 };
Ludovic Barre8471a202018-02-26 16:35:40 +0100833 };
834};