blob: 7cfbbd3b7732bdaa0869420ddd12a09a31f67092 [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
22/include/ "skeleton.dtsi"
23
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>;
163 status = "disabled";
164 };
165
Tomasz Figab571abb2012-09-21 10:12:59 +0900166 serial@13800000 {
167 compatible = "samsung,exynos4210-uart";
168 reg = <0x13800000 0x100>;
169 interrupts = <0 52 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900170 clocks = <&clock 312>, <&clock 151>;
171 clock-names = "uart", "clk_uart_baud0";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900172 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900173 };
174
175 serial@13810000 {
176 compatible = "samsung,exynos4210-uart";
177 reg = <0x13810000 0x100>;
178 interrupts = <0 53 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900179 clocks = <&clock 313>, <&clock 152>;
180 clock-names = "uart", "clk_uart_baud0";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900181 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900182 };
183
184 serial@13820000 {
185 compatible = "samsung,exynos4210-uart";
186 reg = <0x13820000 0x100>;
187 interrupts = <0 54 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900188 clocks = <&clock 314>, <&clock 153>;
189 clock-names = "uart", "clk_uart_baud0";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900190 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900191 };
192
193 serial@13830000 {
194 compatible = "samsung,exynos4210-uart";
195 reg = <0x13830000 0x100>;
196 interrupts = <0 55 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900197 clocks = <&clock 315>, <&clock 154>;
198 clock-names = "uart", "clk_uart_baud0";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900199 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900200 };
201
Doug Anderson34db4992012-11-21 13:35:46 +0900202 i2c_0: i2c@13860000 {
Tomasz Figa1b198d52012-09-21 10:20:10 +0900203 #address-cells = <1>;
204 #size-cells = <0>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900205 compatible = "samsung,s3c2440-i2c";
206 reg = <0x13860000 0x100>;
207 interrupts = <0 58 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900208 clocks = <&clock 317>;
209 clock-names = "i2c";
Thomas Abraham045c8f62013-04-04 14:07:04 +0900210 pinctrl-names = "default";
211 pinctrl-0 = <&i2c0_bus>;
Tomasz Figac9e23f02012-09-21 10:13:31 +0900212 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900213 };
214
Doug Anderson34db4992012-11-21 13:35:46 +0900215 i2c_1: i2c@13870000 {
Tomasz Figa1b198d52012-09-21 10:20:10 +0900216 #address-cells = <1>;
217 #size-cells = <0>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900218 compatible = "samsung,s3c2440-i2c";
219 reg = <0x13870000 0x100>;
220 interrupts = <0 59 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900221 clocks = <&clock 318>;
222 clock-names = "i2c";
Thomas Abraham045c8f62013-04-04 14:07:04 +0900223 pinctrl-names = "default";
224 pinctrl-0 = <&i2c1_bus>;
Tomasz Figac9e23f02012-09-21 10:13:31 +0900225 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900226 };
227
Doug Anderson34db4992012-11-21 13:35:46 +0900228 i2c_2: i2c@13880000 {
Tomasz Figa1b198d52012-09-21 10:20:10 +0900229 #address-cells = <1>;
230 #size-cells = <0>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900231 compatible = "samsung,s3c2440-i2c";
232 reg = <0x13880000 0x100>;
233 interrupts = <0 60 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900234 clocks = <&clock 319>;
235 clock-names = "i2c";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900236 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900237 };
238
Doug Anderson34db4992012-11-21 13:35:46 +0900239 i2c_3: i2c@13890000 {
Tomasz Figa1b198d52012-09-21 10:20:10 +0900240 #address-cells = <1>;
241 #size-cells = <0>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900242 compatible = "samsung,s3c2440-i2c";
243 reg = <0x13890000 0x100>;
244 interrupts = <0 61 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900245 clocks = <&clock 320>;
246 clock-names = "i2c";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900247 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900248 };
249
Doug Anderson34db4992012-11-21 13:35:46 +0900250 i2c_4: i2c@138A0000 {
Tomasz Figa1b198d52012-09-21 10:20:10 +0900251 #address-cells = <1>;
252 #size-cells = <0>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900253 compatible = "samsung,s3c2440-i2c";
254 reg = <0x138A0000 0x100>;
255 interrupts = <0 62 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900256 clocks = <&clock 321>;
257 clock-names = "i2c";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900258 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900259 };
260
Doug Anderson34db4992012-11-21 13:35:46 +0900261 i2c_5: i2c@138B0000 {
Tomasz Figa1b198d52012-09-21 10:20:10 +0900262 #address-cells = <1>;
263 #size-cells = <0>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900264 compatible = "samsung,s3c2440-i2c";
265 reg = <0x138B0000 0x100>;
266 interrupts = <0 63 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900267 clocks = <&clock 322>;
268 clock-names = "i2c";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900269 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900270 };
271
Doug Anderson34db4992012-11-21 13:35:46 +0900272 i2c_6: i2c@138C0000 {
Tomasz Figa1b198d52012-09-21 10:20:10 +0900273 #address-cells = <1>;
274 #size-cells = <0>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900275 compatible = "samsung,s3c2440-i2c";
276 reg = <0x138C0000 0x100>;
277 interrupts = <0 64 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900278 clocks = <&clock 323>;
279 clock-names = "i2c";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900280 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900281 };
282
Doug Anderson34db4992012-11-21 13:35:46 +0900283 i2c_7: i2c@138D0000 {
Tomasz Figa1b198d52012-09-21 10:20:10 +0900284 #address-cells = <1>;
285 #size-cells = <0>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900286 compatible = "samsung,s3c2440-i2c";
287 reg = <0x138D0000 0x100>;
288 interrupts = <0 65 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900289 clocks = <&clock 324>;
290 clock-names = "i2c";
Tomasz Figac9e23f02012-09-21 10:13:31 +0900291 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900292 };
293
294 spi_0: spi@13920000 {
295 compatible = "samsung,exynos4210-spi";
296 reg = <0x13920000 0x100>;
297 interrupts = <0 66 0>;
298 tx-dma-channel = <&pdma0 7>; /* preliminary */
299 rx-dma-channel = <&pdma0 6>; /* preliminary */
300 #address-cells = <1>;
301 #size-cells = <0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900302 clocks = <&clock 327>, <&clock 159>;
303 clock-names = "spi", "spi_busclk0";
Thomas Abraham045c8f62013-04-04 14:07:04 +0900304 pinctrl-names = "default";
305 pinctrl-0 = <&spi0_bus>;
Tomasz Figac9e23f02012-09-21 10:13:31 +0900306 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900307 };
308
309 spi_1: spi@13930000 {
310 compatible = "samsung,exynos4210-spi";
311 reg = <0x13930000 0x100>;
312 interrupts = <0 67 0>;
313 tx-dma-channel = <&pdma1 7>; /* preliminary */
314 rx-dma-channel = <&pdma1 6>; /* preliminary */
315 #address-cells = <1>;
316 #size-cells = <0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900317 clocks = <&clock 328>, <&clock 160>;
318 clock-names = "spi", "spi_busclk0";
Thomas Abraham045c8f62013-04-04 14:07:04 +0900319 pinctrl-names = "default";
320 pinctrl-0 = <&spi1_bus>;
Tomasz Figac9e23f02012-09-21 10:13:31 +0900321 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900322 };
323
324 spi_2: spi@13940000 {
325 compatible = "samsung,exynos4210-spi";
326 reg = <0x13940000 0x100>;
327 interrupts = <0 68 0>;
328 tx-dma-channel = <&pdma0 9>; /* preliminary */
329 rx-dma-channel = <&pdma0 8>; /* preliminary */
330 #address-cells = <1>;
331 #size-cells = <0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900332 clocks = <&clock 329>, <&clock 161>;
333 clock-names = "spi", "spi_busclk0";
Thomas Abraham045c8f62013-04-04 14:07:04 +0900334 pinctrl-names = "default";
335 pinctrl-0 = <&spi2_bus>;
Tomasz Figac9e23f02012-09-21 10:13:31 +0900336 status = "disabled";
Tomasz Figab571abb2012-09-21 10:12:59 +0900337 };
338
339 amba {
340 #address-cells = <1>;
341 #size-cells = <1>;
342 compatible = "arm,amba-bus";
343 interrupt-parent = <&gic>;
344 ranges;
345
346 pdma0: pdma@12680000 {
347 compatible = "arm,pl330", "arm,primecell";
348 reg = <0x12680000 0x1000>;
349 interrupts = <0 35 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900350 clocks = <&clock 292>;
351 clock-names = "apb_pclk";
Padmavathi Venna0a96d4d2013-03-07 10:33:07 +0900352 #dma-cells = <1>;
353 #dma-channels = <8>;
354 #dma-requests = <32>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900355 };
356
357 pdma1: pdma@12690000 {
358 compatible = "arm,pl330", "arm,primecell";
359 reg = <0x12690000 0x1000>;
360 interrupts = <0 36 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900361 clocks = <&clock 293>;
362 clock-names = "apb_pclk";
Padmavathi Venna0a96d4d2013-03-07 10:33:07 +0900363 #dma-cells = <1>;
364 #dma-channels = <8>;
365 #dma-requests = <32>;
Tomasz Figab571abb2012-09-21 10:12:59 +0900366 };
Bartlomiej Zolnierkiewiczf7e758a2012-11-24 11:12:50 +0900367
368 mdma1: mdma@12850000 {
369 compatible = "arm,pl330", "arm,primecell";
370 reg = <0x12850000 0x1000>;
371 interrupts = <0 34 0>;
Thomas Abraham7ad34332013-03-09 17:11:38 +0900372 clocks = <&clock 279>;
373 clock-names = "apb_pclk";
Padmavathi Venna0a96d4d2013-03-07 10:33:07 +0900374 #dma-cells = <1>;
375 #dma-channels = <8>;
376 #dma-requests = <1>;
Bartlomiej Zolnierkiewiczf7e758a2012-11-24 11:12:50 +0900377 };
Tomasz Figab571abb2012-09-21 10:12:59 +0900378 };
Vikas Sajjan768c3a52013-04-08 15:48:15 +0900379
380 fimd: fimd@11c00000 {
381 compatible = "samsung,exynos4210-fimd";
382 interrupt-parent = <&combiner>;
383 reg = <0x11c00000 0x20000>;
384 interrupt-names = "fifo", "vsync", "lcd_sys";
385 interrupts = <11 0>, <11 1>, <11 2>;
386 clocks = <&clock 140>, <&clock 283>;
387 clock-names = "sclk_fimd", "fimd";
388 samsung,power-domain = <&pd_lcd0>;
389 status = "disabled";
390 };
Tomasz Figab571abb2012-09-21 10:12:59 +0900391};