Merge tag 'depends/phy-dt-header' into next/dt2
[cascardo/linux.git] / arch / arm / boot / dts / exynos4210.dtsi
1 /*
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
22 #include "exynos4.dtsi"
23 #include "exynos4210-pinctrl.dtsi"
24
25 / {
26         compatible = "samsung,exynos4210", "samsung,exynos4";
27
28         aliases {
29                 pinctrl0 = &pinctrl_0;
30                 pinctrl1 = &pinctrl_1;
31                 pinctrl2 = &pinctrl_2;
32         };
33
34         cpus {
35                 #address-cells = <1>;
36                 #size-cells = <0>;
37
38                 cpu@900 {
39                         device_type = "cpu";
40                         compatible = "arm,cortex-a9";
41                         reg = <0x900>;
42                 };
43
44                 cpu@901 {
45                         device_type = "cpu";
46                         compatible = "arm,cortex-a9";
47                         reg = <0x901>;
48                 };
49         };
50
51         pmu_system_controller: system-controller@10020000 {
52                 clock-names = "clkout0", "clkout1", "clkout2", "clkout3",
53                                 "clkout4", "clkout8", "clkout9";
54                 clocks = <&clock CLK_OUT_DMC>, <&clock CLK_OUT_TOP>,
55                         <&clock CLK_OUT_LEFTBUS>, <&clock CLK_OUT_RIGHTBUS>,
56                         <&clock CLK_OUT_CPU>, <&clock CLK_XXTI>,
57                         <&clock CLK_XUSBXTI>;
58                 #clock-cells = <1>;
59         };
60
61         sysram@02020000 {
62                 compatible = "mmio-sram";
63                 reg = <0x02020000 0x20000>;
64                 #address-cells = <1>;
65                 #size-cells = <1>;
66                 ranges = <0 0x02020000 0x20000>;
67
68                 smp-sysram@0 {
69                         compatible = "samsung,exynos4210-sysram";
70                         reg = <0x0 0x1000>;
71                 };
72
73                 smp-sysram@1f000 {
74                         compatible = "samsung,exynos4210-sysram-ns";
75                         reg = <0x1f000 0x1000>;
76                 };
77         };
78
79         pd_lcd1: lcd1-power-domain@10023CA0 {
80                 compatible = "samsung,exynos4210-pd";
81                 reg = <0x10023CA0 0x20>;
82         };
83
84         gic: interrupt-controller@10490000 {
85                 cpu-offset = <0x8000>;
86         };
87
88         combiner: interrupt-controller@10440000 {
89                 samsung,combiner-nr = <16>;
90                 interrupts = <0 0 0>, <0 1 0>, <0 2 0>, <0 3 0>,
91                              <0 4 0>, <0 5 0>, <0 6 0>, <0 7 0>,
92                              <0 8 0>, <0 9 0>, <0 10 0>, <0 11 0>,
93                              <0 12 0>, <0 13 0>, <0 14 0>, <0 15 0>;
94         };
95
96         mct@10050000 {
97                 compatible = "samsung,exynos4210-mct";
98                 reg = <0x10050000 0x800>;
99                 interrupt-parent = <&mct_map>;
100                 interrupts = <0>, <1>, <2>, <3>, <4>, <5>;
101                 clocks = <&clock CLK_FIN_PLL>, <&clock CLK_MCT>;
102                 clock-names = "fin_pll", "mct";
103
104                 mct_map: mct-map {
105                         #interrupt-cells = <1>;
106                         #address-cells = <0>;
107                         #size-cells = <0>;
108                         interrupt-map = <0 &gic 0 57 0>,
109                                         <1 &gic 0 69 0>,
110                                         <2 &combiner 12 6>,
111                                         <3 &combiner 12 7>,
112                                         <4 &gic 0 42 0>,
113                                         <5 &gic 0 48 0>;
114                 };
115         };
116
117         clock: clock-controller@10030000 {
118                 compatible = "samsung,exynos4210-clock";
119                 reg = <0x10030000 0x20000>;
120                 #clock-cells = <1>;
121         };
122
123         pinctrl_0: pinctrl@11400000 {
124                 compatible = "samsung,exynos4210-pinctrl";
125                 reg = <0x11400000 0x1000>;
126                 interrupts = <0 47 0>;
127         };
128
129         pinctrl_1: pinctrl@11000000 {
130                 compatible = "samsung,exynos4210-pinctrl";
131                 reg = <0x11000000 0x1000>;
132                 interrupts = <0 46 0>;
133
134                 wakup_eint: wakeup-interrupt-controller {
135                         compatible = "samsung,exynos4210-wakeup-eint";
136                         interrupt-parent = <&gic>;
137                         interrupts = <0 32 0>;
138                 };
139         };
140
141         pinctrl_2: pinctrl@03860000 {
142                 compatible = "samsung,exynos4210-pinctrl";
143                 reg = <0x03860000 0x1000>;
144         };
145
146         tmu@100C0000 {
147                 compatible = "samsung,exynos4210-tmu";
148                 interrupt-parent = <&combiner>;
149                 reg = <0x100C0000 0x100>;
150                 interrupts = <2 4>;
151                 clocks = <&clock CLK_TMU_APBIF>;
152                 clock-names = "tmu_apbif";
153                 status = "disabled";
154         };
155
156         g2d@12800000 {
157                 compatible = "samsung,s5pv210-g2d";
158                 reg = <0x12800000 0x1000>;
159                 interrupts = <0 89 0>;
160                 clocks = <&clock CLK_SCLK_FIMG2D>, <&clock CLK_G2D>;
161                 clock-names = "sclk_fimg2d", "fimg2d";
162                 status = "disabled";
163         };
164
165         camera {
166                 clocks = <&clock CLK_SCLK_CAM0>, <&clock CLK_SCLK_CAM1>,
167                          <&clock CLK_PIXELASYNCM0>, <&clock CLK_PIXELASYNCM1>;
168                 clock-names = "sclk_cam0", "sclk_cam1", "pxl_async0", "pxl_async1";
169
170                 fimc_0: fimc@11800000 {
171                         samsung,pix-limits = <4224 8192 1920 4224>;
172                         samsung,mainscaler-ext;
173                         samsung,cam-if;
174                 };
175
176                 fimc_1: fimc@11810000 {
177                         samsung,pix-limits = <4224 8192 1920 4224>;
178                         samsung,mainscaler-ext;
179                         samsung,cam-if;
180                 };
181
182                 fimc_2: fimc@11820000 {
183                         samsung,pix-limits = <4224 8192 1920 4224>;
184                         samsung,mainscaler-ext;
185                         samsung,lcd-wb;
186                 };
187
188                 fimc_3: fimc@11830000 {
189                         samsung,pix-limits = <1920 8192 1366 1920>;
190                         samsung,rotators = <0>;
191                         samsung,mainscaler-ext;
192                         samsung,lcd-wb;
193                 };
194         };
195 };