blob: cf2f28dc1582d121006c51b045d6e9461c5d6c0f [file] [log] [blame]
Patrice Chotardca7289e2023-10-27 16:43:03 +02001// 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/interrupt-controller/arm-gic.h>
7
8/ {
9 #address-cells = <2>;
10 #size-cells = <2>;
11
12 cpus {
13 #address-cells = <1>;
14 #size-cells = <0>;
15
16 cpu0: cpu@0 {
17 compatible = "arm,cortex-a35";
18 device_type = "cpu";
19 reg = <0>;
20 enable-method = "psci";
21 };
22 };
23
24 arm-pmu {
25 compatible = "arm,cortex-a35-pmu";
26 interrupts = <GIC_SPI 368 IRQ_TYPE_LEVEL_HIGH>;
27 interrupt-affinity = <&cpu0>;
28 interrupt-parent = <&intc>;
29 };
30
31 arm_wdt: watchdog {
32 compatible = "arm,smc-wdt";
33 arm,smc-id = <0xb200005a>;
34 status = "disabled";
35 };
36
37 clocks {
38 ck_flexgen_08: ck-flexgen-08 {
39 #clock-cells = <0>;
40 compatible = "fixed-clock";
41 clock-frequency = <100000000>;
42 };
43
44 ck_flexgen_51: ck-flexgen-51 {
45 #clock-cells = <0>;
46 compatible = "fixed-clock";
47 clock-frequency = <200000000>;
48 };
49
50 ck_icn_ls_mcu: ck-icn-ls-mcu {
51 #clock-cells = <0>;
52 compatible = "fixed-clock";
53 clock-frequency = <200000000>;
54 };
55 };
56
57 firmware {
58 optee {
59 compatible = "linaro,optee-tz";
60 method = "smc";
61 };
62
63 scmi {
64 compatible = "linaro,scmi-optee";
65 #address-cells = <1>;
66 #size-cells = <0>;
67 linaro,optee-channel-id = <0>;
68
69 scmi_clk: protocol@14 {
70 reg = <0x14>;
71 #clock-cells = <1>;
72 };
73
74 scmi_reset: protocol@16 {
75 reg = <0x16>;
76 #reset-cells = <1>;
77 };
78 };
79 };
80
81 intc: interrupt-controller@4ac00000 {
82 compatible = "arm,cortex-a7-gic";
83 #interrupt-cells = <3>;
84 #address-cells = <1>;
85 interrupt-controller;
86 reg = <0x0 0x4ac10000 0x0 0x1000>,
87 <0x0 0x4ac20000 0x0 0x2000>,
88 <0x0 0x4ac40000 0x0 0x2000>,
89 <0x0 0x4ac60000 0x0 0x2000>;
90 };
91
92 psci {
93 compatible = "arm,psci-1.0";
94 method = "smc";
95 };
96
97 timer {
98 compatible = "arm,armv8-timer";
99 interrupt-parent = <&intc>;
100 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
101 <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
102 <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
103 <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
104 always-on;
105 };
106
107 soc@0 {
108 compatible = "simple-bus";
109 #address-cells = <1>;
110 #size-cells = <1>;
111 interrupt-parent = <&intc>;
112 ranges = <0x0 0x0 0x0 0x80000000>;
113
114 rifsc: rifsc-bus@42080000 {
115 compatible = "simple-bus";
116 reg = <0x42080000 0x1000>;
117 #address-cells = <1>;
118 #size-cells = <1>;
119 ranges;
120
121 usart2: serial@400e0000 {
122 compatible = "st,stm32h7-uart";
123 reg = <0x400e0000 0x400>;
124 interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>;
125 clocks = <&ck_flexgen_08>;
126 status = "disabled";
127 };
128 };
129
130 syscfg: syscon@44230000 {
131 compatible = "st,stm32mp25-syscfg", "syscon";
132 reg = <0x44230000 0x10000>;
133 };
134
135 pinctrl: pinctrl@44240000 {
136 #address-cells = <1>;
137 #size-cells = <1>;
138 compatible = "st,stm32mp257-pinctrl";
139 ranges = <0 0x44240000 0xa0400>;
140 pins-are-numbered;
141
142 gpioa: gpio@44240000 {
143 gpio-controller;
144 #gpio-cells = <2>;
145 interrupt-controller;
146 #interrupt-cells = <2>;
147 reg = <0x0 0x400>;
148 clocks = <&ck_icn_ls_mcu>;
149 st,bank-name = "GPIOA";
150 status = "disabled";
151 };
152
153 gpiob: gpio@44250000 {
154 gpio-controller;
155 #gpio-cells = <2>;
156 interrupt-controller;
157 #interrupt-cells = <2>;
158 reg = <0x10000 0x400>;
159 clocks = <&ck_icn_ls_mcu>;
160 st,bank-name = "GPIOB";
161 status = "disabled";
162 };
163
164 gpioc: gpio@44260000 {
165 gpio-controller;
166 #gpio-cells = <2>;
167 interrupt-controller;
168 #interrupt-cells = <2>;
169 reg = <0x20000 0x400>;
170 clocks = <&ck_icn_ls_mcu>;
171 st,bank-name = "GPIOC";
172 status = "disabled";
173 };
174
175 gpiod: gpio@44270000 {
176 gpio-controller;
177 #gpio-cells = <2>;
178 interrupt-controller;
179 #interrupt-cells = <2>;
180 reg = <0x30000 0x400>;
181 clocks = <&ck_icn_ls_mcu>;
182 st,bank-name = "GPIOD";
183 status = "disabled";
184 };
185
186 gpioe: gpio@44280000 {
187 gpio-controller;
188 #gpio-cells = <2>;
189 interrupt-controller;
190 #interrupt-cells = <2>;
191 reg = <0x40000 0x400>;
192 clocks = <&ck_icn_ls_mcu>;
193 st,bank-name = "GPIOE";
194 status = "disabled";
195 };
196
197 gpiof: gpio@44290000 {
198 gpio-controller;
199 #gpio-cells = <2>;
200 interrupt-controller;
201 #interrupt-cells = <2>;
202 reg = <0x50000 0x400>;
203 clocks = <&ck_icn_ls_mcu>;
204 st,bank-name = "GPIOF";
205 status = "disabled";
206 };
207
208 gpiog: gpio@442a0000 {
209 gpio-controller;
210 #gpio-cells = <2>;
211 interrupt-controller;
212 #interrupt-cells = <2>;
213 reg = <0x60000 0x400>;
214 clocks = <&ck_icn_ls_mcu>;
215 st,bank-name = "GPIOG";
216 status = "disabled";
217 };
218
219 gpioh: gpio@442b0000 {
220 gpio-controller;
221 #gpio-cells = <2>;
222 interrupt-controller;
223 #interrupt-cells = <2>;
224 reg = <0x70000 0x400>;
225 clocks = <&ck_icn_ls_mcu>;
226 st,bank-name = "GPIOH";
227 status = "disabled";
228 };
229
230 gpioi: gpio@442c0000 {
231 gpio-controller;
232 #gpio-cells = <2>;
233 interrupt-controller;
234 #interrupt-cells = <2>;
235 reg = <0x80000 0x400>;
236 clocks = <&ck_icn_ls_mcu>;
237 st,bank-name = "GPIOI";
238 status = "disabled";
239 };
240
241 gpioj: gpio@442d0000 {
242 gpio-controller;
243 #gpio-cells = <2>;
244 interrupt-controller;
245 #interrupt-cells = <2>;
246 reg = <0x90000 0x400>;
247 clocks = <&ck_icn_ls_mcu>;
248 st,bank-name = "GPIOJ";
249 status = "disabled";
250 };
251
252 gpiok: gpio@442e0000 {
253 gpio-controller;
254 #gpio-cells = <2>;
255 interrupt-controller;
256 #interrupt-cells = <2>;
257 reg = <0xa0000 0x400>;
258 clocks = <&ck_icn_ls_mcu>;
259 st,bank-name = "GPIOK";
260 status = "disabled";
261 };
262 };
263
264 pinctrl_z: pinctrl@46200000 {
265 #address-cells = <1>;
266 #size-cells = <1>;
267 compatible = "st,stm32mp257-z-pinctrl";
268 ranges = <0 0x46200000 0x400>;
269 pins-are-numbered;
270
271 gpioz: gpio@46200000 {
272 gpio-controller;
273 #gpio-cells = <2>;
274 interrupt-controller;
275 #interrupt-cells = <2>;
276 reg = <0 0x400>;
277 clocks = <&ck_icn_ls_mcu>;
278 st,bank-name = "GPIOZ";
279 st,bank-ioport = <11>;
280 status = "disabled";
281 };
282
283 };
284 };
285};