blob: 0d3aaa0fffe47150980ebe1f78601c7d989335e3 [file] [log] [blame]
Jim Liu147c0002022-09-27 16:45:15 +08001// SPDX-License-Identifier: GPL-2.0
2// Copyright (c) 2021 Nuvoton Technology tomer.maimon@nuvoton.com
3
4/dts-v1/;
Jim Liu4ddc8d42023-11-14 16:51:56 +08005
6#include <dt-bindings/phy/nuvoton,npcm-usbphy.h>
Jim Liu147c0002022-09-27 16:45:15 +08007#include "nuvoton-npcm845.dtsi"
Jim Liu89b26542022-11-28 10:32:44 +08008#include "nuvoton-npcm845-pincfg.dtsi"
Jim Liu147c0002022-09-27 16:45:15 +08009
10/ {
11 model = "Nuvoton npcm845 Development Board (Device Tree)";
12 compatible = "nuvoton,npcm845-evb", "nuvoton,npcm845";
13
14 aliases {
15 serial0 = &serial0;
Jim Liu2e4fb4e2023-01-17 16:59:21 +080016 ethernet0 = &gmac0;
17 ethernet1 = &gmac1;
18 ethernet2 = &gmac2;
19 ethernet3 = &gmac3;
Jim Liu89b26542022-11-28 10:32:44 +080020 i2c0 = &i2c0;
Jim Liu2e4fb4e2023-01-17 16:59:21 +080021 i2c1 = &i2c1;
22 i2c2 = &i2c2;
23 i2c3 = &i2c3;
24 i2c4 = &i2c4;
25 i2c5 = &i2c5;
26 i2c6 = &i2c6;
27 i2c7 = &i2c7;
28 i2c8 = &i2c8;
29 i2c9 = &i2c9;
30 i2c10 = &i2c10;
31 i2c11 = &i2c11;
32 i2c12 = &i2c12;
33 i2c13 = &i2c13;
34 i2c14 = &i2c14;
35 i2c15 = &i2c15;
36 i2c16 = &i2c16;
37 i2c17 = &i2c17;
38 i2c18 = &i2c18;
39 i2c19 = &i2c19;
40 i2c20 = &i2c20;
41 i2c21 = &i2c21;
42 i2c22 = &i2c22;
43 i2c23 = &i2c23;
44 i2c24 = &i2c24;
45 i2c25 = &i2c25;
46 i2c26 = &i2c26;
Jim Liu89b26542022-11-28 10:32:44 +080047 spi0 = &fiu0;
48 spi1 = &fiu1;
49 spi3 = &fiu3;
50 spi4 = &fiux;
Jim Liu4ddc8d42023-11-14 16:51:56 +080051 spi5 = &pspi;
Jim Liu89b26542022-11-28 10:32:44 +080052 usb0 = &udc0;
53 usb1 = &ehci1;
Jim Liu4ddc8d42023-11-14 16:51:56 +080054 usb2 = &udc8;
Jim Liu147c0002022-09-27 16:45:15 +080055 };
56
57 chosen {
58 stdout-path = &serial0;
59 };
60
61 memory {
62 reg = <0x0 0x0 0x0 0x40000000>;
63 };
Jim Liu89b26542022-11-28 10:32:44 +080064
Jim Liu4ddc8d42023-11-14 16:51:56 +080065 tpm@0 {
66 compatible = "microsoft,ftpm";
67 };
68
69 firmware {
70 optee {
71 compatible = "linaro,optee-tz";
72 method = "smc";
73 };
74 };
75
Jim Liu89b26542022-11-28 10:32:44 +080076 vsbr2: vsbr2 {
77 compatible = "regulator-npcm845";
78 regulator-name = "vr2";
79 regulator-min-microvolt = <1800000>;
80 regulator-max-microvolt = <3300000>;
81 regulator-always-on;
82 };
83
84 vsbv8: vsbv8 {
85 compatible = "regulator-npcm845";
86 regulator-name = "v8";
87 regulator-min-microvolt = <1800000>;
88 regulator-max-microvolt = <3300000>;
89 regulator-always-on;
90 };
91
92 vsbv5: vsbv5 {
93 compatible = "regulator-npcm845";
94 regulator-name = "v5";
95 regulator-min-microvolt = <1800000>;
96 regulator-max-microvolt = <3300000>;
97 regulator-always-on;
98 };
99
Jim Liu147c0002022-09-27 16:45:15 +0800100};
101
102&serial0 {
103 status = "okay";
104};
105
106&watchdog1 {
107 status = "okay";
108};
Jim Liu89b26542022-11-28 10:32:44 +0800109
110&fiu0 {
111 status = "okay";
112 pinctrl-names = "default";
113 pinctrl-0 = <&spi0cs1_pins>;
114 spi-nor@0 {
115 compatible = "jedec,spi-nor";
116 reg = <0>;
117 spi-max-frequency = <25000000>;
118 };
119 spi_flash@1 {
120 compatible = "jedec,spi-nor";
121 reg = <1>;
122 spi-max-frequency = <25000000>;
123 };
124};
125
126&fiu1 {
127 status = "okay";
128 spi-nor@0 {
129 compatible = "jedec,spi-nor";
130 reg = <0>;
131 spi-max-frequency = <25000000>;
132 };
133};
134
135&fiu3 {
136 pinctrl-0 = <&spi3_pins>, <&spi3quad_pins>;
137 status = "okay";
138 vqspi-supply = <&vsbv5>;
139 vqspi-microvolt = <3300000>;
140 spi-nor@0 {
141 compatible = "jedec,spi-nor";
142 reg = <0>;
143 spi-max-frequency = <25000000>;
144 };
145};
146
147&fiux {
148 nuvoton,spix-mode;
149 status = "okay";
150};
151
Jim Liu2e4fb4e2023-01-17 16:59:21 +0800152&gmac0 {
153 phy-mode = "sgmii";
154 snps,reset-active-low;
155 snps,reset-delays-us = <0 10000 1000000>;
156 snps,reset-gpio = <&gpio5 30 GPIO_ACTIVE_LOW>; /* gpio190 */
157 status = "okay";
158};
159
160&gmac1 {
161 phy-mode = "rgmii-id";
162 snps,reset-active-low;
163 snps,reset-delays-us = <0 10000 1000000>;
164 snps,reset-gpio = <&gpio5 2 GPIO_ACTIVE_LOW>; /* gpio162 */
Jim Liu4ddc8d42023-11-14 16:51:56 +0800165 phy-supply = <&vsbr2>;
166 phy-supply-microvolt = <1800000>;
Jim Liu2e4fb4e2023-01-17 16:59:21 +0800167 status = "okay";
168};
169
170&gmac2 {
171 phy-mode = "NC-SI";
172 max-speed = <100>;
173 use-ncsi;
174 pinctrl-0 = <&r1_pins
175 &r1en_pins
176 &r1oen_pins>;
177 status = "disabled";
178};
179
180&gmac3 {
181 phy-mode = "rmii";
182 pinctrl-names = "default";
183 pinctrl-0 = <&r2_pins
184 &r2oen_pins
185 &r2en_pins
186 &gpio91o_pins
187 &gpio92o_pins>;
188 snps,bitbang-mii;
189 snps,mdc-gpio = <&gpio2 27 GPIO_ACTIVE_HIGH>; /* gpio91 */
190 snps,mdio-gpio = <&gpio2 28 GPIO_ACTIVE_HIGH>; /* gpio92 */
191 snps,reset-active-low;
192 snps,reset-delays-us = <0 10000 1000000>;
193 snps,reset-gpio = <&gpio2 29 GPIO_ACTIVE_LOW>; /* gpio93 */
194 status = "okay";
195};
196
Jim Liu4ddc8d42023-11-14 16:51:56 +0800197&pspi {
Jim Liu89b26542022-11-28 10:32:44 +0800198 status = "okay";
199};
200
201&usbphy1 {
202 status = "okay";
203};
204
205&usbphy2 {
206 status = "okay";
207};
208
209&usbphy3 {
210 status = "okay";
211};
212
213&udc0 {
214 status = "okay";
Jim Liu4ddc8d42023-11-14 16:51:56 +0800215 phys = <&usbphy1 NPCM_UDC0_7>;
Jim Liu89b26542022-11-28 10:32:44 +0800216};
217
218&sdhci0 {
219 bus-width = <0x8>;
220 status = "okay";
221};
222
223&ehci1 {
224 status = "okay";
Jim Liu4ddc8d42023-11-14 16:51:56 +0800225 phys = <&usbphy2 NPCM_USBH1>;
Jim Liu89b26542022-11-28 10:32:44 +0800226};
227
Jim Liu4ddc8d42023-11-14 16:51:56 +0800228&udc8 {
Jim Liu89b26542022-11-28 10:32:44 +0800229 status = "okay";
Jim Liu4ddc8d42023-11-14 16:51:56 +0800230 phys = <&usbphy3 NPCM_UDC8>;
Jim Liu89b26542022-11-28 10:32:44 +0800231};
232
Jim Liu2e4fb4e2023-01-17 16:59:21 +0800233&rng {
234 status = "okay";
235};
236
237&aes {
238 status = "okay";
239};
240
241&sha {
242 status = "okay";
243};
244
245&otp {
246 status = "okay";
247};
248
Jim Liu89b26542022-11-28 10:32:44 +0800249&i2c0 {
250 status = "okay";
251};
252
Jim Liu2e4fb4e2023-01-17 16:59:21 +0800253&i2c1 {
254 status = "okay";
255};
256
257&i2c2 {
258 status = "okay";
259};
260
261&i2c3 {
262 status = "okay";
263};
264
265&i2c4 {
266 status = "okay";
267};
268
269&i2c5 {
270 status = "okay";
271};
272
273&i2c6 {
274 status = "okay";
275 tmp100@48 {
276 compatible = "tmp100";
277 reg = <0x48>;
278 status = "okay";
279 };
280};
281
282&i2c7 {
283 status = "okay";
284};
285
286&i2c8 {
287 status = "okay";
288};
289
290&i2c9 {
291 status = "okay";
292};
293
294&i2c10 {
295 status = "okay";
296};
297
298&i2c11 {
299 status = "okay";
300};
301
302&i2c12 {
303 status = "okay";
304};
305
306&i2c13 {
307 status = "okay";
308};
309
310&i2c14 {
311 status = "okay";
312};
313
314&i2c15 {
315 status = "okay";
316};
317
318&i2c16 {
319 status = "okay";
320};
321
322&i2c17 {
323 status = "okay";
324};
325
326&i2c18 {
327 status = "okay";
328};
329
330&i2c19 {
331 status = "okay";
332};
333
334&i2c20 {
335 status = "okay";
336};
337
338&i2c21 {
339 status = "okay";
340};
341
342&i2c22 {
343 status = "okay";
344};
345
346&i2c23 {
347 status = "okay";
348};
349
350&i2c24 {
351 status = "okay";
352};
353
354&i2c25 {
355 status = "okay";
356};
357
358&i2c26 {
359 status = "okay";
360};
361
Jim Liu89b26542022-11-28 10:32:44 +0800362&pinctrl {
363 pinctrl-names = "default";
364 pinctrl-0 = <
365 &gspi_pins
366 &vgadig_pins
367 &spix_pins
368 &r1_pins
369 &r1en_pins
370 &r1oen_pins
371 >;
Sughosh Ganu4c3dcb32023-08-22 23:09:55 +0530372};