xref: /linux/arch/arm64/boot/dts/st/stm32mp251.dtsi (revision 001821b0e79716c4e17c71d8e053a23599a7a508)
1// SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-3-Clause)
2/*
3 * Copyright (C) STMicroelectronics 2023 - All Rights Reserved
4 * Author: Alexandre Torgue <alexandre.torgue@foss.st.com> for STMicroelectronics.
5 */
6#include <dt-bindings/clock/st,stm32mp25-rcc.h>
7#include <dt-bindings/interrupt-controller/arm-gic.h>
8#include <dt-bindings/reset/st,stm32mp25-rcc.h>
9
10/ {
11	#address-cells = <2>;
12	#size-cells = <2>;
13
14	cpus {
15		#address-cells = <1>;
16		#size-cells = <0>;
17
18		cpu0: cpu@0 {
19			compatible = "arm,cortex-a35";
20			device_type = "cpu";
21			reg = <0>;
22			enable-method = "psci";
23		};
24	};
25
26	arm-pmu {
27		compatible = "arm,cortex-a35-pmu";
28		interrupts = <GIC_SPI 368 IRQ_TYPE_LEVEL_HIGH>;
29		interrupt-affinity = <&cpu0>;
30		interrupt-parent = <&intc>;
31	};
32
33	arm_wdt: watchdog {
34		compatible = "arm,smc-wdt";
35		arm,smc-id = <0xb200005a>;
36		status = "disabled";
37	};
38
39	clocks {
40		clk_dsi_txbyte: txbyteclk {
41			#clock-cells = <0>;
42			compatible = "fixed-clock";
43			clock-frequency = <0>;
44		};
45
46		clk_rcbsec: clk-rcbsec {
47			#clock-cells = <0>;
48			compatible = "fixed-clock";
49			clock-frequency = <64000000>;
50		};
51	};
52
53	firmware {
54		optee {
55			compatible = "linaro,optee-tz";
56			method = "smc";
57		};
58
59		scmi {
60			compatible = "linaro,scmi-optee";
61			#address-cells = <1>;
62			#size-cells = <0>;
63			linaro,optee-channel-id = <0>;
64
65			scmi_clk: protocol@14 {
66				reg = <0x14>;
67				#clock-cells = <1>;
68			};
69
70			scmi_reset: protocol@16 {
71				reg = <0x16>;
72				#reset-cells = <1>;
73			};
74		};
75	};
76
77	intc: interrupt-controller@4ac00000 {
78		compatible = "arm,cortex-a7-gic";
79		#interrupt-cells = <3>;
80		#address-cells = <1>;
81		interrupt-controller;
82		reg = <0x0 0x4ac10000 0x0 0x1000>,
83		      <0x0 0x4ac20000 0x0 0x2000>,
84		      <0x0 0x4ac40000 0x0 0x2000>,
85		      <0x0 0x4ac60000 0x0 0x2000>;
86	};
87
88	psci {
89		compatible = "arm,psci-1.0";
90		method = "smc";
91	};
92
93	timer {
94		compatible = "arm,armv8-timer";
95		interrupt-parent = <&intc>;
96		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>,
97			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>,
98			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>,
99			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>;
100		always-on;
101	};
102
103	soc@0 {
104		compatible = "simple-bus";
105		#address-cells = <1>;
106		#size-cells = <1>;
107		interrupt-parent = <&intc>;
108		ranges = <0x0 0x0 0x0 0x80000000>;
109
110		rifsc: bus@42080000 {
111			compatible = "st,stm32mp25-rifsc", "simple-bus";
112			reg = <0x42080000 0x1000>;
113			#address-cells = <1>;
114			#size-cells = <1>;
115			#access-controller-cells = <1>;
116			ranges;
117
118			spi2: spi@400b0000 {
119				#address-cells = <1>;
120				#size-cells = <0>;
121				compatible = "st,stm32mp25-spi";
122				reg = <0x400b0000 0x400>;
123				interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
124				clocks = <&rcc CK_KER_SPI2>;
125				resets = <&rcc SPI2_R>;
126				access-controllers = <&rifsc 23>;
127				status = "disabled";
128			};
129
130			spi3: spi@400c0000 {
131				#address-cells = <1>;
132				#size-cells = <0>;
133				compatible = "st,stm32mp25-spi";
134				reg = <0x400c0000 0x400>;
135				interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
136				clocks = <&rcc CK_KER_SPI3>;
137				resets = <&rcc SPI3_R>;
138				access-controllers = <&rifsc 24>;
139				status = "disabled";
140			};
141
142			usart2: serial@400e0000 {
143				compatible = "st,stm32h7-uart";
144				reg = <0x400e0000 0x400>;
145				interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>;
146				clocks = <&rcc CK_KER_USART2>;
147				access-controllers = <&rifsc 32>;
148				status = "disabled";
149			};
150
151			i2c1: i2c@40120000 {
152				compatible = "st,stm32mp25-i2c";
153				reg = <0x40120000 0x400>;
154				interrupt-names = "event";
155				interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
156				clocks = <&rcc CK_KER_I2C1>;
157				resets = <&rcc I2C1_R>;
158				#address-cells = <1>;
159				#size-cells = <0>;
160				access-controllers = <&rifsc 41>;
161				status = "disabled";
162			};
163
164			i2c2: i2c@40130000 {
165				compatible = "st,stm32mp25-i2c";
166				reg = <0x40130000 0x400>;
167				interrupt-names = "event";
168				interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
169				clocks = <&rcc CK_KER_I2C2>;
170				resets = <&rcc I2C2_R>;
171				#address-cells = <1>;
172				#size-cells = <0>;
173				access-controllers = <&rifsc 42>;
174				status = "disabled";
175			};
176
177			i2c3: i2c@40140000 {
178				compatible = "st,stm32mp25-i2c";
179				reg = <0x40140000 0x400>;
180				interrupt-names = "event";
181				interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>;
182				clocks = <&rcc CK_KER_I2C3>;
183				resets = <&rcc I2C3_R>;
184				#address-cells = <1>;
185				#size-cells = <0>;
186				access-controllers = <&rifsc 43>;
187				status = "disabled";
188			};
189
190			i2c4: i2c@40150000 {
191				compatible = "st,stm32mp25-i2c";
192				reg = <0x40150000 0x400>;
193				interrupt-names = "event";
194				interrupts = <GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>;
195				clocks = <&rcc CK_KER_I2C4>;
196				resets = <&rcc I2C4_R>;
197				#address-cells = <1>;
198				#size-cells = <0>;
199				access-controllers = <&rifsc 44>;
200				status = "disabled";
201			};
202
203			i2c5: i2c@40160000 {
204				compatible = "st,stm32mp25-i2c";
205				reg = <0x40160000 0x400>;
206				interrupt-names = "event";
207				interrupts = <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>;
208				clocks = <&rcc CK_KER_I2C5>;
209				resets = <&rcc I2C5_R>;
210				#address-cells = <1>;
211				#size-cells = <0>;
212				access-controllers = <&rifsc 45>;
213				status = "disabled";
214			};
215
216			i2c6: i2c@40170000 {
217				compatible = "st,stm32mp25-i2c";
218				reg = <0x40170000 0x400>;
219				interrupt-names = "event";
220				interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
221				clocks = <&rcc CK_KER_I2C6>;
222				resets = <&rcc I2C6_R>;
223				#address-cells = <1>;
224				#size-cells = <0>;
225				access-controllers = <&rifsc 46>;
226				status = "disabled";
227			};
228
229			i2c7: i2c@40180000 {
230				compatible = "st,stm32mp25-i2c";
231				reg = <0x40180000 0x400>;
232				interrupt-names = "event";
233				interrupts = <GIC_SPI 210 IRQ_TYPE_LEVEL_HIGH>;
234				clocks = <&rcc CK_KER_I2C7>;
235				resets = <&rcc I2C7_R>;
236				#address-cells = <1>;
237				#size-cells = <0>;
238				access-controllers = <&rifsc 47>;
239				status = "disabled";
240			};
241
242			spi1: spi@40230000 {
243				#address-cells = <1>;
244				#size-cells = <0>;
245				compatible = "st,stm32mp25-spi";
246				reg = <0x40230000 0x400>;
247				interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
248				clocks = <&rcc CK_KER_SPI1>;
249				resets = <&rcc SPI1_R>;
250				access-controllers = <&rifsc 22>;
251				status = "disabled";
252			};
253
254			spi4: spi@40240000 {
255				#address-cells = <1>;
256				#size-cells = <0>;
257				compatible = "st,stm32mp25-spi";
258				reg = <0x40240000 0x400>;
259				interrupts = <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>;
260				clocks = <&rcc CK_KER_SPI4>;
261				resets = <&rcc SPI4_R>;
262				access-controllers = <&rifsc 25>;
263				status = "disabled";
264			};
265
266			spi5: spi@40280000 {
267				#address-cells = <1>;
268				#size-cells = <0>;
269				compatible = "st,stm32mp25-spi";
270				reg = <0x40280000 0x400>;
271				interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>;
272				clocks = <&rcc CK_KER_SPI5>;
273				resets = <&rcc SPI5_R>;
274				access-controllers = <&rifsc 26>;
275				status = "disabled";
276			};
277
278			spi6: spi@40350000 {
279				#address-cells = <1>;
280				#size-cells = <0>;
281				compatible = "st,stm32mp25-spi";
282				reg = <0x40350000 0x400>;
283				interrupts = <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>;
284				clocks = <&rcc CK_KER_SPI6>;
285				resets = <&rcc SPI6_R>;
286				access-controllers = <&rifsc 27>;
287				status = "disabled";
288			};
289
290			spi7: spi@40360000 {
291				#address-cells = <1>;
292				#size-cells = <0>;
293				compatible = "st,stm32mp25-spi";
294				reg = <0x40360000 0x400>;
295				interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
296				clocks = <&rcc CK_KER_SPI7>;
297				resets = <&rcc SPI7_R>;
298				access-controllers = <&rifsc 28>;
299				status = "disabled";
300			};
301
302			spi8: spi@46020000 {
303				#address-cells = <1>;
304				#size-cells = <0>;
305				compatible = "st,stm32mp25-spi";
306				reg = <0x46020000 0x400>;
307				interrupts = <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>;
308				clocks = <&rcc CK_KER_SPI8>;
309				resets = <&rcc SPI8_R>;
310				access-controllers = <&rifsc 29>;
311				status = "disabled";
312			};
313
314			i2c8: i2c@46040000 {
315				compatible = "st,stm32mp25-i2c";
316				reg = <0x46040000 0x400>;
317				interrupt-names = "event";
318				interrupts = <GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH>;
319				clocks = <&rcc CK_KER_I2C8>;
320				resets = <&rcc I2C8_R>;
321				#address-cells = <1>;
322				#size-cells = <0>;
323				access-controllers = <&rifsc 48>;
324				status = "disabled";
325			};
326
327			sdmmc1: mmc@48220000 {
328				compatible = "st,stm32mp25-sdmmc2", "arm,pl18x", "arm,primecell";
329				arm,primecell-periphid = <0x00353180>;
330				reg = <0x48220000 0x400>, <0x44230400 0x8>;
331				interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
332				clocks = <&rcc CK_KER_SDMMC1 >;
333				clock-names = "apb_pclk";
334				resets = <&rcc SDMMC1_R>;
335				cap-sd-highspeed;
336				cap-mmc-highspeed;
337				max-frequency = <120000000>;
338				access-controllers = <&rifsc 76>;
339				status = "disabled";
340			};
341		};
342
343		bsec: efuse@44000000 {
344			compatible = "st,stm32mp25-bsec";
345			reg = <0x44000000 0x1000>;
346			#address-cells = <1>;
347			#size-cells = <1>;
348
349			part_number_otp@24 {
350				reg = <0x24 0x4>;
351			};
352
353			package_otp@1e8 {
354				reg = <0x1e8 0x1>;
355				bits = <0 3>;
356			};
357		};
358
359		rcc: clock-controller@44200000 {
360			compatible = "st,stm32mp25-rcc";
361			reg = <0x44200000 0x10000>;
362			#clock-cells = <1>;
363			#reset-cells = <1>;
364			clocks = <&scmi_clk CK_SCMI_HSE>,
365				<&scmi_clk CK_SCMI_HSI>,
366				<&scmi_clk CK_SCMI_MSI>,
367				<&scmi_clk CK_SCMI_LSE>,
368				<&scmi_clk CK_SCMI_LSI>,
369				<&scmi_clk CK_SCMI_HSE_DIV2>,
370				<&scmi_clk CK_SCMI_ICN_HS_MCU>,
371				<&scmi_clk CK_SCMI_ICN_LS_MCU>,
372				<&scmi_clk CK_SCMI_ICN_SDMMC>,
373				<&scmi_clk CK_SCMI_ICN_DDR>,
374				<&scmi_clk CK_SCMI_ICN_DISPLAY>,
375				<&scmi_clk CK_SCMI_ICN_HSL>,
376				<&scmi_clk CK_SCMI_ICN_NIC>,
377				<&scmi_clk CK_SCMI_ICN_VID>,
378				<&scmi_clk CK_SCMI_FLEXGEN_07>,
379				<&scmi_clk CK_SCMI_FLEXGEN_08>,
380				<&scmi_clk CK_SCMI_FLEXGEN_09>,
381				<&scmi_clk CK_SCMI_FLEXGEN_10>,
382				<&scmi_clk CK_SCMI_FLEXGEN_11>,
383				<&scmi_clk CK_SCMI_FLEXGEN_12>,
384				<&scmi_clk CK_SCMI_FLEXGEN_13>,
385				<&scmi_clk CK_SCMI_FLEXGEN_14>,
386				<&scmi_clk CK_SCMI_FLEXGEN_15>,
387				<&scmi_clk CK_SCMI_FLEXGEN_16>,
388				<&scmi_clk CK_SCMI_FLEXGEN_17>,
389				<&scmi_clk CK_SCMI_FLEXGEN_18>,
390				<&scmi_clk CK_SCMI_FLEXGEN_19>,
391				<&scmi_clk CK_SCMI_FLEXGEN_20>,
392				<&scmi_clk CK_SCMI_FLEXGEN_21>,
393				<&scmi_clk CK_SCMI_FLEXGEN_22>,
394				<&scmi_clk CK_SCMI_FLEXGEN_23>,
395				<&scmi_clk CK_SCMI_FLEXGEN_24>,
396				<&scmi_clk CK_SCMI_FLEXGEN_25>,
397				<&scmi_clk CK_SCMI_FLEXGEN_26>,
398				<&scmi_clk CK_SCMI_FLEXGEN_27>,
399				<&scmi_clk CK_SCMI_FLEXGEN_28>,
400				<&scmi_clk CK_SCMI_FLEXGEN_29>,
401				<&scmi_clk CK_SCMI_FLEXGEN_30>,
402				<&scmi_clk CK_SCMI_FLEXGEN_31>,
403				<&scmi_clk CK_SCMI_FLEXGEN_32>,
404				<&scmi_clk CK_SCMI_FLEXGEN_33>,
405				<&scmi_clk CK_SCMI_FLEXGEN_34>,
406				<&scmi_clk CK_SCMI_FLEXGEN_35>,
407				<&scmi_clk CK_SCMI_FLEXGEN_36>,
408				<&scmi_clk CK_SCMI_FLEXGEN_37>,
409				<&scmi_clk CK_SCMI_FLEXGEN_38>,
410				<&scmi_clk CK_SCMI_FLEXGEN_39>,
411				<&scmi_clk CK_SCMI_FLEXGEN_40>,
412				<&scmi_clk CK_SCMI_FLEXGEN_41>,
413				<&scmi_clk CK_SCMI_FLEXGEN_42>,
414				<&scmi_clk CK_SCMI_FLEXGEN_43>,
415				<&scmi_clk CK_SCMI_FLEXGEN_44>,
416				<&scmi_clk CK_SCMI_FLEXGEN_45>,
417				<&scmi_clk CK_SCMI_FLEXGEN_46>,
418				<&scmi_clk CK_SCMI_FLEXGEN_47>,
419				<&scmi_clk CK_SCMI_FLEXGEN_48>,
420				<&scmi_clk CK_SCMI_FLEXGEN_49>,
421				<&scmi_clk CK_SCMI_FLEXGEN_50>,
422				<&scmi_clk CK_SCMI_FLEXGEN_51>,
423				<&scmi_clk CK_SCMI_FLEXGEN_52>,
424				<&scmi_clk CK_SCMI_FLEXGEN_53>,
425				<&scmi_clk CK_SCMI_FLEXGEN_54>,
426				<&scmi_clk CK_SCMI_FLEXGEN_55>,
427				<&scmi_clk CK_SCMI_FLEXGEN_56>,
428				<&scmi_clk CK_SCMI_FLEXGEN_57>,
429				<&scmi_clk CK_SCMI_FLEXGEN_58>,
430				<&scmi_clk CK_SCMI_FLEXGEN_59>,
431				<&scmi_clk CK_SCMI_FLEXGEN_60>,
432				<&scmi_clk CK_SCMI_FLEXGEN_61>,
433				<&scmi_clk CK_SCMI_FLEXGEN_62>,
434				<&scmi_clk CK_SCMI_FLEXGEN_63>,
435				<&scmi_clk CK_SCMI_ICN_APB1>,
436				<&scmi_clk CK_SCMI_ICN_APB2>,
437				<&scmi_clk CK_SCMI_ICN_APB3>,
438				<&scmi_clk CK_SCMI_ICN_APB4>,
439				<&scmi_clk CK_SCMI_ICN_APBDBG>,
440				<&scmi_clk CK_SCMI_TIMG1>,
441				<&scmi_clk CK_SCMI_TIMG2>,
442				<&scmi_clk CK_SCMI_PLL3>,
443				<&clk_dsi_txbyte>;
444		};
445
446		exti1: interrupt-controller@44220000 {
447			compatible = "st,stm32mp1-exti", "syscon";
448			interrupt-controller;
449			#interrupt-cells = <2>;
450			reg = <0x44220000 0x400>;
451			interrupts-extended =
452				<&intc GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>,	/* EXTI_0 */
453				<&intc GIC_SPI 269 IRQ_TYPE_LEVEL_HIGH>,
454				<&intc GIC_SPI 270 IRQ_TYPE_LEVEL_HIGH>,
455				<&intc GIC_SPI 271 IRQ_TYPE_LEVEL_HIGH>,
456				<&intc GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>,
457				<&intc GIC_SPI 273 IRQ_TYPE_LEVEL_HIGH>,
458				<&intc GIC_SPI 274 IRQ_TYPE_LEVEL_HIGH>,
459				<&intc GIC_SPI 275 IRQ_TYPE_LEVEL_HIGH>,
460				<&intc GIC_SPI 276 IRQ_TYPE_LEVEL_HIGH>,
461				<&intc GIC_SPI 277 IRQ_TYPE_LEVEL_HIGH>,
462				<&intc GIC_SPI 278 IRQ_TYPE_LEVEL_HIGH>,	/* EXTI_10 */
463				<&intc GIC_SPI 279 IRQ_TYPE_LEVEL_HIGH>,
464				<&intc GIC_SPI 280 IRQ_TYPE_LEVEL_HIGH>,
465				<&intc GIC_SPI 281 IRQ_TYPE_LEVEL_HIGH>,
466				<&intc GIC_SPI 282 IRQ_TYPE_LEVEL_HIGH>,
467				<&intc GIC_SPI 283 IRQ_TYPE_LEVEL_HIGH>,
468				<&intc GIC_SPI 0   IRQ_TYPE_LEVEL_HIGH>,
469				<&intc GIC_SPI 1   IRQ_TYPE_LEVEL_HIGH>,
470				<&intc GIC_SPI 260 IRQ_TYPE_LEVEL_HIGH>,
471				<&intc GIC_SPI 259 IRQ_TYPE_LEVEL_HIGH>,
472				<0>,						/* EXTI_20 */
473				<&intc GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
474				<&intc GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
475				<&intc GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
476				<&intc GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>,
477				<&intc GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>,
478				<&intc GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
479				<&intc GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
480				<&intc GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
481				<&intc GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
482				<&intc GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>,	/* EXTI_30 */
483				<&intc GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>,
484				<&intc GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>,
485				<&intc GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>,
486				<&intc GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>,
487				<0>,
488				<&intc GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
489				<&intc GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
490				<&intc GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
491				<&intc GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>,
492				<&intc GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>,	/* EXTI_40 */
493				<&intc GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>,
494				<&intc GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
495				<&intc GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>,
496				<&intc GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>,
497				<&intc GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>,
498				<&intc GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>,
499				<&intc GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>,
500				<&intc GIC_SPI 215 IRQ_TYPE_LEVEL_HIGH>,
501				<&intc GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>,
502				<&intc GIC_SPI 210 IRQ_TYPE_LEVEL_HIGH>,	/* EXTI_50 */
503				<0>,
504				<0>,
505				<0>,
506				<0>,
507				<0>,
508				<0>,
509				<0>,
510				<0>,
511				<&intc GIC_SPI 171 IRQ_TYPE_LEVEL_HIGH>,
512				<0>,						/* EXTI_60 */
513				<&intc GIC_SPI 173 IRQ_TYPE_LEVEL_HIGH>,
514				<0>,
515				<0>,
516				<&intc GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH>,
517				<0>,
518				<0>,
519				<&intc GIC_SPI 10  IRQ_TYPE_LEVEL_HIGH>,
520				<&intc GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
521				<0>,
522				<&intc GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>,	/* EXTI_70 */
523				<0>,
524				<&intc GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>,
525				<&intc GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>,
526				<&intc GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
527				<&intc GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>,
528				<&intc GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>,
529				<&intc GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>,
530				<&intc GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>,
531				<&intc GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>,
532				<0>,						/* EXTI_80 */
533				<0>,
534				<0>,
535				<&intc GIC_SPI 257 IRQ_TYPE_LEVEL_HIGH>,
536				<&intc GIC_SPI 258 IRQ_TYPE_LEVEL_HIGH>;
537		};
538
539		syscfg: syscon@44230000 {
540			compatible = "st,stm32mp25-syscfg", "syscon";
541			reg = <0x44230000 0x10000>;
542		};
543
544		pinctrl: pinctrl@44240000 {
545			#address-cells = <1>;
546			#size-cells = <1>;
547			compatible = "st,stm32mp257-pinctrl";
548			ranges = <0 0x44240000 0xa0400>;
549			interrupt-parent = <&exti1>;
550			st,syscfg = <&exti1 0x60 0xff>;
551			pins-are-numbered;
552
553			gpioa: gpio@44240000 {
554				gpio-controller;
555				#gpio-cells = <2>;
556				interrupt-controller;
557				#interrupt-cells = <2>;
558				reg = <0x0 0x400>;
559				clocks = <&scmi_clk CK_SCMI_GPIOA>;
560				st,bank-name = "GPIOA";
561				status = "disabled";
562			};
563
564			gpiob: gpio@44250000 {
565				gpio-controller;
566				#gpio-cells = <2>;
567				interrupt-controller;
568				#interrupt-cells = <2>;
569				reg = <0x10000 0x400>;
570				clocks = <&scmi_clk CK_SCMI_GPIOB>;
571				st,bank-name = "GPIOB";
572				status = "disabled";
573			};
574
575			gpioc: gpio@44260000 {
576				gpio-controller;
577				#gpio-cells = <2>;
578				interrupt-controller;
579				#interrupt-cells = <2>;
580				reg = <0x20000 0x400>;
581				clocks = <&scmi_clk CK_SCMI_GPIOC>;
582				st,bank-name = "GPIOC";
583				status = "disabled";
584			};
585
586			gpiod: gpio@44270000 {
587				gpio-controller;
588				#gpio-cells = <2>;
589				interrupt-controller;
590				#interrupt-cells = <2>;
591				reg = <0x30000 0x400>;
592				clocks = <&scmi_clk CK_SCMI_GPIOD>;
593				st,bank-name = "GPIOD";
594				status = "disabled";
595			};
596
597			gpioe: gpio@44280000 {
598				gpio-controller;
599				#gpio-cells = <2>;
600				interrupt-controller;
601				#interrupt-cells = <2>;
602				reg = <0x40000 0x400>;
603				clocks = <&scmi_clk CK_SCMI_GPIOE>;
604				st,bank-name = "GPIOE";
605				status = "disabled";
606			};
607
608			gpiof: gpio@44290000 {
609				gpio-controller;
610				#gpio-cells = <2>;
611				interrupt-controller;
612				#interrupt-cells = <2>;
613				reg = <0x50000 0x400>;
614				clocks = <&scmi_clk CK_SCMI_GPIOF>;
615				st,bank-name = "GPIOF";
616				status = "disabled";
617			};
618
619			gpiog: gpio@442a0000 {
620				gpio-controller;
621				#gpio-cells = <2>;
622				interrupt-controller;
623				#interrupt-cells = <2>;
624				reg = <0x60000 0x400>;
625				clocks = <&scmi_clk CK_SCMI_GPIOG>;
626				st,bank-name = "GPIOG";
627				status = "disabled";
628			};
629
630			gpioh: gpio@442b0000 {
631				gpio-controller;
632				#gpio-cells = <2>;
633				interrupt-controller;
634				#interrupt-cells = <2>;
635				reg = <0x70000 0x400>;
636				clocks = <&scmi_clk CK_SCMI_GPIOH>;
637				st,bank-name = "GPIOH";
638				status = "disabled";
639			};
640
641			gpioi: gpio@442c0000 {
642				gpio-controller;
643				#gpio-cells = <2>;
644				interrupt-controller;
645				#interrupt-cells = <2>;
646				reg = <0x80000 0x400>;
647				clocks = <&scmi_clk CK_SCMI_GPIOI>;
648				st,bank-name = "GPIOI";
649				status = "disabled";
650			};
651
652			gpioj: gpio@442d0000 {
653				gpio-controller;
654				#gpio-cells = <2>;
655				interrupt-controller;
656				#interrupt-cells = <2>;
657				reg = <0x90000 0x400>;
658				clocks = <&scmi_clk CK_SCMI_GPIOJ>;
659				st,bank-name = "GPIOJ";
660				status = "disabled";
661			};
662
663			gpiok: gpio@442e0000 {
664				gpio-controller;
665				#gpio-cells = <2>;
666				interrupt-controller;
667				#interrupt-cells = <2>;
668				reg = <0xa0000 0x400>;
669				clocks = <&scmi_clk CK_SCMI_GPIOK>;
670				st,bank-name = "GPIOK";
671				status = "disabled";
672			};
673		};
674
675		pinctrl_z: pinctrl@46200000 {
676			#address-cells = <1>;
677			#size-cells = <1>;
678			compatible = "st,stm32mp257-z-pinctrl";
679			ranges = <0 0x46200000 0x400>;
680			interrupt-parent = <&exti1>;
681			st,syscfg = <&exti1 0x60 0xff>;
682			pins-are-numbered;
683
684			gpioz: gpio@46200000 {
685				gpio-controller;
686				#gpio-cells = <2>;
687				interrupt-controller;
688				#interrupt-cells = <2>;
689				reg = <0 0x400>;
690				clocks = <&scmi_clk CK_SCMI_GPIOZ>;
691				st,bank-name = "GPIOZ";
692				st,bank-ioport = <11>;
693				status = "disabled";
694			};
695
696		};
697
698		exti2: interrupt-controller@46230000 {
699			compatible = "st,stm32mp1-exti", "syscon";
700			interrupt-controller;
701			#interrupt-cells = <2>;
702			reg = <0x46230000 0x400>;
703			interrupts-extended =
704				<&intc GIC_SPI 17  IRQ_TYPE_LEVEL_HIGH>,	/* EXTI_0 */
705				<&intc GIC_SPI 18  IRQ_TYPE_LEVEL_HIGH>,
706				<&intc GIC_SPI 19  IRQ_TYPE_LEVEL_HIGH>,
707				<&intc GIC_SPI 20  IRQ_TYPE_LEVEL_HIGH>,
708				<&intc GIC_SPI 21  IRQ_TYPE_LEVEL_HIGH>,
709				<&intc GIC_SPI 22  IRQ_TYPE_LEVEL_HIGH>,
710				<&intc GIC_SPI 23  IRQ_TYPE_LEVEL_HIGH>,
711				<&intc GIC_SPI 24  IRQ_TYPE_LEVEL_HIGH>,
712				<&intc GIC_SPI 25  IRQ_TYPE_LEVEL_HIGH>,
713				<&intc GIC_SPI 26  IRQ_TYPE_LEVEL_HIGH>,
714				<&intc GIC_SPI 27  IRQ_TYPE_LEVEL_HIGH>,	/* EXTI_10 */
715				<&intc GIC_SPI 28  IRQ_TYPE_LEVEL_HIGH>,
716				<&intc GIC_SPI 29  IRQ_TYPE_LEVEL_HIGH>,
717				<&intc GIC_SPI 30  IRQ_TYPE_LEVEL_HIGH>,
718				<&intc GIC_SPI 31  IRQ_TYPE_LEVEL_HIGH>,
719				<&intc GIC_SPI 32  IRQ_TYPE_LEVEL_HIGH>,
720				<&intc GIC_SPI 12  IRQ_TYPE_LEVEL_HIGH>,
721				<&intc GIC_SPI 13  IRQ_TYPE_LEVEL_HIGH>,
722				<0>,
723				<0>,
724				<0>,						/* EXTI_20 */
725				<&intc GIC_SPI 14  IRQ_TYPE_LEVEL_HIGH>,
726				<&intc GIC_SPI 15  IRQ_TYPE_LEVEL_HIGH>,
727				<0>,
728				<0>,
729				<&intc GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH>,
730				<&intc GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>,
731				<&intc GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>,
732				<0>,
733				<&intc GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>,
734				<&intc GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>,	/* EXTI_30 */
735				<&intc GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>,
736				<0>,
737				<&intc GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>,
738				<&intc GIC_SPI 175 IRQ_TYPE_LEVEL_HIGH>,
739				<0>,
740				<0>,
741				<&intc GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>,
742				<0>,
743				<0>,
744				<&intc GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>,	/* EXTI_40 */
745				<0>,
746				<0>,
747				<&intc GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>,
748				<0>,
749				<0>,
750				<&intc GIC_SPI 11  IRQ_TYPE_LEVEL_HIGH>,
751				<0>,
752				<&intc GIC_SPI 5   IRQ_TYPE_LEVEL_HIGH>,
753				<&intc GIC_SPI 4   IRQ_TYPE_LEVEL_HIGH>,
754				<&intc GIC_SPI 6   IRQ_TYPE_LEVEL_HIGH>,	/* EXTI_50 */
755				<&intc GIC_SPI 7   IRQ_TYPE_LEVEL_HIGH>,
756				<&intc GIC_SPI 2   IRQ_TYPE_LEVEL_HIGH>,
757				<&intc GIC_SPI 3   IRQ_TYPE_LEVEL_HIGH>,
758				<0>,
759				<0>,
760				<0>,
761				<0>,
762				<0>,
763				<0>,
764				<0>,						/* EXTI_60 */
765				<&intc GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>,
766				<&intc GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>,
767				<0>,
768				<&intc GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>,
769				<&intc GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>,
770				<&intc GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>,
771				<&intc GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>,
772				<0>,
773				<0>,
774				<&intc GIC_SPI 213 IRQ_TYPE_LEVEL_HIGH>;	/* EXTI_70 */
775		};
776	};
777};
778