2 * SAMSUNG EXYNOS7 SoC device tree source
4 * Copyright (c) 2014 Samsung Electronics Co., Ltd.
5 * http://www.samsung.com
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
12 #include <dt-bindings/clock/exynos7-clk.h>
13 #include <dt-bindings/interrupt-controller/arm-gic.h>
16 compatible = "samsung,exynos7";
17 interrupt-parent = <&gic>;
22 pinctrl0 = &pinctrl_alive;
23 pinctrl1 = &pinctrl_bus0;
24 pinctrl2 = &pinctrl_nfc;
25 pinctrl3 = &pinctrl_touch;
26 pinctrl4 = &pinctrl_ff;
27 pinctrl5 = &pinctrl_ese;
28 pinctrl6 = &pinctrl_fsys0;
29 pinctrl7 = &pinctrl_fsys1;
30 pinctrl8 = &pinctrl_bus1;
31 tmuctrl0 = &tmuctrl_0;
40 compatible = "arm,cortex-a57", "arm,armv8";
42 enable-method = "psci";
47 compatible = "arm,cortex-a57", "arm,armv8";
49 enable-method = "psci";
54 compatible = "arm,cortex-a57", "arm,armv8";
56 enable-method = "psci";
61 compatible = "arm,cortex-a57", "arm,armv8";
63 enable-method = "psci";
68 compatible = "arm,psci-0.2";
73 compatible = "simple-bus";
76 ranges = <0 0 0 0x18000000>;
79 compatible = "samsung,exynos4210-chipid";
80 reg = <0x10000000 0x100>;
84 compatible = "fixed-clock";
85 clock-output-names = "fin_pll";
89 gic: interrupt-controller@11001000 {
90 compatible = "arm,gic-400";
91 #interrupt-cells = <3>;
94 reg = <0x11001000 0x1000>,
101 compatible = "simple-bus";
102 #address-cells = <1>;
106 pdma0: pdma@10E10000 {
107 compatible = "arm,pl330", "arm,primecell";
108 reg = <0x10E10000 0x1000>;
109 interrupts = <0 225 0>;
110 clocks = <&clock_fsys0 ACLK_PDMA0>;
111 clock-names = "apb_pclk";
114 #dma-requests = <32>;
117 pdma1: pdma@10EB0000 {
118 compatible = "arm,pl330", "arm,primecell";
119 reg = <0x10EB0000 0x1000>;
120 interrupts = <0 226 0>;
121 clocks = <&clock_fsys0 ACLK_PDMA1>;
122 clock-names = "apb_pclk";
125 #dma-requests = <32>;
129 clock_topc: clock-controller@10570000 {
130 compatible = "samsung,exynos7-clock-topc";
131 reg = <0x10570000 0x10000>;
135 clock_top0: clock-controller@105d0000 {
136 compatible = "samsung,exynos7-clock-top0";
137 reg = <0x105d0000 0xb000>;
139 clocks = <&fin_pll>, <&clock_topc DOUT_SCLK_BUS0_PLL>,
140 <&clock_topc DOUT_SCLK_BUS1_PLL>,
141 <&clock_topc DOUT_SCLK_CC_PLL>,
142 <&clock_topc DOUT_SCLK_MFC_PLL>;
143 clock-names = "fin_pll", "dout_sclk_bus0_pll",
144 "dout_sclk_bus1_pll", "dout_sclk_cc_pll",
148 clock_top1: clock-controller@105e0000 {
149 compatible = "samsung,exynos7-clock-top1";
150 reg = <0x105e0000 0xb000>;
152 clocks = <&fin_pll>, <&clock_topc DOUT_SCLK_BUS0_PLL>,
153 <&clock_topc DOUT_SCLK_BUS1_PLL>,
154 <&clock_topc DOUT_SCLK_CC_PLL>,
155 <&clock_topc DOUT_SCLK_MFC_PLL>;
156 clock-names = "fin_pll", "dout_sclk_bus0_pll",
157 "dout_sclk_bus1_pll", "dout_sclk_cc_pll",
161 clock_ccore: clock-controller@105b0000 {
162 compatible = "samsung,exynos7-clock-ccore";
163 reg = <0x105b0000 0xd00>;
165 clocks = <&fin_pll>, <&clock_topc DOUT_ACLK_CCORE_133>;
166 clock-names = "fin_pll", "dout_aclk_ccore_133";
169 clock_peric0: clock-controller@13610000 {
170 compatible = "samsung,exynos7-clock-peric0";
171 reg = <0x13610000 0xd00>;
173 clocks = <&fin_pll>, <&clock_top0 DOUT_ACLK_PERIC0>,
174 <&clock_top0 CLK_SCLK_UART0>;
175 clock-names = "fin_pll", "dout_aclk_peric0_66",
179 clock_peric1: clock-controller@14c80000 {
180 compatible = "samsung,exynos7-clock-peric1";
181 reg = <0x14c80000 0xd00>;
183 clocks = <&fin_pll>, <&clock_top0 DOUT_ACLK_PERIC1>,
184 <&clock_top0 CLK_SCLK_UART1>,
185 <&clock_top0 CLK_SCLK_UART2>,
186 <&clock_top0 CLK_SCLK_UART3>;
187 clock-names = "fin_pll", "dout_aclk_peric1_66",
188 "sclk_uart1", "sclk_uart2", "sclk_uart3";
191 clock_peris: clock-controller@10040000 {
192 compatible = "samsung,exynos7-clock-peris";
193 reg = <0x10040000 0xd00>;
195 clocks = <&fin_pll>, <&clock_topc DOUT_ACLK_PERIS>;
196 clock-names = "fin_pll", "dout_aclk_peris_66";
199 clock_fsys0: clock-controller@10e90000 {
200 compatible = "samsung,exynos7-clock-fsys0";
201 reg = <0x10e90000 0xd00>;
203 clocks = <&fin_pll>, <&clock_top1 DOUT_ACLK_FSYS0_200>,
204 <&clock_top1 DOUT_SCLK_MMC2>;
205 clock-names = "fin_pll", "dout_aclk_fsys0_200",
209 clock_fsys1: clock-controller@156e0000 {
210 compatible = "samsung,exynos7-clock-fsys1";
211 reg = <0x156e0000 0xd00>;
213 clocks = <&fin_pll>, <&clock_top1 DOUT_ACLK_FSYS1_200>,
214 <&clock_top1 DOUT_SCLK_MMC0>,
215 <&clock_top1 DOUT_SCLK_MMC1>;
216 clock-names = "fin_pll", "dout_aclk_fsys1_200",
217 "dout_sclk_mmc0", "dout_sclk_mmc1";
220 serial_0: serial@13630000 {
221 compatible = "samsung,exynos4210-uart";
222 reg = <0x13630000 0x100>;
223 interrupts = <0 440 0>;
224 clocks = <&clock_peric0 PCLK_UART0>,
225 <&clock_peric0 SCLK_UART0>;
226 clock-names = "uart", "clk_uart_baud0";
230 serial_1: serial@14c20000 {
231 compatible = "samsung,exynos4210-uart";
232 reg = <0x14c20000 0x100>;
233 interrupts = <0 456 0>;
234 clocks = <&clock_peric1 PCLK_UART1>,
235 <&clock_peric1 SCLK_UART1>;
236 clock-names = "uart", "clk_uart_baud0";
240 serial_2: serial@14c30000 {
241 compatible = "samsung,exynos4210-uart";
242 reg = <0x14c30000 0x100>;
243 interrupts = <0 457 0>;
244 clocks = <&clock_peric1 PCLK_UART2>,
245 <&clock_peric1 SCLK_UART2>;
246 clock-names = "uart", "clk_uart_baud0";
250 serial_3: serial@14c40000 {
251 compatible = "samsung,exynos4210-uart";
252 reg = <0x14c40000 0x100>;
253 interrupts = <0 458 0>;
254 clocks = <&clock_peric1 PCLK_UART3>,
255 <&clock_peric1 SCLK_UART3>;
256 clock-names = "uart", "clk_uart_baud0";
260 pinctrl_alive: pinctrl@10580000 {
261 compatible = "samsung,exynos7-pinctrl";
262 reg = <0x10580000 0x1000>;
264 wakeup-interrupt-controller {
265 compatible = "samsung,exynos7-wakeup-eint";
266 interrupt-parent = <&gic>;
267 interrupts = <0 16 0>;
271 pinctrl_bus0: pinctrl@13470000 {
272 compatible = "samsung,exynos7-pinctrl";
273 reg = <0x13470000 0x1000>;
274 interrupts = <0 383 0>;
277 pinctrl_nfc: pinctrl@14cd0000 {
278 compatible = "samsung,exynos7-pinctrl";
279 reg = <0x14cd0000 0x1000>;
280 interrupts = <0 473 0>;
283 pinctrl_touch: pinctrl@14ce0000 {
284 compatible = "samsung,exynos7-pinctrl";
285 reg = <0x14ce0000 0x1000>;
286 interrupts = <0 474 0>;
289 pinctrl_ff: pinctrl@14c90000 {
290 compatible = "samsung,exynos7-pinctrl";
291 reg = <0x14c90000 0x1000>;
292 interrupts = <0 475 0>;
295 pinctrl_ese: pinctrl@14ca0000 {
296 compatible = "samsung,exynos7-pinctrl";
297 reg = <0x14ca0000 0x1000>;
298 interrupts = <0 476 0>;
301 pinctrl_fsys0: pinctrl@10e60000 {
302 compatible = "samsung,exynos7-pinctrl";
303 reg = <0x10e60000 0x1000>;
304 interrupts = <0 221 0>;
307 pinctrl_fsys1: pinctrl@15690000 {
308 compatible = "samsung,exynos7-pinctrl";
309 reg = <0x15690000 0x1000>;
310 interrupts = <0 203 0>;
313 pinctrl_bus1: pinctrl@14870000 {
314 compatible = "samsung,exynos7-pinctrl";
315 reg = <0x14870000 0x1000>;
316 interrupts = <0 384 0>;
319 hsi2c_0: hsi2c@13640000 {
320 compatible = "samsung,exynos7-hsi2c";
321 reg = <0x13640000 0x1000>;
322 interrupts = <0 441 0>;
323 #address-cells = <1>;
325 pinctrl-names = "default";
326 pinctrl-0 = <&hs_i2c0_bus>;
327 clocks = <&clock_peric0 PCLK_HSI2C0>;
328 clock-names = "hsi2c";
332 hsi2c_1: hsi2c@13650000 {
333 compatible = "samsung,exynos7-hsi2c";
334 reg = <0x13650000 0x1000>;
335 interrupts = <0 442 0>;
336 #address-cells = <1>;
338 pinctrl-names = "default";
339 pinctrl-0 = <&hs_i2c1_bus>;
340 clocks = <&clock_peric0 PCLK_HSI2C1>;
341 clock-names = "hsi2c";
345 hsi2c_2: hsi2c@14e60000 {
346 compatible = "samsung,exynos7-hsi2c";
347 reg = <0x14e60000 0x1000>;
348 interrupts = <0 459 0>;
349 #address-cells = <1>;
351 pinctrl-names = "default";
352 pinctrl-0 = <&hs_i2c2_bus>;
353 clocks = <&clock_peric1 PCLK_HSI2C2>;
354 clock-names = "hsi2c";
358 hsi2c_3: hsi2c@14e70000 {
359 compatible = "samsung,exynos7-hsi2c";
360 reg = <0x14e70000 0x1000>;
361 interrupts = <0 460 0>;
362 #address-cells = <1>;
364 pinctrl-names = "default";
365 pinctrl-0 = <&hs_i2c3_bus>;
366 clocks = <&clock_peric1 PCLK_HSI2C3>;
367 clock-names = "hsi2c";
371 hsi2c_4: hsi2c@13660000 {
372 compatible = "samsung,exynos7-hsi2c";
373 reg = <0x13660000 0x1000>;
374 interrupts = <0 443 0>;
375 #address-cells = <1>;
377 pinctrl-names = "default";
378 pinctrl-0 = <&hs_i2c4_bus>;
379 clocks = <&clock_peric0 PCLK_HSI2C4>;
380 clock-names = "hsi2c";
384 hsi2c_5: hsi2c@13670000 {
385 compatible = "samsung,exynos7-hsi2c";
386 reg = <0x13670000 0x1000>;
387 interrupts = <0 444 0>;
388 #address-cells = <1>;
390 pinctrl-names = "default";
391 pinctrl-0 = <&hs_i2c5_bus>;
392 clocks = <&clock_peric0 PCLK_HSI2C5>;
393 clock-names = "hsi2c";
397 hsi2c_6: hsi2c@14e00000 {
398 compatible = "samsung,exynos7-hsi2c";
399 reg = <0x14e00000 0x1000>;
400 interrupts = <0 461 0>;
401 #address-cells = <1>;
403 pinctrl-names = "default";
404 pinctrl-0 = <&hs_i2c6_bus>;
405 clocks = <&clock_peric1 PCLK_HSI2C6>;
406 clock-names = "hsi2c";
410 hsi2c_7: hsi2c@13e10000 {
411 compatible = "samsung,exynos7-hsi2c";
412 reg = <0x13e10000 0x1000>;
413 interrupts = <0 462 0>;
414 #address-cells = <1>;
416 pinctrl-names = "default";
417 pinctrl-0 = <&hs_i2c7_bus>;
418 clocks = <&clock_peric1 PCLK_HSI2C7>;
419 clock-names = "hsi2c";
423 hsi2c_8: hsi2c@14e20000 {
424 compatible = "samsung,exynos7-hsi2c";
425 reg = <0x14e20000 0x1000>;
426 interrupts = <0 463 0>;
427 #address-cells = <1>;
429 pinctrl-names = "default";
430 pinctrl-0 = <&hs_i2c8_bus>;
431 clocks = <&clock_peric1 PCLK_HSI2C8>;
432 clock-names = "hsi2c";
436 hsi2c_9: hsi2c@13680000 {
437 compatible = "samsung,exynos7-hsi2c";
438 reg = <0x13680000 0x1000>;
439 interrupts = <0 445 0>;
440 #address-cells = <1>;
442 pinctrl-names = "default";
443 pinctrl-0 = <&hs_i2c9_bus>;
444 clocks = <&clock_peric0 PCLK_HSI2C9>;
445 clock-names = "hsi2c";
449 hsi2c_10: hsi2c@13690000 {
450 compatible = "samsung,exynos7-hsi2c";
451 reg = <0x13690000 0x1000>;
452 interrupts = <0 446 0>;
453 #address-cells = <1>;
455 pinctrl-names = "default";
456 pinctrl-0 = <&hs_i2c10_bus>;
457 clocks = <&clock_peric0 PCLK_HSI2C10>;
458 clock-names = "hsi2c";
462 hsi2c_11: hsi2c@136a0000 {
463 compatible = "samsung,exynos7-hsi2c";
464 reg = <0x136a0000 0x1000>;
465 interrupts = <0 447 0>;
466 #address-cells = <1>;
468 pinctrl-names = "default";
469 pinctrl-0 = <&hs_i2c11_bus>;
470 clocks = <&clock_peric0 PCLK_HSI2C11>;
471 clock-names = "hsi2c";
476 compatible = "arm,armv8-timer";
477 interrupts = <GIC_PPI 13
478 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
480 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
482 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
484 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>;
487 pmu_system_controller: system-controller@105c0000 {
488 compatible = "samsung,exynos7-pmu", "syscon";
489 reg = <0x105c0000 0x5000>;
492 reboot: syscon-reboot {
493 compatible = "syscon-reboot";
494 regmap = <&pmu_system_controller>;
500 compatible = "samsung,s3c6410-rtc";
501 reg = <0x10590000 0x100>;
502 interrupts = <0 355 0>, <0 356 0>;
503 clocks = <&clock_ccore PCLK_RTC>;
508 watchdog: watchdog@101d0000 {
509 compatible = "samsung,exynos7-wdt";
510 reg = <0x101d0000 0x100>;
511 interrupts = <0 110 0>;
512 clocks = <&clock_peris PCLK_WDT>;
513 clock-names = "watchdog";
514 samsung,syscon-phandle = <&pmu_system_controller>;
518 mmc_0: mmc@15740000 {
519 compatible = "samsung,exynos7-dw-mshc-smu";
520 interrupts = <0 201 0>;
521 #address-cells = <1>;
523 reg = <0x15740000 0x2000>;
524 clocks = <&clock_fsys1 ACLK_MMC0>,
525 <&clock_top1 CLK_SCLK_MMC0>;
526 clock-names = "biu", "ciu";
531 mmc_1: mmc@15750000 {
532 compatible = "samsung,exynos7-dw-mshc";
533 interrupts = <0 202 0>;
534 #address-cells = <1>;
536 reg = <0x15750000 0x2000>;
537 clocks = <&clock_fsys1 ACLK_MMC1>,
538 <&clock_top1 CLK_SCLK_MMC1>;
539 clock-names = "biu", "ciu";
544 mmc_2: mmc@15560000 {
545 compatible = "samsung,exynos7-dw-mshc-smu";
546 interrupts = <0 216 0>;
547 #address-cells = <1>;
549 reg = <0x15560000 0x2000>;
550 clocks = <&clock_fsys0 ACLK_MMC2>,
551 <&clock_top1 CLK_SCLK_MMC2>;
552 clock-names = "biu", "ciu";
558 compatible = "samsung,exynos7-adc";
559 reg = <0x13620000 0x100>;
560 interrupts = <0 448 0>;
561 clocks = <&clock_peric0 PCLK_ADCIF>;
563 #io-channel-cells = <1>;
569 compatible = "samsung,exynos4210-pwm";
570 reg = <0x136c0000 0x100>;
571 samsung,pwm-outputs = <0>, <1>, <2>, <3>;
573 clocks = <&clock_peric0 PCLK_PWM>;
574 clock-names = "timers";
577 tmuctrl_0: tmu@10060000 {
578 compatible = "samsung,exynos7-tmu";
579 reg = <0x10060000 0x200>;
580 interrupts = <0 108 0>;
581 clocks = <&clock_peris PCLK_TMU>,
582 <&clock_peris SCLK_TMU>;
583 clock-names = "tmu_apbif", "tmu_sclk";
584 #include "exynos7-tmu-sensor-conf.dtsi"
588 atlas_thermal: cluster0-thermal {
589 polling-delay-passive = <0>; /* milliseconds */
590 polling-delay = <0>; /* milliseconds */
591 thermal-sensors = <&tmuctrl_0>;
592 #include "exynos7-trip-points.dtsi"
598 #include "exynos7-pinctrl.dtsi"