Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
[cascardo/linux.git] / arch / arm / boot / dts / exynos4210-origen.dts
1 /*
2  * Samsung's Exynos4210 based Origen board 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  * Device tree source file for Insignal's Origen board which is based on
10  * Samsung's Exynos4210 SoC.
11  *
12  * This program is free software; you can redistribute it and/or modify
13  * it under the terms of the GNU General Public License version 2 as
14  * published by the Free Software Foundation.
15 */
16
17 /dts-v1/;
18 #include "exynos4210.dtsi"
19 #include <dt-bindings/gpio/gpio.h>
20 #include <dt-bindings/input/input.h>
21
22 / {
23         model = "Insignal Origen evaluation board based on Exynos4210";
24         compatible = "insignal,origen", "samsung,exynos4210", "samsung,exynos4";
25
26         memory {
27                 reg = <0x40000000 0x10000000
28                        0x50000000 0x10000000
29                        0x60000000 0x10000000
30                        0x70000000 0x10000000>;
31         };
32
33         chosen {
34                 bootargs ="root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M console=ttySAC2,115200 init=/linuxrc";
35                 stdout-path = &serial_2;
36         };
37
38         regulators {
39                 compatible = "simple-bus";
40                 #address-cells = <1>;
41                 #size-cells = <0>;
42
43                 mmc_reg: regulator@0 {
44                         compatible = "regulator-fixed";
45                         reg = <0>;
46                         regulator-name = "VMEM_VDD_2.8V";
47                         regulator-min-microvolt = <2800000>;
48                         regulator-max-microvolt = <2800000>;
49                         gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>;
50                         enable-active-high;
51                 };
52         };
53
54         gpio_keys {
55                 compatible = "gpio-keys";
56                 #address-cells = <1>;
57                 #size-cells = <0>;
58
59                 up {
60                         label = "Up";
61                         gpios = <&gpx2 0 GPIO_ACTIVE_LOW>;
62                         linux,code = <KEY_UP>;
63                         wakeup-source;
64                 };
65
66                 down {
67                         label = "Down";
68                         gpios = <&gpx2 1 GPIO_ACTIVE_LOW>;
69                         linux,code = <KEY_DOWN>;
70                         wakeup-source;
71                 };
72
73                 back {
74                         label = "Back";
75                         gpios = <&gpx1 7 GPIO_ACTIVE_LOW>;
76                         linux,code = <KEY_BACK>;
77                         wakeup-source;
78                 };
79
80                 home {
81                         label = "Home";
82                         gpios = <&gpx1 6 GPIO_ACTIVE_LOW>;
83                         linux,code = <KEY_HOME>;
84                         wakeup-source;
85                 };
86
87                 menu {
88                         label = "Menu";
89                         gpios = <&gpx1 5 GPIO_ACTIVE_LOW>;
90                         linux,code = <KEY_MENU>;
91                         wakeup-source;
92                 };
93         };
94
95         leds {
96                 compatible = "gpio-leds";
97                 status {
98                         gpios = <&gpx1 3 GPIO_ACTIVE_LOW>;
99                         linux,default-trigger = "heartbeat";
100                 };
101         };
102
103         fixed-rate-clocks {
104                 xxti {
105                         compatible = "samsung,clock-xxti";
106                         clock-frequency = <0>;
107                 };
108
109                 xusbxti {
110                         compatible = "samsung,clock-xusbxti";
111                         clock-frequency = <24000000>;
112                 };
113         };
114
115         display-timings {
116                 native-mode = <&timing0>;
117                 timing0: timing {
118                         clock-frequency = <47500000>;
119                         hactive = <1024>;
120                         vactive = <600>;
121                         hfront-porch = <64>;
122                         hback-porch = <16>;
123                         hsync-len = <48>;
124                         vback-porch = <64>;
125                         vfront-porch = <16>;
126                         vsync-len = <3>;
127                 };
128         };
129 };
130
131 &cpu0 {
132         cpu0-supply = <&buck1_reg>;
133 };
134
135 &fimd {
136         pinctrl-0 = <&lcd_en &lcd_clk &lcd_data24 &pwm0_out>;
137         pinctrl-names = "default";
138         status = "okay";
139 };
140
141 &i2c_0 {
142         status = "okay";
143         samsung,i2c-sda-delay = <100>;
144         samsung,i2c-max-bus-freq = <20000>;
145         pinctrl-0 = <&i2c0_bus>;
146         pinctrl-names = "default";
147
148         max8997_pmic@66 {
149                 compatible = "maxim,max8997-pmic";
150                 reg = <0x66>;
151                 interrupt-parent = <&gpx0>;
152                 interrupts = <4 0>, <3 0>;
153
154                 max8997,pmic-buck1-dvs-voltage = <1350000>;
155                 max8997,pmic-buck2-dvs-voltage = <1100000>;
156                 max8997,pmic-buck5-dvs-voltage = <1200000>;
157
158                 regulators {
159                         ldo1_reg: LDO1 {
160                                 regulator-name = "VDD_ABB_3.3V";
161                                 regulator-min-microvolt = <3300000>;
162                                 regulator-max-microvolt = <3300000>;
163                         };
164
165                         ldo2_reg: LDO2 {
166                                 regulator-name = "VDD_ALIVE_1.1V";
167                                 regulator-min-microvolt = <1100000>;
168                                 regulator-max-microvolt = <1100000>;
169                                 regulator-always-on;
170                         };
171
172                         ldo3_reg: LDO3 {
173                                 regulator-name = "VMIPI_1.1V";
174                                 regulator-min-microvolt = <1100000>;
175                                 regulator-max-microvolt = <1100000>;
176                         };
177
178                         ldo4_reg: LDO4 {
179                                 regulator-name = "VDD_RTC_1.8V";
180                                 regulator-min-microvolt = <1800000>;
181                                 regulator-max-microvolt = <1800000>;
182                                 regulator-always-on;
183                         };
184
185                         ldo6_reg: LDO6 {
186                                 regulator-name = "VMIPI_1.8V";
187                                 regulator-min-microvolt = <1800000>;
188                                 regulator-max-microvolt = <1800000>;
189                                 regulator-always-on;
190                         };
191
192                         ldo7_reg: LDO7 {
193                                 regulator-name = "VDD_AUD_1.8V";
194                                 regulator-min-microvolt = <1800000>;
195                                 regulator-max-microvolt = <1800000>;
196                         };
197
198                         ldo8_reg: LDO8 {
199                                 regulator-name = "VADC_3.3V";
200                                 regulator-min-microvolt = <3300000>;
201                                 regulator-max-microvolt = <3300000>;
202                         };
203
204                         ldo9_reg: LDO9 {
205                                 regulator-name = "DVDD_SWB_2.8V";
206                                 regulator-min-microvolt = <2800000>;
207                                 regulator-max-microvolt = <2800000>;
208                                 regulator-always-on;
209                         };
210
211                         ldo10_reg: LDO10 {
212                                 regulator-name = "VDD_PLL_1.1V";
213                                 regulator-min-microvolt = <1100000>;
214                                 regulator-max-microvolt = <1100000>;
215                                 regulator-always-on;
216                         };
217
218                         ldo11_reg: LDO11 {
219                                 regulator-name = "VDD_AUD_3V";
220                                 regulator-min-microvolt = <3000000>;
221                                 regulator-max-microvolt = <3000000>;
222                         };
223
224                         ldo14_reg: LDO14 {
225                                 regulator-name = "AVDD18_SWB_1.8V";
226                                 regulator-min-microvolt = <1800000>;
227                                 regulator-max-microvolt = <1800000>;
228                                 regulator-always-on;
229                         };
230
231                         ldo17_reg: LDO17 {
232                                 regulator-name = "VDD_SWB_3.3V";
233                                 regulator-min-microvolt = <3300000>;
234                                 regulator-max-microvolt = <3300000>;
235                                 regulator-always-on;
236                         };
237
238                         ldo21_reg: LDO21 {
239                                 regulator-name = "VDD_MIF_1.2V";
240                                 regulator-min-microvolt = <1200000>;
241                                 regulator-max-microvolt = <1200000>;
242                                 regulator-always-on;
243                         };
244
245                         buck1_reg: BUCK1 {
246                                 /*
247                                 * HACK: The real name is VDD_ARM_1.2V,
248                                 * but exynos-cpufreq does not support
249                                 * DT-based regulator lookup yet.
250                                 */
251                                 regulator-name = "vdd_arm";
252                                 regulator-min-microvolt = <950000>;
253                                 regulator-max-microvolt = <1350000>;
254                                 regulator-always-on;
255                                 regulator-boot-on;
256                         };
257
258                         buck2_reg: BUCK2 {
259                                 regulator-name = "VDD_INT_1.1V";
260                                 regulator-min-microvolt = <900000>;
261                                 regulator-max-microvolt = <1100000>;
262                                 regulator-always-on;
263                                 regulator-boot-on;
264                         };
265
266                         buck3_reg: BUCK3 {
267                                 regulator-name = "VDD_G3D_1.1V";
268                                 regulator-min-microvolt = <900000>;
269                                 regulator-max-microvolt = <1100000>;
270                         };
271
272                         buck5_reg: BUCK5 {
273                                 regulator-name = "VDDQ_M1M2_1.2V";
274                                 regulator-min-microvolt = <1200000>;
275                                 regulator-max-microvolt = <1200000>;
276                                 regulator-always-on;
277                         };
278
279                         buck7_reg: BUCK7 {
280                                 regulator-name = "VDD_LCD_3.3V";
281                                 regulator-min-microvolt = <3300000>;
282                                 regulator-max-microvolt = <3300000>;
283                                 regulator-boot-on;
284                                 regulator-always-on;
285                         };
286                 };
287         };
288 };
289
290 &mfc {
291         samsung,mfc-r = <0x43000000 0x800000>;
292         samsung,mfc-l = <0x51000000 0x800000>;
293         status = "okay";
294 };
295
296 &sdhci_0 {
297         bus-width = <4>;
298         pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_cd>;
299         pinctrl-names = "default";
300         vmmc-supply = <&mmc_reg>;
301         status = "okay";
302 };
303
304 &sdhci_2 {
305         bus-width = <4>;
306         pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>;
307         pinctrl-names = "default";
308         vmmc-supply = <&mmc_reg>;
309         status = "okay";
310 };
311
312 &serial_0 {
313         status = "okay";
314 };
315
316 &serial_1 {
317         status = "okay";
318 };
319
320 &serial_2 {
321         status = "okay";
322 };
323
324 &serial_3 {
325         status = "okay";
326 };
327
328 &rtc {
329         status = "okay";
330 };
331
332 &tmu {
333         status = "okay";
334 };
335
336 &watchdog {
337         status = "okay";
338 };