blob: 137f48464f8b4ff4def1696252a814a65b2a5f20 [file] [log] [blame]
Tarek Dakhran107e6aa2014-05-27 06:54:13 +09001/*
2 * SAMSUNG EXYNOS5410 SoC device tree source
3 *
4 * Copyright (c) 2013 Samsung Electronics Co., Ltd.
5 * http://www.samsung.com
6 *
7 * SAMSUNG EXYNOS5410 SoC device nodes are listed in this file.
8 * EXYNOS5410 based board files can include this file and provide
9 * values for board specfic bindings.
10 *
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License version 2 as
13 * published by the Free Software Foundation.
14 */
15
Krzysztof Kozlowskic9cf9962016-05-08 18:41:57 +020016#include "exynos54xx.dtsi"
Javier Martinez Canillas1462b132016-02-16 12:25:48 -030017#include "exynos-syscon-restart.dtsi"
Tarek Dakhran107e6aa2014-05-27 06:54:13 +090018#include <dt-bindings/clock/exynos5410.h>
Krzysztof Kozlowskie5995e62016-05-31 20:39:02 +020019#include <dt-bindings/interrupt-controller/arm-gic.h>
Tarek Dakhran107e6aa2014-05-27 06:54:13 +090020
21/ {
22 compatible = "samsung,exynos5410", "samsung,exynos5";
23 interrupt-parent = <&gic>;
24
Tomasz Figa1e64f482014-06-26 13:24:35 +020025 aliases {
Hakjoo Kim1eca8252015-03-15 23:00:33 +010026 pinctrl0 = &pinctrl_0;
27 pinctrl1 = &pinctrl_1;
28 pinctrl2 = &pinctrl_2;
29 pinctrl3 = &pinctrl_3;
Tomasz Figa1e64f482014-06-26 13:24:35 +020030 };
31
Tarek Dakhran107e6aa2014-05-27 06:54:13 +090032 cpus {
33 #address-cells = <1>;
34 #size-cells = <0>;
35
Krzysztof Kozlowskic37ccce2016-05-03 13:56:51 +020036 cpu0: cpu@0 {
Tarek Dakhran107e6aa2014-05-27 06:54:13 +090037 device_type = "cpu";
38 compatible = "arm,cortex-a15";
39 reg = <0x0>;
Andreas Faerber22298d62014-07-08 08:17:14 +090040 clock-frequency = <1600000000>;
Tarek Dakhran107e6aa2014-05-27 06:54:13 +090041 };
42
Krzysztof Kozlowskic37ccce2016-05-03 13:56:51 +020043 cpu1: cpu@1 {
Tarek Dakhran107e6aa2014-05-27 06:54:13 +090044 device_type = "cpu";
45 compatible = "arm,cortex-a15";
46 reg = <0x1>;
Andreas Faerber22298d62014-07-08 08:17:14 +090047 clock-frequency = <1600000000>;
Tarek Dakhran107e6aa2014-05-27 06:54:13 +090048 };
49
Krzysztof Kozlowskic37ccce2016-05-03 13:56:51 +020050 cpu2: cpu@2 {
Tarek Dakhran107e6aa2014-05-27 06:54:13 +090051 device_type = "cpu";
52 compatible = "arm,cortex-a15";
53 reg = <0x2>;
Andreas Faerber22298d62014-07-08 08:17:14 +090054 clock-frequency = <1600000000>;
Tarek Dakhran107e6aa2014-05-27 06:54:13 +090055 };
56
Krzysztof Kozlowskic37ccce2016-05-03 13:56:51 +020057 cpu3: cpu@3 {
Tarek Dakhran107e6aa2014-05-27 06:54:13 +090058 device_type = "cpu";
59 compatible = "arm,cortex-a15";
60 reg = <0x3>;
Andreas Faerber22298d62014-07-08 08:17:14 +090061 clock-frequency = <1600000000>;
Tarek Dakhran107e6aa2014-05-27 06:54:13 +090062 };
63 };
64
65 soc: soc {
66 compatible = "simple-bus";
67 #address-cells = <1>;
68 #size-cells = <1>;
69 ranges;
70
Andreas Faerber0a8f5942014-07-29 06:09:56 +090071 pmu_system_controller: system-controller@10040000 {
72 compatible = "samsung,exynos5410-pmu", "syscon";
73 reg = <0x10040000 0x5000>;
Krzysztof Kozlowski2cbc0de2016-05-16 10:26:48 +020074 clock-names = "clkout16";
75 clocks = <&fin_pll>;
76 #clock-cells = <1>;
Andreas Faerber0a8f5942014-07-29 06:09:56 +090077 };
78
Tarek Dakhran107e6aa2014-05-27 06:54:13 +090079 clock: clock-controller@10010000 {
80 compatible = "samsung,exynos5410-clock";
81 reg = <0x10010000 0x30000>;
82 #clock-cells = <1>;
83 };
84
Krzysztof Kozlowskic1a3b062016-05-31 20:39:03 +020085 tmu_cpu0: tmu@10060000 {
86 compatible = "samsung,exynos5420-tmu";
87 reg = <0x10060000 0x100>;
88 interrupts = <GIC_SPI 65 0>;
89 clocks = <&clock CLK_TMU>;
90 clock-names = "tmu_apbif";
91 #include "exynos4412-tmu-sensor-conf.dtsi"
92 };
93
94 tmu_cpu1: tmu@10064000 {
95 compatible = "samsung,exynos5420-tmu";
96 reg = <0x10064000 0x100>;
97 interrupts = <GIC_SPI 183 0>;
98 clocks = <&clock CLK_TMU>;
99 clock-names = "tmu_apbif";
100 #include "exynos4412-tmu-sensor-conf.dtsi"
101 };
102
103 tmu_cpu2: tmu@10068000 {
104 compatible = "samsung,exynos5420-tmu";
105 reg = <0x10068000 0x100>;
106 interrupts = <GIC_SPI 184 0>;
107 clocks = <&clock CLK_TMU>;
108 clock-names = "tmu_apbif";
109 #include "exynos4412-tmu-sensor-conf.dtsi"
110 };
111
112 tmu_cpu3: tmu@1006c000 {
113 compatible = "samsung,exynos5420-tmu";
114 reg = <0x1006c000 0x100>;
115 interrupts = <GIC_SPI 185 0>;
116 clocks = <&clock CLK_TMU>;
117 clock-names = "tmu_apbif";
118 #include "exynos4412-tmu-sensor-conf.dtsi"
119 };
120
Tarek Dakhran107e6aa2014-05-27 06:54:13 +0900121 mmc_0: mmc@12200000 {
122 compatible = "samsung,exynos5250-dw-mshc";
123 reg = <0x12200000 0x1000>;
124 interrupts = <0 75 0>;
125 #address-cells = <1>;
126 #size-cells = <0>;
127 clocks = <&clock CLK_MMC0>, <&clock CLK_SCLK_MMC0>;
128 clock-names = "biu", "ciu";
129 fifo-depth = <0x80>;
130 status = "disabled";
131 };
132
133 mmc_1: mmc@12210000 {
134 compatible = "samsung,exynos5250-dw-mshc";
135 reg = <0x12210000 0x1000>;
136 interrupts = <0 76 0>;
137 #address-cells = <1>;
138 #size-cells = <0>;
139 clocks = <&clock CLK_MMC1>, <&clock CLK_SCLK_MMC1>;
140 clock-names = "biu", "ciu";
141 fifo-depth = <0x80>;
142 status = "disabled";
143 };
144
145 mmc_2: mmc@12220000 {
146 compatible = "samsung,exynos5250-dw-mshc";
147 reg = <0x12220000 0x1000>;
148 interrupts = <0 77 0>;
149 #address-cells = <1>;
150 #size-cells = <0>;
151 clocks = <&clock CLK_MMC2>, <&clock CLK_SCLK_MMC2>;
152 clock-names = "biu", "ciu";
153 fifo-depth = <0x80>;
154 status = "disabled";
155 };
156
Hakjoo Kim1eca8252015-03-15 23:00:33 +0100157 pinctrl_0: pinctrl@13400000 {
158 compatible = "samsung,exynos5410-pinctrl";
159 reg = <0x13400000 0x1000>;
160 interrupts = <0 45 0>;
161
162 wakeup-interrupt-controller {
163 compatible = "samsung,exynos4210-wakeup-eint";
164 interrupt-parent = <&gic>;
165 interrupts = <0 32 0>;
166 };
167 };
168
169 pinctrl_1: pinctrl@14000000 {
170 compatible = "samsung,exynos5410-pinctrl";
171 reg = <0x14000000 0x1000>;
172 interrupts = <0 46 0>;
173 };
174
175 pinctrl_2: pinctrl@10d10000 {
176 compatible = "samsung,exynos5410-pinctrl";
177 reg = <0x10d10000 0x1000>;
178 interrupts = <0 50 0>;
179 };
180
181 pinctrl_3: pinctrl@03860000 {
182 compatible = "samsung,exynos5410-pinctrl";
183 reg = <0x03860000 0x1000>;
184 interrupts = <0 47 0>;
185 };
Tarek Dakhran107e6aa2014-05-27 06:54:13 +0900186 };
Krzysztof Kozlowskic1a3b062016-05-31 20:39:03 +0200187
188 thermal-zones {
189 cpu0_thermal: cpu0-thermal {
190 thermal-sensors = <&tmu_cpu0>;
191 #include "exynos5420-trip-points.dtsi"
192 };
193 cpu1_thermal: cpu1-thermal {
194 thermal-sensors = <&tmu_cpu1>;
195 #include "exynos5420-trip-points.dtsi"
196 };
197 cpu2_thermal: cpu2-thermal {
198 thermal-sensors = <&tmu_cpu2>;
199 #include "exynos5420-trip-points.dtsi"
200 };
201 cpu3_thermal: cpu3-thermal {
202 thermal-sensors = <&tmu_cpu3>;
203 #include "exynos5420-trip-points.dtsi"
204 };
205 };
Tarek Dakhran107e6aa2014-05-27 06:54:13 +0900206};
Hakjoo Kim1eca8252015-03-15 23:00:33 +0100207
Krzysztof Kozlowskie1e146b12016-05-10 19:30:26 +0200208&i2c_0 {
209 clocks = <&clock CLK_I2C0>;
210 clock-names = "i2c";
211 pinctrl-names = "default";
212 pinctrl-0 = <&i2c0_bus>;
213};
214
215&i2c_1 {
216 clocks = <&clock CLK_I2C1>;
217 clock-names = "i2c";
218 pinctrl-names = "default";
219 pinctrl-0 = <&i2c1_bus>;
220};
221
222&i2c_2 {
223 clocks = <&clock CLK_I2C2>;
224 clock-names = "i2c";
225 pinctrl-names = "default";
226 pinctrl-0 = <&i2c2_bus>;
227};
228
229&i2c_3 {
230 clocks = <&clock CLK_I2C3>;
231 clock-names = "i2c";
232 pinctrl-names = "default";
233 pinctrl-0 = <&i2c3_bus>;
234};
235
236&hsi2c_4 {
237 clocks = <&clock CLK_USI0>;
238 clock-names = "hsi2c";
239 pinctrl-names = "default";
240 pinctrl-0 = <&i2c4_hs_bus>;
241};
242
243&hsi2c_5 {
244 clocks = <&clock CLK_USI1>;
245 clock-names = "hsi2c";
246 pinctrl-names = "default";
247 pinctrl-0 = <&i2c5_hs_bus>;
248};
249
250&hsi2c_6 {
251 clocks = <&clock CLK_USI2>;
252 clock-names = "hsi2c";
253 pinctrl-names = "default";
254 pinctrl-0 = <&i2c6_hs_bus>;
255};
256
257&hsi2c_7 {
258 clocks = <&clock CLK_USI3>;
259 clock-names = "hsi2c";
260 pinctrl-names = "default";
261 pinctrl-0 = <&i2c7_hs_bus>;
262};
263
Krzysztof Kozlowskic9cf9962016-05-08 18:41:57 +0200264&mct {
265 clocks = <&fin_pll>, <&clock CLK_MCT>;
266 clock-names = "fin_pll", "mct";
267};
268
Krzysztof Kozlowski88ad58b2016-05-03 14:53:22 +0200269&pwm {
270 clocks = <&clock CLK_PWM>;
271 clock-names = "timers";
272};
273
Krzysztof Kozlowskie1e146b12016-05-10 19:30:26 +0200274&rtc {
275 clocks = <&clock CLK_RTC>;
276 clock-names = "rtc";
277 interrupt-parent = <&pmu_system_controller>;
278 status = "disabled";
279};
280
Krzysztof Kozlowski88ad58b2016-05-03 14:53:22 +0200281&serial_0 {
282 clocks = <&clock CLK_UART0>, <&clock CLK_SCLK_UART0>;
283 clock-names = "uart", "clk_uart_baud0";
284};
285
286&serial_1 {
287 clocks = <&clock CLK_UART1>, <&clock CLK_SCLK_UART1>;
288 clock-names = "uart", "clk_uart_baud0";
289};
290
291&serial_2 {
292 clocks = <&clock CLK_UART2>, <&clock CLK_SCLK_UART2>;
293 clock-names = "uart", "clk_uart_baud0";
294};
295
296&serial_3 {
Krzysztof Kozlowski594127a2016-05-03 19:37:19 +0200297 clocks = <&clock CLK_UART3>, <&clock CLK_SCLK_UART3>;
298 clock-names = "uart", "clk_uart_baud0";
Krzysztof Kozlowski88ad58b2016-05-03 14:53:22 +0200299};
300
Krzysztof Kozlowskib8bd7e22016-06-01 11:45:51 +0200301&sss {
302 clocks = <&clock CLK_SSS>;
303 clock-names = "secss";
304};
305
Krzysztof Kozlowski88ad58b2016-05-03 14:53:22 +0200306&sromc {
307 #address-cells = <2>;
308 #size-cells = <1>;
309 ranges = <0 0 0x04000000 0x20000
310 1 0 0x05000000 0x20000
311 2 0 0x06000000 0x20000
312 3 0 0x07000000 0x20000>;
313};
314
Krzysztof Kozlowskicb089652016-05-08 19:42:11 +0200315&usbdrd3_0 {
316 clocks = <&clock CLK_USBD300>;
317 clock-names = "usbdrd30";
318};
319
320&usbdrd_phy0 {
321 clocks = <&clock CLK_USBD300>, <&clock CLK_SCLK_USBPHY300>;
322 clock-names = "phy", "ref";
323 samsung,pmu-syscon = <&pmu_system_controller>;
324};
325
326&usbdrd3_1 {
327 clocks = <&clock CLK_USBD301>;
328 clock-names = "usbdrd30";
329};
330
Krzysztof Kozlowskie5995e62016-05-31 20:39:02 +0200331&usbdrd_dwc3_1 {
332 interrupts = <GIC_SPI 200 0>;
333};
334
Krzysztof Kozlowskicb089652016-05-08 19:42:11 +0200335&usbdrd_phy1 {
336 clocks = <&clock CLK_USBD301>, <&clock CLK_SCLK_USBPHY301>;
337 clock-names = "phy", "ref";
338 samsung,pmu-syscon = <&pmu_system_controller>;
339};
340
341&usbhost1 {
342 clocks = <&clock CLK_USBH20>;
343 clock-names = "usbhost";
344};
345
346&usbhost2 {
347 clocks = <&clock CLK_USBH20>;
348 clock-names = "usbhost";
349};
350
351&usb2_phy {
352 clocks = <&clock CLK_USBH20>, <&clock CLK_SCLK_USBPHY300>;
353 clock-names = "phy", "ref";
354 samsung,sysreg-phandle = <&sysreg_system_controller>;
355 samsung,pmureg-phandle = <&pmu_system_controller>;
356};
357
Krzysztof Kozlowskib8bd7e22016-06-01 11:45:51 +0200358&watchdog {
359 clocks = <&clock CLK_WDT>;
360 clock-names = "watchdog";
361 samsung,syscon-phandle = <&pmu_system_controller>;
362};
363
Hakjoo Kim1eca8252015-03-15 23:00:33 +0100364#include "exynos5410-pinctrl.dtsi"