blob: 76b84852f29cac2e6c081ff64102078f581c1449 [file] [log] [blame]
Thomas Abraham0561cea2011-11-02 19:31:15 +09001/*
2 * Samsung's Exynos4210 SoC device tree source
3 *
4 * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
5 * http://www.samsung.com
6 * Copyright (c) 2010-2011 Linaro Ltd.
7 * www.linaro.org
8 *
9 * Samsung's Exynos4210 SoC device nodes are listed in this file. Exynos4210
10 * based board files can include this file and provide values for board specfic
11 * bindings.
12 *
13 * Note: This file does not include device nodes for all the controllers in
14 * Exynos4210 SoC. As device tree coverage for Exynos4210 increases, additional
15 * nodes can be added to this file.
16 *
17 * This program is free software; you can redistribute it and/or modify
18 * it under the terms of the GNU General Public License version 2 as
19 * published by the Free Software Foundation.
20*/
21
Padmavathi Venna37992792013-06-18 00:02:08 +090022#include "exynos4.dtsi"
23#include "exynos4210-pinctrl.dtsi"
Lukasz Majewski9843a222015-01-30 08:26:03 +090024#include "exynos4-cpu-thermal.dtsi"
Thomas Abraham0561cea2011-11-02 19:31:15 +090025
26/ {
Sachin Kamat8bdb31b2014-03-21 02:17:22 +090027 compatible = "samsung,exynos4210", "samsung,exynos4";
Thomas Abraham0561cea2011-11-02 19:31:15 +090028
Thomas Abraham4980c392012-07-14 10:45:32 +090029 aliases {
Thomas Abraham87711d82012-09-07 06:14:26 +090030 pinctrl0 = &pinctrl_0;
31 pinctrl1 = &pinctrl_1;
32 pinctrl2 = &pinctrl_2;
Thomas Abraham4980c392012-07-14 10:45:32 +090033 };
34
Bartlomiej Zolnierkiewicze5409202014-09-25 17:40:14 +090035 cpus {
36 #address-cells = <1>;
37 #size-cells = <0>;
38
Lukasz Majewskibf4a0be2015-01-30 08:26:02 +090039 cpu0: cpu@900 {
Bartlomiej Zolnierkiewicze5409202014-09-25 17:40:14 +090040 device_type = "cpu";
41 compatible = "arm,cortex-a9";
42 reg = <0x900>;
Lukasz Majewskibf4a0be2015-01-30 08:26:02 +090043 cooling-min-level = <4>;
44 cooling-max-level = <2>;
45 #cooling-cells = <2>; /* min followed by max */
Bartlomiej Zolnierkiewicze5409202014-09-25 17:40:14 +090046 };
47
48 cpu@901 {
49 device_type = "cpu";
50 compatible = "arm,cortex-a9";
51 reg = <0x901>;
52 };
53 };
54
Tomasz Figad19bb392014-06-24 18:08:27 +020055 pmu_system_controller: system-controller@10020000 {
56 clock-names = "clkout0", "clkout1", "clkout2", "clkout3",
57 "clkout4", "clkout8", "clkout9";
58 clocks = <&clock CLK_OUT_DMC>, <&clock CLK_OUT_TOP>,
59 <&clock CLK_OUT_LEFTBUS>, <&clock CLK_OUT_RIGHTBUS>,
60 <&clock CLK_OUT_CPU>, <&clock CLK_XXTI>,
61 <&clock CLK_XUSBXTI>;
62 #clock-cells = <1>;
63 };
64
Krzysztof Kozlowski9c412212015-05-13 19:24:35 +090065 sysram: sysram@02020000 {
Sachin Kamatb3205de2014-05-13 07:13:44 +090066 compatible = "mmio-sram";
67 reg = <0x02020000 0x20000>;
68 #address-cells = <1>;
69 #size-cells = <1>;
70 ranges = <0 0x02020000 0x20000>;
71
72 smp-sysram@0 {
73 compatible = "samsung,exynos4210-sysram";
74 reg = <0x0 0x1000>;
75 };
76
77 smp-sysram@1f000 {
78 compatible = "samsung,exynos4210-sysram-ns";
79 reg = <0x1f000 0x1000>;
80 };
81 };
82
Tomasz Figa91d88f02012-11-22 00:22:09 +090083 pd_lcd1: lcd1-power-domain@10023CA0 {
84 compatible = "samsung,exynos4210-pd";
85 reg = <0x10023CA0 0x20>;
Marek Szyprowski0da65872015-01-24 13:16:15 +090086 #power-domain-cells = <0>;
Tomasz Figa91d88f02012-11-22 00:22:09 +090087 };
88
Tomasz Figa56b60b82015-01-08 07:54:34 +010089 l2c: l2-cache-controller@10502000 {
90 compatible = "arm,pl310-cache";
91 reg = <0x10502000 0x1000>;
92 cache-unified;
93 cache-level = <2>;
94 arm,tag-latency = <2 2 1>;
95 arm,data-latency = <2 2 1>;
96 };
97
Tomasz Figa0572b722013-12-19 03:17:54 +090098 gic: interrupt-controller@10490000 {
Thomas Abrahamda911782012-02-08 11:42:43 +090099 cpu-offset = <0x8000>;
Thomas Abraham0561cea2011-11-02 19:31:15 +0900100 };
101
Tomasz Figa0572b722013-12-19 03:17:54 +0900102 combiner: interrupt-controller@10440000 {
Arnd Bergmann30269dd2013-04-12 15:15:58 +0200103 samsung,combiner-nr = <16>;
Thomas Abraham49229722012-07-13 15:25:08 +0900104 interrupts = <0 0 0>, <0 1 0>, <0 2 0>, <0 3 0>,
105 <0 4 0>, <0 5 0>, <0 6 0>, <0 7 0>,
106 <0 8 0>, <0 9 0>, <0 10 0>, <0 11 0>,
107 <0 12 0>, <0 13 0>, <0 14 0>, <0 15 0>;
108 };
109
Krzysztof Kozlowski9c412212015-05-13 19:24:35 +0900110 mct: mct@10050000 {
Thomas Abrahambbd97002013-03-09 16:12:35 +0900111 compatible = "samsung,exynos4210-mct";
112 reg = <0x10050000 0x800>;
Thomas Abrahambbd97002013-03-09 16:12:35 +0900113 interrupt-parent = <&mct_map>;
Tomasz Figa84ee1c152013-12-19 03:17:49 +0900114 interrupts = <0>, <1>, <2>, <3>, <4>, <5>;
Andrzej Hajda1c75a782014-02-26 09:53:30 +0900115 clocks = <&clock CLK_FIN_PLL>, <&clock CLK_MCT>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900116 clock-names = "fin_pll", "mct";
Thomas Abrahambbd97002013-03-09 16:12:35 +0900117
118 mct_map: mct-map {
Tomasz Figa84ee1c152013-12-19 03:17:49 +0900119 #interrupt-cells = <1>;
Thomas Abrahambbd97002013-03-09 16:12:35 +0900120 #address-cells = <0>;
121 #size-cells = <0>;
Tomasz Figa84ee1c152013-12-19 03:17:49 +0900122 interrupt-map = <0 &gic 0 57 0>,
123 <1 &gic 0 69 0>,
124 <2 &combiner 12 6>,
125 <3 &combiner 12 7>,
126 <4 &gic 0 42 0>,
127 <5 &gic 0 48 0>;
Thomas Abrahambbd97002013-03-09 16:12:35 +0900128 };
129 };
130
Lee Jonese7787aed2013-08-06 03:04:43 +0900131 clock: clock-controller@10030000 {
Thomas Abrahamd8bafc82013-03-09 17:11:33 +0900132 compatible = "samsung,exynos4210-clock";
133 reg = <0x10030000 0x20000>;
134 #clock-cells = <1>;
135 };
136
Thomas Abraham87711d82012-09-07 06:14:26 +0900137 pinctrl_0: pinctrl@11400000 {
Kukjin Kimb533c862013-01-02 16:05:42 -0800138 compatible = "samsung,exynos4210-pinctrl";
Thomas Abraham87711d82012-09-07 06:14:26 +0900139 reg = <0x11400000 0x1000>;
140 interrupts = <0 47 0>;
Thomas Abraham87711d82012-09-07 06:14:26 +0900141 };
142
143 pinctrl_1: pinctrl@11000000 {
Kukjin Kimb533c862013-01-02 16:05:42 -0800144 compatible = "samsung,exynos4210-pinctrl";
Thomas Abraham87711d82012-09-07 06:14:26 +0900145 reg = <0x11000000 0x1000>;
146 interrupts = <0 46 0>;
Thomas Abraham87711d82012-09-07 06:14:26 +0900147
148 wakup_eint: wakeup-interrupt-controller {
149 compatible = "samsung,exynos4210-wakeup-eint";
150 interrupt-parent = <&gic>;
Tomasz Figaa04b07c2012-10-11 10:11:18 +0200151 interrupts = <0 32 0>;
Thomas Abraham87711d82012-09-07 06:14:26 +0900152 };
153 };
154
155 pinctrl_2: pinctrl@03860000 {
Kukjin Kimb533c862013-01-02 16:05:42 -0800156 compatible = "samsung,exynos4210-pinctrl";
Thomas Abraham87711d82012-09-07 06:14:26 +0900157 reg = <0x03860000 0x1000>;
158 };
159
Lukasz Majewski9843a222015-01-30 08:26:03 +0900160 tmu: tmu@100C0000 {
Amit Daniel Kachhap8d4155d2012-10-29 21:18:01 +0900161 compatible = "samsung,exynos4210-tmu";
162 interrupt-parent = <&combiner>;
163 reg = <0x100C0000 0x100>;
164 interrupts = <2 4>;
Andrzej Hajda1c75a782014-02-26 09:53:30 +0900165 clocks = <&clock CLK_TMU_APBIF>;
Sachin Kamate6199af2013-04-23 23:20:19 +0900166 clock-names = "tmu_apbif";
Lukasz Majewski9843a222015-01-30 08:26:03 +0900167 samsung,tmu_gain = <15>;
168 samsung,tmu_reference_voltage = <7>;
Sachin Kamate6199af2013-04-23 23:20:19 +0900169 status = "disabled";
Amit Daniel Kachhap8d4155d2012-10-29 21:18:01 +0900170 };
Sachin Kamat66d302a2013-04-04 13:48:45 +0900171
Lukasz Majewski9843a222015-01-30 08:26:03 +0900172 thermal-zones {
173 cpu_thermal: cpu-thermal {
174 polling-delay-passive = <0>;
175 polling-delay = <0>;
176 thermal-sensors = <&tmu 0>;
177
178 trips {
179 cpu_alert0: cpu-alert-0 {
180 temperature = <85000>; /* millicelsius */
181 };
182 cpu_alert1: cpu-alert-1 {
183 temperature = <100000>; /* millicelsius */
184 };
185 cpu_alert2: cpu-alert-2 {
186 temperature = <110000>; /* millicelsius */
187 };
188 };
189 };
190 };
191
Krzysztof Kozlowski9c412212015-05-13 19:24:35 +0900192 g2d: g2d@12800000 {
Sachin Kamat66d302a2013-04-04 13:48:45 +0900193 compatible = "samsung,s5pv210-g2d";
194 reg = <0x12800000 0x1000>;
195 interrupts = <0 89 0>;
Andrzej Hajda1c75a782014-02-26 09:53:30 +0900196 clocks = <&clock CLK_SCLK_FIMG2D>, <&clock CLK_G2D>;
Sachin Kamat37bf5792013-06-10 17:52:24 +0900197 clock-names = "sclk_fimg2d", "fimg2d";
Sachin Kamat66d302a2013-04-04 13:48:45 +0900198 status = "disabled";
199 };
Sylwester Nawrocki54a88962013-08-06 02:49:45 +0900200
201 camera {
Andrzej Hajda1c75a782014-02-26 09:53:30 +0900202 clocks = <&clock CLK_SCLK_CAM0>, <&clock CLK_SCLK_CAM1>,
203 <&clock CLK_PIXELASYNCM0>, <&clock CLK_PIXELASYNCM1>;
Sylwester Nawrocki54a88962013-08-06 02:49:45 +0900204 clock-names = "sclk_cam0", "sclk_cam1", "pxl_async0", "pxl_async1";
205
206 fimc_0: fimc@11800000 {
207 samsung,pix-limits = <4224 8192 1920 4224>;
208 samsung,mainscaler-ext;
209 samsung,cam-if;
210 };
211
212 fimc_1: fimc@11810000 {
213 samsung,pix-limits = <4224 8192 1920 4224>;
214 samsung,mainscaler-ext;
215 samsung,cam-if;
216 };
217
218 fimc_2: fimc@11820000 {
219 samsung,pix-limits = <4224 8192 1920 4224>;
220 samsung,mainscaler-ext;
221 samsung,lcd-wb;
222 };
223
224 fimc_3: fimc@11830000 {
225 samsung,pix-limits = <1920 8192 1366 1920>;
226 samsung,rotators = <0>;
227 samsung,mainscaler-ext;
228 samsung,lcd-wb;
229 };
230 };
Chanwoo Choi30e0e472015-02-04 08:10:58 +0900231
Marek Szyprowskied80d4c2015-02-04 23:44:16 +0900232 mixer: mixer@12C10000 {
233 clock-names = "mixer", "hdmi", "sclk_hdmi", "vp", "mout_mixer",
234 "sclk_mixer";
235 clocks = <&clock CLK_MIXER>, <&clock CLK_HDMI>,
236 <&clock CLK_SCLK_HDMI>, <&clock CLK_VP>,
237 <&clock CLK_MOUT_MIXER>, <&clock CLK_SCLK_MIXER>;
238 };
239
Chanwoo Choi30e0e472015-02-04 08:10:58 +0900240 ppmu_lcd1: ppmu_lcd1@12240000 {
241 compatible = "samsung,exynos-ppmu";
242 reg = <0x12240000 0x2000>;
243 clocks = <&clock CLK_PPMULCD1>;
244 clock-names = "ppmu";
245 status = "disabled";
246 };
Thomas Abraham0561cea2011-11-02 19:31:15 +0900247};