]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/blob - arch/arm/boot/dts/exynos5410.dtsi
Merge remote-tracking branch 'mkp-scsi/fixes' into fixes
[mirror_ubuntu-eoan-kernel.git] / arch / arm / boot / dts / exynos5410.dtsi
1 /*
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
16 #include "exynos54xx.dtsi"
17 #include "exynos-syscon-restart.dtsi"
18 #include <dt-bindings/clock/exynos5410.h>
19 #include <dt-bindings/clock/exynos-audss-clk.h>
20 #include <dt-bindings/interrupt-controller/arm-gic.h>
21
22 / {
23 compatible = "samsung,exynos5410", "samsung,exynos5";
24 interrupt-parent = <&gic>;
25
26 aliases {
27 pinctrl0 = &pinctrl_0;
28 pinctrl1 = &pinctrl_1;
29 pinctrl2 = &pinctrl_2;
30 pinctrl3 = &pinctrl_3;
31 };
32
33 cpus {
34 #address-cells = <1>;
35 #size-cells = <0>;
36
37 cpu0: cpu@0 {
38 device_type = "cpu";
39 compatible = "arm,cortex-a15";
40 reg = <0x0>;
41 clock-frequency = <1600000000>;
42 };
43
44 cpu1: cpu@1 {
45 device_type = "cpu";
46 compatible = "arm,cortex-a15";
47 reg = <0x1>;
48 clock-frequency = <1600000000>;
49 };
50
51 cpu2: cpu@2 {
52 device_type = "cpu";
53 compatible = "arm,cortex-a15";
54 reg = <0x2>;
55 clock-frequency = <1600000000>;
56 };
57
58 cpu3: cpu@3 {
59 device_type = "cpu";
60 compatible = "arm,cortex-a15";
61 reg = <0x3>;
62 clock-frequency = <1600000000>;
63 };
64 };
65
66 soc: soc {
67 compatible = "simple-bus";
68 #address-cells = <1>;
69 #size-cells = <1>;
70 ranges;
71
72 pmu_system_controller: system-controller@10040000 {
73 compatible = "samsung,exynos5410-pmu", "syscon";
74 reg = <0x10040000 0x5000>;
75 clock-names = "clkout16";
76 clocks = <&fin_pll>;
77 #clock-cells = <1>;
78 };
79
80 clock: clock-controller@10010000 {
81 compatible = "samsung,exynos5410-clock";
82 reg = <0x10010000 0x30000>;
83 #clock-cells = <1>;
84 };
85
86 clock_audss: audss-clock-controller@3810000 {
87 compatible = "samsung,exynos5410-audss-clock";
88 reg = <0x03810000 0x0C>;
89 #clock-cells = <1>;
90 clocks = <&fin_pll>, <&clock CLK_FOUT_EPLL>;
91 clock-names = "pll_ref", "pll_in";
92 };
93
94 tmu_cpu0: tmu@10060000 {
95 compatible = "samsung,exynos5420-tmu";
96 reg = <0x10060000 0x100>;
97 interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
98 clocks = <&clock CLK_TMU>;
99 clock-names = "tmu_apbif";
100 #include "exynos4412-tmu-sensor-conf.dtsi"
101 };
102
103 tmu_cpu1: tmu@10064000 {
104 compatible = "samsung,exynos5420-tmu";
105 reg = <0x10064000 0x100>;
106 interrupts = <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>;
107 clocks = <&clock CLK_TMU>;
108 clock-names = "tmu_apbif";
109 #include "exynos4412-tmu-sensor-conf.dtsi"
110 };
111
112 tmu_cpu2: tmu@10068000 {
113 compatible = "samsung,exynos5420-tmu";
114 reg = <0x10068000 0x100>;
115 interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>;
116 clocks = <&clock CLK_TMU>;
117 clock-names = "tmu_apbif";
118 #include "exynos4412-tmu-sensor-conf.dtsi"
119 };
120
121 tmu_cpu3: tmu@1006c000 {
122 compatible = "samsung,exynos5420-tmu";
123 reg = <0x1006c000 0x100>;
124 interrupts = <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>;
125 clocks = <&clock CLK_TMU>;
126 clock-names = "tmu_apbif";
127 #include "exynos4412-tmu-sensor-conf.dtsi"
128 };
129
130 mmc_0: mmc@12200000 {
131 compatible = "samsung,exynos5250-dw-mshc";
132 reg = <0x12200000 0x1000>;
133 interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
134 #address-cells = <1>;
135 #size-cells = <0>;
136 clocks = <&clock CLK_MMC0>, <&clock CLK_SCLK_MMC0>;
137 clock-names = "biu", "ciu";
138 fifo-depth = <0x80>;
139 status = "disabled";
140 };
141
142 mmc_1: mmc@12210000 {
143 compatible = "samsung,exynos5250-dw-mshc";
144 reg = <0x12210000 0x1000>;
145 interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
146 #address-cells = <1>;
147 #size-cells = <0>;
148 clocks = <&clock CLK_MMC1>, <&clock CLK_SCLK_MMC1>;
149 clock-names = "biu", "ciu";
150 fifo-depth = <0x80>;
151 status = "disabled";
152 };
153
154 mmc_2: mmc@12220000 {
155 compatible = "samsung,exynos5250-dw-mshc";
156 reg = <0x12220000 0x1000>;
157 interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
158 #address-cells = <1>;
159 #size-cells = <0>;
160 clocks = <&clock CLK_MMC2>, <&clock CLK_SCLK_MMC2>;
161 clock-names = "biu", "ciu";
162 fifo-depth = <0x80>;
163 status = "disabled";
164 };
165
166 pinctrl_0: pinctrl@13400000 {
167 compatible = "samsung,exynos5410-pinctrl";
168 reg = <0x13400000 0x1000>;
169 interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
170
171 wakeup-interrupt-controller {
172 compatible = "samsung,exynos4210-wakeup-eint";
173 interrupt-parent = <&gic>;
174 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
175 };
176 };
177
178 pinctrl_1: pinctrl@14000000 {
179 compatible = "samsung,exynos5410-pinctrl";
180 reg = <0x14000000 0x1000>;
181 interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
182 };
183
184 pinctrl_2: pinctrl@10d10000 {
185 compatible = "samsung,exynos5410-pinctrl";
186 reg = <0x10d10000 0x1000>;
187 interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
188 };
189
190 pinctrl_3: pinctrl@03860000 {
191 compatible = "samsung,exynos5410-pinctrl";
192 reg = <0x03860000 0x1000>;
193 interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
194 };
195
196 amba {
197 #address-cells = <1>;
198 #size-cells = <1>;
199 compatible = "simple-bus";
200 interrupt-parent = <&gic>;
201 ranges;
202
203 pdma0: pdma@12680000 {
204 compatible = "arm,pl330", "arm,primecell";
205 reg = <0x121A0000 0x1000>;
206 interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
207 clocks = <&clock CLK_PDMA0>;
208 clock-names = "apb_pclk";
209 #dma-cells = <1>;
210 #dma-channels = <8>;
211 #dma-requests = <32>;
212 };
213
214 pdma1: pdma@12690000 {
215 compatible = "arm,pl330", "arm,primecell";
216 reg = <0x121B0000 0x1000>;
217 interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
218 clocks = <&clock CLK_PDMA1>;
219 clock-names = "apb_pclk";
220 #dma-cells = <1>;
221 #dma-channels = <8>;
222 #dma-requests = <32>;
223 };
224 };
225
226 audi2s0: i2s@03830000 {
227 compatible = "samsung,exynos5420-i2s";
228 reg = <0x03830000 0x100>;
229 dmas = <&pdma0 10
230 &pdma0 9
231 &pdma0 8>;
232 dma-names = "tx", "rx", "tx-sec";
233 clocks = <&clock_audss EXYNOS_I2S_BUS>,
234 <&clock_audss EXYNOS_I2S_BUS>,
235 <&clock_audss EXYNOS_SCLK_I2S>;
236 clock-names = "iis", "i2s_opclk0", "i2s_opclk1";
237 #clock-cells = <1>;
238 clock-output-names = "i2s_cdclk0";
239 #sound-dai-cells = <1>;
240 samsung,idma-addr = <0x03000000>;
241 pinctrl-names = "default";
242 pinctrl-0 = <&audi2s0_bus>;
243 status = "disabled";
244 };
245 };
246
247 thermal-zones {
248 cpu0_thermal: cpu0-thermal {
249 thermal-sensors = <&tmu_cpu0>;
250 #include "exynos5420-trip-points.dtsi"
251 };
252 cpu1_thermal: cpu1-thermal {
253 thermal-sensors = <&tmu_cpu1>;
254 #include "exynos5420-trip-points.dtsi"
255 };
256 cpu2_thermal: cpu2-thermal {
257 thermal-sensors = <&tmu_cpu2>;
258 #include "exynos5420-trip-points.dtsi"
259 };
260 cpu3_thermal: cpu3-thermal {
261 thermal-sensors = <&tmu_cpu3>;
262 #include "exynos5420-trip-points.dtsi"
263 };
264 };
265 };
266
267 &i2c_0 {
268 clocks = <&clock CLK_I2C0>;
269 clock-names = "i2c";
270 pinctrl-names = "default";
271 pinctrl-0 = <&i2c0_bus>;
272 };
273
274 &i2c_1 {
275 clocks = <&clock CLK_I2C1>;
276 clock-names = "i2c";
277 pinctrl-names = "default";
278 pinctrl-0 = <&i2c1_bus>;
279 };
280
281 &i2c_2 {
282 clocks = <&clock CLK_I2C2>;
283 clock-names = "i2c";
284 pinctrl-names = "default";
285 pinctrl-0 = <&i2c2_bus>;
286 };
287
288 &i2c_3 {
289 clocks = <&clock CLK_I2C3>;
290 clock-names = "i2c";
291 pinctrl-names = "default";
292 pinctrl-0 = <&i2c3_bus>;
293 };
294
295 &hsi2c_4 {
296 clocks = <&clock CLK_USI0>;
297 clock-names = "hsi2c";
298 pinctrl-names = "default";
299 pinctrl-0 = <&i2c4_hs_bus>;
300 };
301
302 &hsi2c_5 {
303 clocks = <&clock CLK_USI1>;
304 clock-names = "hsi2c";
305 pinctrl-names = "default";
306 pinctrl-0 = <&i2c5_hs_bus>;
307 };
308
309 &hsi2c_6 {
310 clocks = <&clock CLK_USI2>;
311 clock-names = "hsi2c";
312 pinctrl-names = "default";
313 pinctrl-0 = <&i2c6_hs_bus>;
314 };
315
316 &hsi2c_7 {
317 clocks = <&clock CLK_USI3>;
318 clock-names = "hsi2c";
319 pinctrl-names = "default";
320 pinctrl-0 = <&i2c7_hs_bus>;
321 };
322
323 &mct {
324 clocks = <&fin_pll>, <&clock CLK_MCT>;
325 clock-names = "fin_pll", "mct";
326 };
327
328 &pwm {
329 clocks = <&clock CLK_PWM>;
330 clock-names = "timers";
331 };
332
333 &rtc {
334 clocks = <&clock CLK_RTC>;
335 clock-names = "rtc";
336 interrupt-parent = <&pmu_system_controller>;
337 status = "disabled";
338 };
339
340 &serial_0 {
341 clocks = <&clock CLK_UART0>, <&clock CLK_SCLK_UART0>;
342 clock-names = "uart", "clk_uart_baud0";
343 dmas = <&pdma0 13>, <&pdma0 14>;
344 dma-names = "rx", "tx";
345 };
346
347 &serial_1 {
348 clocks = <&clock CLK_UART1>, <&clock CLK_SCLK_UART1>;
349 clock-names = "uart", "clk_uart_baud0";
350 dmas = <&pdma1 15>, <&pdma1 16>;
351 dma-names = "rx", "tx";
352 };
353
354 &serial_2 {
355 clocks = <&clock CLK_UART2>, <&clock CLK_SCLK_UART2>;
356 clock-names = "uart", "clk_uart_baud0";
357 dmas = <&pdma0 15>, <&pdma0 16>;
358 dma-names = "rx", "tx";
359 };
360
361 &serial_3 {
362 clocks = <&clock CLK_UART3>, <&clock CLK_SCLK_UART3>;
363 clock-names = "uart", "clk_uart_baud0";
364 dmas = <&pdma1 17>, <&pdma1 18>;
365 dma-names = "rx", "tx";
366 };
367
368 &sss {
369 clocks = <&clock CLK_SSS>;
370 clock-names = "secss";
371 };
372
373 &sromc {
374 #address-cells = <2>;
375 #size-cells = <1>;
376 ranges = <0 0 0x04000000 0x20000
377 1 0 0x05000000 0x20000
378 2 0 0x06000000 0x20000
379 3 0 0x07000000 0x20000>;
380 };
381
382 &usbdrd3_0 {
383 clocks = <&clock CLK_USBD300>;
384 clock-names = "usbdrd30";
385 };
386
387 &usbdrd_phy0 {
388 clocks = <&clock CLK_USBD300>, <&clock CLK_SCLK_USBPHY300>;
389 clock-names = "phy", "ref";
390 samsung,pmu-syscon = <&pmu_system_controller>;
391 };
392
393 &usbdrd3_1 {
394 clocks = <&clock CLK_USBD301>;
395 clock-names = "usbdrd30";
396 };
397
398 &usbdrd_dwc3_1 {
399 interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>;
400 };
401
402 &usbdrd_phy1 {
403 clocks = <&clock CLK_USBD301>, <&clock CLK_SCLK_USBPHY301>;
404 clock-names = "phy", "ref";
405 samsung,pmu-syscon = <&pmu_system_controller>;
406 };
407
408 &usbhost1 {
409 clocks = <&clock CLK_USBH20>;
410 clock-names = "usbhost";
411 };
412
413 &usbhost2 {
414 clocks = <&clock CLK_USBH20>;
415 clock-names = "usbhost";
416 };
417
418 &usb2_phy {
419 clocks = <&clock CLK_USBH20>, <&clock CLK_SCLK_USBPHY300>;
420 clock-names = "phy", "ref";
421 samsung,sysreg-phandle = <&sysreg_system_controller>;
422 samsung,pmureg-phandle = <&pmu_system_controller>;
423 };
424
425 &watchdog {
426 clocks = <&clock CLK_WDT>;
427 clock-names = "watchdog";
428 samsung,syscon-phandle = <&pmu_system_controller>;
429 };
430
431 #include "exynos5410-pinctrl.dtsi"