]> git.sur5r.net Git - u-boot/blob - arch/arm/dts/uniphier-pro4.dtsi
Merge branch 'master' of git://git.denx.de/u-boot-uniphier
[u-boot] / arch / arm / dts / uniphier-pro4.dtsi
1 /*
2  * Device Tree Source for UniPhier Pro4 SoC
3  *
4  * Copyright (C) 2015-2016 Socionext Inc.
5  *   Author: Masahiro Yamada <yamada.masahiro@socionext.com>
6  *
7  * SPDX-License-Identifier:     GPL-2.0+        X11
8  */
9
10 /include/ "uniphier-common32.dtsi"
11
12 / {
13         compatible = "socionext,uniphier-pro4";
14
15         cpus {
16                 #address-cells = <1>;
17                 #size-cells = <0>;
18
19                 cpu@0 {
20                         device_type = "cpu";
21                         compatible = "arm,cortex-a9";
22                         reg = <0>;
23                         enable-method = "psci";
24                         next-level-cache = <&l2>;
25                 };
26
27                 cpu@1 {
28                         device_type = "cpu";
29                         compatible = "arm,cortex-a9";
30                         reg = <1>;
31                         enable-method = "psci";
32                         next-level-cache = <&l2>;
33                 };
34         };
35
36         clocks {
37                 arm_timer_clk: arm_timer_clk {
38                         #clock-cells = <0>;
39                         compatible = "fixed-clock";
40                         clock-frequency = <50000000>;
41                 };
42
43                 uart_clk: uart_clk {
44                         #clock-cells = <0>;
45                         compatible = "fixed-clock";
46                         clock-frequency = <73728000>;
47                 };
48
49                 i2c_clk: i2c_clk {
50                         #clock-cells = <0>;
51                         compatible = "fixed-clock";
52                         clock-frequency = <50000000>;
53                 };
54         };
55 };
56
57 &soc {
58         l2: l2-cache@500c0000 {
59                 compatible = "socionext,uniphier-system-cache";
60                 reg = <0x500c0000 0x2000>, <0x503c0100 0x4>, <0x506c0000 0x400>;
61                 interrupts = <0 174 4>, <0 175 4>;
62                 cache-unified;
63                 cache-size = <(768 * 1024)>;
64                 cache-sets = <256>;
65                 cache-line-size = <128>;
66                 cache-level = <2>;
67         };
68
69         port0x: gpio@55000008 {
70                 compatible = "socionext,uniphier-gpio";
71                 reg = <0x55000008 0x8>;
72                 gpio-controller;
73                 #gpio-cells = <2>;
74         };
75
76         port1x: gpio@55000010 {
77                 compatible = "socionext,uniphier-gpio";
78                 reg = <0x55000010 0x8>;
79                 gpio-controller;
80                 #gpio-cells = <2>;
81         };
82
83         port2x: gpio@55000018 {
84                 compatible = "socionext,uniphier-gpio";
85                 reg = <0x55000018 0x8>;
86                 gpio-controller;
87                 #gpio-cells = <2>;
88         };
89
90         port3x: gpio@55000020 {
91                 compatible = "socionext,uniphier-gpio";
92                 reg = <0x55000020 0x8>;
93                 gpio-controller;
94                 #gpio-cells = <2>;
95         };
96
97         port4: gpio@55000028 {
98                 compatible = "socionext,uniphier-gpio";
99                 reg = <0x55000028 0x8>;
100                 gpio-controller;
101                 #gpio-cells = <2>;
102         };
103
104         port5x: gpio@55000030 {
105                 compatible = "socionext,uniphier-gpio";
106                 reg = <0x55000030 0x8>;
107                 gpio-controller;
108                 #gpio-cells = <2>;
109         };
110
111         port6x: gpio@55000038 {
112                 compatible = "socionext,uniphier-gpio";
113                 reg = <0x55000038 0x8>;
114                 gpio-controller;
115                 #gpio-cells = <2>;
116         };
117
118         port7x: gpio@55000040 {
119                 compatible = "socionext,uniphier-gpio";
120                 reg = <0x55000040 0x8>;
121                 gpio-controller;
122                 #gpio-cells = <2>;
123         };
124
125         port8x: gpio@55000048 {
126                 compatible = "socionext,uniphier-gpio";
127                 reg = <0x55000048 0x8>;
128                 gpio-controller;
129                 #gpio-cells = <2>;
130         };
131
132         port9x: gpio@55000050 {
133                 compatible = "socionext,uniphier-gpio";
134                 reg = <0x55000050 0x8>;
135                 gpio-controller;
136                 #gpio-cells = <2>;
137         };
138
139         port10x: gpio@55000058 {
140                 compatible = "socionext,uniphier-gpio";
141                 reg = <0x55000058 0x8>;
142                 gpio-controller;
143                 #gpio-cells = <2>;
144         };
145
146         port11x: gpio@55000060 {
147                 compatible = "socionext,uniphier-gpio";
148                 reg = <0x55000060 0x8>;
149                 gpio-controller;
150                 #gpio-cells = <2>;
151         };
152
153         port12x: gpio@55000068 {
154                 compatible = "socionext,uniphier-gpio";
155                 reg = <0x55000068 0x8>;
156                 gpio-controller;
157                 #gpio-cells = <2>;
158         };
159
160         port13x: gpio@55000070 {
161                 compatible = "socionext,uniphier-gpio";
162                 reg = <0x55000070 0x8>;
163                 gpio-controller;
164                 #gpio-cells = <2>;
165         };
166
167         port14x: gpio@55000078 {
168                 compatible = "socionext,uniphier-gpio";
169                 reg = <0x55000078 0x8>;
170                 gpio-controller;
171                 #gpio-cells = <2>;
172         };
173
174         port17x: gpio@550000a0 {
175                 compatible = "socionext,uniphier-gpio";
176                 reg = <0x550000a0 0x8>;
177                 gpio-controller;
178                 #gpio-cells = <2>;
179         };
180
181         port18x: gpio@550000a8 {
182                 compatible = "socionext,uniphier-gpio";
183                 reg = <0x550000a8 0x8>;
184                 gpio-controller;
185                 #gpio-cells = <2>;
186         };
187
188         port19x: gpio@550000b0 {
189                 compatible = "socionext,uniphier-gpio";
190                 reg = <0x550000b0 0x8>;
191                 gpio-controller;
192                 #gpio-cells = <2>;
193         };
194
195         port20x: gpio@550000b8 {
196                 compatible = "socionext,uniphier-gpio";
197                 reg = <0x550000b8 0x8>;
198                 gpio-controller;
199                 #gpio-cells = <2>;
200         };
201
202         port21x: gpio@550000c0 {
203                 compatible = "socionext,uniphier-gpio";
204                 reg = <0x550000c0 0x8>;
205                 gpio-controller;
206                 #gpio-cells = <2>;
207         };
208
209         port22x: gpio@550000c8 {
210                 compatible = "socionext,uniphier-gpio";
211                 reg = <0x550000c8 0x8>;
212                 gpio-controller;
213                 #gpio-cells = <2>;
214         };
215
216         port23x: gpio@550000d0 {
217                 compatible = "socionext,uniphier-gpio";
218                 reg = <0x550000d0 0x8>;
219                 gpio-controller;
220                 #gpio-cells = <2>;
221         };
222
223         port24x: gpio@550000d8 {
224                 compatible = "socionext,uniphier-gpio";
225                 reg = <0x550000d8 0x8>;
226                 gpio-controller;
227                 #gpio-cells = <2>;
228         };
229
230         port25x: gpio@550000e0 {
231                 compatible = "socionext,uniphier-gpio";
232                 reg = <0x550000e0 0x8>;
233                 gpio-controller;
234                 #gpio-cells = <2>;
235         };
236
237         port26x: gpio@550000e8 {
238                 compatible = "socionext,uniphier-gpio";
239                 reg = <0x550000e8 0x8>;
240                 gpio-controller;
241                 #gpio-cells = <2>;
242         };
243
244         port27x: gpio@550000f0 {
245                 compatible = "socionext,uniphier-gpio";
246                 reg = <0x550000f0 0x8>;
247                 gpio-controller;
248                 #gpio-cells = <2>;
249         };
250
251         port28x: gpio@550000f8 {
252                 compatible = "socionext,uniphier-gpio";
253                 reg = <0x550000f8 0x8>;
254                 gpio-controller;
255                 #gpio-cells = <2>;
256         };
257
258         port29x: gpio@55000100 {
259                 compatible = "socionext,uniphier-gpio";
260                 reg = <0x55000100 0x8>;
261                 gpio-controller;
262                 #gpio-cells = <2>;
263         };
264
265         port30x: gpio@55000108 {
266                 compatible = "socionext,uniphier-gpio";
267                 reg = <0x55000108 0x8>;
268                 gpio-controller;
269                 #gpio-cells = <2>;
270         };
271
272         i2c0: i2c@58780000 {
273                 compatible = "socionext,uniphier-fi2c";
274                 status = "disabled";
275                 reg = <0x58780000 0x80>;
276                 #address-cells = <1>;
277                 #size-cells = <0>;
278                 interrupts = <0 41 4>;
279                 pinctrl-names = "default";
280                 pinctrl-0 = <&pinctrl_i2c0>;
281                 clocks = <&i2c_clk>;
282                 clock-frequency = <100000>;
283         };
284
285         i2c1: i2c@58781000 {
286                 compatible = "socionext,uniphier-fi2c";
287                 status = "disabled";
288                 reg = <0x58781000 0x80>;
289                 #address-cells = <1>;
290                 #size-cells = <0>;
291                 interrupts = <0 42 4>;
292                 pinctrl-names = "default";
293                 pinctrl-0 = <&pinctrl_i2c1>;
294                 clocks = <&i2c_clk>;
295                 clock-frequency = <100000>;
296         };
297
298         i2c2: i2c@58782000 {
299                 compatible = "socionext,uniphier-fi2c";
300                 status = "disabled";
301                 reg = <0x58782000 0x80>;
302                 #address-cells = <1>;
303                 #size-cells = <0>;
304                 interrupts = <0 43 4>;
305                 pinctrl-names = "default";
306                 pinctrl-0 = <&pinctrl_i2c2>;
307                 clocks = <&i2c_clk>;
308                 clock-frequency = <100000>;
309         };
310
311         i2c3: i2c@58783000 {
312                 compatible = "socionext,uniphier-fi2c";
313                 status = "disabled";
314                 reg = <0x58783000 0x80>;
315                 #address-cells = <1>;
316                 #size-cells = <0>;
317                 interrupts = <0 44 4>;
318                 pinctrl-names = "default";
319                 pinctrl-0 = <&pinctrl_i2c3>;
320                 clocks = <&i2c_clk>;
321                 clock-frequency = <100000>;
322         };
323
324         /* i2c4 does not exist */
325
326         /* chip-internal connection for DMD */
327         i2c5: i2c@58785000 {
328                 compatible = "socionext,uniphier-fi2c";
329                 reg = <0x58785000 0x80>;
330                 #address-cells = <1>;
331                 #size-cells = <0>;
332                 interrupts = <0 25 4>;
333                 clocks = <&i2c_clk>;
334                 clock-frequency = <400000>;
335         };
336
337         /* chip-internal connection for HDMI */
338         i2c6: i2c@58786000 {
339                 compatible = "socionext,uniphier-fi2c";
340                 reg = <0x58786000 0x80>;
341                 #address-cells = <1>;
342                 #size-cells = <0>;
343                 interrupts = <0 26 4>;
344                 clocks = <&i2c_clk>;
345                 clock-frequency = <400000>;
346         };
347
348         sd: sdhc@5a400000 {
349                 compatible = "socionext,uniphier-sdhc";
350                 status = "disabled";
351                 reg = <0x5a400000 0x200>;
352                 interrupts = <0 76 4>;
353                 pinctrl-names = "default", "1.8v";
354                 pinctrl-0 = <&pinctrl_sd>;
355                 pinctrl-1 = <&pinctrl_sd_1v8>;
356                 clocks = <&mio_clk 0>;
357                 reset-names = "host", "bridge";
358                 resets = <&mio_rst 0>, <&mio_rst 3>;
359                 bus-width = <4>;
360         };
361
362         emmc: sdhc@5a500000 {
363                 compatible = "socionext,uniphier-sdhc";
364                 status = "disabled";
365                 reg = <0x5a500000 0x200>;
366                 interrupts = <0 78 4>;
367                 pinctrl-names = "default", "1.8v";
368                 pinctrl-0 = <&pinctrl_emmc>;
369                 pinctrl-1 = <&pinctrl_emmc_1v8>;
370                 clocks = <&mio_clk 1>;
371                 reset-names = "host", "bridge", "hw-reset";
372                 resets = <&mio_rst 1>, <&mio_rst 4>, <&mio_rst 6>;
373                 bus-width = <8>;
374                 non-removable;
375         };
376
377         sd1: sdhc@5a600000 {
378                 compatible = "socionext,uniphier-sdhc";
379                 status = "disabled";
380                 reg = <0x5a600000 0x200>;
381                 interrupts = <0 85 4>;
382                 pinctrl-names = "default", "1.8v";
383                 pinctrl-0 = <&pinctrl_sd1>;
384                 pinctrl-1 = <&pinctrl_sd1_1v8>;
385                 clocks = <&mio_clk 2>;
386                 resets = <&mio_rst 2>, <&mio_rst 5>;
387                 bus-width = <4>;
388         };
389
390         usb2: usb@5a800100 {
391                 compatible = "socionext,uniphier-ehci", "generic-ehci";
392                 status = "disabled";
393                 reg = <0x5a800100 0x100>;
394                 interrupts = <0 80 4>;
395                 pinctrl-names = "default";
396                 pinctrl-0 = <&pinctrl_usb2>;
397                 clocks = <&mio_clk 7>, <&mio_clk 8>, <&mio_clk 12>;
398                 resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 8>,
399                          <&mio_rst 12>;
400         };
401
402         usb3: usb@5a810100 {
403                 compatible = "socionext,uniphier-ehci", "generic-ehci";
404                 status = "disabled";
405                 reg = <0x5a810100 0x100>;
406                 interrupts = <0 81 4>;
407                 pinctrl-names = "default";
408                 pinctrl-0 = <&pinctrl_usb3>;
409                 clocks = <&mio_clk 7>, <&mio_clk 9>, <&mio_clk 13>;
410                 resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 9>,
411                          <&mio_rst 13>;
412         };
413
414         aidet@5fc20000 {
415                 compatible = "simple-mfd", "syscon";
416                 reg = <0x5fc20000 0x200>;
417         };
418
419         usb0: usb@65a00000 {
420                 compatible = "socionext,uniphier-xhci", "generic-xhci";
421                 status = "disabled";
422                 reg = <0x65a00000 0x100>;
423                 interrupts = <0 134 4>;
424                 pinctrl-names = "default";
425                 pinctrl-0 = <&pinctrl_usb0>;
426         };
427
428         usb1: usb@65c00000 {
429                 compatible = "socionext,uniphier-xhci", "generic-xhci";
430                 status = "disabled";
431                 reg = <0x65c00000 0x100>;
432                 interrupts = <0 137 4>;
433                 pinctrl-names = "default";
434                 pinctrl-0 = <&pinctrl_usb1>;
435         };
436 };
437
438 &refclk {
439         clock-frequency = <25000000>;
440 };
441
442 &serial0 {
443         clock-frequency = <73728000>;
444 };
445
446 &serial1 {
447         clock-frequency = <73728000>;
448 };
449
450 &serial2 {
451         clock-frequency = <73728000>;
452 };
453
454 &serial3 {
455         clock-frequency = <73728000>;
456 };
457
458 &mio_clk {
459         compatible = "socionext,uniphier-pro4-mio-clock";
460 };
461
462 &mio_rst {
463         compatible = "socionext,uniphier-pro4-mio-reset";
464 };
465
466 &peri_clk {
467         compatible = "socionext,uniphier-pro4-peri-clock";
468 };
469
470 &peri_rst {
471         compatible = "socionext,uniphier-pro4-peri-reset";
472 };
473
474 &pinctrl {
475         compatible = "socionext,uniphier-pro4-pinctrl";
476 };
477
478 &sys_clk {
479         compatible = "socionext,uniphier-pro4-clock";
480 };
481
482 &sys_rst {
483         compatible = "socionext,uniphier-pro4-reset";
484 };