blob: 869b9127c7d633e33b97e7eccf2d3ad79bf66512 [file] [log] [blame]
Yann Gautier4ede20a2020-09-18 15:04:14 +02001// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
2/*
Nicolas Le Bayon79c388e2020-09-25 17:25:09 +02003 * Copyright (c) 2017-2022, STMicroelectronics - All Rights Reserved
Yann Gautier4ede20a2020-09-18 15:04:14 +02004 * Author: Ludovic Barre <ludovic.barre@st.com> for STMicroelectronics.
5 */
6#include <dt-bindings/interrupt-controller/arm-gic.h>
7#include <dt-bindings/clock/stm32mp1-clks.h>
8#include <dt-bindings/reset/stm32mp1-resets.h>
9
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>;
Nicolas Le Bayon79c388e2020-09-25 17:25:09 +020022 nvmem-cells = <&part_number_otp>;
23 nvmem-cell-names = "part_number";
Yann Gautier4ede20a2020-09-18 15:04:14 +020024 };
25 };
26
27 psci {
28 compatible = "arm,psci-1.0";
29 method = "smc";
30 };
31
32 intc: interrupt-controller@a0021000 {
33 compatible = "arm,cortex-a7-gic";
34 #interrupt-cells = <3>;
35 interrupt-controller;
36 reg = <0xa0021000 0x1000>,
37 <0xa0022000 0x2000>;
38 };
39
40 clocks {
41 clk_hse: clk-hse {
42 #clock-cells = <0>;
43 compatible = "fixed-clock";
44 clock-frequency = <24000000>;
45 };
46
47 clk_hsi: clk-hsi {
48 #clock-cells = <0>;
49 compatible = "fixed-clock";
50 clock-frequency = <64000000>;
51 };
52
53 clk_lse: clk-lse {
54 #clock-cells = <0>;
55 compatible = "fixed-clock";
56 clock-frequency = <32768>;
57 };
58
59 clk_lsi: clk-lsi {
60 #clock-cells = <0>;
61 compatible = "fixed-clock";
62 clock-frequency = <32000>;
63 };
64
65 clk_csi: clk-csi {
66 #clock-cells = <0>;
67 compatible = "fixed-clock";
68 clock-frequency = <4000000>;
69 };
70 };
71
72 soc {
73 compatible = "simple-bus";
74 #address-cells = <1>;
75 #size-cells = <1>;
76 interrupt-parent = <&intc>;
77 ranges;
78
79 timers12: timer@40006000 {
80 #address-cells = <1>;
81 #size-cells = <0>;
82 compatible = "st,stm32-timers";
83 reg = <0x40006000 0x400>;
84 clocks = <&rcc TIM12_K>;
85 clock-names = "int";
86 status = "disabled";
87 };
88
89 usart2: serial@4000e000 {
90 compatible = "st,stm32h7-uart";
91 reg = <0x4000e000 0x400>;
92 interrupts-extended = <&exti 27 IRQ_TYPE_LEVEL_HIGH>;
93 clocks = <&rcc USART2_K>;
94 resets = <&rcc USART2_R>;
95 status = "disabled";
96 };
97
98 usart3: serial@4000f000 {
99 compatible = "st,stm32h7-uart";
100 reg = <0x4000f000 0x400>;
101 interrupts-extended = <&exti 28 IRQ_TYPE_LEVEL_HIGH>;
102 clocks = <&rcc USART3_K>;
103 resets = <&rcc USART3_R>;
104 status = "disabled";
105 };
106
107 uart4: serial@40010000 {
108 compatible = "st,stm32h7-uart";
109 reg = <0x40010000 0x400>;
110 interrupts-extended = <&exti 30 IRQ_TYPE_LEVEL_HIGH>;
111 clocks = <&rcc UART4_K>;
112 resets = <&rcc UART4_R>;
113 wakeup-source;
114 status = "disabled";
115 };
116
117 uart5: serial@40011000 {
118 compatible = "st,stm32h7-uart";
119 reg = <0x40011000 0x400>;
120 interrupts-extended = <&exti 31 IRQ_TYPE_LEVEL_HIGH>;
121 clocks = <&rcc UART5_K>;
122 resets = <&rcc UART5_R>;
123 status = "disabled";
124 };
125
Grzegorz Szymaszek2183f1a2021-04-21 19:06:57 +0200126 i2c2: i2c@40013000 {
127 compatible = "st,stm32mp15-i2c";
128 reg = <0x40013000 0x400>;
129 interrupt-names = "event", "error";
Yann Gautier2486d922022-10-21 15:31:36 +0200130 interrupts-extended = <&exti 22 IRQ_TYPE_LEVEL_HIGH>,
131 <&intc GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
Grzegorz Szymaszek2183f1a2021-04-21 19:06:57 +0200132 clocks = <&rcc I2C2_K>;
133 resets = <&rcc I2C2_R>;
134 #address-cells = <1>;
135 #size-cells = <0>;
136 st,syscfg-fmp = <&syscfg 0x4 0x2>;
137 wakeup-source;
138 status = "disabled";
139 };
140
Yann Gautier4ede20a2020-09-18 15:04:14 +0200141 uart7: serial@40018000 {
142 compatible = "st,stm32h7-uart";
143 reg = <0x40018000 0x400>;
144 interrupts-extended = <&exti 32 IRQ_TYPE_LEVEL_HIGH>;
145 clocks = <&rcc UART7_K>;
146 resets = <&rcc UART7_R>;
147 status = "disabled";
148 };
149
150 uart8: serial@40019000 {
151 compatible = "st,stm32h7-uart";
152 reg = <0x40019000 0x400>;
153 interrupts-extended = <&exti 33 IRQ_TYPE_LEVEL_HIGH>;
154 clocks = <&rcc UART8_K>;
155 resets = <&rcc UART8_R>;
156 status = "disabled";
157 };
158
159 usart6: serial@44003000 {
160 compatible = "st,stm32h7-uart";
161 reg = <0x44003000 0x400>;
162 interrupts-extended = <&exti 29 IRQ_TYPE_LEVEL_HIGH>;
163 clocks = <&rcc USART6_K>;
164 resets = <&rcc USART6_R>;
165 status = "disabled";
166 };
167
168 timers15: timer@44006000 {
169 #address-cells = <1>;
170 #size-cells = <0>;
171 compatible = "st,stm32-timers";
172 reg = <0x44006000 0x400>;
173 clocks = <&rcc TIM15_K>;
174 clock-names = "int";
175 status = "disabled";
176 };
177
178 usbotg_hs: usb-otg@49000000 {
Yann Gautierbb053d52021-10-20 17:22:32 +0200179 compatible = "st,stm32mp15-hsotg", "snps,dwc2";
Yann Gautier4ede20a2020-09-18 15:04:14 +0200180 reg = <0x49000000 0x10000>;
181 clocks = <&rcc USBO_K>;
182 clock-names = "otg";
183 resets = <&rcc USBO_R>;
184 reset-names = "dwc2";
185 interrupts-extended = <&exti 44 IRQ_TYPE_LEVEL_HIGH>;
186 g-rx-fifo-size = <512>;
187 g-np-tx-fifo-size = <32>;
188 g-tx-fifo-size = <256 16 16 16 16 16 16 16>;
189 dr_mode = "otg";
190 usb33d-supply = <&usb33>;
191 status = "disabled";
192 };
193
194 rcc: rcc@50000000 {
195 compatible = "st,stm32mp1-rcc", "syscon";
196 reg = <0x50000000 0x1000>;
197 #address-cells = <1>;
198 #size-cells = <0>;
199 #clock-cells = <1>;
200 #reset-cells = <1>;
201 interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
202 secure-interrupts = <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>;
203 secure-interrupt-names = "wakeup";
204 };
205
206 pwr_regulators: pwr@50001000 {
207 compatible = "st,stm32mp1,pwr-reg";
208 reg = <0x50001000 0x10>;
209 st,tzcr = <&rcc 0x0 0x1>;
210
211 reg11: reg11 {
212 regulator-name = "reg11";
213 regulator-min-microvolt = <1100000>;
214 regulator-max-microvolt = <1100000>;
215 };
216
217 reg18: reg18 {
218 regulator-name = "reg18";
219 regulator-min-microvolt = <1800000>;
220 regulator-max-microvolt = <1800000>;
221 };
222
223 usb33: usb33 {
224 regulator-name = "usb33";
225 regulator-min-microvolt = <3300000>;
226 regulator-max-microvolt = <3300000>;
227 };
228 };
229
230 pwr_mcu: pwr_mcu@50001014 {
231 compatible = "st,stm32mp151-pwr-mcu", "syscon";
232 reg = <0x50001014 0x4>;
233 };
234
235 pwr_irq: pwr@50001020 {
236 compatible = "st,stm32mp1-pwr";
237 reg = <0x50001020 0x100>;
238 interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>;
239 interrupt-controller;
240 #interrupt-cells = <3>;
241 };
242
243 exti: interrupt-controller@5000d000 {
244 compatible = "st,stm32mp1-exti", "syscon";
245 interrupt-controller;
246 #interrupt-cells = <2>;
247 reg = <0x5000d000 0x400>;
248
249 /* exti_pwr is an extra interrupt controller used for
250 * EXTI 55 to 60. It's mapped on pwr interrupt
251 * controller.
252 */
253 exti_pwr: exti-pwr {
254 interrupt-controller;
255 #interrupt-cells = <2>;
256 interrupt-parent = <&pwr_irq>;
257 st,irq-number = <6>;
258 };
259 };
260
261 syscfg: syscon@50020000 {
262 compatible = "st,stm32mp157-syscfg", "syscon";
263 reg = <0x50020000 0x400>;
264 clocks = <&rcc SYSCFG>;
265 };
266
267 hash1: hash@54002000 {
268 compatible = "st,stm32f756-hash";
269 reg = <0x54002000 0x400>;
270 interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
271 clocks = <&rcc HASH1>;
272 resets = <&rcc HASH1_R>;
273 status = "disabled";
274 };
275
276 rng1: rng@54003000 {
277 compatible = "st,stm32-rng";
278 reg = <0x54003000 0x400>;
279 clocks = <&rcc RNG1_K>;
280 resets = <&rcc RNG1_R>;
281 status = "disabled";
282 };
283
Christophe Kerello749c9172020-07-16 16:57:34 +0200284 fmc: memory-controller@58002000 {
285 #address-cells = <2>;
286 #size-cells = <1>;
287 compatible = "st,stm32mp1-fmc2-ebi";
288 reg = <0x58002000 0x1000>;
Yann Gautier4ede20a2020-09-18 15:04:14 +0200289 clocks = <&rcc FMC_K>;
290 resets = <&rcc FMC_R>;
291 status = "disabled";
Christophe Kerello749c9172020-07-16 16:57:34 +0200292
293 ranges = <0 0 0x60000000 0x04000000>, /* EBI CS 1 */
294 <1 0 0x64000000 0x04000000>, /* EBI CS 2 */
295 <2 0 0x68000000 0x04000000>, /* EBI CS 3 */
296 <3 0 0x6c000000 0x04000000>, /* EBI CS 4 */
297 <4 0 0x80000000 0x10000000>; /* NAND */
298
299 nand-controller@4,0 {
300 #address-cells = <1>;
301 #size-cells = <0>;
302 compatible = "st,stm32mp1-fmc2-nfc";
303 reg = <4 0x00000000 0x1000>,
304 <4 0x08010000 0x1000>,
305 <4 0x08020000 0x1000>,
306 <4 0x01000000 0x1000>,
307 <4 0x09010000 0x1000>,
308 <4 0x09020000 0x1000>;
309 interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
310 status = "disabled";
311 };
Yann Gautier4ede20a2020-09-18 15:04:14 +0200312 };
313
314 qspi: spi@58003000 {
315 compatible = "st,stm32f469-qspi";
316 reg = <0x58003000 0x1000>, <0x70000000 0x10000000>;
317 reg-names = "qspi", "qspi_mm";
318 interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
319 clocks = <&rcc QSPI_K>;
320 resets = <&rcc QSPI_R>;
321 status = "disabled";
322 };
323
Yann Gautierbb053d52021-10-20 17:22:32 +0200324 sdmmc1: mmc@58005000 {
Yann Gautier4ede20a2020-09-18 15:04:14 +0200325 compatible = "st,stm32-sdmmc2", "arm,pl18x", "arm,primecell";
326 arm,primecell-periphid = <0x00253180>;
327 reg = <0x58005000 0x1000>, <0x58006000 0x1000>;
328 interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
329 interrupt-names = "cmd_irq";
330 clocks = <&rcc SDMMC1_K>;
331 clock-names = "apb_pclk";
332 resets = <&rcc SDMMC1_R>;
333 cap-sd-highspeed;
334 cap-mmc-highspeed;
335 max-frequency = <120000000>;
336 status = "disabled";
337 };
338
Yann Gautierbb053d52021-10-20 17:22:32 +0200339 sdmmc2: mmc@58007000 {
Yann Gautier4ede20a2020-09-18 15:04:14 +0200340 compatible = "st,stm32-sdmmc2", "arm,pl18x", "arm,primecell";
341 arm,primecell-periphid = <0x00253180>;
342 reg = <0x58007000 0x1000>, <0x58008000 0x1000>;
343 interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>;
344 interrupt-names = "cmd_irq";
345 clocks = <&rcc SDMMC2_K>;
346 clock-names = "apb_pclk";
347 resets = <&rcc SDMMC2_R>;
348 cap-sd-highspeed;
349 cap-mmc-highspeed;
350 max-frequency = <120000000>;
351 status = "disabled";
352 };
353
354 iwdg2: watchdog@5a002000 {
355 compatible = "st,stm32mp1-iwdg";
356 reg = <0x5a002000 0x400>;
357 secure-interrupts = <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>;
358 clocks = <&rcc IWDG2>, <&rcc CK_LSI>;
359 clock-names = "pclk", "lsi";
360 status = "disabled";
361 };
362
Johann Neuhausera5ef16a2022-07-08 15:22:05 +0200363 ddr: ddr@5a003000 {
Nicolas Le Bayon5d8e64b2021-02-25 11:03:53 +0100364 compatible = "st,stm32mp1-ddr";
365 reg = <0x5A003000 0x550 0x5A004000 0x234>;
366 clocks = <&rcc AXIDCG>,
367 <&rcc DDRC1>,
368 <&rcc DDRC2>,
369 <&rcc DDRPHYC>,
370 <&rcc DDRCAPB>,
371 <&rcc DDRPHYCAPB>;
372 clock-names = "axidcg",
373 "ddrc1",
374 "ddrc2",
375 "ddrphyc",
376 "ddrcapb",
377 "ddrphycapb";
378 status = "okay";
379 };
380
Yann Gautier4ede20a2020-09-18 15:04:14 +0200381 usbphyc: usbphyc@5a006000 {
382 #address-cells = <1>;
383 #size-cells = <0>;
384 #clock-cells = <0>;
385 compatible = "st,stm32mp1-usbphyc";
386 reg = <0x5a006000 0x1000>;
387 clocks = <&rcc USBPHY_K>;
388 resets = <&rcc USBPHY_R>;
389 vdda1v1-supply = <&reg11>;
390 vdda1v8-supply = <&reg18>;
391 status = "disabled";
392
393 usbphyc_port0: usb-phy@0 {
394 #phy-cells = <0>;
395 reg = <0>;
396 };
397
398 usbphyc_port1: usb-phy@1 {
399 #phy-cells = <1>;
400 reg = <1>;
401 };
402 };
403
404 usart1: serial@5c000000 {
405 compatible = "st,stm32h7-uart";
406 reg = <0x5c000000 0x400>;
407 interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
408 clocks = <&rcc USART1_K>;
409 resets = <&rcc USART1_R>;
410 status = "disabled";
411 };
412
413 spi6: spi@5c001000 {
414 #address-cells = <1>;
415 #size-cells = <0>;
416 compatible = "st,stm32h7-spi";
417 reg = <0x5c001000 0x400>;
418 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
419 clocks = <&rcc SPI6_K>;
420 resets = <&rcc SPI6_R>;
421 status = "disabled";
422 };
423
424 i2c4: i2c@5c002000 {
425 compatible = "st,stm32mp15-i2c";
426 reg = <0x5c002000 0x400>;
427 interrupt-names = "event", "error";
428 interrupts-extended = <&exti 24 IRQ_TYPE_LEVEL_HIGH>,
429 <&intc GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
430 clocks = <&rcc I2C4_K>;
431 resets = <&rcc I2C4_R>;
432 #address-cells = <1>;
433 #size-cells = <0>;
434 st,syscfg-fmp = <&syscfg 0x4 0x8>;
435 wakeup-source;
436 status = "disabled";
437 };
438
439 iwdg1: watchdog@5c003000 {
440 compatible = "st,stm32mp1-iwdg";
441 reg = <0x5C003000 0x400>;
442 interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>;
443 clocks = <&rcc IWDG1>, <&rcc CK_LSI>;
444 clock-names = "pclk", "lsi";
445 status = "disabled";
446 };
447
448 rtc: rtc@5c004000 {
449 compatible = "st,stm32mp1-rtc";
450 reg = <0x5c004000 0x400>;
451 clocks = <&rcc RTCAPB>, <&rcc RTC>;
452 clock-names = "pclk", "rtc_ck";
453 interrupts-extended = <&exti 19 IRQ_TYPE_LEVEL_HIGH>;
454 status = "disabled";
455 };
456
Yann Gautierbb053d52021-10-20 17:22:32 +0200457 bsec: efuse@5c005000 {
Yann Gautier4ede20a2020-09-18 15:04:14 +0200458 compatible = "st,stm32mp15-bsec";
459 reg = <0x5c005000 0x400>;
460 #address-cells = <1>;
461 #size-cells = <1>;
Nicolas Le Bayon79c388e2020-09-25 17:25:09 +0200462
463 cfg0_otp: cfg0_otp@0 {
464 reg = <0x0 0x1>;
465 };
466 part_number_otp: part_number_otp@4 {
467 reg = <0x4 0x1>;
468 };
469 monotonic_otp: monotonic_otp@10 {
470 reg = <0x10 0x4>;
471 };
472 nand_otp: nand_otp@24 {
473 reg = <0x24 0x4>;
474 };
475 uid_otp: uid_otp@34 {
476 reg = <0x34 0xc>;
477 };
478 package_otp: package_otp@40 {
479 reg = <0x40 0x4>;
480 };
481 hw2_otp: hw2_otp@48 {
482 reg = <0x48 0x4>;
483 };
Yann Gautier4ede20a2020-09-18 15:04:14 +0200484 ts_cal1: calib@5c {
485 reg = <0x5c 0x2>;
486 };
487 ts_cal2: calib@5e {
488 reg = <0x5e 0x2>;
489 };
Lionel Debieve563e7152022-10-06 08:51:32 +0200490 pkh_otp: pkh_otp@60 {
491 reg = <0x60 0x20>;
492 };
Nicolas Le Bayon79c388e2020-09-25 17:25:09 +0200493 mac_addr: mac_addr@e4 {
494 reg = <0xe4 0x8>;
495 st,non-secure-otp;
496 };
Yann Gautier4ede20a2020-09-18 15:04:14 +0200497 };
498
499 etzpc: etzpc@5c007000 {
500 compatible = "st,stm32-etzpc";
501 reg = <0x5C007000 0x400>;
502 clocks = <&rcc TZPC>;
Yann Gautier4ede20a2020-09-18 15:04:14 +0200503 };
504
505 stgen: stgen@5c008000 {
506 compatible = "st,stm32-stgen";
507 reg = <0x5C008000 0x1000>;
508 };
509
510 i2c6: i2c@5c009000 {
511 compatible = "st,stm32mp15-i2c";
512 reg = <0x5c009000 0x400>;
513 interrupt-names = "event", "error";
514 interrupts-extended = <&exti 54 IRQ_TYPE_LEVEL_HIGH>,
515 <&intc GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>;
516 clocks = <&rcc I2C6_K>;
517 resets = <&rcc I2C6_R>;
518 #address-cells = <1>;
519 #size-cells = <0>;
520 st,syscfg-fmp = <&syscfg 0x4 0x20>;
521 wakeup-source;
522 status = "disabled";
523 };
524
525 tamp: tamp@5c00a000 {
526 compatible = "st,stm32-tamp", "simple-bus", "syscon", "simple-mfd";
527 reg = <0x5c00a000 0x400>;
528 secure-interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>;
529 clocks = <&rcc RTCAPB>;
530 };
531
532 /*
533 * Break node order to solve dependency probe issue between
534 * pinctrl and exti.
535 */
Yann Gautier1bbb09e2022-03-11 14:23:43 +0100536 pinctrl: pinctrl@50002000 {
Yann Gautier4ede20a2020-09-18 15:04:14 +0200537 #address-cells = <1>;
538 #size-cells = <1>;
539 compatible = "st,stm32mp157-pinctrl";
540 ranges = <0 0x50002000 0xa400>;
541 interrupt-parent = <&exti>;
542 st,syscfg = <&exti 0x60 0xff>;
543 pins-are-numbered;
544
545 gpioa: gpio@50002000 {
546 gpio-controller;
547 #gpio-cells = <2>;
548 interrupt-controller;
549 #interrupt-cells = <2>;
550 reg = <0x0 0x400>;
551 clocks = <&rcc GPIOA>;
552 st,bank-name = "GPIOA";
553 status = "disabled";
554 };
555
556 gpiob: gpio@50003000 {
557 gpio-controller;
558 #gpio-cells = <2>;
559 interrupt-controller;
560 #interrupt-cells = <2>;
561 reg = <0x1000 0x400>;
562 clocks = <&rcc GPIOB>;
563 st,bank-name = "GPIOB";
564 status = "disabled";
565 };
566
567 gpioc: gpio@50004000 {
568 gpio-controller;
569 #gpio-cells = <2>;
570 interrupt-controller;
571 #interrupt-cells = <2>;
572 reg = <0x2000 0x400>;
573 clocks = <&rcc GPIOC>;
574 st,bank-name = "GPIOC";
575 status = "disabled";
576 };
577
578 gpiod: gpio@50005000 {
579 gpio-controller;
580 #gpio-cells = <2>;
581 interrupt-controller;
582 #interrupt-cells = <2>;
583 reg = <0x3000 0x400>;
584 clocks = <&rcc GPIOD>;
585 st,bank-name = "GPIOD";
586 status = "disabled";
587 };
588
589 gpioe: gpio@50006000 {
590 gpio-controller;
591 #gpio-cells = <2>;
592 interrupt-controller;
593 #interrupt-cells = <2>;
594 reg = <0x4000 0x400>;
595 clocks = <&rcc GPIOE>;
596 st,bank-name = "GPIOE";
597 status = "disabled";
598 };
599
600 gpiof: gpio@50007000 {
601 gpio-controller;
602 #gpio-cells = <2>;
603 interrupt-controller;
604 #interrupt-cells = <2>;
605 reg = <0x5000 0x400>;
606 clocks = <&rcc GPIOF>;
607 st,bank-name = "GPIOF";
608 status = "disabled";
609 };
610
611 gpiog: gpio@50008000 {
612 gpio-controller;
613 #gpio-cells = <2>;
614 interrupt-controller;
615 #interrupt-cells = <2>;
616 reg = <0x6000 0x400>;
617 clocks = <&rcc GPIOG>;
618 st,bank-name = "GPIOG";
619 status = "disabled";
620 };
621
622 gpioh: gpio@50009000 {
623 gpio-controller;
624 #gpio-cells = <2>;
625 interrupt-controller;
626 #interrupt-cells = <2>;
627 reg = <0x7000 0x400>;
628 clocks = <&rcc GPIOH>;
629 st,bank-name = "GPIOH";
630 status = "disabled";
631 };
632
633 gpioi: gpio@5000a000 {
634 gpio-controller;
635 #gpio-cells = <2>;
636 interrupt-controller;
637 #interrupt-cells = <2>;
638 reg = <0x8000 0x400>;
639 clocks = <&rcc GPIOI>;
640 st,bank-name = "GPIOI";
641 status = "disabled";
642 };
643
644 gpioj: gpio@5000b000 {
645 gpio-controller;
646 #gpio-cells = <2>;
647 interrupt-controller;
648 #interrupt-cells = <2>;
649 reg = <0x9000 0x400>;
650 clocks = <&rcc GPIOJ>;
651 st,bank-name = "GPIOJ";
652 status = "disabled";
653 };
654
655 gpiok: gpio@5000c000 {
656 gpio-controller;
657 #gpio-cells = <2>;
658 interrupt-controller;
659 #interrupt-cells = <2>;
660 reg = <0xa000 0x400>;
661 clocks = <&rcc GPIOK>;
662 st,bank-name = "GPIOK";
663 status = "disabled";
664 };
665 };
666
Yann Gautier1bbb09e2022-03-11 14:23:43 +0100667 pinctrl_z: pinctrl@54004000 {
Yann Gautier4ede20a2020-09-18 15:04:14 +0200668 #address-cells = <1>;
669 #size-cells = <1>;
670 compatible = "st,stm32mp157-z-pinctrl";
671 ranges = <0 0x54004000 0x400>;
672 pins-are-numbered;
673 interrupt-parent = <&exti>;
674 st,syscfg = <&exti 0x60 0xff>;
675
676 gpioz: gpio@54004000 {
677 gpio-controller;
678 #gpio-cells = <2>;
679 interrupt-controller;
680 #interrupt-cells = <2>;
681 reg = <0 0x400>;
682 clocks = <&rcc GPIOZ>;
683 st,bank-name = "GPIOZ";
684 st,bank-ioport = <11>;
685 status = "disabled";
686 };
687 };
688 };
689};