2 * Device Tree Source for UniPhier Pro4 SoC
4 * Copyright (C) 2015-2016 Socionext Inc.
5 * Author: Masahiro Yamada <yamada.masahiro@socionext.com>
7 * SPDX-License-Identifier: (GPL-2.0+ OR MIT)
11 compatible = "socionext,uniphier-pro4";
21 compatible = "arm,cortex-a9";
23 enable-method = "psci";
24 next-level-cache = <&l2>;
29 compatible = "arm,cortex-a9";
31 enable-method = "psci";
32 next-level-cache = <&l2>;
37 compatible = "arm,psci-0.2";
43 compatible = "fixed-clock";
45 clock-frequency = <25000000>;
48 arm_timer_clk: arm_timer_clk {
50 compatible = "fixed-clock";
51 clock-frequency = <50000000>;
56 compatible = "simple-bus";
60 interrupt-parent = <&intc>;
62 l2: l2-cache@500c0000 {
63 compatible = "socionext,uniphier-system-cache";
64 reg = <0x500c0000 0x2000>, <0x503c0100 0x4>,
66 interrupts = <0 174 4>, <0 175 4>;
68 cache-size = <(768 * 1024)>;
70 cache-line-size = <128>;
74 serial0: serial@54006800 {
75 compatible = "socionext,uniphier-uart";
77 reg = <0x54006800 0x40>;
78 interrupts = <0 33 4>;
79 pinctrl-names = "default";
80 pinctrl-0 = <&pinctrl_uart0>;
81 clocks = <&peri_clk 0>;
84 serial1: serial@54006900 {
85 compatible = "socionext,uniphier-uart";
87 reg = <0x54006900 0x40>;
88 interrupts = <0 35 4>;
89 pinctrl-names = "default";
90 pinctrl-0 = <&pinctrl_uart1>;
91 clocks = <&peri_clk 1>;
94 serial2: serial@54006a00 {
95 compatible = "socionext,uniphier-uart";
97 reg = <0x54006a00 0x40>;
98 interrupts = <0 37 4>;
99 pinctrl-names = "default";
100 pinctrl-0 = <&pinctrl_uart2>;
101 clocks = <&peri_clk 2>;
104 serial3: serial@54006b00 {
105 compatible = "socionext,uniphier-uart";
107 reg = <0x54006b00 0x40>;
108 interrupts = <0 177 4>;
109 pinctrl-names = "default";
110 pinctrl-0 = <&pinctrl_uart3>;
111 clocks = <&peri_clk 3>;
115 compatible = "socionext,uniphier-fi2c";
117 reg = <0x58780000 0x80>;
118 #address-cells = <1>;
120 interrupts = <0 41 4>;
121 pinctrl-names = "default";
122 pinctrl-0 = <&pinctrl_i2c0>;
123 clocks = <&peri_clk 4>;
124 clock-frequency = <100000>;
128 compatible = "socionext,uniphier-fi2c";
130 reg = <0x58781000 0x80>;
131 #address-cells = <1>;
133 interrupts = <0 42 4>;
134 pinctrl-names = "default";
135 pinctrl-0 = <&pinctrl_i2c1>;
136 clocks = <&peri_clk 5>;
137 clock-frequency = <100000>;
141 compatible = "socionext,uniphier-fi2c";
143 reg = <0x58782000 0x80>;
144 #address-cells = <1>;
146 interrupts = <0 43 4>;
147 pinctrl-names = "default";
148 pinctrl-0 = <&pinctrl_i2c2>;
149 clocks = <&peri_clk 6>;
150 clock-frequency = <100000>;
154 compatible = "socionext,uniphier-fi2c";
156 reg = <0x58783000 0x80>;
157 #address-cells = <1>;
159 interrupts = <0 44 4>;
160 pinctrl-names = "default";
161 pinctrl-0 = <&pinctrl_i2c3>;
162 clocks = <&peri_clk 7>;
163 clock-frequency = <100000>;
166 /* i2c4 does not exist */
168 /* chip-internal connection for DMD */
170 compatible = "socionext,uniphier-fi2c";
171 reg = <0x58785000 0x80>;
172 #address-cells = <1>;
174 interrupts = <0 25 4>;
175 clocks = <&peri_clk 9>;
176 clock-frequency = <400000>;
179 /* chip-internal connection for HDMI */
181 compatible = "socionext,uniphier-fi2c";
182 reg = <0x58786000 0x80>;
183 #address-cells = <1>;
185 interrupts = <0 26 4>;
186 clocks = <&peri_clk 10>;
187 clock-frequency = <400000>;
190 system_bus: system-bus@58c00000 {
191 compatible = "socionext,uniphier-system-bus";
193 reg = <0x58c00000 0x400>;
194 #address-cells = <2>;
196 pinctrl-names = "default";
197 pinctrl-0 = <&pinctrl_system_bus>;
201 compatible = "socionext,uniphier-smpctrl";
202 reg = <0x59801000 0x400>;
206 compatible = "socionext,uniphier-pro4-mioctrl",
207 "simple-mfd", "syscon";
208 reg = <0x59810000 0x800>;
211 compatible = "socionext,uniphier-pro4-mio-clock";
216 compatible = "socionext,uniphier-pro4-mio-reset";
222 compatible = "socionext,uniphier-pro4-perictrl",
223 "simple-mfd", "syscon";
224 reg = <0x59820000 0x200>;
227 compatible = "socionext,uniphier-pro4-peri-clock";
232 compatible = "socionext,uniphier-pro4-peri-reset";
238 compatible = "socionext,uniphier-ehci", "generic-ehci";
240 reg = <0x5a800100 0x100>;
241 interrupts = <0 80 4>;
242 pinctrl-names = "default";
243 pinctrl-0 = <&pinctrl_usb2>;
244 clocks = <&mio_clk 7>, <&mio_clk 8>, <&mio_clk 12>;
245 resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 8>,
250 compatible = "socionext,uniphier-ehci", "generic-ehci";
252 reg = <0x5a810100 0x100>;
253 interrupts = <0 81 4>;
254 pinctrl-names = "default";
255 pinctrl-0 = <&pinctrl_usb3>;
256 clocks = <&mio_clk 7>, <&mio_clk 9>, <&mio_clk 13>;
257 resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 9>,
262 compatible = "socionext,uniphier-pro4-soc-glue",
263 "simple-mfd", "syscon";
264 reg = <0x5f800000 0x2000>;
267 compatible = "socionext,uniphier-pro4-pinctrl";
271 aidet: aidet@5fc20000 {
272 compatible = "socionext,uniphier-pro4-aidet";
273 reg = <0x5fc20000 0x200>;
274 interrupt-controller;
275 #interrupt-cells = <2>;
279 compatible = "arm,cortex-a9-global-timer";
280 reg = <0x60000200 0x20>;
281 interrupts = <1 11 0x304>;
282 clocks = <&arm_timer_clk>;
286 compatible = "arm,cortex-a9-twd-timer";
287 reg = <0x60000600 0x20>;
288 interrupts = <1 13 0x304>;
289 clocks = <&arm_timer_clk>;
292 intc: interrupt-controller@60001000 {
293 compatible = "arm,cortex-a9-gic";
294 reg = <0x60001000 0x1000>,
296 #interrupt-cells = <3>;
297 interrupt-controller;
301 compatible = "socionext,uniphier-pro4-sysctrl",
302 "simple-mfd", "syscon";
303 reg = <0x61840000 0x10000>;
306 compatible = "socionext,uniphier-pro4-clock";
311 compatible = "socionext,uniphier-pro4-reset";
316 nand: nand@68000000 {
317 compatible = "socionext,uniphier-denali-nand-v5a";
319 reg-names = "nand_data", "denali_reg";
320 reg = <0x68000000 0x20>, <0x68100000 0x1000>;
321 interrupts = <0 65 4>;
322 pinctrl-names = "default";
323 pinctrl-0 = <&pinctrl_nand>;
324 clocks = <&sys_clk 2>;
329 #include "uniphier-pinctrl.dtsi"