blob: 3f94fe8e3706b2fdff261445c0fccdf245ba5f97 [file] [log] [blame]
Tomasz Figab571abb2012-09-21 10:12:59 +09001/*
2 * Samsung's Exynos4 SoC series common 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 Exynos4 SoC series device nodes are listed in this file. Particular
10 * SoCs from Exynos4 series can include this file and provide values for SoCs
11 * specfic bindings.
12 *
13 * Note: This file does not include device nodes for all the controllers in
14 * Exynos4 SoCs. As device tree coverage for Exynos4 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 "skeleton.dtsi"
Tomasz Figab571abb2012-09-21 10:12:59 +090023
24/ {
25 interrupt-parent = <&gic>;
26
27 aliases {
28 spi0 = &spi_0;
29 spi1 = &spi_1;
30 spi2 = &spi_2;
Doug Anderson34db4992012-11-21 13:35:46 +090031 i2c0 = &i2c_0;
32 i2c1 = &i2c_1;
33 i2c2 = &i2c_2;
34 i2c3 = &i2c_3;
35 i2c4 = &i2c_4;
36 i2c5 = &i2c_5;
37 i2c6 = &i2c_6;
38 i2c7 = &i2c_7;
Tomasz Figab571abb2012-09-21 10:12:59 +090039 };
40
Thomas Abraham096ee6a2013-04-23 22:46:58 +090041 chipid@10000000 {
42 compatible = "samsung,exynos4210-chipid";
43 reg = <0x10000000 0x100>;
44 };
45
Tomasz Figa91d88f02012-11-22 00:22:09 +090046 pd_mfc: mfc-power-domain@10023C40 {
47 compatible = "samsung,exynos4210-pd";
48 reg = <0x10023C40 0x20>;
49 };
50
51 pd_g3d: g3d-power-domain@10023C60 {
52 compatible = "samsung,exynos4210-pd";
53 reg = <0x10023C60 0x20>;
54 };
55
56 pd_lcd0: lcd0-power-domain@10023C80 {
57 compatible = "samsung,exynos4210-pd";
58 reg = <0x10023C80 0x20>;
59 };
60
61 pd_tv: tv-power-domain@10023C20 {
62 compatible = "samsung,exynos4210-pd";
63 reg = <0x10023C20 0x20>;
64 };
65
66 pd_cam: cam-power-domain@10023C00 {
67 compatible = "samsung,exynos4210-pd";
68 reg = <0x10023C00 0x20>;
69 };
70
71 pd_gps: gps-power-domain@10023CE0 {
72 compatible = "samsung,exynos4210-pd";
73 reg = <0x10023CE0 0x20>;
Tomasz Figab571abb2012-09-21 10:12:59 +090074 };
75
76 gic:interrupt-controller@10490000 {
77 compatible = "arm,cortex-a9-gic";
78 #interrupt-cells = <3>;
79 interrupt-controller;
80 reg = <0x10490000 0x1000>, <0x10480000 0x100>;
81 };
82
83 combiner:interrupt-controller@10440000 {
84 compatible = "samsung,exynos4210-combiner";
85 #interrupt-cells = <2>;
86 interrupt-controller;
87 reg = <0x10440000 0x1000>;
88 };
89
Sylwester Nawrockia64b1b22013-04-04 16:04:09 +090090 sys_reg: sysreg {
91 compatible = "samsung,exynos4-sysreg", "syscon";
92 reg = <0x10010000 0x400>;
93 };
94
Tomasz Figab571abb2012-09-21 10:12:59 +090095 watchdog@10060000 {
96 compatible = "samsung,s3c2410-wdt";
97 reg = <0x10060000 0x100>;
98 interrupts = <0 43 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +090099 clocks = <&clock 345>;
100 clock-names = "watchdog";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900101 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900102 };
103
104 rtc@10070000 {
105 compatible = "samsung,s3c6410-rtc";
106 reg = <0x10070000 0x100>;
107 interrupts = <0 44 0>, <0 45 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900108 clocks = <&clock 346>;
109 clock-names = "rtc";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900110 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900111 };
112
113 keypad@100A0000 {
114 compatible = "samsung,s5pv210-keypad";
115 reg = <0x100A0000 0x100>;
116 interrupts = <0 109 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900117 clocks = <&clock 347>;
118 clock-names = "keypad";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900119 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900120 };
121
122 sdhci@12510000 {
123 compatible = "samsung,exynos4210-sdhci";
124 reg = <0x12510000 0x100>;
125 interrupts = <0 73 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900126 clocks = <&clock 297>, <&clock 145>;
127 clock-names = "hsmmc", "mmc_busclk.2";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900128 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900129 };
130
131 sdhci@12520000 {
132 compatible = "samsung,exynos4210-sdhci";
133 reg = <0x12520000 0x100>;
134 interrupts = <0 74 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900135 clocks = <&clock 298>, <&clock 146>;
136 clock-names = "hsmmc", "mmc_busclk.2";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900137 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900138 };
139
140 sdhci@12530000 {
141 compatible = "samsung,exynos4210-sdhci";
142 reg = <0x12530000 0x100>;
143 interrupts = <0 75 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900144 clocks = <&clock 299>, <&clock 147>;
145 clock-names = "hsmmc", "mmc_busclk.2";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900146 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900147 };
148
149 sdhci@12540000 {
150 compatible = "samsung,exynos4210-sdhci";
151 reg = <0x12540000 0x100>;
152 interrupts = <0 76 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900153 clocks = <&clock 300>, <&clock 148>;
154 clock-names = "hsmmc", "mmc_busclk.2";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900155 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900156 };
157
Sachin Kamat20901f72013-02-08 13:58:17 -0800158 mfc: codec@13400000 {
159 compatible = "samsung,mfc-v5";
160 reg = <0x13400000 0x10000>;
161 interrupts = <0 94 0>;
162 samsung,power-domain = <&pd_mfc>;
Sachin Kamate636f0a2013-04-10 19:01:51 +0900163 clocks = <&clock 170>, <&clock 273>;
164 clock-names = "sclk_mfc", "mfc";
Sachin Kamat20901f72013-02-08 13:58:17 -0800165 status = "disabled";
166 };
167
Tomasz Figab571abb2012-09-21 10:12:59 +0900168 serial@13800000 {
169 compatible = "samsung,exynos4210-uart";
170 reg = <0x13800000 0x100>;
171 interrupts = <0 52 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900172 clocks = <&clock 312>, <&clock 151>;
173 clock-names = "uart", "clk_uart_baud0";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900174 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900175 };
176
177 serial@13810000 {
178 compatible = "samsung,exynos4210-uart";
179 reg = <0x13810000 0x100>;
180 interrupts = <0 53 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900181 clocks = <&clock 313>, <&clock 152>;
182 clock-names = "uart", "clk_uart_baud0";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900183 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900184 };
185
186 serial@13820000 {
187 compatible = "samsung,exynos4210-uart";
188 reg = <0x13820000 0x100>;
189 interrupts = <0 54 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900190 clocks = <&clock 314>, <&clock 153>;
191 clock-names = "uart", "clk_uart_baud0";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900192 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900193 };
194
195 serial@13830000 {
196 compatible = "samsung,exynos4210-uart";
197 reg = <0x13830000 0x100>;
198 interrupts = <0 55 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900199 clocks = <&clock 315>, <&clock 154>;
200 clock-names = "uart", "clk_uart_baud0";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900201 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900202 };
203
Doug Anderson34db4992012-11-21 13:35:46 +0900204 i2c_0: i2c@13860000 {
Tomasz Figa1b198d52012-09-21 10:20:10 +0900205 #address-cells = <1>;
206 #size-cells = <0>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900207 compatible = "samsung,s3c2440-i2c";
208 reg = <0x13860000 0x100>;
209 interrupts = <0 58 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900210 clocks = <&clock 317>;
211 clock-names = "i2c";
Thomas Abraham045c8f62013-04-04 14:07:04 +0900212 pinctrl-names = "default";
213 pinctrl-0 = <&i2c0_bus>;
Tomasz Figac9e23f02012-09-21 10:13:31 +0900214 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900215 };
216
Doug Anderson34db4992012-11-21 13:35:46 +0900217 i2c_1: i2c@13870000 {
Tomasz Figa1b198d52012-09-21 10:20:10 +0900218 #address-cells = <1>;
219 #size-cells = <0>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900220 compatible = "samsung,s3c2440-i2c";
221 reg = <0x13870000 0x100>;
222 interrupts = <0 59 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900223 clocks = <&clock 318>;
224 clock-names = "i2c";
Thomas Abraham045c8f62013-04-04 14:07:04 +0900225 pinctrl-names = "default";
226 pinctrl-0 = <&i2c1_bus>;
Tomasz Figac9e23f02012-09-21 10:13:31 +0900227 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900228 };
229
Doug Anderson34db4992012-11-21 13:35:46 +0900230 i2c_2: i2c@13880000 {
Tomasz Figa1b198d52012-09-21 10:20:10 +0900231 #address-cells = <1>;
232 #size-cells = <0>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900233 compatible = "samsung,s3c2440-i2c";
234 reg = <0x13880000 0x100>;
235 interrupts = <0 60 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900236 clocks = <&clock 319>;
237 clock-names = "i2c";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900238 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900239 };
240
Doug Anderson34db4992012-11-21 13:35:46 +0900241 i2c_3: i2c@13890000 {
Tomasz Figa1b198d52012-09-21 10:20:10 +0900242 #address-cells = <1>;
243 #size-cells = <0>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900244 compatible = "samsung,s3c2440-i2c";
245 reg = <0x13890000 0x100>;
246 interrupts = <0 61 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900247 clocks = <&clock 320>;
248 clock-names = "i2c";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900249 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900250 };
251
Doug Anderson34db4992012-11-21 13:35:46 +0900252 i2c_4: i2c@138A0000 {
Tomasz Figa1b198d52012-09-21 10:20:10 +0900253 #address-cells = <1>;
254 #size-cells = <0>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900255 compatible = "samsung,s3c2440-i2c";
256 reg = <0x138A0000 0x100>;
257 interrupts = <0 62 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900258 clocks = <&clock 321>;
259 clock-names = "i2c";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900260 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900261 };
262
Doug Anderson34db4992012-11-21 13:35:46 +0900263 i2c_5: i2c@138B0000 {
Tomasz Figa1b198d52012-09-21 10:20:10 +0900264 #address-cells = <1>;
265 #size-cells = <0>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900266 compatible = "samsung,s3c2440-i2c";
267 reg = <0x138B0000 0x100>;
268 interrupts = <0 63 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900269 clocks = <&clock 322>;
270 clock-names = "i2c";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900271 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900272 };
273
Doug Anderson34db4992012-11-21 13:35:46 +0900274 i2c_6: i2c@138C0000 {
Tomasz Figa1b198d52012-09-21 10:20:10 +0900275 #address-cells = <1>;
276 #size-cells = <0>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900277 compatible = "samsung,s3c2440-i2c";
278 reg = <0x138C0000 0x100>;
279 interrupts = <0 64 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900280 clocks = <&clock 323>;
281 clock-names = "i2c";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900282 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900283 };
284
Doug Anderson34db4992012-11-21 13:35:46 +0900285 i2c_7: i2c@138D0000 {
Tomasz Figa1b198d52012-09-21 10:20:10 +0900286 #address-cells = <1>;
287 #size-cells = <0>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900288 compatible = "samsung,s3c2440-i2c";
289 reg = <0x138D0000 0x100>;
290 interrupts = <0 65 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900291 clocks = <&clock 324>;
292 clock-names = "i2c";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900293 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900294 };
295
296 spi_0: spi@13920000 {
297 compatible = "samsung,exynos4210-spi";
298 reg = <0x13920000 0x100>;
299 interrupts = <0 66 0>;
300 tx-dma-channel = <&pdma0 7>; /* preliminary */
301 rx-dma-channel = <&pdma0 6>; /* preliminary */
302 #address-cells = <1>;
303 #size-cells = <0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900304 clocks = <&clock 327>, <&clock 159>;
305 clock-names = "spi", "spi_busclk0";
Thomas Abraham045c8f62013-04-04 14:07:04 +0900306 pinctrl-names = "default";
307 pinctrl-0 = <&spi0_bus>;
Tomasz Figac9e23f02012-09-21 10:13:31 +0900308 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900309 };
310
311 spi_1: spi@13930000 {
312 compatible = "samsung,exynos4210-spi";
313 reg = <0x13930000 0x100>;
314 interrupts = <0 67 0>;
315 tx-dma-channel = <&pdma1 7>; /* preliminary */
316 rx-dma-channel = <&pdma1 6>; /* preliminary */
317 #address-cells = <1>;
318 #size-cells = <0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900319 clocks = <&clock 328>, <&clock 160>;
320 clock-names = "spi", "spi_busclk0";
Thomas Abraham045c8f62013-04-04 14:07:04 +0900321 pinctrl-names = "default";
322 pinctrl-0 = <&spi1_bus>;
Tomasz Figac9e23f02012-09-21 10:13:31 +0900323 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900324 };
325
326 spi_2: spi@13940000 {
327 compatible = "samsung,exynos4210-spi";
328 reg = <0x13940000 0x100>;
329 interrupts = <0 68 0>;
330 tx-dma-channel = <&pdma0 9>; /* preliminary */
331 rx-dma-channel = <&pdma0 8>; /* preliminary */
332 #address-cells = <1>;
333 #size-cells = <0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900334 clocks = <&clock 329>, <&clock 161>;
335 clock-names = "spi", "spi_busclk0";
Thomas Abraham045c8f62013-04-04 14:07:04 +0900336 pinctrl-names = "default";
337 pinctrl-0 = <&spi2_bus>;
Tomasz Figac9e23f02012-09-21 10:13:31 +0900338 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900339 };
340
Tomasz Figacc4193e2013-04-23 17:46:33 +0200341 pwm@139D0000 {
342 compatible = "samsung,exynos4210-pwm";
343 reg = <0x139D0000 0x1000>;
344 interrupts = <0 37 0>, <0 38 0>, <0 39 0>, <0 40 0>, <0 41 0>;
345 #pwm-cells = <2>;
346 status = "disabled";
347 };
348
Tomasz Figab571abb2012-09-21 10:12:59 +0900349 amba {
350 #address-cells = <1>;
351 #size-cells = <1>;
352 compatible = "arm,amba-bus";
353 interrupt-parent = <&gic>;
354 ranges;
355
356 pdma0: pdma@12680000 {
357 compatible = "arm,pl330", "arm,primecell";
358 reg = <0x12680000 0x1000>;
359 interrupts = <0 35 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900360 clocks = <&clock 292>;
361 clock-names = "apb_pclk";
Padmavathi Venna0a96d4d2013-03-07 10:33:07 +0900362 #dma-cells = <1>;
363 #dma-channels = <8>;
364 #dma-requests = <32>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900365 };
366
367 pdma1: pdma@12690000 {
368 compatible = "arm,pl330", "arm,primecell";
369 reg = <0x12690000 0x1000>;
370 interrupts = <0 36 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900371 clocks = <&clock 293>;
372 clock-names = "apb_pclk";
Padmavathi Venna0a96d4d2013-03-07 10:33:07 +0900373 #dma-cells = <1>;
374 #dma-channels = <8>;
375 #dma-requests = <32>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900376 };
Bartlomiej Zolnierkiewiczf7e758a2012-11-24 11:12:50 +0900377
378 mdma1: mdma@12850000 {
379 compatible = "arm,pl330", "arm,primecell";
380 reg = <0x12850000 0x1000>;
381 interrupts = <0 34 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900382 clocks = <&clock 279>;
383 clock-names = "apb_pclk";
Padmavathi Venna0a96d4d2013-03-07 10:33:07 +0900384 #dma-cells = <1>;
385 #dma-channels = <8>;
386 #dma-requests = <1>;
Bartlomiej Zolnierkiewiczf7e758a2012-11-24 11:12:50 +0900387 };
Tomasz Figab571abb2012-09-21 10:12:59 +0900388 };
Vikas Sajjan768c3a52013-04-08 15:48:15 +0900389
390 fimd: fimd@11c00000 {
391 compatible = "samsung,exynos4210-fimd";
392 interrupt-parent = <&combiner>;
393 reg = <0x11c00000 0x20000>;
394 interrupt-names = "fifo", "vsync", "lcd_sys";
395 interrupts = <11 0>, <11 1>, <11 2>;
396 clocks = <&clock 140>, <&clock 283>;
397 clock-names = "sclk_fimd", "fimd";
398 samsung,power-domain = <&pd_lcd0>;
399 status = "disabled";
400 };
Tomasz Figab571abb2012-09-21 10:12:59 +0900401};