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