xref: /rk3399_ARM-atf/fdts/stm32mp151.dtsi (revision 8cafbda6d3da4dc4204c793fb9d0ca307cc566eb)
1277d6af5SYann Gautier// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
2277d6af5SYann Gautier/*
3277d6af5SYann Gautier * Copyright (C) STMicroelectronics 2017 - All Rights Reserved
4277d6af5SYann Gautier * Author: Ludovic Barre <ludovic.barre@st.com> for STMicroelectronics.
5277d6af5SYann Gautier */
6277d6af5SYann Gautier#include <dt-bindings/interrupt-controller/arm-gic.h>
7277d6af5SYann Gautier#include <dt-bindings/clock/stm32mp1-clks.h>
8277d6af5SYann Gautier#include <dt-bindings/reset/stm32mp1-resets.h>
9277d6af5SYann Gautier
10277d6af5SYann Gautier/ {
11277d6af5SYann Gautier	#address-cells = <1>;
12277d6af5SYann Gautier	#size-cells = <1>;
13277d6af5SYann Gautier
14277d6af5SYann Gautier	cpus {
15277d6af5SYann Gautier		#address-cells = <1>;
16277d6af5SYann Gautier		#size-cells = <0>;
17277d6af5SYann Gautier
18277d6af5SYann Gautier		cpu0: cpu@0 {
19277d6af5SYann Gautier			compatible = "arm,cortex-a7";
20277d6af5SYann Gautier			device_type = "cpu";
21277d6af5SYann Gautier			reg = <0>;
22277d6af5SYann Gautier		};
23277d6af5SYann Gautier	};
24277d6af5SYann Gautier
25277d6af5SYann Gautier	psci {
26277d6af5SYann Gautier		compatible = "arm,psci-1.0";
27277d6af5SYann Gautier		method = "smc";
28277d6af5SYann Gautier	};
29277d6af5SYann Gautier
30277d6af5SYann Gautier	intc: interrupt-controller@a0021000 {
31277d6af5SYann Gautier		compatible = "arm,cortex-a7-gic";
32277d6af5SYann Gautier		#interrupt-cells = <3>;
33277d6af5SYann Gautier		interrupt-controller;
34277d6af5SYann Gautier		reg = <0xa0021000 0x1000>,
35277d6af5SYann Gautier		      <0xa0022000 0x2000>;
36277d6af5SYann Gautier	};
37277d6af5SYann Gautier
38277d6af5SYann Gautier	clocks {
39277d6af5SYann Gautier		clk_hse: clk-hse {
40277d6af5SYann Gautier			#clock-cells = <0>;
41277d6af5SYann Gautier			compatible = "fixed-clock";
42277d6af5SYann Gautier			clock-frequency = <24000000>;
43277d6af5SYann Gautier		};
44277d6af5SYann Gautier
45277d6af5SYann Gautier		clk_hsi: clk-hsi {
46277d6af5SYann Gautier			#clock-cells = <0>;
47277d6af5SYann Gautier			compatible = "fixed-clock";
48277d6af5SYann Gautier			clock-frequency = <64000000>;
49277d6af5SYann Gautier		};
50277d6af5SYann Gautier
51277d6af5SYann Gautier		clk_lse: clk-lse {
52277d6af5SYann Gautier			#clock-cells = <0>;
53277d6af5SYann Gautier			compatible = "fixed-clock";
54277d6af5SYann Gautier			clock-frequency = <32768>;
55277d6af5SYann Gautier		};
56277d6af5SYann Gautier
57277d6af5SYann Gautier		clk_lsi: clk-lsi {
58277d6af5SYann Gautier			#clock-cells = <0>;
59277d6af5SYann Gautier			compatible = "fixed-clock";
60277d6af5SYann Gautier			clock-frequency = <32000>;
61277d6af5SYann Gautier		};
62277d6af5SYann Gautier
63277d6af5SYann Gautier		clk_csi: clk-csi {
64277d6af5SYann Gautier			#clock-cells = <0>;
65277d6af5SYann Gautier			compatible = "fixed-clock";
66277d6af5SYann Gautier			clock-frequency = <4000000>;
67277d6af5SYann Gautier		};
68277d6af5SYann Gautier	};
69277d6af5SYann Gautier
70277d6af5SYann Gautier	soc {
71277d6af5SYann Gautier		compatible = "simple-bus";
72277d6af5SYann Gautier		#address-cells = <1>;
73277d6af5SYann Gautier		#size-cells = <1>;
74277d6af5SYann Gautier		interrupt-parent = <&intc>;
75277d6af5SYann Gautier		ranges;
76277d6af5SYann Gautier
77277d6af5SYann Gautier		timers12: timer@40006000 {
78277d6af5SYann Gautier			#address-cells = <1>;
79277d6af5SYann Gautier			#size-cells = <0>;
80277d6af5SYann Gautier			compatible = "st,stm32-timers";
81277d6af5SYann Gautier			reg = <0x40006000 0x400>;
82277d6af5SYann Gautier			clocks = <&rcc TIM12_K>;
83277d6af5SYann Gautier			clock-names = "int";
84277d6af5SYann Gautier			status = "disabled";
85277d6af5SYann Gautier		};
86277d6af5SYann Gautier
87277d6af5SYann Gautier		usart2: serial@4000e000 {
88277d6af5SYann Gautier			compatible = "st,stm32h7-uart";
89277d6af5SYann Gautier			reg = <0x4000e000 0x400>;
90277d6af5SYann Gautier			interrupts-extended = <&exti 27 IRQ_TYPE_LEVEL_HIGH>;
91277d6af5SYann Gautier			clocks = <&rcc USART2_K>;
92277d6af5SYann Gautier			resets = <&rcc USART2_R>;
93277d6af5SYann Gautier			status = "disabled";
94277d6af5SYann Gautier		};
95277d6af5SYann Gautier
96277d6af5SYann Gautier		usart3: serial@4000f000 {
97277d6af5SYann Gautier			compatible = "st,stm32h7-uart";
98277d6af5SYann Gautier			reg = <0x4000f000 0x400>;
99277d6af5SYann Gautier			interrupts-extended = <&exti 28 IRQ_TYPE_LEVEL_HIGH>;
100277d6af5SYann Gautier			clocks = <&rcc USART3_K>;
101277d6af5SYann Gautier			resets = <&rcc USART3_R>;
102277d6af5SYann Gautier			status = "disabled";
103277d6af5SYann Gautier		};
104277d6af5SYann Gautier
105277d6af5SYann Gautier		uart4: serial@40010000 {
106277d6af5SYann Gautier			compatible = "st,stm32h7-uart";
107277d6af5SYann Gautier			reg = <0x40010000 0x400>;
108277d6af5SYann Gautier			interrupts-extended = <&exti 30 IRQ_TYPE_LEVEL_HIGH>;
109277d6af5SYann Gautier			clocks = <&rcc UART4_K>;
110277d6af5SYann Gautier			resets = <&rcc UART4_R>;
111277d6af5SYann Gautier			wakeup-source;
112277d6af5SYann Gautier			status = "disabled";
113277d6af5SYann Gautier		};
114277d6af5SYann Gautier
115277d6af5SYann Gautier		uart5: serial@40011000 {
116277d6af5SYann Gautier			compatible = "st,stm32h7-uart";
117277d6af5SYann Gautier			reg = <0x40011000 0x400>;
118277d6af5SYann Gautier			interrupts-extended = <&exti 31 IRQ_TYPE_LEVEL_HIGH>;
119277d6af5SYann Gautier			clocks = <&rcc UART5_K>;
120277d6af5SYann Gautier			resets = <&rcc UART5_R>;
121277d6af5SYann Gautier			status = "disabled";
122277d6af5SYann Gautier		};
123277d6af5SYann Gautier
1243ef2208bSGrzegorz Szymaszek		i2c2: i2c@40013000 {
1253ef2208bSGrzegorz Szymaszek			compatible = "st,stm32mp15-i2c";
1263ef2208bSGrzegorz Szymaszek			reg = <0x40013000 0x400>;
1273ef2208bSGrzegorz Szymaszek			interrupt-names = "event", "error";
1283ef2208bSGrzegorz Szymaszek			interrupts = <&exti 22 IRQ_TYPE_LEVEL_HIGH>,
1293ef2208bSGrzegorz Szymaszek				     <&intc GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
1303ef2208bSGrzegorz Szymaszek			clocks = <&rcc I2C2_K>;
1313ef2208bSGrzegorz Szymaszek			resets = <&rcc I2C2_R>;
1323ef2208bSGrzegorz Szymaszek			#address-cells = <1>;
1333ef2208bSGrzegorz Szymaszek			#size-cells = <0>;
1343ef2208bSGrzegorz Szymaszek			st,syscfg-fmp = <&syscfg 0x4 0x2>;
1353ef2208bSGrzegorz Szymaszek			wakeup-source;
1363ef2208bSGrzegorz Szymaszek			status = "disabled";
1373ef2208bSGrzegorz Szymaszek		};
1383ef2208bSGrzegorz Szymaszek
139277d6af5SYann Gautier		uart7: serial@40018000 {
140277d6af5SYann Gautier			compatible = "st,stm32h7-uart";
141277d6af5SYann Gautier			reg = <0x40018000 0x400>;
142277d6af5SYann Gautier			interrupts-extended = <&exti 32 IRQ_TYPE_LEVEL_HIGH>;
143277d6af5SYann Gautier			clocks = <&rcc UART7_K>;
144277d6af5SYann Gautier			resets = <&rcc UART7_R>;
145277d6af5SYann Gautier			status = "disabled";
146277d6af5SYann Gautier		};
147277d6af5SYann Gautier
148277d6af5SYann Gautier		uart8: serial@40019000 {
149277d6af5SYann Gautier			compatible = "st,stm32h7-uart";
150277d6af5SYann Gautier			reg = <0x40019000 0x400>;
151277d6af5SYann Gautier			interrupts-extended = <&exti 33 IRQ_TYPE_LEVEL_HIGH>;
152277d6af5SYann Gautier			clocks = <&rcc UART8_K>;
153277d6af5SYann Gautier			resets = <&rcc UART8_R>;
154277d6af5SYann Gautier			status = "disabled";
155277d6af5SYann Gautier		};
156277d6af5SYann Gautier
157277d6af5SYann Gautier		usart6: serial@44003000 {
158277d6af5SYann Gautier			compatible = "st,stm32h7-uart";
159277d6af5SYann Gautier			reg = <0x44003000 0x400>;
160277d6af5SYann Gautier			interrupts-extended = <&exti 29 IRQ_TYPE_LEVEL_HIGH>;
161277d6af5SYann Gautier			clocks = <&rcc USART6_K>;
162277d6af5SYann Gautier			resets = <&rcc USART6_R>;
163277d6af5SYann Gautier			status = "disabled";
164277d6af5SYann Gautier		};
165277d6af5SYann Gautier
166277d6af5SYann Gautier		timers15: timer@44006000 {
167277d6af5SYann Gautier			#address-cells = <1>;
168277d6af5SYann Gautier			#size-cells = <0>;
169277d6af5SYann Gautier			compatible = "st,stm32-timers";
170277d6af5SYann Gautier			reg = <0x44006000 0x400>;
171277d6af5SYann Gautier			clocks = <&rcc TIM15_K>;
172277d6af5SYann Gautier			clock-names = "int";
173277d6af5SYann Gautier			status = "disabled";
174277d6af5SYann Gautier		};
175277d6af5SYann Gautier
176277d6af5SYann Gautier		usbotg_hs: usb-otg@49000000 {
177e8a953a9SYann Gautier			compatible = "st,stm32mp15-hsotg", "snps,dwc2";
178277d6af5SYann Gautier			reg = <0x49000000 0x10000>;
179277d6af5SYann Gautier			clocks = <&rcc USBO_K>;
180277d6af5SYann Gautier			clock-names = "otg";
181277d6af5SYann Gautier			resets = <&rcc USBO_R>;
182277d6af5SYann Gautier			reset-names = "dwc2";
183277d6af5SYann Gautier			interrupts-extended = <&exti 44 IRQ_TYPE_LEVEL_HIGH>;
184277d6af5SYann Gautier			g-rx-fifo-size = <512>;
185277d6af5SYann Gautier			g-np-tx-fifo-size = <32>;
186277d6af5SYann Gautier			g-tx-fifo-size = <256 16 16 16 16 16 16 16>;
187277d6af5SYann Gautier			dr_mode = "otg";
188277d6af5SYann Gautier			usb33d-supply = <&usb33>;
189277d6af5SYann Gautier			status = "disabled";
190277d6af5SYann Gautier		};
191277d6af5SYann Gautier
192277d6af5SYann Gautier		rcc: rcc@50000000 {
193277d6af5SYann Gautier			compatible = "st,stm32mp1-rcc", "syscon";
194277d6af5SYann Gautier			reg = <0x50000000 0x1000>;
195277d6af5SYann Gautier			#address-cells = <1>;
196277d6af5SYann Gautier			#size-cells = <0>;
197277d6af5SYann Gautier			#clock-cells = <1>;
198277d6af5SYann Gautier			#reset-cells = <1>;
199277d6af5SYann Gautier			interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
200277d6af5SYann Gautier			secure-interrupts = <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>;
201277d6af5SYann Gautier			secure-interrupt-names = "wakeup";
202277d6af5SYann Gautier		};
203277d6af5SYann Gautier
204277d6af5SYann Gautier		pwr_regulators: pwr@50001000 {
205277d6af5SYann Gautier			compatible = "st,stm32mp1,pwr-reg";
206277d6af5SYann Gautier			reg = <0x50001000 0x10>;
207277d6af5SYann Gautier			st,tzcr = <&rcc 0x0 0x1>;
208277d6af5SYann Gautier
209277d6af5SYann Gautier			reg11: reg11 {
210277d6af5SYann Gautier				regulator-name = "reg11";
211277d6af5SYann Gautier				regulator-min-microvolt = <1100000>;
212277d6af5SYann Gautier				regulator-max-microvolt = <1100000>;
213277d6af5SYann Gautier			};
214277d6af5SYann Gautier
215277d6af5SYann Gautier			reg18: reg18 {
216277d6af5SYann Gautier				regulator-name = "reg18";
217277d6af5SYann Gautier				regulator-min-microvolt = <1800000>;
218277d6af5SYann Gautier				regulator-max-microvolt = <1800000>;
219277d6af5SYann Gautier			};
220277d6af5SYann Gautier
221277d6af5SYann Gautier			usb33: usb33 {
222277d6af5SYann Gautier				regulator-name = "usb33";
223277d6af5SYann Gautier				regulator-min-microvolt = <3300000>;
224277d6af5SYann Gautier				regulator-max-microvolt = <3300000>;
225277d6af5SYann Gautier			};
226277d6af5SYann Gautier		};
227277d6af5SYann Gautier
228277d6af5SYann Gautier		pwr_mcu: pwr_mcu@50001014 {
229277d6af5SYann Gautier			compatible = "st,stm32mp151-pwr-mcu", "syscon";
230277d6af5SYann Gautier			reg = <0x50001014 0x4>;
231277d6af5SYann Gautier		};
232277d6af5SYann Gautier
233277d6af5SYann Gautier		pwr_irq: pwr@50001020 {
234277d6af5SYann Gautier			compatible = "st,stm32mp1-pwr";
235277d6af5SYann Gautier			reg = <0x50001020 0x100>;
236277d6af5SYann Gautier			interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>;
237277d6af5SYann Gautier			interrupt-controller;
238277d6af5SYann Gautier			#interrupt-cells = <3>;
239277d6af5SYann Gautier		};
240277d6af5SYann Gautier
241277d6af5SYann Gautier		exti: interrupt-controller@5000d000 {
242277d6af5SYann Gautier			compatible = "st,stm32mp1-exti", "syscon";
243277d6af5SYann Gautier			interrupt-controller;
244277d6af5SYann Gautier			#interrupt-cells = <2>;
245277d6af5SYann Gautier			reg = <0x5000d000 0x400>;
246277d6af5SYann Gautier
247277d6af5SYann Gautier			/* exti_pwr is an extra interrupt controller used for
248277d6af5SYann Gautier			 * EXTI 55 to 60. It's mapped on pwr interrupt
249277d6af5SYann Gautier			 * controller.
250277d6af5SYann Gautier			 */
251277d6af5SYann Gautier			exti_pwr: exti-pwr {
252277d6af5SYann Gautier				interrupt-controller;
253277d6af5SYann Gautier				#interrupt-cells = <2>;
254277d6af5SYann Gautier				interrupt-parent = <&pwr_irq>;
255277d6af5SYann Gautier				st,irq-number = <6>;
256277d6af5SYann Gautier			};
257277d6af5SYann Gautier		};
258277d6af5SYann Gautier
259277d6af5SYann Gautier		syscfg: syscon@50020000 {
260277d6af5SYann Gautier			compatible = "st,stm32mp157-syscfg", "syscon";
261277d6af5SYann Gautier			reg = <0x50020000 0x400>;
262277d6af5SYann Gautier			clocks = <&rcc SYSCFG>;
263277d6af5SYann Gautier		};
264277d6af5SYann Gautier
265277d6af5SYann Gautier		hash1: hash@54002000 {
266277d6af5SYann Gautier			compatible = "st,stm32f756-hash";
267277d6af5SYann Gautier			reg = <0x54002000 0x400>;
268277d6af5SYann Gautier			interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
269277d6af5SYann Gautier			clocks = <&rcc HASH1>;
270277d6af5SYann Gautier			resets = <&rcc HASH1_R>;
271277d6af5SYann Gautier			status = "disabled";
272277d6af5SYann Gautier		};
273277d6af5SYann Gautier
274277d6af5SYann Gautier		rng1: rng@54003000 {
275277d6af5SYann Gautier			compatible = "st,stm32-rng";
276277d6af5SYann Gautier			reg = <0x54003000 0x400>;
277277d6af5SYann Gautier			clocks = <&rcc RNG1_K>;
278277d6af5SYann Gautier			resets = <&rcc RNG1_R>;
279277d6af5SYann Gautier			status = "disabled";
280277d6af5SYann Gautier		};
281277d6af5SYann Gautier
2820c3e8acbSChristophe Kerello		fmc: memory-controller@58002000 {
2830c3e8acbSChristophe Kerello			#address-cells = <2>;
2840c3e8acbSChristophe Kerello			#size-cells = <1>;
2850c3e8acbSChristophe Kerello			compatible = "st,stm32mp1-fmc2-ebi";
2860c3e8acbSChristophe Kerello			reg = <0x58002000 0x1000>;
287277d6af5SYann Gautier			clocks = <&rcc FMC_K>;
288277d6af5SYann Gautier			resets = <&rcc FMC_R>;
289277d6af5SYann Gautier			status = "disabled";
2900c3e8acbSChristophe Kerello
2910c3e8acbSChristophe Kerello			ranges = <0 0 0x60000000 0x04000000>, /* EBI CS 1 */
2920c3e8acbSChristophe Kerello				 <1 0 0x64000000 0x04000000>, /* EBI CS 2 */
2930c3e8acbSChristophe Kerello				 <2 0 0x68000000 0x04000000>, /* EBI CS 3 */
2940c3e8acbSChristophe Kerello				 <3 0 0x6c000000 0x04000000>, /* EBI CS 4 */
2950c3e8acbSChristophe Kerello				 <4 0 0x80000000 0x10000000>; /* NAND */
2960c3e8acbSChristophe Kerello
2970c3e8acbSChristophe Kerello			nand-controller@4,0 {
2980c3e8acbSChristophe Kerello				#address-cells = <1>;
2990c3e8acbSChristophe Kerello				#size-cells = <0>;
3000c3e8acbSChristophe Kerello				compatible = "st,stm32mp1-fmc2-nfc";
3010c3e8acbSChristophe Kerello				reg = <4 0x00000000 0x1000>,
3020c3e8acbSChristophe Kerello				      <4 0x08010000 0x1000>,
3030c3e8acbSChristophe Kerello				      <4 0x08020000 0x1000>,
3040c3e8acbSChristophe Kerello				      <4 0x01000000 0x1000>,
3050c3e8acbSChristophe Kerello				      <4 0x09010000 0x1000>,
3060c3e8acbSChristophe Kerello				      <4 0x09020000 0x1000>;
3070c3e8acbSChristophe Kerello				interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
3080c3e8acbSChristophe Kerello				status = "disabled";
3090c3e8acbSChristophe Kerello			};
310277d6af5SYann Gautier		};
311277d6af5SYann Gautier
312277d6af5SYann Gautier		qspi: spi@58003000 {
313277d6af5SYann Gautier			compatible = "st,stm32f469-qspi";
314277d6af5SYann Gautier			reg = <0x58003000 0x1000>, <0x70000000 0x10000000>;
315277d6af5SYann Gautier			reg-names = "qspi", "qspi_mm";
316277d6af5SYann Gautier			interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
317277d6af5SYann Gautier			clocks = <&rcc QSPI_K>;
318277d6af5SYann Gautier			resets = <&rcc QSPI_R>;
319277d6af5SYann Gautier			status = "disabled";
320277d6af5SYann Gautier		};
321277d6af5SYann Gautier
322e8a953a9SYann Gautier		sdmmc1: mmc@58005000 {
323277d6af5SYann Gautier			compatible = "st,stm32-sdmmc2", "arm,pl18x", "arm,primecell";
324277d6af5SYann Gautier			arm,primecell-periphid = <0x00253180>;
325277d6af5SYann Gautier			reg = <0x58005000 0x1000>, <0x58006000 0x1000>;
326277d6af5SYann Gautier			interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
327277d6af5SYann Gautier			interrupt-names = "cmd_irq";
328277d6af5SYann Gautier			clocks = <&rcc SDMMC1_K>;
329277d6af5SYann Gautier			clock-names = "apb_pclk";
330277d6af5SYann Gautier			resets = <&rcc SDMMC1_R>;
331277d6af5SYann Gautier			cap-sd-highspeed;
332277d6af5SYann Gautier			cap-mmc-highspeed;
333277d6af5SYann Gautier			max-frequency = <120000000>;
334277d6af5SYann Gautier			status = "disabled";
335277d6af5SYann Gautier		};
336277d6af5SYann Gautier
337e8a953a9SYann Gautier		sdmmc2: mmc@58007000 {
338277d6af5SYann Gautier			compatible = "st,stm32-sdmmc2", "arm,pl18x", "arm,primecell";
339277d6af5SYann Gautier			arm,primecell-periphid = <0x00253180>;
340277d6af5SYann Gautier			reg = <0x58007000 0x1000>, <0x58008000 0x1000>;
341277d6af5SYann Gautier			interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>;
342277d6af5SYann Gautier			interrupt-names = "cmd_irq";
343277d6af5SYann Gautier			clocks = <&rcc SDMMC2_K>;
344277d6af5SYann Gautier			clock-names = "apb_pclk";
345277d6af5SYann Gautier			resets = <&rcc SDMMC2_R>;
346277d6af5SYann Gautier			cap-sd-highspeed;
347277d6af5SYann Gautier			cap-mmc-highspeed;
348277d6af5SYann Gautier			max-frequency = <120000000>;
349277d6af5SYann Gautier			status = "disabled";
350277d6af5SYann Gautier		};
351277d6af5SYann Gautier
352277d6af5SYann Gautier		iwdg2: watchdog@5a002000 {
353277d6af5SYann Gautier			compatible = "st,stm32mp1-iwdg";
354277d6af5SYann Gautier			reg = <0x5a002000 0x400>;
355277d6af5SYann Gautier			secure-interrupts = <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>;
356277d6af5SYann Gautier			clocks = <&rcc IWDG2>, <&rcc CK_LSI>;
357277d6af5SYann Gautier			clock-names = "pclk", "lsi";
358277d6af5SYann Gautier			status = "disabled";
359277d6af5SYann Gautier		};
360277d6af5SYann Gautier
361*8cafbda6SNicolas Le Bayon		ddr: ddr@5a003000{
362*8cafbda6SNicolas Le Bayon			compatible = "st,stm32mp1-ddr";
363*8cafbda6SNicolas Le Bayon			reg = <0x5A003000 0x550 0x5A004000 0x234>;
364*8cafbda6SNicolas Le Bayon			clocks = <&rcc AXIDCG>,
365*8cafbda6SNicolas Le Bayon				 <&rcc DDRC1>,
366*8cafbda6SNicolas Le Bayon				 <&rcc DDRC2>,
367*8cafbda6SNicolas Le Bayon				 <&rcc DDRPHYC>,
368*8cafbda6SNicolas Le Bayon				 <&rcc DDRCAPB>,
369*8cafbda6SNicolas Le Bayon				 <&rcc DDRPHYCAPB>;
370*8cafbda6SNicolas Le Bayon			clock-names = "axidcg",
371*8cafbda6SNicolas Le Bayon				      "ddrc1",
372*8cafbda6SNicolas Le Bayon				      "ddrc2",
373*8cafbda6SNicolas Le Bayon				      "ddrphyc",
374*8cafbda6SNicolas Le Bayon				      "ddrcapb",
375*8cafbda6SNicolas Le Bayon				      "ddrphycapb";
376*8cafbda6SNicolas Le Bayon			status = "okay";
377*8cafbda6SNicolas Le Bayon		};
378*8cafbda6SNicolas Le Bayon
379277d6af5SYann Gautier		usbphyc: usbphyc@5a006000 {
380277d6af5SYann Gautier			#address-cells = <1>;
381277d6af5SYann Gautier			#size-cells = <0>;
382277d6af5SYann Gautier			#clock-cells = <0>;
383277d6af5SYann Gautier			compatible = "st,stm32mp1-usbphyc";
384277d6af5SYann Gautier			reg = <0x5a006000 0x1000>;
385277d6af5SYann Gautier			clocks = <&rcc USBPHY_K>;
386277d6af5SYann Gautier			resets = <&rcc USBPHY_R>;
387277d6af5SYann Gautier			vdda1v1-supply = <&reg11>;
388277d6af5SYann Gautier			vdda1v8-supply = <&reg18>;
389277d6af5SYann Gautier			status = "disabled";
390277d6af5SYann Gautier
391277d6af5SYann Gautier			usbphyc_port0: usb-phy@0 {
392277d6af5SYann Gautier				#phy-cells = <0>;
393277d6af5SYann Gautier				reg = <0>;
394277d6af5SYann Gautier			};
395277d6af5SYann Gautier
396277d6af5SYann Gautier			usbphyc_port1: usb-phy@1 {
397277d6af5SYann Gautier				#phy-cells = <1>;
398277d6af5SYann Gautier				reg = <1>;
399277d6af5SYann Gautier			};
400277d6af5SYann Gautier		};
401277d6af5SYann Gautier
402277d6af5SYann Gautier		usart1: serial@5c000000 {
403277d6af5SYann Gautier			compatible = "st,stm32h7-uart";
404277d6af5SYann Gautier			reg = <0x5c000000 0x400>;
405277d6af5SYann Gautier			interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
406277d6af5SYann Gautier			clocks = <&rcc USART1_K>;
407277d6af5SYann Gautier			resets = <&rcc USART1_R>;
408277d6af5SYann Gautier			status = "disabled";
409277d6af5SYann Gautier		};
410277d6af5SYann Gautier
411277d6af5SYann Gautier		spi6: spi@5c001000 {
412277d6af5SYann Gautier			#address-cells = <1>;
413277d6af5SYann Gautier			#size-cells = <0>;
414277d6af5SYann Gautier			compatible = "st,stm32h7-spi";
415277d6af5SYann Gautier			reg = <0x5c001000 0x400>;
416277d6af5SYann Gautier			interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
417277d6af5SYann Gautier			clocks = <&rcc SPI6_K>;
418277d6af5SYann Gautier			resets = <&rcc SPI6_R>;
419277d6af5SYann Gautier			status = "disabled";
420277d6af5SYann Gautier		};
421277d6af5SYann Gautier
422277d6af5SYann Gautier		i2c4: i2c@5c002000 {
423277d6af5SYann Gautier			compatible = "st,stm32mp15-i2c";
424277d6af5SYann Gautier			reg = <0x5c002000 0x400>;
425277d6af5SYann Gautier			interrupt-names = "event", "error";
426277d6af5SYann Gautier			interrupts-extended = <&exti 24 IRQ_TYPE_LEVEL_HIGH>,
427277d6af5SYann Gautier					      <&intc GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
428277d6af5SYann Gautier			clocks = <&rcc I2C4_K>;
429277d6af5SYann Gautier			resets = <&rcc I2C4_R>;
430277d6af5SYann Gautier			#address-cells = <1>;
431277d6af5SYann Gautier			#size-cells = <0>;
432277d6af5SYann Gautier			st,syscfg-fmp = <&syscfg 0x4 0x8>;
433277d6af5SYann Gautier			wakeup-source;
434277d6af5SYann Gautier			status = "disabled";
435277d6af5SYann Gautier		};
436277d6af5SYann Gautier
437277d6af5SYann Gautier		iwdg1: watchdog@5c003000 {
438277d6af5SYann Gautier			compatible = "st,stm32mp1-iwdg";
439277d6af5SYann Gautier			reg = <0x5C003000 0x400>;
440277d6af5SYann Gautier			interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>;
441277d6af5SYann Gautier			clocks = <&rcc IWDG1>, <&rcc CK_LSI>;
442277d6af5SYann Gautier			clock-names = "pclk", "lsi";
443277d6af5SYann Gautier			status = "disabled";
444277d6af5SYann Gautier		};
445277d6af5SYann Gautier
446277d6af5SYann Gautier		rtc: rtc@5c004000 {
447277d6af5SYann Gautier			compatible = "st,stm32mp1-rtc";
448277d6af5SYann Gautier			reg = <0x5c004000 0x400>;
449277d6af5SYann Gautier			clocks = <&rcc RTCAPB>, <&rcc RTC>;
450277d6af5SYann Gautier			clock-names = "pclk", "rtc_ck";
451277d6af5SYann Gautier			interrupts-extended = <&exti 19 IRQ_TYPE_LEVEL_HIGH>;
452277d6af5SYann Gautier			status = "disabled";
453277d6af5SYann Gautier		};
454277d6af5SYann Gautier
455e8a953a9SYann Gautier		bsec: efuse@5c005000 {
456277d6af5SYann Gautier			compatible = "st,stm32mp15-bsec";
457277d6af5SYann Gautier			reg = <0x5c005000 0x400>;
458277d6af5SYann Gautier			#address-cells = <1>;
459277d6af5SYann Gautier			#size-cells = <1>;
460277d6af5SYann Gautier			ts_cal1: calib@5c {
461277d6af5SYann Gautier				reg = <0x5c 0x2>;
462277d6af5SYann Gautier			};
463277d6af5SYann Gautier			ts_cal2: calib@5e {
464277d6af5SYann Gautier				reg = <0x5e 0x2>;
465277d6af5SYann Gautier			};
466277d6af5SYann Gautier		};
467277d6af5SYann Gautier
468277d6af5SYann Gautier		etzpc: etzpc@5c007000 {
469277d6af5SYann Gautier			compatible = "st,stm32-etzpc";
470277d6af5SYann Gautier			reg = <0x5C007000 0x400>;
471277d6af5SYann Gautier			clocks = <&rcc TZPC>;
472277d6af5SYann Gautier			status = "disabled";
473277d6af5SYann Gautier			secure-status = "okay";
474277d6af5SYann Gautier		};
475277d6af5SYann Gautier
476277d6af5SYann Gautier		stgen: stgen@5c008000 {
477277d6af5SYann Gautier			compatible = "st,stm32-stgen";
478277d6af5SYann Gautier			reg = <0x5C008000 0x1000>;
479277d6af5SYann Gautier		};
480277d6af5SYann Gautier
481277d6af5SYann Gautier		i2c6: i2c@5c009000 {
482277d6af5SYann Gautier			compatible = "st,stm32mp15-i2c";
483277d6af5SYann Gautier			reg = <0x5c009000 0x400>;
484277d6af5SYann Gautier			interrupt-names = "event", "error";
485277d6af5SYann Gautier			interrupts-extended = <&exti 54 IRQ_TYPE_LEVEL_HIGH>,
486277d6af5SYann Gautier					      <&intc GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>;
487277d6af5SYann Gautier			clocks = <&rcc I2C6_K>;
488277d6af5SYann Gautier			resets = <&rcc I2C6_R>;
489277d6af5SYann Gautier			#address-cells = <1>;
490277d6af5SYann Gautier			#size-cells = <0>;
491277d6af5SYann Gautier			st,syscfg-fmp = <&syscfg 0x4 0x20>;
492277d6af5SYann Gautier			wakeup-source;
493277d6af5SYann Gautier			status = "disabled";
494277d6af5SYann Gautier		};
495277d6af5SYann Gautier
496277d6af5SYann Gautier		tamp: tamp@5c00a000 {
497277d6af5SYann Gautier			compatible = "st,stm32-tamp", "simple-bus", "syscon", "simple-mfd";
498277d6af5SYann Gautier			reg = <0x5c00a000 0x400>;
499277d6af5SYann Gautier			secure-interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>;
500277d6af5SYann Gautier			clocks = <&rcc RTCAPB>;
501277d6af5SYann Gautier		};
502277d6af5SYann Gautier
503277d6af5SYann Gautier		/*
504277d6af5SYann Gautier		 * Break node order to solve dependency probe issue between
505277d6af5SYann Gautier		 * pinctrl and exti.
506277d6af5SYann Gautier		 */
507277d6af5SYann Gautier		pinctrl: pin-controller@50002000 {
508277d6af5SYann Gautier			#address-cells = <1>;
509277d6af5SYann Gautier			#size-cells = <1>;
510277d6af5SYann Gautier			compatible = "st,stm32mp157-pinctrl";
511277d6af5SYann Gautier			ranges = <0 0x50002000 0xa400>;
512277d6af5SYann Gautier			interrupt-parent = <&exti>;
513277d6af5SYann Gautier			st,syscfg = <&exti 0x60 0xff>;
514277d6af5SYann Gautier			pins-are-numbered;
515277d6af5SYann Gautier
516277d6af5SYann Gautier			gpioa: gpio@50002000 {
517277d6af5SYann Gautier				gpio-controller;
518277d6af5SYann Gautier				#gpio-cells = <2>;
519277d6af5SYann Gautier				interrupt-controller;
520277d6af5SYann Gautier				#interrupt-cells = <2>;
521277d6af5SYann Gautier				reg = <0x0 0x400>;
522277d6af5SYann Gautier				clocks = <&rcc GPIOA>;
523277d6af5SYann Gautier				st,bank-name = "GPIOA";
524277d6af5SYann Gautier				status = "disabled";
525277d6af5SYann Gautier			};
526277d6af5SYann Gautier
527277d6af5SYann Gautier			gpiob: gpio@50003000 {
528277d6af5SYann Gautier				gpio-controller;
529277d6af5SYann Gautier				#gpio-cells = <2>;
530277d6af5SYann Gautier				interrupt-controller;
531277d6af5SYann Gautier				#interrupt-cells = <2>;
532277d6af5SYann Gautier				reg = <0x1000 0x400>;
533277d6af5SYann Gautier				clocks = <&rcc GPIOB>;
534277d6af5SYann Gautier				st,bank-name = "GPIOB";
535277d6af5SYann Gautier				status = "disabled";
536277d6af5SYann Gautier			};
537277d6af5SYann Gautier
538277d6af5SYann Gautier			gpioc: gpio@50004000 {
539277d6af5SYann Gautier				gpio-controller;
540277d6af5SYann Gautier				#gpio-cells = <2>;
541277d6af5SYann Gautier				interrupt-controller;
542277d6af5SYann Gautier				#interrupt-cells = <2>;
543277d6af5SYann Gautier				reg = <0x2000 0x400>;
544277d6af5SYann Gautier				clocks = <&rcc GPIOC>;
545277d6af5SYann Gautier				st,bank-name = "GPIOC";
546277d6af5SYann Gautier				status = "disabled";
547277d6af5SYann Gautier			};
548277d6af5SYann Gautier
549277d6af5SYann Gautier			gpiod: gpio@50005000 {
550277d6af5SYann Gautier				gpio-controller;
551277d6af5SYann Gautier				#gpio-cells = <2>;
552277d6af5SYann Gautier				interrupt-controller;
553277d6af5SYann Gautier				#interrupt-cells = <2>;
554277d6af5SYann Gautier				reg = <0x3000 0x400>;
555277d6af5SYann Gautier				clocks = <&rcc GPIOD>;
556277d6af5SYann Gautier				st,bank-name = "GPIOD";
557277d6af5SYann Gautier				status = "disabled";
558277d6af5SYann Gautier			};
559277d6af5SYann Gautier
560277d6af5SYann Gautier			gpioe: gpio@50006000 {
561277d6af5SYann Gautier				gpio-controller;
562277d6af5SYann Gautier				#gpio-cells = <2>;
563277d6af5SYann Gautier				interrupt-controller;
564277d6af5SYann Gautier				#interrupt-cells = <2>;
565277d6af5SYann Gautier				reg = <0x4000 0x400>;
566277d6af5SYann Gautier				clocks = <&rcc GPIOE>;
567277d6af5SYann Gautier				st,bank-name = "GPIOE";
568277d6af5SYann Gautier				status = "disabled";
569277d6af5SYann Gautier			};
570277d6af5SYann Gautier
571277d6af5SYann Gautier			gpiof: gpio@50007000 {
572277d6af5SYann Gautier				gpio-controller;
573277d6af5SYann Gautier				#gpio-cells = <2>;
574277d6af5SYann Gautier				interrupt-controller;
575277d6af5SYann Gautier				#interrupt-cells = <2>;
576277d6af5SYann Gautier				reg = <0x5000 0x400>;
577277d6af5SYann Gautier				clocks = <&rcc GPIOF>;
578277d6af5SYann Gautier				st,bank-name = "GPIOF";
579277d6af5SYann Gautier				status = "disabled";
580277d6af5SYann Gautier			};
581277d6af5SYann Gautier
582277d6af5SYann Gautier			gpiog: gpio@50008000 {
583277d6af5SYann Gautier				gpio-controller;
584277d6af5SYann Gautier				#gpio-cells = <2>;
585277d6af5SYann Gautier				interrupt-controller;
586277d6af5SYann Gautier				#interrupt-cells = <2>;
587277d6af5SYann Gautier				reg = <0x6000 0x400>;
588277d6af5SYann Gautier				clocks = <&rcc GPIOG>;
589277d6af5SYann Gautier				st,bank-name = "GPIOG";
590277d6af5SYann Gautier				status = "disabled";
591277d6af5SYann Gautier			};
592277d6af5SYann Gautier
593277d6af5SYann Gautier			gpioh: gpio@50009000 {
594277d6af5SYann Gautier				gpio-controller;
595277d6af5SYann Gautier				#gpio-cells = <2>;
596277d6af5SYann Gautier				interrupt-controller;
597277d6af5SYann Gautier				#interrupt-cells = <2>;
598277d6af5SYann Gautier				reg = <0x7000 0x400>;
599277d6af5SYann Gautier				clocks = <&rcc GPIOH>;
600277d6af5SYann Gautier				st,bank-name = "GPIOH";
601277d6af5SYann Gautier				status = "disabled";
602277d6af5SYann Gautier			};
603277d6af5SYann Gautier
604277d6af5SYann Gautier			gpioi: gpio@5000a000 {
605277d6af5SYann Gautier				gpio-controller;
606277d6af5SYann Gautier				#gpio-cells = <2>;
607277d6af5SYann Gautier				interrupt-controller;
608277d6af5SYann Gautier				#interrupt-cells = <2>;
609277d6af5SYann Gautier				reg = <0x8000 0x400>;
610277d6af5SYann Gautier				clocks = <&rcc GPIOI>;
611277d6af5SYann Gautier				st,bank-name = "GPIOI";
612277d6af5SYann Gautier				status = "disabled";
613277d6af5SYann Gautier			};
614277d6af5SYann Gautier
615277d6af5SYann Gautier			gpioj: gpio@5000b000 {
616277d6af5SYann Gautier				gpio-controller;
617277d6af5SYann Gautier				#gpio-cells = <2>;
618277d6af5SYann Gautier				interrupt-controller;
619277d6af5SYann Gautier				#interrupt-cells = <2>;
620277d6af5SYann Gautier				reg = <0x9000 0x400>;
621277d6af5SYann Gautier				clocks = <&rcc GPIOJ>;
622277d6af5SYann Gautier				st,bank-name = "GPIOJ";
623277d6af5SYann Gautier				status = "disabled";
624277d6af5SYann Gautier			};
625277d6af5SYann Gautier
626277d6af5SYann Gautier			gpiok: gpio@5000c000 {
627277d6af5SYann Gautier				gpio-controller;
628277d6af5SYann Gautier				#gpio-cells = <2>;
629277d6af5SYann Gautier				interrupt-controller;
630277d6af5SYann Gautier				#interrupt-cells = <2>;
631277d6af5SYann Gautier				reg = <0xa000 0x400>;
632277d6af5SYann Gautier				clocks = <&rcc GPIOK>;
633277d6af5SYann Gautier				st,bank-name = "GPIOK";
634277d6af5SYann Gautier				status = "disabled";
635277d6af5SYann Gautier			};
636277d6af5SYann Gautier		};
637277d6af5SYann Gautier
638277d6af5SYann Gautier		pinctrl_z: pin-controller-z@54004000 {
639277d6af5SYann Gautier			#address-cells = <1>;
640277d6af5SYann Gautier			#size-cells = <1>;
641277d6af5SYann Gautier			compatible = "st,stm32mp157-z-pinctrl";
642277d6af5SYann Gautier			ranges = <0 0x54004000 0x400>;
643277d6af5SYann Gautier			pins-are-numbered;
644277d6af5SYann Gautier			interrupt-parent = <&exti>;
645277d6af5SYann Gautier			st,syscfg = <&exti 0x60 0xff>;
646277d6af5SYann Gautier
647277d6af5SYann Gautier			gpioz: gpio@54004000 {
648277d6af5SYann Gautier				gpio-controller;
649277d6af5SYann Gautier				#gpio-cells = <2>;
650277d6af5SYann Gautier				interrupt-controller;
651277d6af5SYann Gautier				#interrupt-cells = <2>;
652277d6af5SYann Gautier				reg = <0 0x400>;
653277d6af5SYann Gautier				clocks = <&rcc GPIOZ>;
654277d6af5SYann Gautier				st,bank-name = "GPIOZ";
655277d6af5SYann Gautier				st,bank-ioport = <11>;
656277d6af5SYann Gautier				status = "disabled";
657277d6af5SYann Gautier			};
658277d6af5SYann Gautier		};
659277d6af5SYann Gautier	};
660277d6af5SYann Gautier};
661