blob: 104d56d625d42a36e034d41418e0831b6923c825 [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 Yamadaf0c34fc2016-03-18 16:41:49 +090011/ {
Masahiro Yamada39a67ff2016-10-07 16:43:00 +090012 compatible = "socionext,uniphier-ld11";
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +090013 #address-cells = <2>;
14 #size-cells = <2>;
15 interrupt-parent = <&gic>;
16
17 cpus {
18 #address-cells = <2>;
19 #size-cells = <0>;
20
Masahiro Yamada1174603f2016-06-29 19:38:56 +090021 cpu-map {
22 cluster0 {
23 core0 {
24 cpu = <&cpu0>;
25 };
26 core1 {
27 cpu = <&cpu1>;
28 };
29 };
30 };
31
32 cpu0: cpu@0 {
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +090033 device_type = "cpu";
Masahiro Yamadac9026882019-04-12 18:55:50 +090034 compatible = "arm,cortex-a53";
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +090035 reg = <0 0x000>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +090036 clocks = <&sys_clk 33>;
37 enable-method = "psci";
38 operating-points-v2 = <&cluster0_opp>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +090039 };
40
Masahiro Yamada1174603f2016-06-29 19:38:56 +090041 cpu1: cpu@1 {
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +090042 device_type = "cpu";
Masahiro Yamadac9026882019-04-12 18:55:50 +090043 compatible = "arm,cortex-a53";
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +090044 reg = <0 0x001>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +090045 clocks = <&sys_clk 33>;
46 enable-method = "psci";
47 operating-points-v2 = <&cluster0_opp>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +090048 };
49 };
50
Masahiro Yamada6c086d02017-11-25 00:25:35 +090051 cluster0_opp: opp-table {
Masahiro Yamada6e485b22016-12-05 18:31:39 +090052 compatible = "operating-points-v2";
53 opp-shared;
54
Masahiro Yamada552acbf2017-04-20 16:54:44 +090055 opp-245000000 {
Masahiro Yamada6e485b22016-12-05 18:31:39 +090056 opp-hz = /bits/ 64 <245000000>;
57 clock-latency-ns = <300>;
58 };
Masahiro Yamada552acbf2017-04-20 16:54:44 +090059 opp-250000000 {
Masahiro Yamada6e485b22016-12-05 18:31:39 +090060 opp-hz = /bits/ 64 <250000000>;
61 clock-latency-ns = <300>;
62 };
Masahiro Yamada552acbf2017-04-20 16:54:44 +090063 opp-490000000 {
Masahiro Yamada6e485b22016-12-05 18:31:39 +090064 opp-hz = /bits/ 64 <490000000>;
65 clock-latency-ns = <300>;
66 };
Masahiro Yamada552acbf2017-04-20 16:54:44 +090067 opp-500000000 {
Masahiro Yamada6e485b22016-12-05 18:31:39 +090068 opp-hz = /bits/ 64 <500000000>;
69 clock-latency-ns = <300>;
70 };
Masahiro Yamada552acbf2017-04-20 16:54:44 +090071 opp-653334000 {
Masahiro Yamada6e485b22016-12-05 18:31:39 +090072 opp-hz = /bits/ 64 <653334000>;
73 clock-latency-ns = <300>;
74 };
Masahiro Yamada552acbf2017-04-20 16:54:44 +090075 opp-666667000 {
Masahiro Yamada6e485b22016-12-05 18:31:39 +090076 opp-hz = /bits/ 64 <666667000>;
77 clock-latency-ns = <300>;
78 };
Masahiro Yamada552acbf2017-04-20 16:54:44 +090079 opp-980000000 {
Masahiro Yamada6e485b22016-12-05 18:31:39 +090080 opp-hz = /bits/ 64 <980000000>;
81 clock-latency-ns = <300>;
82 };
83 };
84
85 psci {
86 compatible = "arm,psci-1.0";
87 method = "smc";
88 };
89
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +090090 clocks {
Masahiro Yamada1174603f2016-06-29 19:38:56 +090091 refclk: ref {
92 compatible = "fixed-clock";
93 #clock-cells = <0>;
94 clock-frequency = <25000000>;
95 };
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +090096 };
97
Masahiro Yamada6c086d02017-11-25 00:25:35 +090098 emmc_pwrseq: emmc-pwrseq {
99 compatible = "mmc-pwrseq-emmc";
100 reset-gpios = <&gpio UNIPHIER_GPIO_PORT(3, 2) GPIO_ACTIVE_LOW>;
101 };
102
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900103 timer {
104 compatible = "arm,armv8-timer";
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900105 interrupts = <1 13 4>,
106 <1 14 4>,
107 <1 11 4>,
108 <1 10 4>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900109 };
110
Masahiro Yamada83701f22019-07-10 20:07:29 +0900111 reserved-memory {
112 #address-cells = <2>;
113 #size-cells = <2>;
114 ranges;
115
116 secure-memory@81000000 {
117 reg = <0x0 0x81000000 0x0 0x01000000>;
118 no-map;
119 };
120 };
121
Masahiro Yamadace6ca3c2017-03-13 00:16:40 +0900122 soc@0 {
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900123 compatible = "simple-bus";
124 #address-cells = <1>;
125 #size-cells = <1>;
126 ranges = <0 0 0 0xffffffff>;
127
Masahiro Yamada6bd84d72018-12-19 20:03:21 +0900128 spi0: spi@54006000 {
129 compatible = "socionext,uniphier-scssi";
130 status = "disabled";
131 reg = <0x54006000 0x100>;
Masahiro Yamada423471f2020-07-09 15:08:14 +0900132 #address-cells = <1>;
133 #size-cells = <0>;
Masahiro Yamada6bd84d72018-12-19 20:03:21 +0900134 interrupts = <0 39 4>;
135 pinctrl-names = "default";
136 pinctrl-0 = <&pinctrl_spi0>;
137 clocks = <&peri_clk 11>;
138 resets = <&peri_rst 11>;
139 };
140
141 spi1: spi@54006100 {
142 compatible = "socionext,uniphier-scssi";
143 status = "disabled";
144 reg = <0x54006100 0x100>;
Masahiro Yamada423471f2020-07-09 15:08:14 +0900145 #address-cells = <1>;
146 #size-cells = <0>;
Masahiro Yamada6bd84d72018-12-19 20:03:21 +0900147 interrupts = <0 216 4>;
148 pinctrl-names = "default";
149 pinctrl-0 = <&pinctrl_spi1>;
Masahiro Yamada423471f2020-07-09 15:08:14 +0900150 clocks = <&peri_clk 12>;
151 resets = <&peri_rst 12>;
Masahiro Yamada6bd84d72018-12-19 20:03:21 +0900152 };
153
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900154 serial0: serial@54006800 {
155 compatible = "socionext,uniphier-uart";
156 status = "disabled";
157 reg = <0x54006800 0x40>;
158 interrupts = <0 33 4>;
159 pinctrl-names = "default";
160 pinctrl-0 = <&pinctrl_uart0>;
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900161 clocks = <&peri_clk 0>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900162 resets = <&peri_rst 0>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900163 };
164
165 serial1: serial@54006900 {
166 compatible = "socionext,uniphier-uart";
167 status = "disabled";
168 reg = <0x54006900 0x40>;
169 interrupts = <0 35 4>;
170 pinctrl-names = "default";
171 pinctrl-0 = <&pinctrl_uart1>;
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900172 clocks = <&peri_clk 1>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900173 resets = <&peri_rst 1>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900174 };
175
176 serial2: serial@54006a00 {
177 compatible = "socionext,uniphier-uart";
178 status = "disabled";
179 reg = <0x54006a00 0x40>;
180 interrupts = <0 37 4>;
181 pinctrl-names = "default";
182 pinctrl-0 = <&pinctrl_uart2>;
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900183 clocks = <&peri_clk 2>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900184 resets = <&peri_rst 2>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900185 };
186
187 serial3: serial@54006b00 {
188 compatible = "socionext,uniphier-uart";
189 status = "disabled";
190 reg = <0x54006b00 0x40>;
191 interrupts = <0 177 4>;
192 pinctrl-names = "default";
193 pinctrl-0 = <&pinctrl_uart3>;
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900194 clocks = <&peri_clk 3>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900195 resets = <&peri_rst 3>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900196 };
197
Masahiro Yamada964edbf2017-10-13 19:21:52 +0900198 gpio: gpio@55000000 {
199 compatible = "socionext,uniphier-gpio";
200 reg = <0x55000000 0x200>;
201 interrupt-parent = <&aidet>;
202 interrupt-controller;
203 #interrupt-cells = <2>;
204 gpio-controller;
205 #gpio-cells = <2>;
206 gpio-ranges = <&pinctrl 0 0 0>,
207 <&pinctrl 43 0 0>,
208 <&pinctrl 51 0 0>,
209 <&pinctrl 96 0 0>,
210 <&pinctrl 160 0 0>,
211 <&pinctrl 184 0 0>;
212 gpio-ranges-group-names = "gpio_range0",
213 "gpio_range1",
214 "gpio_range2",
215 "gpio_range3",
216 "gpio_range4",
217 "gpio_range5";
218 ngpios = <200>;
Masahiro Yamadaa0a95bb2017-10-17 21:19:43 +0900219 socionext,interrupt-ranges = <0 48 16>, <16 154 5>,
220 <21 217 3>;
221 };
222
Masahiro Yamada0bc56842018-04-16 12:35:33 +0900223 audio@56000000 {
224 compatible = "socionext,uniphier-ld11-aio";
225 reg = <0x56000000 0x80000>;
226 interrupts = <0 144 4>;
227 pinctrl-names = "default";
228 pinctrl-0 = <&pinctrl_aout1>,
229 <&pinctrl_aoutiec1>;
230 clock-names = "aio";
231 clocks = <&sys_clk 40>;
232 reset-names = "aio";
233 resets = <&sys_rst 40>;
234 #sound-dai-cells = <1>;
235 socionext,syscon = <&soc_glue>;
236
237 i2s_port0: port@0 {
238 i2s_hdmi: endpoint {
239 };
240 };
241
242 i2s_port1: port@1 {
243 i2s_pcmin2: endpoint {
244 };
245 };
246
247 i2s_port2: port@2 {
248 i2s_line: endpoint {
249 dai-format = "i2s";
250 remote-endpoint = <&evea_line>;
251 };
252 };
253
254 i2s_port3: port@3 {
255 i2s_hpcmout1: endpoint {
256 };
257 };
258
259 i2s_port4: port@4 {
260 i2s_hp: endpoint {
261 dai-format = "i2s";
262 remote-endpoint = <&evea_hp>;
263 };
264 };
265
266 spdif_port0: port@5 {
267 spdif_hiecout1: endpoint {
268 };
269 };
270
271 src_port0: port@6 {
272 i2s_epcmout2: endpoint {
273 };
274 };
275
276 src_port1: port@7 {
277 i2s_epcmout3: endpoint {
278 };
279 };
280
281 comp_spdif_port0: port@8 {
282 comp_spdif_hiecout1: endpoint {
283 };
284 };
285 };
286
287 codec@57900000 {
288 compatible = "socionext,uniphier-evea";
289 reg = <0x57900000 0x1000>;
290 clock-names = "evea", "exiv";
291 clocks = <&sys_clk 41>, <&sys_clk 42>;
292 reset-names = "evea", "exiv", "adamv";
293 resets = <&sys_rst 41>, <&sys_rst 42>, <&adamv_rst 0>;
294 #sound-dai-cells = <1>;
295
296 port@0 {
297 evea_line: endpoint {
298 remote-endpoint = <&i2s_line>;
299 };
300 };
301
302 port@1 {
303 evea_hp: endpoint {
304 remote-endpoint = <&i2s_hp>;
305 };
306 };
307 };
308
Masahiro Yamadaa0a95bb2017-10-17 21:19:43 +0900309 adamv@57920000 {
310 compatible = "socionext,uniphier-ld11-adamv",
311 "simple-mfd", "syscon";
312 reg = <0x57920000 0x1000>;
313
314 adamv_rst: reset {
315 compatible = "socionext,uniphier-ld11-adamv-reset";
316 #reset-cells = <1>;
317 };
Masahiro Yamada964edbf2017-10-13 19:21:52 +0900318 };
319
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900320 i2c0: i2c@58780000 {
321 compatible = "socionext,uniphier-fi2c";
322 status = "disabled";
323 reg = <0x58780000 0x80>;
324 #address-cells = <1>;
325 #size-cells = <0>;
326 interrupts = <0 41 4>;
327 pinctrl-names = "default";
328 pinctrl-0 = <&pinctrl_i2c0>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900329 clocks = <&peri_clk 4>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900330 resets = <&peri_rst 4>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900331 clock-frequency = <100000>;
332 };
333
334 i2c1: i2c@58781000 {
335 compatible = "socionext,uniphier-fi2c";
336 status = "disabled";
337 reg = <0x58781000 0x80>;
338 #address-cells = <1>;
339 #size-cells = <0>;
340 interrupts = <0 42 4>;
341 pinctrl-names = "default";
342 pinctrl-0 = <&pinctrl_i2c1>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900343 clocks = <&peri_clk 5>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900344 resets = <&peri_rst 5>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900345 clock-frequency = <100000>;
346 };
347
348 i2c2: i2c@58782000 {
349 compatible = "socionext,uniphier-fi2c";
350 reg = <0x58782000 0x80>;
351 #address-cells = <1>;
352 #size-cells = <0>;
353 interrupts = <0 43 4>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900354 clocks = <&peri_clk 6>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900355 resets = <&peri_rst 6>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900356 clock-frequency = <400000>;
357 };
358
359 i2c3: i2c@58783000 {
360 compatible = "socionext,uniphier-fi2c";
361 status = "disabled";
362 reg = <0x58783000 0x80>;
363 #address-cells = <1>;
364 #size-cells = <0>;
365 interrupts = <0 44 4>;
366 pinctrl-names = "default";
367 pinctrl-0 = <&pinctrl_i2c3>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900368 clocks = <&peri_clk 7>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900369 resets = <&peri_rst 7>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900370 clock-frequency = <100000>;
371 };
372
373 i2c4: i2c@58784000 {
374 compatible = "socionext,uniphier-fi2c";
375 status = "disabled";
376 reg = <0x58784000 0x80>;
377 #address-cells = <1>;
378 #size-cells = <0>;
379 interrupts = <0 45 4>;
380 pinctrl-names = "default";
381 pinctrl-0 = <&pinctrl_i2c4>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900382 clocks = <&peri_clk 8>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900383 resets = <&peri_rst 8>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900384 clock-frequency = <100000>;
385 };
386
387 i2c5: i2c@58785000 {
388 compatible = "socionext,uniphier-fi2c";
389 reg = <0x58785000 0x80>;
390 #address-cells = <1>;
391 #size-cells = <0>;
392 interrupts = <0 25 4>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900393 clocks = <&peri_clk 9>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900394 resets = <&peri_rst 9>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900395 clock-frequency = <400000>;
396 };
397
398 system_bus: system-bus@58c00000 {
399 compatible = "socionext,uniphier-system-bus";
400 status = "disabled";
401 reg = <0x58c00000 0x400>;
402 #address-cells = <2>;
403 #size-cells = <1>;
Masahiro Yamada1174603f2016-06-29 19:38:56 +0900404 pinctrl-names = "default";
405 pinctrl-0 = <&pinctrl_system_bus>;
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900406 };
407
Masahiro Yamada938ab162017-05-15 14:23:46 +0900408 smpctrl@59801000 {
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900409 compatible = "socionext,uniphier-smpctrl";
410 reg = <0x59801000 0x400>;
411 };
412
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900413 sdctrl@59810000 {
414 compatible = "socionext,uniphier-ld11-sdctrl",
415 "simple-mfd", "syscon";
416 reg = <0x59810000 0x400>;
417
418 sd_rst: reset {
419 compatible = "socionext,uniphier-ld11-sd-reset";
420 #reset-cells = <1>;
421 };
422 };
423
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900424 perictrl@59820000 {
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900425 compatible = "socionext,uniphier-ld11-perictrl",
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900426 "simple-mfd", "syscon";
427 reg = <0x59820000 0x200>;
428
429 peri_clk: clock {
430 compatible = "socionext,uniphier-ld11-peri-clock";
431 #clock-cells = <1>;
432 };
433
434 peri_rst: reset {
435 compatible = "socionext,uniphier-ld11-peri-reset";
436 #reset-cells = <1>;
437 };
438 };
439
Masahiro Yamada277516a2020-02-28 21:57:19 +0900440 emmc: mmc@5a000000 {
Masahiro Yamada697dd9c2017-01-04 20:08:37 +0900441 compatible = "socionext,uniphier-sd4hc", "cdns,sd4hc";
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900442 reg = <0x5a000000 0x400>;
443 interrupts = <0 78 4>;
444 pinctrl-names = "default";
Masahiro Yamada5ac92d82018-09-10 12:58:32 +0900445 pinctrl-0 = <&pinctrl_emmc>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900446 clocks = <&sys_clk 4>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900447 resets = <&sys_rst 4>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900448 bus-width = <8>;
449 mmc-ddr-1_8v;
450 mmc-hs200-1_8v;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900451 mmc-pwrseq = <&emmc_pwrseq>;
Masahiro Yamada76b37e72018-05-23 00:30:54 +0900452 cdns,phy-input-delay-legacy = <9>;
Masahiro Yamada552acbf2017-04-20 16:54:44 +0900453 cdns,phy-input-delay-mmc-highspeed = <2>;
454 cdns,phy-input-delay-mmc-ddr = <3>;
455 cdns,phy-dll-delay-sdclk = <21>;
456 cdns,phy-dll-delay-sdclk-hsmmc = <21>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900457 };
458
Masahiro Yamada09b02752016-05-24 21:14:03 +0900459 usb0: usb@5a800100 {
460 compatible = "socionext,uniphier-ehci", "generic-ehci";
461 status = "disabled";
462 reg = <0x5a800100 0x100>;
463 interrupts = <0 243 4>;
464 pinctrl-names = "default";
465 pinctrl-0 = <&pinctrl_usb0>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900466 clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 8>,
467 <&mio_clk 12>;
Masahiro Yamada39a67ff2016-10-07 16:43:00 +0900468 resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 8>,
469 <&mio_rst 12>;
Masahiro Yamada6bd84d72018-12-19 20:03:21 +0900470 phy-names = "usb";
471 phys = <&usb_phy0>;
Masahiro Yamadab61327d2018-03-15 11:43:03 +0900472 has-transaction-translator;
Masahiro Yamada09b02752016-05-24 21:14:03 +0900473 };
474
475 usb1: usb@5a810100 {
476 compatible = "socionext,uniphier-ehci", "generic-ehci";
477 status = "disabled";
478 reg = <0x5a810100 0x100>;
479 interrupts = <0 244 4>;
480 pinctrl-names = "default";
481 pinctrl-0 = <&pinctrl_usb1>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900482 clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 9>,
483 <&mio_clk 13>;
Masahiro Yamada39a67ff2016-10-07 16:43:00 +0900484 resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 9>,
485 <&mio_rst 13>;
Masahiro Yamada6bd84d72018-12-19 20:03:21 +0900486 phy-names = "usb";
487 phys = <&usb_phy1>;
Masahiro Yamadab61327d2018-03-15 11:43:03 +0900488 has-transaction-translator;
Masahiro Yamada09b02752016-05-24 21:14:03 +0900489 };
490
491 usb2: usb@5a820100 {
492 compatible = "socionext,uniphier-ehci", "generic-ehci";
493 status = "disabled";
494 reg = <0x5a820100 0x100>;
495 interrupts = <0 245 4>;
496 pinctrl-names = "default";
497 pinctrl-0 = <&pinctrl_usb2>;
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900498 clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 10>,
499 <&mio_clk 14>;
Masahiro Yamada39a67ff2016-10-07 16:43:00 +0900500 resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 10>,
501 <&mio_rst 14>;
Masahiro Yamada6bd84d72018-12-19 20:03:21 +0900502 phy-names = "usb";
503 phys = <&usb_phy2>;
Masahiro Yamadab61327d2018-03-15 11:43:03 +0900504 has-transaction-translator;
Masahiro Yamada09b02752016-05-24 21:14:03 +0900505 };
506
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900507 mioctrl@5b3e0000 {
Masahiro Yamadabf3b7212017-03-13 00:16:41 +0900508 compatible = "socionext,uniphier-ld11-mioctrl",
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900509 "simple-mfd", "syscon";
Masahiro Yamada09b02752016-05-24 21:14:03 +0900510 reg = <0x5b3e0000 0x800>;
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900511
512 mio_clk: clock {
513 compatible = "socionext,uniphier-ld11-mio-clock";
514 #clock-cells = <1>;
515 };
516
517 mio_rst: reset {
518 compatible = "socionext,uniphier-ld11-mio-reset";
519 #reset-cells = <1>;
520 resets = <&sys_rst 7>;
521 };
Masahiro Yamada09b02752016-05-24 21:14:03 +0900522 };
523
Masahiro Yamada0bc56842018-04-16 12:35:33 +0900524 soc_glue: soc-glue@5f800000 {
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900525 compatible = "socionext,uniphier-ld11-soc-glue",
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900526 "simple-mfd", "syscon";
Masahiro Yamada1174603f2016-06-29 19:38:56 +0900527 reg = <0x5f800000 0x2000>;
Masahiro Yamada1174603f2016-06-29 19:38:56 +0900528
529 pinctrl: pinctrl {
530 compatible = "socionext,uniphier-ld11-pinctrl";
Masahiro Yamada1174603f2016-06-29 19:38:56 +0900531 };
Masahiro Yamada6bd84d72018-12-19 20:03:21 +0900532
533 usb-phy {
534 compatible = "socionext,uniphier-ld11-usb2-phy";
535 #address-cells = <1>;
536 #size-cells = <0>;
537
538 usb_phy0: phy@0 {
539 reg = <0>;
540 #phy-cells = <0>;
541 };
542
543 usb_phy1: phy@1 {
544 reg = <1>;
545 #phy-cells = <0>;
546 };
547
548 usb_phy2: phy@2 {
549 reg = <2>;
550 #phy-cells = <0>;
551 };
552 };
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900553 };
554
Masahiro Yamada6c086d02017-11-25 00:25:35 +0900555 soc-glue@5f900000 {
556 compatible = "socionext,uniphier-ld11-soc-glue-debug",
557 "simple-mfd";
558 #address-cells = <1>;
559 #size-cells = <1>;
560 ranges = <0 0x5f900000 0x2000>;
561
562 efuse@100 {
563 compatible = "socionext,uniphier-efuse";
564 reg = <0x100 0x28>;
565 };
566
567 efuse@200 {
568 compatible = "socionext,uniphier-efuse";
569 reg = <0x200 0x68>;
570 };
571 };
572
Masahiro Yamada423471f2020-07-09 15:08:14 +0900573 xdmac: dma-controller@5fc10000 {
574 compatible = "socionext,uniphier-xdmac";
575 reg = <0x5fc10000 0x5300>;
576 interrupts = <0 188 4>;
577 dma-channels = <16>;
578 #dma-cells = <2>;
579 };
580
Masahiro Yamada277516a2020-02-28 21:57:19 +0900581 aidet: interrupt-controller@5fc20000 {
Masahiro Yamada1a420bd2017-08-29 12:20:52 +0900582 compatible = "socionext,uniphier-ld11-aidet";
Masahiro Yamada2707e832016-06-29 19:39:02 +0900583 reg = <0x5fc20000 0x200>;
Masahiro Yamada1a420bd2017-08-29 12:20:52 +0900584 interrupt-controller;
585 #interrupt-cells = <2>;
Masahiro Yamada2707e832016-06-29 19:39:02 +0900586 };
587
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900588 gic: interrupt-controller@5fe00000 {
589 compatible = "arm,gic-v3";
590 reg = <0x5fe00000 0x10000>, /* GICD */
591 <0x5fe40000 0x80000>; /* GICR */
592 interrupt-controller;
593 #interrupt-cells = <3>;
594 interrupts = <1 9 4>;
595 };
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900596
597 sysctrl@61840000 {
598 compatible = "socionext,uniphier-ld11-sysctrl",
599 "simple-mfd", "syscon";
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900600 reg = <0x61840000 0x10000>;
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900601
602 sys_clk: clock {
603 compatible = "socionext,uniphier-ld11-clock";
604 #clock-cells = <1>;
605 };
606
607 sys_rst: reset {
608 compatible = "socionext,uniphier-ld11-reset";
609 #reset-cells = <1>;
610 };
Masahiro Yamada1a420bd2017-08-29 12:20:52 +0900611
612 watchdog {
613 compatible = "socionext,uniphier-wdt";
614 };
Masahiro Yamada02bf5b82016-09-22 07:42:23 +0900615 };
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900616
Masahiro Yamada0bc56842018-04-16 12:35:33 +0900617 eth: ethernet@65000000 {
618 compatible = "socionext,uniphier-ld11-ave4";
619 status = "disabled";
620 reg = <0x65000000 0x8500>;
621 interrupts = <0 66 4>;
Kunihiko Hayashi0ed9d142018-05-11 18:49:16 +0900622 clock-names = "ether";
Masahiro Yamada0bc56842018-04-16 12:35:33 +0900623 clocks = <&sys_clk 6>;
Kunihiko Hayashi0ed9d142018-05-11 18:49:16 +0900624 reset-names = "ether";
Masahiro Yamada0bc56842018-04-16 12:35:33 +0900625 resets = <&sys_rst 6>;
Kunihiko Hayashif8b6c4e2018-05-11 18:49:17 +0900626 phy-mode = "internal";
Masahiro Yamada0bc56842018-04-16 12:35:33 +0900627 local-mac-address = [00 00 00 00 00 00];
Kunihiko Hayashib57334d2018-05-11 18:49:14 +0900628 socionext,syscon-phy-mode = <&soc_glue 0>;
Masahiro Yamada0bc56842018-04-16 12:35:33 +0900629
630 mdio: mdio {
631 #address-cells = <1>;
632 #size-cells = <0>;
633 };
634 };
635
Masahiro Yamada277516a2020-02-28 21:57:19 +0900636 nand: nand-controller@68000000 {
Masahiro Yamada552acbf2017-04-20 16:54:44 +0900637 compatible = "socionext,uniphier-denali-nand-v5b";
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900638 status = "disabled";
639 reg-names = "nand_data", "denali_reg";
640 reg = <0x68000000 0x20>, <0x68100000 0x1000>;
641 interrupts = <0 65 4>;
642 pinctrl-names = "default";
643 pinctrl-0 = <&pinctrl_nand>;
Masahiro Yamada6bd84d72018-12-19 20:03:21 +0900644 clock-names = "nand", "nand_x", "ecc";
645 clocks = <&sys_clk 2>, <&sys_clk 3>, <&sys_clk 3>;
Masahiro Yamadab226e522020-02-28 21:57:20 +0900646 reset-names = "nand", "reg";
647 resets = <&sys_rst 2>, <&sys_rst 2>;
Masahiro Yamada6e485b22016-12-05 18:31:39 +0900648 };
Masahiro Yamadaf0c34fc2016-03-18 16:41:49 +0900649 };
650};
651
Masahiro Yamada1a420bd2017-08-29 12:20:52 +0900652#include "uniphier-pinctrl.dtsi"
Masahiro Yamada0bc56842018-04-16 12:35:33 +0900653
654&pinctrl_aoutiec1 {
655 drive-strength = <4>; /* default: 4mA */
656
657 ao1arc {
658 pins = "AO1ARC";
659 drive-strength = <8>; /* 8mA */
660 };
661};