Lines Matching +full:stm32h7 +full:- +full:dmamux
1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
3 * Copyright (C) STMicroelectronics 2021 - All Rights Reserved
6 #include <dt-bindings/interrupt-controller/arm-gic.h>
7 #include <dt-bindings/clock/stm32mp13-clks.h>
8 #include <dt-bindings/reset/stm32mp13-resets.h>
11 #address-cells = <1>;
12 #size-cells = <1>;
15 #address-cells = <1>;
16 #size-cells = <0>;
19 compatible = "arm,cortex-a7";
25 arm-pmu {
26 compatible = "arm,cortex-a7-pmu";
28 interrupt-affinity = <&cpu0>;
29 interrupt-parent = <&intc>;
35 compatible = "linaro,optee-tz";
36 interrupt-parent = <&intc>;
41 compatible = "linaro,scmi-optee";
42 #address-cells = <1>;
43 #size-cells = <0>;
44 linaro,optee-channel-id = <0>;
48 #clock-cells = <1>;
53 #reset-cells = <1>;
60 #address-cells = <1>;
61 #size-cells = <0>;
65 regulator-name = "reg11";
69 regulator-name = "reg18";
73 regulator-name = "usb33";
80 intc: interrupt-controller@a0021000 {
81 compatible = "arm,cortex-a7-gic";
82 #interrupt-cells = <3>;
83 interrupt-controller;
89 compatible = "arm,psci-1.0";
94 compatible = "arm,armv7-timer";
99 interrupt-parent = <&intc>;
100 always-on;
104 compatible = "simple-bus";
105 #address-cells = <1>;
106 #size-cells = <1>;
107 interrupt-parent = <&intc>;
111 #address-cells = <1>;
112 #size-cells = <0>;
113 compatible = "st,stm32-timers";
116 interrupt-names = "global";
118 clock-names = "int";
124 dma-names = "ch1", "ch2", "ch3", "ch4", "up";
128 compatible = "st,stm32-pwm";
129 #pwm-cells = <3>;
134 compatible = "st,stm32h7-timer-trigger";
140 compatible = "st,stm32-timer-counter";
146 #address-cells = <1>;
147 #size-cells = <0>;
148 compatible = "st,stm32-timers";
151 interrupt-names = "global";
153 clock-names = "int";
160 dma-names = "ch1", "ch2", "ch3", "ch4", "up", "trig";
164 compatible = "st,stm32-pwm";
165 #pwm-cells = <3>;
170 compatible = "st,stm32h7-timer-trigger";
176 compatible = "st,stm32-timer-counter";
182 #address-cells = <1>;
183 #size-cells = <0>;
184 compatible = "st,stm32-timers";
187 interrupt-names = "global";
189 clock-names = "int";
194 dma-names = "ch1", "ch2", "ch3", "up";
198 compatible = "st,stm32-pwm";
199 #pwm-cells = <3>;
204 compatible = "st,stm32h7-timer-trigger";
210 compatible = "st,stm32-timer-counter";
216 #address-cells = <1>;
217 #size-cells = <0>;
218 compatible = "st,stm32-timers";
221 interrupt-names = "global";
223 clock-names = "int";
230 dma-names = "ch1", "ch2", "ch3", "ch4", "up", "trig";
234 compatible = "st,stm32-pwm";
235 #pwm-cells = <3>;
240 compatible = "st,stm32h7-timer-trigger";
246 compatible = "st,stm32-timer-counter";
252 #address-cells = <1>;
253 #size-cells = <0>;
254 compatible = "st,stm32-timers";
257 interrupt-names = "global";
259 clock-names = "int";
261 dma-names = "up";
265 compatible = "st,stm32h7-timer-trigger";
272 #address-cells = <1>;
273 #size-cells = <0>;
274 compatible = "st,stm32-timers";
277 interrupt-names = "global";
279 clock-names = "int";
281 dma-names = "up";
285 compatible = "st,stm32h7-timer-trigger";
292 #address-cells = <1>;
293 #size-cells = <0>;
294 compatible = "st,stm32-lptimer";
296 interrupts-extended = <&exti 47 IRQ_TYPE_LEVEL_HIGH>;
298 clock-names = "mux";
299 wakeup-source;
303 compatible = "st,stm32-pwm-lp";
304 #pwm-cells = <3>;
309 compatible = "st,stm32-lptimer-trigger";
315 compatible = "st,stm32-lptimer-counter";
320 compatible = "st,stm32-lptimer-timer";
325 i2s2: audio-controller@4000b000 {
326 compatible = "st,stm32h7-i2s";
328 #sound-dai-cells = <0>;
332 dma-names = "rx", "tx";
337 compatible = "st,stm32h7-spi";
342 #address-cells = <1>;
343 #size-cells = <0>;
346 dma-names = "rx", "tx";
350 i2s3: audio-controller@4000c000 {
351 compatible = "st,stm32h7-i2s";
353 #sound-dai-cells = <0>;
357 dma-names = "rx", "tx";
362 compatible = "st,stm32h7-spi";
367 #address-cells = <1>;
368 #size-cells = <0>;
371 dma-names = "rx", "tx";
375 spdifrx: audio-controller@4000d000 {
376 compatible = "st,stm32h7-spdifrx";
378 #sound-dai-cells = <0>;
380 clock-names = "kclk";
384 dma-names = "rx", "rx-ctrl";
389 compatible = "st,stm32h7-uart";
391 interrupts-extended = <&exti 28 IRQ_TYPE_LEVEL_HIGH>;
394 wakeup-source;
397 dma-names = "rx", "tx";
402 compatible = "st,stm32h7-uart";
404 interrupts-extended = <&exti 30 IRQ_TYPE_LEVEL_HIGH>;
407 wakeup-source;
410 dma-names = "rx", "tx";
415 compatible = "st,stm32h7-uart";
417 interrupts-extended = <&exti 31 IRQ_TYPE_LEVEL_HIGH>;
420 wakeup-source;
423 dma-names = "rx", "tx";
428 compatible = "st,stm32mp13-i2c";
430 interrupt-names = "event", "error";
435 #address-cells = <1>;
436 #size-cells = <0>;
439 dma-names = "rx", "tx";
440 st,syscfg-fmp = <&syscfg 0x4 0x1>;
441 i2c-analog-filter;
446 compatible = "st,stm32mp13-i2c";
448 interrupt-names = "event", "error";
453 #address-cells = <1>;
454 #size-cells = <0>;
457 dma-names = "rx", "tx";
458 st,syscfg-fmp = <&syscfg 0x4 0x2>;
459 i2c-analog-filter;
464 compatible = "st,stm32h7-uart";
466 interrupts-extended = <&exti 32 IRQ_TYPE_LEVEL_HIGH>;
469 wakeup-source;
472 dma-names = "rx", "tx";
477 compatible = "st,stm32h7-uart";
479 interrupts-extended = <&exti 33 IRQ_TYPE_LEVEL_HIGH>;
482 wakeup-source;
485 dma-names = "rx", "tx";
490 #address-cells = <1>;
491 #size-cells = <0>;
492 compatible = "st,stm32-timers";
498 interrupt-names = "brk", "up", "trg-com", "cc";
500 clock-names = "int";
508 dma-names = "ch1", "ch2", "ch3", "ch4",
513 compatible = "st,stm32-pwm";
514 #pwm-cells = <3>;
519 compatible = "st,stm32h7-timer-trigger";
525 compatible = "st,stm32-timer-counter";
531 #address-cells = <1>;
532 #size-cells = <0>;
533 compatible = "st,stm32-timers";
539 interrupt-names = "brk", "up", "trg-com", "cc";
541 clock-names = "int";
549 dma-names = "ch1", "ch2", "ch3", "ch4",
554 compatible = "st,stm32-pwm";
555 #pwm-cells = <3>;
560 compatible = "st,stm32h7-timer-trigger";
566 compatible = "st,stm32-timer-counter";
572 compatible = "st,stm32h7-uart";
574 interrupts-extended = <&exti 29 IRQ_TYPE_LEVEL_HIGH>;
577 wakeup-source;
580 dma-names = "rx", "tx";
584 i2s1: audio-controller@44004000 {
585 compatible = "st,stm32h7-i2s";
587 #sound-dai-cells = <0>;
591 dma-names = "rx", "tx";
596 compatible = "st,stm32h7-spi";
601 #address-cells = <1>;
602 #size-cells = <0>;
605 dma-names = "rx", "tx";
610 compatible = "st,stm32h7-sai";
613 #address-cells = <1>;
614 #size-cells = <1>;
619 sai1a: audio-controller@4400a004 {
620 compatible = "st,stm32-sai-sub-a";
622 #sound-dai-cells = <0>;
624 clock-names = "sai_ck";
629 sai1b: audio-controller@4400a024 {
630 compatible = "st,stm32-sai-sub-b";
632 #sound-dai-cells = <0>;
634 clock-names = "sai_ck";
641 compatible = "st,stm32h7-sai";
644 #address-cells = <1>;
645 #size-cells = <1>;
650 sai2a: audio-controller@4400b004 {
651 compatible = "st,stm32-sai-sub-a";
653 #sound-dai-cells = <0>;
655 clock-names = "sai_ck";
660 sai2b: audio-controller@4400b024 {
661 compatible = "st,stm32-sai-sub-b";
663 #sound-dai-cells = <0>;
665 clock-names = "sai_ck";
672 compatible = "st,stm32mp1-dfsdm";
675 clock-names = "dfsdm";
676 #address-cells = <1>;
677 #size-cells = <0>;
681 compatible = "st,stm32-dfsdm-adc";
683 #io-channel-cells = <1>;
686 dma-names = "rx";
691 compatible = "st,stm32-dfsdm-adc";
693 #io-channel-cells = <1>;
696 dma-names = "rx";
701 dma1: dma-controller@48000000 {
702 compatible = "st,stm32-dma";
714 #dma-cells = <4>;
716 dma-requests = <8>;
719 dma2: dma-controller@48001000 {
720 compatible = "st,stm32-dma";
732 #dma-cells = <4>;
734 dma-requests = <8>;
737 dmamux1: dma-router@48002000 {
738 compatible = "st,stm32h7-dmamux";
742 #dma-cells = <3>;
743 dma-masters = <&dma1 &dma2>;
744 dma-requests = <128>;
745 dma-channels = <16>;
749 compatible = "st,stm32mp13-adc-core";
753 clock-names = "bus", "adc";
754 interrupt-controller;
755 #interrupt-cells = <1>;
756 #address-cells = <1>;
757 #size-cells = <0>;
761 compatible = "st,stm32mp13-adc";
762 #io-channel-cells = <1>;
763 #address-cells = <1>;
764 #size-cells = <0>;
766 interrupt-parent = <&adc_2>;
769 dma-names = "rx";
792 compatible = "st,stm32mp15-hsotg", "snps,dwc2";
795 clock-names = "otg";
797 reset-names = "dwc2";
799 g-rx-fifo-size = <512>;
800 g-np-tx-fifo-size = <32>;
801 g-tx-fifo-size = <256 16 16 16 16 16 16 16>;
803 otg-rev = <0x200>;
804 usb33d-supply = <&scmi_usb33>;
809 compatible = "st,stm32h7-uart";
811 interrupts-extended = <&exti 26 IRQ_TYPE_LEVEL_HIGH>;
814 wakeup-source;
817 dma-names = "rx", "tx";
822 compatible = "st,stm32h7-uart";
824 interrupts-extended = <&exti 27 IRQ_TYPE_LEVEL_HIGH>;
827 wakeup-source;
830 dma-names = "rx", "tx";
834 i2s4: audio-controller@4c002000 {
835 compatible = "st,stm32h7-i2s";
837 #sound-dai-cells = <0>;
841 dma-names = "rx", "tx";
846 compatible = "st,stm32h7-spi";
851 #address-cells = <1>;
852 #size-cells = <0>;
855 dma-names = "rx", "tx";
860 compatible = "st,stm32h7-spi";
865 #address-cells = <1>;
866 #size-cells = <0>;
869 dma-names = "rx", "tx";
874 compatible = "st,stm32mp13-i2c";
876 interrupt-names = "event", "error";
881 #address-cells = <1>;
882 #size-cells = <0>;
885 dma-names = "rx", "tx";
886 st,syscfg-fmp = <&syscfg 0x4 0x4>;
887 i2c-analog-filter;
892 compatible = "st,stm32mp13-i2c";
894 interrupt-names = "event", "error";
899 #address-cells = <1>;
900 #size-cells = <0>;
903 dma-names = "rx", "tx";
904 st,syscfg-fmp = <&syscfg 0x4 0x8>;
905 i2c-analog-filter;
910 compatible = "st,stm32mp13-i2c";
912 interrupt-names = "event", "error";
917 #address-cells = <1>;
918 #size-cells = <0>;
921 dma-names = "rx", "tx";
922 st,syscfg-fmp = <&syscfg 0x4 0x10>;
923 i2c-analog-filter;
928 #address-cells = <1>;
929 #size-cells = <0>;
930 compatible = "st,stm32-timers";
933 interrupt-names = "global";
935 clock-names = "int";
939 compatible = "st,stm32-pwm";
940 #pwm-cells = <3>;
945 compatible = "st,stm32h7-timer-trigger";
952 #address-cells = <1>;
953 #size-cells = <0>;
954 compatible = "st,stm32-timers";
957 interrupt-names = "global";
959 clock-names = "int";
963 compatible = "st,stm32-pwm";
964 #pwm-cells = <3>;
969 compatible = "st,stm32h7-timer-trigger";
976 #address-cells = <1>;
977 #size-cells = <0>;
978 compatible = "st,stm32-timers";
981 interrupt-names = "global";
983 clock-names = "int";
987 compatible = "st,stm32-pwm";
988 #pwm-cells = <3>;
993 compatible = "st,stm32h7-timer-trigger";
1000 #address-cells = <1>;
1001 #size-cells = <0>;
1002 compatible = "st,stm32-timers";
1005 interrupt-names = "global";
1007 clock-names = "int";
1012 dma-names = "ch1", "up", "trig", "com";
1016 compatible = "st,stm32-pwm";
1017 #pwm-cells = <3>;
1022 compatible = "st,stm32h7-timer-trigger";
1029 #address-cells = <1>;
1030 #size-cells = <0>;
1031 compatible = "st,stm32-timers";
1034 interrupt-names = "global";
1036 clock-names = "int";
1039 dma-names = "ch1", "up";
1043 compatible = "st,stm32-pwm";
1044 #pwm-cells = <3>;
1049 compatible = "st,stm32h7-timer-trigger";
1056 #address-cells = <1>;
1057 #size-cells = <0>;
1058 compatible = "st,stm32-timers";
1061 interrupt-names = "global";
1063 clock-names = "int";
1066 dma-names = "ch1", "up";
1070 compatible = "st,stm32-pwm";
1071 #pwm-cells = <3>;
1076 compatible = "st,stm32h7-timer-trigger";
1083 compatible = "st,stm32mp13-rcc", "syscon";
1085 #clock-cells = <1>;
1086 #reset-cells = <1>;
1087 clock-names = "hse", "hsi", "csi", "lse", "lsi";
1095 exti: interrupt-controller@5000d000 {
1096 compatible = "st,stm32mp13-exti", "syscon";
1097 interrupt-controller;
1098 #interrupt-cells = <2>;
1103 compatible = "st,stm32mp157-syscfg", "syscon";
1109 #address-cells = <1>;
1110 #size-cells = <0>;
1111 compatible = "st,stm32-lptimer";
1113 interrupts-extended = <&exti 48 IRQ_TYPE_LEVEL_HIGH>;
1115 clock-names = "mux";
1116 wakeup-source;
1120 compatible = "st,stm32-pwm-lp";
1121 #pwm-cells = <3>;
1126 compatible = "st,stm32-lptimer-trigger";
1132 compatible = "st,stm32-lptimer-counter";
1137 compatible = "st,stm32-lptimer-timer";
1143 #address-cells = <1>;
1144 #size-cells = <0>;
1145 compatible = "st,stm32-lptimer";
1147 interrupts-extended = <&exti 50 IRQ_TYPE_LEVEL_HIGH>;
1149 clock-names = "mux";
1150 wakeup-source;
1154 compatible = "st,stm32-pwm-lp";
1155 #pwm-cells = <3>;
1160 compatible = "st,stm32-lptimer-trigger";
1166 compatible = "st,stm32-lptimer-timer";
1172 compatible = "st,stm32-lptimer";
1174 interrupts-extended = <&exti 52 IRQ_TYPE_LEVEL_HIGH>;
1176 clock-names = "mux";
1177 wakeup-source;
1181 compatible = "st,stm32-pwm-lp";
1182 #pwm-cells = <3>;
1187 compatible = "st,stm32-lptimer-timer";
1193 compatible = "st,stm32-lptimer";
1195 interrupts-extended = <&exti 53 IRQ_TYPE_LEVEL_HIGH>;
1197 clock-names = "mux";
1198 wakeup-source;
1202 compatible = "st,stm32-pwm-lp";
1203 #pwm-cells = <3>;
1208 compatible = "st,stm32-lptimer-timer";
1213 mdma: dma-controller@58000000 {
1214 compatible = "st,stm32h7-mdma";
1218 #dma-cells = <5>;
1219 dma-channels = <32>;
1220 dma-requests = <48>;
1223 fmc: memory-controller@58002000 {
1224 compatible = "st,stm32mp1-fmc2-ebi";
1231 #address-cells = <2>;
1232 #size-cells = <1>;
1237 nand-controller@4,0 {
1238 compatible = "st,stm32mp1-fmc2-nfc";
1245 #address-cells = <1>;
1246 #size-cells = <0>;
1251 dma-names = "tx", "rx", "ecc";
1257 compatible = "st,stm32f469-qspi";
1259 reg-names = "qspi", "qspi_mm";
1260 #address-cells = <1>;
1261 #size-cells = <0>;
1265 dma-names = "tx", "rx";
1272 compatible = "st,stm32-sdmmc2", "arm,pl18x", "arm,primecell";
1273 arm,primecell-periphid = <0x20253180>;
1277 clock-names = "apb_pclk";
1279 cap-sd-highspeed;
1280 cap-mmc-highspeed;
1281 max-frequency = <130000000>;
1286 compatible = "st,stm32-sdmmc2", "arm,pl18x", "arm,primecell";
1287 arm,primecell-periphid = <0x20253180>;
1291 clock-names = "apb_pclk";
1293 cap-sd-highspeed;
1294 cap-mmc-highspeed;
1295 max-frequency = <130000000>;
1300 compatible = "generic-ohci";
1309 compatible = "generic-ehci";
1319 compatible = "st,stm32mp1-iwdg";
1322 clock-names = "pclk", "lsi";
1327 #address-cells = <1>;
1328 #size-cells = <0>;
1329 #clock-cells = <0>;
1330 compatible = "st,stm32mp1-usbphyc";
1334 vdda1v1-supply = <&scmi_reg11>;
1335 vdda1v8-supply = <&scmi_reg18>;
1338 usbphyc_port0: usb-phy@0 {
1339 #phy-cells = <0>;
1343 usbphyc_port1: usb-phy@1 {
1344 #phy-cells = <1>;
1350 compatible = "st,stm32mp1-rtc";
1352 interrupts-extended = <&exti 19 IRQ_TYPE_LEVEL_HIGH>;
1355 clock-names = "pclk", "rtc_ck";
1360 compatible = "st,stm32mp13-bsec";
1362 #address-cells = <1>;
1363 #size-cells = <1>;
1382 #address-cells = <1>;
1383 #size-cells = <1>;
1384 compatible = "st,stm32mp135-pinctrl";
1386 interrupt-parent = <&exti>;
1390 gpio-controller;
1391 #gpio-cells = <2>;
1392 interrupt-controller;
1393 #interrupt-cells = <2>;
1396 st,bank-name = "GPIOA";
1398 gpio-ranges = <&pinctrl 0 0 16>;
1402 gpio-controller;
1403 #gpio-cells = <2>;
1404 interrupt-controller;
1405 #interrupt-cells = <2>;
1408 st,bank-name = "GPIOB";
1410 gpio-ranges = <&pinctrl 0 16 16>;
1414 gpio-controller;
1415 #gpio-cells = <2>;
1416 interrupt-controller;
1417 #interrupt-cells = <2>;
1420 st,bank-name = "GPIOC";
1422 gpio-ranges = <&pinctrl 0 32 16>;
1426 gpio-controller;
1427 #gpio-cells = <2>;
1428 interrupt-controller;
1429 #interrupt-cells = <2>;
1432 st,bank-name = "GPIOD";
1434 gpio-ranges = <&pinctrl 0 48 16>;
1438 gpio-controller;
1439 #gpio-cells = <2>;
1440 interrupt-controller;
1441 #interrupt-cells = <2>;
1444 st,bank-name = "GPIOE";
1446 gpio-ranges = <&pinctrl 0 64 16>;
1450 gpio-controller;
1451 #gpio-cells = <2>;
1452 interrupt-controller;
1453 #interrupt-cells = <2>;
1456 st,bank-name = "GPIOF";
1458 gpio-ranges = <&pinctrl 0 80 16>;
1462 gpio-controller;
1463 #gpio-cells = <2>;
1464 interrupt-controller;
1465 #interrupt-cells = <2>;
1468 st,bank-name = "GPIOG";
1470 gpio-ranges = <&pinctrl 0 96 16>;
1474 gpio-controller;
1475 #gpio-cells = <2>;
1476 interrupt-controller;
1477 #interrupt-cells = <2>;
1480 st,bank-name = "GPIOH";
1482 gpio-ranges = <&pinctrl 0 112 15>;
1486 gpio-controller;
1487 #gpio-cells = <2>;
1488 interrupt-controller;
1489 #interrupt-cells = <2>;
1492 st,bank-name = "GPIOI";
1494 gpio-ranges = <&pinctrl 0 128 8>;