blob: 31ba52b14e99bac5fcb916502cad710a8569a250 [file] [log] [blame]
Masahiro Yamada0bc56842018-04-16 12:35:33 +09001// SPDX-License-Identifier: GPL-2.0+ OR MIT
2//
3// Device Tree Source for UniPhier LD11 SoC
4//
5// Copyright (C) 2016 Socionext Inc.
6// Author: Masahiro Yamada <yamada.masahiro@socionext.com>
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +09007
Masahiro Yamada6c086d02017-11-25 00:25:35 +09008#include <dt-bindings/gpio/gpio.h>
9#include <dt-bindings/gpio/uniphier-gpio.h>
10
Masahiro Yamada31a17882017-06-22 16:46:40 +090011/memreserve/ 0x80000000 0x02000000;
Masahiro Yamada1174603f2016-06-29 19:38:56 +090012
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +090013/ {
Masahiro Yamada39a67ff2016-10-07 16:43:00 +090014 compatible = "socionext,uniphier-ld11";
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +090015 #address-cells = <2>;
16 #size-cells = <2>;
17 interrupt-parent = <&gic>;
18
19 cpus {
20 #address-cells = <2>;
21 #size-cells = <0>;
22
Masahiro Yamada1174603f2016-06-29 19:38:56 +090023 cpu-map {
24 cluster0 {
25 core0 {
26 cpu = <&cpu0>;
27 };
28 core1 {
29 cpu = <&cpu1>;
30 };
31 };
32 };
33
34 cpu0: cpu@0 {
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +090035 device_type = "cpu";
36 compatible = "arm,cortex-a53", "arm,armv8";
37 reg = <0 0x000>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +090038 clocks = <&sys_clk 33>;
39 enable-method = "psci";
40 operating-points-v2 = <&cluster0_opp>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +090041 };
42
Masahiro Yamada1174603f2016-06-29 19:38:56 +090043 cpu1: cpu@1 {
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +090044 device_type = "cpu";
45 compatible = "arm,cortex-a53", "arm,armv8";
46 reg = <0 0x001>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +090047 clocks = <&sys_clk 33>;
48 enable-method = "psci";
49 operating-points-v2 = <&cluster0_opp>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +090050 };
51 };
52
Masahiro Yamada6c086d02017-11-25 00:25:35 +090053 cluster0_opp: opp-table {
Masahiro Yamada6e485b22016-12-05 18:31:39 +090054 compatible = "operating-points-v2";
55 opp-shared;
56
Masahiro Yamada552acbf2017-04-20 16:54:44 +090057 opp-245000000 {
Masahiro Yamada6e485b22016-12-05 18:31:39 +090058 opp-hz = /bits/ 64 <245000000>;
59 clock-latency-ns = <300>;
60 };
Masahiro Yamada552acbf2017-04-20 16:54:44 +090061 opp-250000000 {
Masahiro Yamada6e485b22016-12-05 18:31:39 +090062 opp-hz = /bits/ 64 <250000000>;
63 clock-latency-ns = <300>;
64 };
Masahiro Yamada552acbf2017-04-20 16:54:44 +090065 opp-490000000 {
Masahiro Yamada6e485b22016-12-05 18:31:39 +090066 opp-hz = /bits/ 64 <490000000>;
67 clock-latency-ns = <300>;
68 };
Masahiro Yamada552acbf2017-04-20 16:54:44 +090069 opp-500000000 {
Masahiro Yamada6e485b22016-12-05 18:31:39 +090070 opp-hz = /bits/ 64 <500000000>;
71 clock-latency-ns = <300>;
72 };
Masahiro Yamada552acbf2017-04-20 16:54:44 +090073 opp-653334000 {
Masahiro Yamada6e485b22016-12-05 18:31:39 +090074 opp-hz = /bits/ 64 <653334000>;
75 clock-latency-ns = <300>;
76 };
Masahiro Yamada552acbf2017-04-20 16:54:44 +090077 opp-666667000 {
Masahiro Yamada6e485b22016-12-05 18:31:39 +090078 opp-hz = /bits/ 64 <666667000>;
79 clock-latency-ns = <300>;
80 };
Masahiro Yamada552acbf2017-04-20 16:54:44 +090081 opp-980000000 {
Masahiro Yamada6e485b22016-12-05 18:31:39 +090082 opp-hz = /bits/ 64 <980000000>;
83 clock-latency-ns = <300>;
84 };
85 };
86
87 psci {
88 compatible = "arm,psci-1.0";
89 method = "smc";
90 };
91
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +090092 clocks {
Masahiro Yamada1174603f2016-06-29 19:38:56 +090093 refclk: ref {
94 compatible = "fixed-clock";
95 #clock-cells = <0>;
96 clock-frequency = <25000000>;
97 };
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +090098 };
99
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900100 emmc_pwrseq: emmc-pwrseq {
101 compatible = "mmc-pwrseq-emmc";
102 reset-gpios = <&gpio UNIPHIER_GPIO_PORT(3, 2) GPIO_ACTIVE_LOW>;
103 };
104
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900105 timer {
106 compatible = "arm,armv8-timer";
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900107 interrupts = <1 13 4>,
108 <1 14 4>,
109 <1 11 4>,
110 <1 10 4>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900111 };
112
Masahiro Yamadace6ca3c2017-03-13 00:16:40 +0900113 soc@0 {
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900114 compatible = "simple-bus";
115 #address-cells = <1>;
116 #size-cells = <1>;
117 ranges = <0 0 0 0xffffffff>;
118
Masahiro Yamada6bd84d72018-12-19 20:03:21 +0900119 spi0: spi@54006000 {
120 compatible = "socionext,uniphier-scssi";
121 status = "disabled";
122 reg = <0x54006000 0x100>;
123 interrupts = <0 39 4>;
124 pinctrl-names = "default";
125 pinctrl-0 = <&pinctrl_spi0>;
126 clocks = <&peri_clk 11>;
127 resets = <&peri_rst 11>;
128 };
129
130 spi1: spi@54006100 {
131 compatible = "socionext,uniphier-scssi";
132 status = "disabled";
133 reg = <0x54006100 0x100>;
134 interrupts = <0 216 4>;
135 pinctrl-names = "default";
136 pinctrl-0 = <&pinctrl_spi1>;
137 clocks = <&peri_clk 11>;
138 resets = <&peri_rst 11>;
139 };
140
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900141 serial0: serial@54006800 {
142 compatible = "socionext,uniphier-uart";
143 status = "disabled";
144 reg = <0x54006800 0x40>;
145 interrupts = <0 33 4>;
146 pinctrl-names = "default";
147 pinctrl-0 = <&pinctrl_uart0>;
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900148 clocks = <&peri_clk 0>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900149 resets = <&peri_rst 0>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900150 };
151
152 serial1: serial@54006900 {
153 compatible = "socionext,uniphier-uart";
154 status = "disabled";
155 reg = <0x54006900 0x40>;
156 interrupts = <0 35 4>;
157 pinctrl-names = "default";
158 pinctrl-0 = <&pinctrl_uart1>;
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900159 clocks = <&peri_clk 1>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900160 resets = <&peri_rst 1>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900161 };
162
163 serial2: serial@54006a00 {
164 compatible = "socionext,uniphier-uart";
165 status = "disabled";
166 reg = <0x54006a00 0x40>;
167 interrupts = <0 37 4>;
168 pinctrl-names = "default";
169 pinctrl-0 = <&pinctrl_uart2>;
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900170 clocks = <&peri_clk 2>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900171 resets = <&peri_rst 2>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900172 };
173
174 serial3: serial@54006b00 {
175 compatible = "socionext,uniphier-uart";
176 status = "disabled";
177 reg = <0x54006b00 0x40>;
178 interrupts = <0 177 4>;
179 pinctrl-names = "default";
180 pinctrl-0 = <&pinctrl_uart3>;
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900181 clocks = <&peri_clk 3>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900182 resets = <&peri_rst 3>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900183 };
184
Masahiro Yamada964edbf2017-10-13 19:21:52 +0900185 gpio: gpio@55000000 {
186 compatible = "socionext,uniphier-gpio";
187 reg = <0x55000000 0x200>;
188 interrupt-parent = <&aidet>;
189 interrupt-controller;
190 #interrupt-cells = <2>;
191 gpio-controller;
192 #gpio-cells = <2>;
193 gpio-ranges = <&pinctrl 0 0 0>,
194 <&pinctrl 43 0 0>,
195 <&pinctrl 51 0 0>,
196 <&pinctrl 96 0 0>,
197 <&pinctrl 160 0 0>,
198 <&pinctrl 184 0 0>;
199 gpio-ranges-group-names = "gpio_range0",
200 "gpio_range1",
201 "gpio_range2",
202 "gpio_range3",
203 "gpio_range4",
204 "gpio_range5";
205 ngpios = <200>;
Masahiro Yamadaa0a95bb2017-10-17 21:19:43 +0900206 socionext,interrupt-ranges = <0 48 16>, <16 154 5>,
207 <21 217 3>;
208 };
209
Masahiro Yamada0bc56842018-04-16 12:35:33 +0900210 audio@56000000 {
211 compatible = "socionext,uniphier-ld11-aio";
212 reg = <0x56000000 0x80000>;
213 interrupts = <0 144 4>;
214 pinctrl-names = "default";
215 pinctrl-0 = <&pinctrl_aout1>,
216 <&pinctrl_aoutiec1>;
217 clock-names = "aio";
218 clocks = <&sys_clk 40>;
219 reset-names = "aio";
220 resets = <&sys_rst 40>;
221 #sound-dai-cells = <1>;
222 socionext,syscon = <&soc_glue>;
223
224 i2s_port0: port@0 {
225 i2s_hdmi: endpoint {
226 };
227 };
228
229 i2s_port1: port@1 {
230 i2s_pcmin2: endpoint {
231 };
232 };
233
234 i2s_port2: port@2 {
235 i2s_line: endpoint {
236 dai-format = "i2s";
237 remote-endpoint = <&evea_line>;
238 };
239 };
240
241 i2s_port3: port@3 {
242 i2s_hpcmout1: endpoint {
243 };
244 };
245
246 i2s_port4: port@4 {
247 i2s_hp: endpoint {
248 dai-format = "i2s";
249 remote-endpoint = <&evea_hp>;
250 };
251 };
252
253 spdif_port0: port@5 {
254 spdif_hiecout1: endpoint {
255 };
256 };
257
258 src_port0: port@6 {
259 i2s_epcmout2: endpoint {
260 };
261 };
262
263 src_port1: port@7 {
264 i2s_epcmout3: endpoint {
265 };
266 };
267
268 comp_spdif_port0: port@8 {
269 comp_spdif_hiecout1: endpoint {
270 };
271 };
272 };
273
274 codec@57900000 {
275 compatible = "socionext,uniphier-evea";
276 reg = <0x57900000 0x1000>;
277 clock-names = "evea", "exiv";
278 clocks = <&sys_clk 41>, <&sys_clk 42>;
279 reset-names = "evea", "exiv", "adamv";
280 resets = <&sys_rst 41>, <&sys_rst 42>, <&adamv_rst 0>;
281 #sound-dai-cells = <1>;
282
283 port@0 {
284 evea_line: endpoint {
285 remote-endpoint = <&i2s_line>;
286 };
287 };
288
289 port@1 {
290 evea_hp: endpoint {
291 remote-endpoint = <&i2s_hp>;
292 };
293 };
294 };
295
Masahiro Yamadaa0a95bb2017-10-17 21:19:43 +0900296 adamv@57920000 {
297 compatible = "socionext,uniphier-ld11-adamv",
298 "simple-mfd", "syscon";
299 reg = <0x57920000 0x1000>;
300
301 adamv_rst: reset {
302 compatible = "socionext,uniphier-ld11-adamv-reset";
303 #reset-cells = <1>;
304 };
Masahiro Yamada964edbf2017-10-13 19:21:52 +0900305 };
306
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900307 i2c0: i2c@58780000 {
308 compatible = "socionext,uniphier-fi2c";
309 status = "disabled";
310 reg = <0x58780000 0x80>;
311 #address-cells = <1>;
312 #size-cells = <0>;
313 interrupts = <0 41 4>;
314 pinctrl-names = "default";
315 pinctrl-0 = <&pinctrl_i2c0>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900316 clocks = <&peri_clk 4>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900317 resets = <&peri_rst 4>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900318 clock-frequency = <100000>;
319 };
320
321 i2c1: i2c@58781000 {
322 compatible = "socionext,uniphier-fi2c";
323 status = "disabled";
324 reg = <0x58781000 0x80>;
325 #address-cells = <1>;
326 #size-cells = <0>;
327 interrupts = <0 42 4>;
328 pinctrl-names = "default";
329 pinctrl-0 = <&pinctrl_i2c1>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900330 clocks = <&peri_clk 5>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900331 resets = <&peri_rst 5>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900332 clock-frequency = <100000>;
333 };
334
335 i2c2: i2c@58782000 {
336 compatible = "socionext,uniphier-fi2c";
337 reg = <0x58782000 0x80>;
338 #address-cells = <1>;
339 #size-cells = <0>;
340 interrupts = <0 43 4>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900341 clocks = <&peri_clk 6>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900342 resets = <&peri_rst 6>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900343 clock-frequency = <400000>;
344 };
345
346 i2c3: i2c@58783000 {
347 compatible = "socionext,uniphier-fi2c";
348 status = "disabled";
349 reg = <0x58783000 0x80>;
350 #address-cells = <1>;
351 #size-cells = <0>;
352 interrupts = <0 44 4>;
353 pinctrl-names = "default";
354 pinctrl-0 = <&pinctrl_i2c3>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900355 clocks = <&peri_clk 7>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900356 resets = <&peri_rst 7>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900357 clock-frequency = <100000>;
358 };
359
360 i2c4: i2c@58784000 {
361 compatible = "socionext,uniphier-fi2c";
362 status = "disabled";
363 reg = <0x58784000 0x80>;
364 #address-cells = <1>;
365 #size-cells = <0>;
366 interrupts = <0 45 4>;
367 pinctrl-names = "default";
368 pinctrl-0 = <&pinctrl_i2c4>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900369 clocks = <&peri_clk 8>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900370 resets = <&peri_rst 8>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900371 clock-frequency = <100000>;
372 };
373
374 i2c5: i2c@58785000 {
375 compatible = "socionext,uniphier-fi2c";
376 reg = <0x58785000 0x80>;
377 #address-cells = <1>;
378 #size-cells = <0>;
379 interrupts = <0 25 4>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900380 clocks = <&peri_clk 9>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900381 resets = <&peri_rst 9>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900382 clock-frequency = <400000>;
383 };
384
385 system_bus: system-bus@58c00000 {
386 compatible = "socionext,uniphier-system-bus";
387 status = "disabled";
388 reg = <0x58c00000 0x400>;
389 #address-cells = <2>;
390 #size-cells = <1>;
Masahiro Yamada1174603f2016-06-29 19:38:56 +0900391 pinctrl-names = "default";
392 pinctrl-0 = <&pinctrl_system_bus>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900393 };
394
Masahiro Yamada938ab162017-05-15 14:23:46 +0900395 smpctrl@59801000 {
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900396 compatible = "socionext,uniphier-smpctrl";
397 reg = <0x59801000 0x400>;
398 };
399
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900400 sdctrl@59810000 {
401 compatible = "socionext,uniphier-ld11-sdctrl",
402 "simple-mfd", "syscon";
403 reg = <0x59810000 0x400>;
404
405 sd_rst: reset {
406 compatible = "socionext,uniphier-ld11-sd-reset";
407 #reset-cells = <1>;
408 };
409 };
410
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900411 perictrl@59820000 {
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900412 compatible = "socionext,uniphier-ld11-perictrl",
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900413 "simple-mfd", "syscon";
414 reg = <0x59820000 0x200>;
415
416 peri_clk: clock {
417 compatible = "socionext,uniphier-ld11-peri-clock";
418 #clock-cells = <1>;
419 };
420
421 peri_rst: reset {
422 compatible = "socionext,uniphier-ld11-peri-reset";
423 #reset-cells = <1>;
424 };
425 };
426
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900427 emmc: sdhc@5a000000 {
Masahiro Yamada697dd9c2017-01-04 20:08:37 +0900428 compatible = "socionext,uniphier-sd4hc", "cdns,sd4hc";
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900429 reg = <0x5a000000 0x400>;
430 interrupts = <0 78 4>;
431 pinctrl-names = "default";
Masahiro Yamada5ac92d82018-09-10 12:58:32 +0900432 pinctrl-0 = <&pinctrl_emmc>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900433 clocks = <&sys_clk 4>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900434 resets = <&sys_rst 4>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900435 bus-width = <8>;
436 mmc-ddr-1_8v;
437 mmc-hs200-1_8v;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900438 mmc-pwrseq = <&emmc_pwrseq>;
Masahiro Yamada76b37e72018-05-23 00:30:54 +0900439 cdns,phy-input-delay-legacy = <9>;
Masahiro Yamada552acbf2017-04-20 16:54:44 +0900440 cdns,phy-input-delay-mmc-highspeed = <2>;
441 cdns,phy-input-delay-mmc-ddr = <3>;
442 cdns,phy-dll-delay-sdclk = <21>;
443 cdns,phy-dll-delay-sdclk-hsmmc = <21>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900444 };
445
Masahiro Yamada09b02752016-05-24 21:14:03 +0900446 usb0: usb@5a800100 {
447 compatible = "socionext,uniphier-ehci", "generic-ehci";
448 status = "disabled";
449 reg = <0x5a800100 0x100>;
450 interrupts = <0 243 4>;
451 pinctrl-names = "default";
452 pinctrl-0 = <&pinctrl_usb0>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900453 clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 8>,
454 <&mio_clk 12>;
Masahiro Yamada39a67ff2016-10-07 16:43:00 +0900455 resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 8>,
456 <&mio_rst 12>;
Masahiro Yamada6bd84d72018-12-19 20:03:21 +0900457 phy-names = "usb";
458 phys = <&usb_phy0>;
Masahiro Yamadab61327d2018-03-15 11:43:03 +0900459 has-transaction-translator;
Masahiro Yamada09b02752016-05-24 21:14:03 +0900460 };
461
462 usb1: usb@5a810100 {
463 compatible = "socionext,uniphier-ehci", "generic-ehci";
464 status = "disabled";
465 reg = <0x5a810100 0x100>;
466 interrupts = <0 244 4>;
467 pinctrl-names = "default";
468 pinctrl-0 = <&pinctrl_usb1>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900469 clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 9>,
470 <&mio_clk 13>;
Masahiro Yamada39a67ff2016-10-07 16:43:00 +0900471 resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 9>,
472 <&mio_rst 13>;
Masahiro Yamada6bd84d72018-12-19 20:03:21 +0900473 phy-names = "usb";
474 phys = <&usb_phy1>;
Masahiro Yamadab61327d2018-03-15 11:43:03 +0900475 has-transaction-translator;
Masahiro Yamada09b02752016-05-24 21:14:03 +0900476 };
477
478 usb2: usb@5a820100 {
479 compatible = "socionext,uniphier-ehci", "generic-ehci";
480 status = "disabled";
481 reg = <0x5a820100 0x100>;
482 interrupts = <0 245 4>;
483 pinctrl-names = "default";
484 pinctrl-0 = <&pinctrl_usb2>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900485 clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 10>,
486 <&mio_clk 14>;
Masahiro Yamada39a67ff2016-10-07 16:43:00 +0900487 resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 10>,
488 <&mio_rst 14>;
Masahiro Yamada6bd84d72018-12-19 20:03:21 +0900489 phy-names = "usb";
490 phys = <&usb_phy2>;
Masahiro Yamadab61327d2018-03-15 11:43:03 +0900491 has-transaction-translator;
Masahiro Yamada09b02752016-05-24 21:14:03 +0900492 };
493
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900494 mioctrl@5b3e0000 {
Masahiro Yamadabf3b7212017-03-13 00:16:41 +0900495 compatible = "socionext,uniphier-ld11-mioctrl",
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900496 "simple-mfd", "syscon";
Masahiro Yamada09b02752016-05-24 21:14:03 +0900497 reg = <0x5b3e0000 0x800>;
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900498
499 mio_clk: clock {
500 compatible = "socionext,uniphier-ld11-mio-clock";
501 #clock-cells = <1>;
502 };
503
504 mio_rst: reset {
505 compatible = "socionext,uniphier-ld11-mio-reset";
506 #reset-cells = <1>;
507 resets = <&sys_rst 7>;
508 };
Masahiro Yamada09b02752016-05-24 21:14:03 +0900509 };
510
Masahiro Yamada0bc56842018-04-16 12:35:33 +0900511 soc_glue: soc-glue@5f800000 {
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900512 compatible = "socionext,uniphier-ld11-soc-glue",
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900513 "simple-mfd", "syscon";
Masahiro Yamada1174603f2016-06-29 19:38:56 +0900514 reg = <0x5f800000 0x2000>;
Masahiro Yamada1174603f2016-06-29 19:38:56 +0900515
516 pinctrl: pinctrl {
517 compatible = "socionext,uniphier-ld11-pinctrl";
Masahiro Yamada1174603f2016-06-29 19:38:56 +0900518 };
Masahiro Yamada6bd84d72018-12-19 20:03:21 +0900519
520 usb-phy {
521 compatible = "socionext,uniphier-ld11-usb2-phy";
522 #address-cells = <1>;
523 #size-cells = <0>;
524
525 usb_phy0: phy@0 {
526 reg = <0>;
527 #phy-cells = <0>;
528 };
529
530 usb_phy1: phy@1 {
531 reg = <1>;
532 #phy-cells = <0>;
533 };
534
535 usb_phy2: phy@2 {
536 reg = <2>;
537 #phy-cells = <0>;
538 };
539 };
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900540 };
541
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900542 soc-glue@5f900000 {
543 compatible = "socionext,uniphier-ld11-soc-glue-debug",
544 "simple-mfd";
545 #address-cells = <1>;
546 #size-cells = <1>;
547 ranges = <0 0x5f900000 0x2000>;
548
549 efuse@100 {
550 compatible = "socionext,uniphier-efuse";
551 reg = <0x100 0x28>;
552 };
553
554 efuse@200 {
555 compatible = "socionext,uniphier-efuse";
556 reg = <0x200 0x68>;
557 };
558 };
559
Masahiro Yamada1a420bd2017-08-29 12:20:52 +0900560 aidet: aidet@5fc20000 {
561 compatible = "socionext,uniphier-ld11-aidet";
Masahiro Yamada2707e832016-06-29 19:39:02 +0900562 reg = <0x5fc20000 0x200>;
Masahiro Yamada1a420bd2017-08-29 12:20:52 +0900563 interrupt-controller;
564 #interrupt-cells = <2>;
Masahiro Yamada2707e832016-06-29 19:39:02 +0900565 };
566
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900567 gic: interrupt-controller@5fe00000 {
568 compatible = "arm,gic-v3";
569 reg = <0x5fe00000 0x10000>, /* GICD */
570 <0x5fe40000 0x80000>; /* GICR */
571 interrupt-controller;
572 #interrupt-cells = <3>;
573 interrupts = <1 9 4>;
574 };
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900575
576 sysctrl@61840000 {
577 compatible = "socionext,uniphier-ld11-sysctrl",
578 "simple-mfd", "syscon";
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900579 reg = <0x61840000 0x10000>;
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900580
581 sys_clk: clock {
582 compatible = "socionext,uniphier-ld11-clock";
583 #clock-cells = <1>;
584 };
585
586 sys_rst: reset {
587 compatible = "socionext,uniphier-ld11-reset";
588 #reset-cells = <1>;
589 };
Masahiro Yamada1a420bd2017-08-29 12:20:52 +0900590
591 watchdog {
592 compatible = "socionext,uniphier-wdt";
593 };
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900594 };
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900595
Masahiro Yamada0bc56842018-04-16 12:35:33 +0900596 eth: ethernet@65000000 {
597 compatible = "socionext,uniphier-ld11-ave4";
598 status = "disabled";
599 reg = <0x65000000 0x8500>;
600 interrupts = <0 66 4>;
Kunihiko Hayashi0ed9d142018-05-11 18:49:16 +0900601 clock-names = "ether";
Masahiro Yamada0bc56842018-04-16 12:35:33 +0900602 clocks = <&sys_clk 6>;
Kunihiko Hayashi0ed9d142018-05-11 18:49:16 +0900603 reset-names = "ether";
Masahiro Yamada0bc56842018-04-16 12:35:33 +0900604 resets = <&sys_rst 6>;
Kunihiko Hayashif8b6c4e2018-05-11 18:49:17 +0900605 phy-mode = "internal";
Masahiro Yamada0bc56842018-04-16 12:35:33 +0900606 local-mac-address = [00 00 00 00 00 00];
Kunihiko Hayashib57334d2018-05-11 18:49:14 +0900607 socionext,syscon-phy-mode = <&soc_glue 0>;
Masahiro Yamada0bc56842018-04-16 12:35:33 +0900608
609 mdio: mdio {
610 #address-cells = <1>;
611 #size-cells = <0>;
612 };
613 };
614
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900615 nand: nand@68000000 {
Masahiro Yamada552acbf2017-04-20 16:54:44 +0900616 compatible = "socionext,uniphier-denali-nand-v5b";
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900617 status = "disabled";
618 reg-names = "nand_data", "denali_reg";
619 reg = <0x68000000 0x20>, <0x68100000 0x1000>;
620 interrupts = <0 65 4>;
621 pinctrl-names = "default";
622 pinctrl-0 = <&pinctrl_nand>;
Masahiro Yamada6bd84d72018-12-19 20:03:21 +0900623 clock-names = "nand", "nand_x", "ecc";
624 clocks = <&sys_clk 2>, <&sys_clk 3>, <&sys_clk 3>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900625 resets = <&sys_rst 2>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900626 };
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900627 };
628};
629
Masahiro Yamada1a420bd2017-08-29 12:20:52 +0900630#include "uniphier-pinctrl.dtsi"
Masahiro Yamada0bc56842018-04-16 12:35:33 +0900631
632&pinctrl_aoutiec1 {
633 drive-strength = <4>; /* default: 4mA */
634
635 ao1arc {
636 pins = "AO1ARC";
637 drive-strength = <8>; /* 8mA */
638 };
639};