1cea59bd0SMasahiro Yamada/*
2cea59bd0SMasahiro Yamada * Device Tree Source for UniPhier LD20 SoC
3cea59bd0SMasahiro Yamada *
4cea59bd0SMasahiro Yamada * Copyright (C) 2015-2016 Socionext Inc.
5cea59bd0SMasahiro Yamada *   Author: Masahiro Yamada <yamada.masahiro@socionext.com>
6cea59bd0SMasahiro Yamada *
712301cffSMasahiro Yamada * SPDX-License-Identifier: (GPL-2.0+ OR MIT)
8cea59bd0SMasahiro Yamada */
9cea59bd0SMasahiro Yamada
10b6e5ec20SMasahiro Yamada#include <dt-bindings/gpio/gpio.h>
11dba74980SKunihiko Hayashi#include <dt-bindings/thermal/thermal.h>
12dba74980SKunihiko Hayashi
1379d4be39SMasahiro Yamada/memreserve/ 0x80000000 0x02000000;
14cea59bd0SMasahiro Yamada
15cea59bd0SMasahiro Yamada/ {
16cea59bd0SMasahiro Yamada	compatible = "socionext,uniphier-ld20";
17cea59bd0SMasahiro Yamada	#address-cells = <2>;
18cea59bd0SMasahiro Yamada	#size-cells = <2>;
19cea59bd0SMasahiro Yamada	interrupt-parent = <&gic>;
20cea59bd0SMasahiro Yamada
21cea59bd0SMasahiro Yamada	cpus {
22cea59bd0SMasahiro Yamada		#address-cells = <2>;
23cea59bd0SMasahiro Yamada		#size-cells = <0>;
24cea59bd0SMasahiro Yamada
25cea59bd0SMasahiro Yamada		cpu-map {
26cea59bd0SMasahiro Yamada			cluster0 {
27cea59bd0SMasahiro Yamada				core0 {
28cea59bd0SMasahiro Yamada					cpu = <&cpu0>;
29cea59bd0SMasahiro Yamada				};
30cea59bd0SMasahiro Yamada				core1 {
31cea59bd0SMasahiro Yamada					cpu = <&cpu1>;
32cea59bd0SMasahiro Yamada				};
33cea59bd0SMasahiro Yamada			};
34cea59bd0SMasahiro Yamada
35cea59bd0SMasahiro Yamada			cluster1 {
36cea59bd0SMasahiro Yamada				core0 {
37cea59bd0SMasahiro Yamada					cpu = <&cpu2>;
38cea59bd0SMasahiro Yamada				};
39cea59bd0SMasahiro Yamada				core1 {
40cea59bd0SMasahiro Yamada					cpu = <&cpu3>;
41cea59bd0SMasahiro Yamada				};
42cea59bd0SMasahiro Yamada			};
43cea59bd0SMasahiro Yamada		};
44cea59bd0SMasahiro Yamada
45cea59bd0SMasahiro Yamada		cpu0: cpu@0 {
46cea59bd0SMasahiro Yamada			device_type = "cpu";
47cea59bd0SMasahiro Yamada			compatible = "arm,cortex-a72", "arm,armv8";
48cea59bd0SMasahiro Yamada			reg = <0 0x000>;
49183ad366SMasahiro Yamada			clocks = <&sys_clk 32>;
502f81137fSMasahiro Yamada			enable-method = "psci";
51183ad366SMasahiro Yamada			operating-points-v2 = <&cluster0_opp>;
52dba74980SKunihiko Hayashi			#cooling-cells = <2>;
53cea59bd0SMasahiro Yamada		};
54cea59bd0SMasahiro Yamada
55cea59bd0SMasahiro Yamada		cpu1: cpu@1 {
56cea59bd0SMasahiro Yamada			device_type = "cpu";
57cea59bd0SMasahiro Yamada			compatible = "arm,cortex-a72", "arm,armv8";
58cea59bd0SMasahiro Yamada			reg = <0 0x001>;
59183ad366SMasahiro Yamada			clocks = <&sys_clk 32>;
602f81137fSMasahiro Yamada			enable-method = "psci";
61183ad366SMasahiro Yamada			operating-points-v2 = <&cluster0_opp>;
62cea59bd0SMasahiro Yamada		};
63cea59bd0SMasahiro Yamada
64cea59bd0SMasahiro Yamada		cpu2: cpu@100 {
65cea59bd0SMasahiro Yamada			device_type = "cpu";
66cea59bd0SMasahiro Yamada			compatible = "arm,cortex-a53", "arm,armv8";
67cea59bd0SMasahiro Yamada			reg = <0 0x100>;
68183ad366SMasahiro Yamada			clocks = <&sys_clk 33>;
692f81137fSMasahiro Yamada			enable-method = "psci";
70183ad366SMasahiro Yamada			operating-points-v2 = <&cluster1_opp>;
71dba74980SKunihiko Hayashi			#cooling-cells = <2>;
72cea59bd0SMasahiro Yamada		};
73cea59bd0SMasahiro Yamada
74cea59bd0SMasahiro Yamada		cpu3: cpu@101 {
75cea59bd0SMasahiro Yamada			device_type = "cpu";
76cea59bd0SMasahiro Yamada			compatible = "arm,cortex-a53", "arm,armv8";
77cea59bd0SMasahiro Yamada			reg = <0 0x101>;
78183ad366SMasahiro Yamada			clocks = <&sys_clk 33>;
792f81137fSMasahiro Yamada			enable-method = "psci";
80183ad366SMasahiro Yamada			operating-points-v2 = <&cluster1_opp>;
81183ad366SMasahiro Yamada		};
82183ad366SMasahiro Yamada	};
83183ad366SMasahiro Yamada
849cd7d03fSMasahiro Yamada	cluster0_opp: opp-table0 {
85183ad366SMasahiro Yamada		compatible = "operating-points-v2";
86183ad366SMasahiro Yamada		opp-shared;
87183ad366SMasahiro Yamada
883fc9a121SViresh Kumar		opp-250000000 {
89183ad366SMasahiro Yamada			opp-hz = /bits/ 64 <250000000>;
90183ad366SMasahiro Yamada			clock-latency-ns = <300>;
91183ad366SMasahiro Yamada		};
923fc9a121SViresh Kumar		opp-275000000 {
93183ad366SMasahiro Yamada			opp-hz = /bits/ 64 <275000000>;
94183ad366SMasahiro Yamada			clock-latency-ns = <300>;
95183ad366SMasahiro Yamada		};
963fc9a121SViresh Kumar		opp-500000000 {
97183ad366SMasahiro Yamada			opp-hz = /bits/ 64 <500000000>;
98183ad366SMasahiro Yamada			clock-latency-ns = <300>;
99183ad366SMasahiro Yamada		};
1003fc9a121SViresh Kumar		opp-550000000 {
101183ad366SMasahiro Yamada			opp-hz = /bits/ 64 <550000000>;
102183ad366SMasahiro Yamada			clock-latency-ns = <300>;
103183ad366SMasahiro Yamada		};
1043fc9a121SViresh Kumar		opp-666667000 {
105183ad366SMasahiro Yamada			opp-hz = /bits/ 64 <666667000>;
106183ad366SMasahiro Yamada			clock-latency-ns = <300>;
107183ad366SMasahiro Yamada		};
1083fc9a121SViresh Kumar		opp-733334000 {
109183ad366SMasahiro Yamada			opp-hz = /bits/ 64 <733334000>;
110183ad366SMasahiro Yamada			clock-latency-ns = <300>;
111183ad366SMasahiro Yamada		};
1123fc9a121SViresh Kumar		opp-1000000000 {
113183ad366SMasahiro Yamada			opp-hz = /bits/ 64 <1000000000>;
114183ad366SMasahiro Yamada			clock-latency-ns = <300>;
115183ad366SMasahiro Yamada		};
1163fc9a121SViresh Kumar		opp-1100000000 {
117183ad366SMasahiro Yamada			opp-hz = /bits/ 64 <1100000000>;
118183ad366SMasahiro Yamada			clock-latency-ns = <300>;
119183ad366SMasahiro Yamada		};
120183ad366SMasahiro Yamada	};
121183ad366SMasahiro Yamada
1229cd7d03fSMasahiro Yamada	cluster1_opp: opp-table1 {
123183ad366SMasahiro Yamada		compatible = "operating-points-v2";
124183ad366SMasahiro Yamada		opp-shared;
125183ad366SMasahiro Yamada
1263fc9a121SViresh Kumar		opp-250000000 {
127183ad366SMasahiro Yamada			opp-hz = /bits/ 64 <250000000>;
128183ad366SMasahiro Yamada			clock-latency-ns = <300>;
129183ad366SMasahiro Yamada		};
1303fc9a121SViresh Kumar		opp-275000000 {
131183ad366SMasahiro Yamada			opp-hz = /bits/ 64 <275000000>;
132183ad366SMasahiro Yamada			clock-latency-ns = <300>;
133183ad366SMasahiro Yamada		};
1343fc9a121SViresh Kumar		opp-500000000 {
135183ad366SMasahiro Yamada			opp-hz = /bits/ 64 <500000000>;
136183ad366SMasahiro Yamada			clock-latency-ns = <300>;
137183ad366SMasahiro Yamada		};
1383fc9a121SViresh Kumar		opp-550000000 {
139183ad366SMasahiro Yamada			opp-hz = /bits/ 64 <550000000>;
140183ad366SMasahiro Yamada			clock-latency-ns = <300>;
141183ad366SMasahiro Yamada		};
1423fc9a121SViresh Kumar		opp-666667000 {
143183ad366SMasahiro Yamada			opp-hz = /bits/ 64 <666667000>;
144183ad366SMasahiro Yamada			clock-latency-ns = <300>;
145183ad366SMasahiro Yamada		};
1463fc9a121SViresh Kumar		opp-733334000 {
147183ad366SMasahiro Yamada			opp-hz = /bits/ 64 <733334000>;
148183ad366SMasahiro Yamada			clock-latency-ns = <300>;
149183ad366SMasahiro Yamada		};
1503fc9a121SViresh Kumar		opp-1000000000 {
151183ad366SMasahiro Yamada			opp-hz = /bits/ 64 <1000000000>;
152183ad366SMasahiro Yamada			clock-latency-ns = <300>;
153183ad366SMasahiro Yamada		};
1543fc9a121SViresh Kumar		opp-1100000000 {
155183ad366SMasahiro Yamada			opp-hz = /bits/ 64 <1100000000>;
156183ad366SMasahiro Yamada			clock-latency-ns = <300>;
157cea59bd0SMasahiro Yamada		};
158cea59bd0SMasahiro Yamada	};
159cea59bd0SMasahiro Yamada
1602f81137fSMasahiro Yamada	psci {
1612f81137fSMasahiro Yamada		compatible = "arm,psci-1.0";
1622f81137fSMasahiro Yamada		method = "smc";
1632f81137fSMasahiro Yamada	};
1642f81137fSMasahiro Yamada
165cea59bd0SMasahiro Yamada	clocks {
166cea59bd0SMasahiro Yamada		refclk: ref {
167cea59bd0SMasahiro Yamada			compatible = "fixed-clock";
168cea59bd0SMasahiro Yamada			#clock-cells = <0>;
169cea59bd0SMasahiro Yamada			clock-frequency = <25000000>;
170cea59bd0SMasahiro Yamada		};
171cea59bd0SMasahiro Yamada	};
172cea59bd0SMasahiro Yamada
173b6e5ec20SMasahiro Yamada	emmc_pwrseq: emmc-pwrseq {
174b6e5ec20SMasahiro Yamada		compatible = "mmc-pwrseq-emmc";
175b6e5ec20SMasahiro Yamada		reset-gpios = <&gpio 26 GPIO_ACTIVE_LOW>;
176b6e5ec20SMasahiro Yamada	};
177b6e5ec20SMasahiro Yamada
178cea59bd0SMasahiro Yamada	timer {
179cea59bd0SMasahiro Yamada		compatible = "arm,armv8-timer";
18037179033SArnd Bergmann		interrupts = <1 13 4>,
18137179033SArnd Bergmann			     <1 14 4>,
18237179033SArnd Bergmann			     <1 11 4>,
18337179033SArnd Bergmann			     <1 10 4>;
184cea59bd0SMasahiro Yamada	};
185cea59bd0SMasahiro Yamada
186dba74980SKunihiko Hayashi	thermal-zones {
187dba74980SKunihiko Hayashi		cpu-thermal {
188dba74980SKunihiko Hayashi			polling-delay-passive = <250>;	/* 250ms */
189dba74980SKunihiko Hayashi			polling-delay = <1000>;		/* 1000ms */
190dba74980SKunihiko Hayashi			thermal-sensors = <&pvtctl>;
191dba74980SKunihiko Hayashi
192dba74980SKunihiko Hayashi			trips {
193dba74980SKunihiko Hayashi				cpu_crit: cpu-crit {
194dba74980SKunihiko Hayashi					temperature = <110000>;	/* 110C */
195dba74980SKunihiko Hayashi					hysteresis = <2000>;
196dba74980SKunihiko Hayashi					type = "critical";
197dba74980SKunihiko Hayashi				};
198dba74980SKunihiko Hayashi				cpu_alert: cpu-alert {
199dba74980SKunihiko Hayashi					temperature = <100000>;	/* 100C */
200dba74980SKunihiko Hayashi					hysteresis = <2000>;
201dba74980SKunihiko Hayashi					type = "passive";
202dba74980SKunihiko Hayashi				};
203dba74980SKunihiko Hayashi			};
204dba74980SKunihiko Hayashi
205dba74980SKunihiko Hayashi			cooling-maps {
206dba74980SKunihiko Hayashi				map0 {
207dba74980SKunihiko Hayashi					trip = <&cpu_alert>;
208dba74980SKunihiko Hayashi					cooling-device = <&cpu0
209dba74980SKunihiko Hayashi					    THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
210dba74980SKunihiko Hayashi				};
211dba74980SKunihiko Hayashi				map1 {
212dba74980SKunihiko Hayashi					trip = <&cpu_alert>;
213dba74980SKunihiko Hayashi					cooling-device = <&cpu2
214dba74980SKunihiko Hayashi					    THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
215dba74980SKunihiko Hayashi				};
216dba74980SKunihiko Hayashi			};
217dba74980SKunihiko Hayashi		};
218dba74980SKunihiko Hayashi	};
219dba74980SKunihiko Hayashi
220b5027603SMasahiro Yamada	soc@0 {
221cea59bd0SMasahiro Yamada		compatible = "simple-bus";
222cea59bd0SMasahiro Yamada		#address-cells = <1>;
223cea59bd0SMasahiro Yamada		#size-cells = <1>;
224cea59bd0SMasahiro Yamada		ranges = <0 0 0 0xffffffff>;
225cea59bd0SMasahiro Yamada
226cea59bd0SMasahiro Yamada		serial0: serial@54006800 {
227cea59bd0SMasahiro Yamada			compatible = "socionext,uniphier-uart";
228cea59bd0SMasahiro Yamada			status = "disabled";
229cea59bd0SMasahiro Yamada			reg = <0x54006800 0x40>;
230cea59bd0SMasahiro Yamada			interrupts = <0 33 4>;
231cea59bd0SMasahiro Yamada			pinctrl-names = "default";
232cea59bd0SMasahiro Yamada			pinctrl-0 = <&pinctrl_uart0>;
23342aee275SMasahiro Yamada			clocks = <&peri_clk 0>;
234cea59bd0SMasahiro Yamada		};
235cea59bd0SMasahiro Yamada
236cea59bd0SMasahiro Yamada		serial1: serial@54006900 {
237cea59bd0SMasahiro Yamada			compatible = "socionext,uniphier-uart";
238cea59bd0SMasahiro Yamada			status = "disabled";
239cea59bd0SMasahiro Yamada			reg = <0x54006900 0x40>;
240cea59bd0SMasahiro Yamada			interrupts = <0 35 4>;
241cea59bd0SMasahiro Yamada			pinctrl-names = "default";
242cea59bd0SMasahiro Yamada			pinctrl-0 = <&pinctrl_uart1>;
24342aee275SMasahiro Yamada			clocks = <&peri_clk 1>;
244cea59bd0SMasahiro Yamada		};
245cea59bd0SMasahiro Yamada
246cea59bd0SMasahiro Yamada		serial2: serial@54006a00 {
247cea59bd0SMasahiro Yamada			compatible = "socionext,uniphier-uart";
248cea59bd0SMasahiro Yamada			status = "disabled";
249cea59bd0SMasahiro Yamada			reg = <0x54006a00 0x40>;
250cea59bd0SMasahiro Yamada			interrupts = <0 37 4>;
251cea59bd0SMasahiro Yamada			pinctrl-names = "default";
252cea59bd0SMasahiro Yamada			pinctrl-0 = <&pinctrl_uart2>;
25342aee275SMasahiro Yamada			clocks = <&peri_clk 2>;
254cea59bd0SMasahiro Yamada		};
255cea59bd0SMasahiro Yamada
256cea59bd0SMasahiro Yamada		serial3: serial@54006b00 {
257cea59bd0SMasahiro Yamada			compatible = "socionext,uniphier-uart";
258cea59bd0SMasahiro Yamada			status = "disabled";
259cea59bd0SMasahiro Yamada			reg = <0x54006b00 0x40>;
260cea59bd0SMasahiro Yamada			interrupts = <0 177 4>;
261cea59bd0SMasahiro Yamada			pinctrl-names = "default";
262cea59bd0SMasahiro Yamada			pinctrl-0 = <&pinctrl_uart3>;
26342aee275SMasahiro Yamada			clocks = <&peri_clk 3>;
264cea59bd0SMasahiro Yamada		};
265cea59bd0SMasahiro Yamada
266277b51e7SMasahiro Yamada		gpio: gpio@55000000 {
267277b51e7SMasahiro Yamada			compatible = "socionext,uniphier-gpio";
268277b51e7SMasahiro Yamada			reg = <0x55000000 0x200>;
269277b51e7SMasahiro Yamada			interrupt-parent = <&aidet>;
270277b51e7SMasahiro Yamada			interrupt-controller;
271277b51e7SMasahiro Yamada			#interrupt-cells = <2>;
272277b51e7SMasahiro Yamada			gpio-controller;
273277b51e7SMasahiro Yamada			#gpio-cells = <2>;
274277b51e7SMasahiro Yamada			gpio-ranges = <&pinctrl 0 0 0>,
275277b51e7SMasahiro Yamada				      <&pinctrl 96 0 0>,
276277b51e7SMasahiro Yamada				      <&pinctrl 160 0 0>;
277277b51e7SMasahiro Yamada			gpio-ranges-group-names = "gpio_range0",
278277b51e7SMasahiro Yamada						  "gpio_range1",
279277b51e7SMasahiro Yamada						  "gpio_range2";
280277b51e7SMasahiro Yamada			ngpios = <205>;
281277b51e7SMasahiro Yamada			socionext,interrupt-ranges = <0 48 16>, <16 154 5>,
282277b51e7SMasahiro Yamada						     <21 217 3>;
283277b51e7SMasahiro Yamada		};
284277b51e7SMasahiro Yamada
285178b3568SKatsuhiro Suzuki		adamv@57920000 {
286178b3568SKatsuhiro Suzuki			compatible = "socionext,uniphier-ld20-adamv",
287178b3568SKatsuhiro Suzuki				     "simple-mfd", "syscon";
288178b3568SKatsuhiro Suzuki			reg = <0x57920000 0x1000>;
289178b3568SKatsuhiro Suzuki
290178b3568SKatsuhiro Suzuki			adamv_rst: reset {
291178b3568SKatsuhiro Suzuki				compatible = "socionext,uniphier-ld20-adamv-reset";
292178b3568SKatsuhiro Suzuki				#reset-cells = <1>;
293178b3568SKatsuhiro Suzuki			};
294178b3568SKatsuhiro Suzuki		};
295178b3568SKatsuhiro Suzuki
296cea59bd0SMasahiro Yamada		i2c0: i2c@58780000 {
297cea59bd0SMasahiro Yamada			compatible = "socionext,uniphier-fi2c";
298cea59bd0SMasahiro Yamada			status = "disabled";
299cea59bd0SMasahiro Yamada			reg = <0x58780000 0x80>;
300cea59bd0SMasahiro Yamada			#address-cells = <1>;
301cea59bd0SMasahiro Yamada			#size-cells = <0>;
302cea59bd0SMasahiro Yamada			interrupts = <0 41 4>;
303cea59bd0SMasahiro Yamada			pinctrl-names = "default";
304cea59bd0SMasahiro Yamada			pinctrl-0 = <&pinctrl_i2c0>;
30542aee275SMasahiro Yamada			clocks = <&peri_clk 4>;
306cea59bd0SMasahiro Yamada			clock-frequency = <100000>;
307cea59bd0SMasahiro Yamada		};
308cea59bd0SMasahiro Yamada
309cea59bd0SMasahiro Yamada		i2c1: i2c@58781000 {
310cea59bd0SMasahiro Yamada			compatible = "socionext,uniphier-fi2c";
311cea59bd0SMasahiro Yamada			status = "disabled";
312cea59bd0SMasahiro Yamada			reg = <0x58781000 0x80>;
313cea59bd0SMasahiro Yamada			#address-cells = <1>;
314cea59bd0SMasahiro Yamada			#size-cells = <0>;
315cea59bd0SMasahiro Yamada			interrupts = <0 42 4>;
316cea59bd0SMasahiro Yamada			pinctrl-names = "default";
317cea59bd0SMasahiro Yamada			pinctrl-0 = <&pinctrl_i2c1>;
31842aee275SMasahiro Yamada			clocks = <&peri_clk 5>;
319cea59bd0SMasahiro Yamada			clock-frequency = <100000>;
320cea59bd0SMasahiro Yamada		};
321cea59bd0SMasahiro Yamada
322cea59bd0SMasahiro Yamada		i2c2: i2c@58782000 {
323cea59bd0SMasahiro Yamada			compatible = "socionext,uniphier-fi2c";
324cea59bd0SMasahiro Yamada			reg = <0x58782000 0x80>;
325cea59bd0SMasahiro Yamada			#address-cells = <1>;
326cea59bd0SMasahiro Yamada			#size-cells = <0>;
327cea59bd0SMasahiro Yamada			interrupts = <0 43 4>;
32842aee275SMasahiro Yamada			clocks = <&peri_clk 6>;
329cea59bd0SMasahiro Yamada			clock-frequency = <400000>;
330cea59bd0SMasahiro Yamada		};
331cea59bd0SMasahiro Yamada
332cea59bd0SMasahiro Yamada		i2c3: i2c@58783000 {
333cea59bd0SMasahiro Yamada			compatible = "socionext,uniphier-fi2c";
334cea59bd0SMasahiro Yamada			status = "disabled";
335cea59bd0SMasahiro Yamada			reg = <0x58783000 0x80>;
336cea59bd0SMasahiro Yamada			#address-cells = <1>;
337cea59bd0SMasahiro Yamada			#size-cells = <0>;
338cea59bd0SMasahiro Yamada			interrupts = <0 44 4>;
339cea59bd0SMasahiro Yamada			pinctrl-names = "default";
340cea59bd0SMasahiro Yamada			pinctrl-0 = <&pinctrl_i2c3>;
34142aee275SMasahiro Yamada			clocks = <&peri_clk 7>;
342cea59bd0SMasahiro Yamada			clock-frequency = <100000>;
343cea59bd0SMasahiro Yamada		};
344cea59bd0SMasahiro Yamada
345cea59bd0SMasahiro Yamada		i2c4: i2c@58784000 {
346cea59bd0SMasahiro Yamada			compatible = "socionext,uniphier-fi2c";
347cea59bd0SMasahiro Yamada			status = "disabled";
348cea59bd0SMasahiro Yamada			reg = <0x58784000 0x80>;
349cea59bd0SMasahiro Yamada			#address-cells = <1>;
350cea59bd0SMasahiro Yamada			#size-cells = <0>;
351cea59bd0SMasahiro Yamada			interrupts = <0 45 4>;
352cea59bd0SMasahiro Yamada			pinctrl-names = "default";
353cea59bd0SMasahiro Yamada			pinctrl-0 = <&pinctrl_i2c4>;
35442aee275SMasahiro Yamada			clocks = <&peri_clk 8>;
355cea59bd0SMasahiro Yamada			clock-frequency = <100000>;
356cea59bd0SMasahiro Yamada		};
357cea59bd0SMasahiro Yamada
358cea59bd0SMasahiro Yamada		i2c5: i2c@58785000 {
359cea59bd0SMasahiro Yamada			compatible = "socionext,uniphier-fi2c";
360cea59bd0SMasahiro Yamada			reg = <0x58785000 0x80>;
361cea59bd0SMasahiro Yamada			#address-cells = <1>;
362cea59bd0SMasahiro Yamada			#size-cells = <0>;
363cea59bd0SMasahiro Yamada			interrupts = <0 25 4>;
36442aee275SMasahiro Yamada			clocks = <&peri_clk 9>;
365cea59bd0SMasahiro Yamada			clock-frequency = <400000>;
366cea59bd0SMasahiro Yamada		};
367cea59bd0SMasahiro Yamada
368cea59bd0SMasahiro Yamada		system_bus: system-bus@58c00000 {
369cea59bd0SMasahiro Yamada			compatible = "socionext,uniphier-system-bus";
370cea59bd0SMasahiro Yamada			status = "disabled";
371cea59bd0SMasahiro Yamada			reg = <0x58c00000 0x400>;
372cea59bd0SMasahiro Yamada			#address-cells = <2>;
373cea59bd0SMasahiro Yamada			#size-cells = <1>;
3745d9a83c9SMasahiro Yamada			pinctrl-names = "default";
3755d9a83c9SMasahiro Yamada			pinctrl-0 = <&pinctrl_system_bus>;
376cea59bd0SMasahiro Yamada		};
377cea59bd0SMasahiro Yamada
378b10ee7e3SMasahiro Yamada		smpctrl@59801000 {
379cea59bd0SMasahiro Yamada			compatible = "socionext,uniphier-smpctrl";
380cea59bd0SMasahiro Yamada			reg = <0x59801000 0x400>;
381cea59bd0SMasahiro Yamada		};
382cea59bd0SMasahiro Yamada
3838e68c65dSMasahiro Yamada		sdctrl@59810000 {
3848e68c65dSMasahiro Yamada			compatible = "socionext,uniphier-ld20-sdctrl",
38542aee275SMasahiro Yamada				     "simple-mfd", "syscon";
386555861fbSMasahiro Yamada			reg = <0x59810000 0x400>;
38742aee275SMasahiro Yamada
3888e68c65dSMasahiro Yamada			sd_clk: clock {
3898e68c65dSMasahiro Yamada				compatible = "socionext,uniphier-ld20-sd-clock";
39042aee275SMasahiro Yamada				#clock-cells = <1>;
39142aee275SMasahiro Yamada			};
39242aee275SMasahiro Yamada
3938e68c65dSMasahiro Yamada			sd_rst: reset {
3948e68c65dSMasahiro Yamada				compatible = "socionext,uniphier-ld20-sd-reset";
39542aee275SMasahiro Yamada				#reset-cells = <1>;
39642aee275SMasahiro Yamada			};
39742aee275SMasahiro Yamada		};
39842aee275SMasahiro Yamada
39942aee275SMasahiro Yamada		perictrl@59820000 {
400fb28cef0SMasahiro Yamada			compatible = "socionext,uniphier-ld20-perictrl",
40142aee275SMasahiro Yamada				     "simple-mfd", "syscon";
40242aee275SMasahiro Yamada			reg = <0x59820000 0x200>;
40342aee275SMasahiro Yamada
40442aee275SMasahiro Yamada			peri_clk: clock {
40542aee275SMasahiro Yamada				compatible = "socionext,uniphier-ld20-peri-clock";
40642aee275SMasahiro Yamada				#clock-cells = <1>;
40742aee275SMasahiro Yamada			};
40842aee275SMasahiro Yamada
40942aee275SMasahiro Yamada			peri_rst: reset {
41042aee275SMasahiro Yamada				compatible = "socionext,uniphier-ld20-peri-reset";
41142aee275SMasahiro Yamada				#reset-cells = <1>;
41242aee275SMasahiro Yamada			};
41342aee275SMasahiro Yamada		};
41442aee275SMasahiro Yamada
4153a93cc26SMasahiro Yamada		emmc: sdhc@5a000000 {
4163a93cc26SMasahiro Yamada			compatible = "socionext,uniphier-sd4hc", "cdns,sd4hc";
4173a93cc26SMasahiro Yamada			reg = <0x5a000000 0x400>;
4183a93cc26SMasahiro Yamada			interrupts = <0 78 4>;
4199c0a9700SMasahiro Yamada			pinctrl-names = "default";
4209c0a9700SMasahiro Yamada			pinctrl-0 = <&pinctrl_emmc>;
4213a93cc26SMasahiro Yamada			clocks = <&sys_clk 4>;
4223a93cc26SMasahiro Yamada			bus-width = <8>;
4233a93cc26SMasahiro Yamada			mmc-ddr-1_8v;
4243a93cc26SMasahiro Yamada			mmc-hs200-1_8v;
425b6e5ec20SMasahiro Yamada			mmc-pwrseq = <&emmc_pwrseq>;
426ba6f7011SMasahiro Yamada			cdns,phy-input-delay-legacy = <4>;
427ba6f7011SMasahiro Yamada			cdns,phy-input-delay-mmc-highspeed = <2>;
428ba6f7011SMasahiro Yamada			cdns,phy-input-delay-mmc-ddr = <3>;
429e345ededSMasahiro Yamada			cdns,phy-dll-delay-sdclk = <21>;
430e345ededSMasahiro Yamada			cdns,phy-dll-delay-sdclk-hsmmc = <21>;
4313a93cc26SMasahiro Yamada		};
4323a93cc26SMasahiro Yamada
433cea59bd0SMasahiro Yamada		soc-glue@5f800000 {
434fb28cef0SMasahiro Yamada			compatible = "socionext,uniphier-ld20-soc-glue",
4359d4f5505SMasahiro Yamada				     "simple-mfd", "syscon";
436cea59bd0SMasahiro Yamada			reg = <0x5f800000 0x2000>;
437cea59bd0SMasahiro Yamada
438cea59bd0SMasahiro Yamada			pinctrl: pinctrl {
439cea59bd0SMasahiro Yamada				compatible = "socionext,uniphier-ld20-pinctrl";
440cea59bd0SMasahiro Yamada			};
441cea59bd0SMasahiro Yamada		};
442cea59bd0SMasahiro Yamada
443f05851e1SKeiji Hayashibara		soc-glue@5f900000 {
444f05851e1SKeiji Hayashibara			compatible = "socionext,uniphier-ld20-soc-glue-debug",
445f05851e1SKeiji Hayashibara				     "simple-mfd";
446f05851e1SKeiji Hayashibara			#address-cells = <1>;
447f05851e1SKeiji Hayashibara			#size-cells = <1>;
448f05851e1SKeiji Hayashibara			ranges = <0 0x5f900000 0x2000>;
449f05851e1SKeiji Hayashibara
450f05851e1SKeiji Hayashibara			efuse@100 {
451f05851e1SKeiji Hayashibara				compatible = "socionext,uniphier-efuse";
452f05851e1SKeiji Hayashibara				reg = <0x100 0x28>;
453f05851e1SKeiji Hayashibara			};
454f05851e1SKeiji Hayashibara
455f05851e1SKeiji Hayashibara			efuse@200 {
456f05851e1SKeiji Hayashibara				compatible = "socionext,uniphier-efuse";
457f05851e1SKeiji Hayashibara				reg = <0x200 0x68>;
458f05851e1SKeiji Hayashibara			};
459f05851e1SKeiji Hayashibara		};
460f05851e1SKeiji Hayashibara
4613dfc6e98SMasahiro Yamada		aidet: aidet@5fc20000 {
4623dfc6e98SMasahiro Yamada			compatible = "socionext,uniphier-ld20-aidet";
4633dfc6e98SMasahiro Yamada			reg = <0x5fc20000 0x200>;
4643dfc6e98SMasahiro Yamada			interrupt-controller;
4653dfc6e98SMasahiro Yamada			#interrupt-cells = <2>;
4663dfc6e98SMasahiro Yamada		};
4673dfc6e98SMasahiro Yamada
468cea59bd0SMasahiro Yamada		gic: interrupt-controller@5fe00000 {
469cea59bd0SMasahiro Yamada			compatible = "arm,gic-v3";
470cea59bd0SMasahiro Yamada			reg = <0x5fe00000 0x10000>,	/* GICD */
471cea59bd0SMasahiro Yamada			      <0x5fe80000 0x80000>;	/* GICR */
472cea59bd0SMasahiro Yamada			interrupt-controller;
473cea59bd0SMasahiro Yamada			#interrupt-cells = <3>;
474cea59bd0SMasahiro Yamada			interrupts = <1 9 4>;
475cea59bd0SMasahiro Yamada		};
47642aee275SMasahiro Yamada
47742aee275SMasahiro Yamada		sysctrl@61840000 {
478fb28cef0SMasahiro Yamada			compatible = "socionext,uniphier-ld20-sysctrl",
47942aee275SMasahiro Yamada				     "simple-mfd", "syscon";
4801ef64af8SMasahiro Yamada			reg = <0x61840000 0x10000>;
48142aee275SMasahiro Yamada
48242aee275SMasahiro Yamada			sys_clk: clock {
48342aee275SMasahiro Yamada				compatible = "socionext,uniphier-ld20-clock";
48442aee275SMasahiro Yamada				#clock-cells = <1>;
48542aee275SMasahiro Yamada			};
48642aee275SMasahiro Yamada
48742aee275SMasahiro Yamada			sys_rst: reset {
48842aee275SMasahiro Yamada				compatible = "socionext,uniphier-ld20-reset";
48942aee275SMasahiro Yamada				#reset-cells = <1>;
49042aee275SMasahiro Yamada			};
4914c4c960aSKeiji Hayashibara
4924c4c960aSKeiji Hayashibara			watchdog {
4934c4c960aSKeiji Hayashibara				compatible = "socionext,uniphier-wdt";
4944c4c960aSKeiji Hayashibara			};
495dba74980SKunihiko Hayashi
496dba74980SKunihiko Hayashi			pvtctl: pvtctl {
497dba74980SKunihiko Hayashi				compatible = "socionext,uniphier-ld20-thermal";
498dba74980SKunihiko Hayashi				interrupts = <0 3 4>;
499dba74980SKunihiko Hayashi				#thermal-sensor-cells = <0>;
500dba74980SKunihiko Hayashi				socionext,tmod-calibration = <0x0f22 0x68ee>;
501dba74980SKunihiko Hayashi			};
50242aee275SMasahiro Yamada		};
503e5aefb38SMasahiro Yamada
504e5aefb38SMasahiro Yamada		nand: nand@68000000 {
505e5aefb38SMasahiro Yamada			compatible = "socionext,uniphier-denali-nand-v5b";
506e5aefb38SMasahiro Yamada			status = "disabled";
507e5aefb38SMasahiro Yamada			reg-names = "nand_data", "denali_reg";
508e5aefb38SMasahiro Yamada			reg = <0x68000000 0x20>, <0x68100000 0x1000>;
509e5aefb38SMasahiro Yamada			interrupts = <0 65 4>;
510e5aefb38SMasahiro Yamada			pinctrl-names = "default";
511e5aefb38SMasahiro Yamada			pinctrl-0 = <&pinctrl_nand>;
512e5aefb38SMasahiro Yamada			clocks = <&sys_clk 2>;
513e5aefb38SMasahiro Yamada		};
514cea59bd0SMasahiro Yamada	};
515cea59bd0SMasahiro Yamada};
516cea59bd0SMasahiro Yamada
5175740ea4eSMasahiro Yamada#include "uniphier-pinctrl.dtsi"
518