blob: e050d85cdacddf24268870988badefca45d75a88 [file] [log] [blame]
Thomas Abraham0561cea2011-11-02 19:31:15 +09001/*
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/;
Padmavathi Venna37992792013-06-18 00:02:08 +090018#include "exynos4210.dtsi"
Sachin Kamat2d7a5bd2014-05-28 00:56:16 +090019#include <dt-bindings/input/input.h>
Thomas Abraham0561cea2011-11-02 19:31:15 +090020
21/ {
22 model = "Insignal Origen evaluation board based on Exynos4210";
Sachin Kamat8bdb31b2014-03-21 02:17:22 +090023 compatible = "insignal,origen", "samsung,exynos4210", "samsung,exynos4";
Thomas Abraham0561cea2011-11-02 19:31:15 +090024
25 memory {
Tomasz Figa49ed67a42012-11-22 00:15:40 +090026 reg = <0x40000000 0x10000000
27 0x50000000 0x10000000
28 0x60000000 0x10000000
29 0x70000000 0x10000000>;
Thomas Abraham0561cea2011-11-02 19:31:15 +090030 };
31
32 chosen {
33 bootargs ="root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M console=ttySAC2,115200 init=/linuxrc";
Tomasz Figa62d38092015-01-23 14:47:42 +010034 stdout-path = &serial_2;
Thomas Abraham0561cea2011-11-02 19:31:15 +090035 };
36
Sachin Kamataf617c92013-10-06 09:20:59 +090037 regulators {
38 compatible = "simple-bus";
39 #address-cells = <1>;
40 #size-cells = <0>;
41
42 mmc_reg: regulator@0 {
43 compatible = "regulator-fixed";
44 reg = <0>;
45 regulator-name = "VMEM_VDD_2.8V";
46 regulator-min-microvolt = <2800000>;
47 regulator-max-microvolt = <2800000>;
48 gpio = <&gpx1 1 0>;
49 enable-active-high;
50 };
Tomasz Figacf7c3972012-11-22 00:15:40 +090051 };
52
Thomas Abraham0561cea2011-11-02 19:31:15 +090053 gpio_keys {
54 compatible = "gpio-keys";
55 #address-cells = <1>;
56 #size-cells = <0>;
57
58 up {
59 label = "Up";
Tomasz Figa41d8bdf2012-11-22 00:15:40 +090060 gpios = <&gpx2 0 1>;
Sachin Kamat2d7a5bd2014-05-28 00:56:16 +090061 linux,code = <KEY_UP>;
Tushar Beherac8c24da2012-09-21 11:13:25 +090062 gpio-key,wakeup;
Thomas Abraham0561cea2011-11-02 19:31:15 +090063 };
64
65 down {
66 label = "Down";
Tomasz Figa41d8bdf2012-11-22 00:15:40 +090067 gpios = <&gpx2 1 1>;
Sachin Kamat2d7a5bd2014-05-28 00:56:16 +090068 linux,code = <KEY_DOWN>;
Tushar Beherac8c24da2012-09-21 11:13:25 +090069 gpio-key,wakeup;
Thomas Abraham0561cea2011-11-02 19:31:15 +090070 };
71
72 back {
73 label = "Back";
Tomasz Figa41d8bdf2012-11-22 00:15:40 +090074 gpios = <&gpx1 7 1>;
Sachin Kamat2d7a5bd2014-05-28 00:56:16 +090075 linux,code = <KEY_BACK>;
Tushar Beherac8c24da2012-09-21 11:13:25 +090076 gpio-key,wakeup;
Thomas Abraham0561cea2011-11-02 19:31:15 +090077 };
78
79 home {
80 label = "Home";
Tomasz Figa41d8bdf2012-11-22 00:15:40 +090081 gpios = <&gpx1 6 1>;
Sachin Kamat2d7a5bd2014-05-28 00:56:16 +090082 linux,code = <KEY_HOME>;
Tushar Beherac8c24da2012-09-21 11:13:25 +090083 gpio-key,wakeup;
Thomas Abraham0561cea2011-11-02 19:31:15 +090084 };
85
86 menu {
87 label = "Menu";
Tomasz Figa41d8bdf2012-11-22 00:15:40 +090088 gpios = <&gpx1 5 1>;
Sachin Kamat2d7a5bd2014-05-28 00:56:16 +090089 linux,code = <KEY_MENU>;
Tushar Beherac8c24da2012-09-21 11:13:25 +090090 gpio-key,wakeup;
Thomas Abraham0561cea2011-11-02 19:31:15 +090091 };
92 };
93
Sachin Kamat162b1722012-09-08 10:09:03 +090094 leds {
95 compatible = "gpio-leds";
96 status {
Tomasz Figa41d8bdf2012-11-22 00:15:40 +090097 gpios = <&gpx1 3 1>;
Sachin Kamat162b1722012-09-08 10:09:03 +090098 linux,default-trigger = "heartbeat";
99 };
100 };
Thomas Abraham8b6076d2013-03-09 17:19:22 +0900101
102 fixed-rate-clocks {
103 xxti {
104 compatible = "samsung,clock-xxti";
105 clock-frequency = <0>;
106 };
107
108 xusbxti {
109 compatible = "samsung,clock-xusbxti";
110 clock-frequency = <24000000>;
111 };
112 };
Sachin Kamat7c1a26a2013-06-19 00:41:51 +0900113
Sachin Kamat7c1a26a2013-06-19 00:41:51 +0900114 display-timings {
115 native-mode = <&timing0>;
116 timing0: timing {
Tushar Behera67ddd052013-12-12 07:45:07 +0900117 clock-frequency = <47500000>;
Sachin Kamat7c1a26a2013-06-19 00:41:51 +0900118 hactive = <1024>;
119 vactive = <600>;
120 hfront-porch = <64>;
121 hback-porch = <16>;
122 hsync-len = <48>;
123 vback-porch = <64>;
124 vfront-porch = <16>;
125 vsync-len = <3>;
126 };
127 };
Thomas Abraham0561cea2011-11-02 19:31:15 +0900128};
Krzysztof Kozlowski165d6582015-04-06 21:00:44 +0200129
Thomas Abraham300bde72015-04-03 18:43:47 +0200130&cpu0 {
131 cpu0-supply = <&buck1_reg>;
132};
133
Krzysztof Kozlowski165d6582015-04-06 21:00:44 +0200134&fimd {
135 pinctrl-0 = <&lcd_en &lcd_clk &lcd_data24 &pwm0_out>;
136 pinctrl-names = "default";
137 status = "okay";
138};
139
140&g2d {
141 status = "okay";
142};
143
144&i2c_0 {
145 status = "okay";
146 samsung,i2c-sda-delay = <100>;
147 samsung,i2c-max-bus-freq = <20000>;
148 pinctrl-0 = <&i2c0_bus>;
149 pinctrl-names = "default";
150
151 max8997_pmic@66 {
152 compatible = "maxim,max8997-pmic";
153 reg = <0x66>;
154 interrupt-parent = <&gpx0>;
155 interrupts = <4 0>, <3 0>;
156
157 max8997,pmic-buck1-dvs-voltage = <1350000>;
158 max8997,pmic-buck2-dvs-voltage = <1100000>;
159 max8997,pmic-buck5-dvs-voltage = <1200000>;
160
161 regulators {
162 ldo1_reg: LDO1 {
163 regulator-name = "VDD_ABB_3.3V";
164 regulator-min-microvolt = <3300000>;
165 regulator-max-microvolt = <3300000>;
166 };
167
168 ldo2_reg: LDO2 {
169 regulator-name = "VDD_ALIVE_1.1V";
170 regulator-min-microvolt = <1100000>;
171 regulator-max-microvolt = <1100000>;
172 regulator-always-on;
173 };
174
175 ldo3_reg: LDO3 {
176 regulator-name = "VMIPI_1.1V";
177 regulator-min-microvolt = <1100000>;
178 regulator-max-microvolt = <1100000>;
179 };
180
181 ldo4_reg: LDO4 {
182 regulator-name = "VDD_RTC_1.8V";
183 regulator-min-microvolt = <1800000>;
184 regulator-max-microvolt = <1800000>;
185 regulator-always-on;
186 };
187
188 ldo6_reg: LDO6 {
189 regulator-name = "VMIPI_1.8V";
190 regulator-min-microvolt = <1800000>;
191 regulator-max-microvolt = <1800000>;
192 regulator-always-on;
193 };
194
195 ldo7_reg: LDO7 {
196 regulator-name = "VDD_AUD_1.8V";
197 regulator-min-microvolt = <1800000>;
198 regulator-max-microvolt = <1800000>;
199 };
200
201 ldo8_reg: LDO8 {
202 regulator-name = "VADC_3.3V";
203 regulator-min-microvolt = <3300000>;
204 regulator-max-microvolt = <3300000>;
205 };
206
207 ldo9_reg: LDO9 {
208 regulator-name = "DVDD_SWB_2.8V";
209 regulator-min-microvolt = <2800000>;
210 regulator-max-microvolt = <2800000>;
211 regulator-always-on;
212 };
213
214 ldo10_reg: LDO10 {
215 regulator-name = "VDD_PLL_1.1V";
216 regulator-min-microvolt = <1100000>;
217 regulator-max-microvolt = <1100000>;
218 regulator-always-on;
219 };
220
221 ldo11_reg: LDO11 {
222 regulator-name = "VDD_AUD_3V";
223 regulator-min-microvolt = <3000000>;
224 regulator-max-microvolt = <3000000>;
225 };
226
227 ldo14_reg: LDO14 {
228 regulator-name = "AVDD18_SWB_1.8V";
229 regulator-min-microvolt = <1800000>;
230 regulator-max-microvolt = <1800000>;
231 regulator-always-on;
232 };
233
234 ldo17_reg: LDO17 {
235 regulator-name = "VDD_SWB_3.3V";
236 regulator-min-microvolt = <3300000>;
237 regulator-max-microvolt = <3300000>;
238 regulator-always-on;
239 };
240
241 ldo21_reg: LDO21 {
242 regulator-name = "VDD_MIF_1.2V";
243 regulator-min-microvolt = <1200000>;
244 regulator-max-microvolt = <1200000>;
245 regulator-always-on;
246 };
247
248 buck1_reg: BUCK1 {
249 /*
250 * HACK: The real name is VDD_ARM_1.2V,
251 * but exynos-cpufreq does not support
252 * DT-based regulator lookup yet.
253 */
254 regulator-name = "vdd_arm";
255 regulator-min-microvolt = <950000>;
256 regulator-max-microvolt = <1350000>;
257 regulator-always-on;
258 regulator-boot-on;
259 };
260
261 buck2_reg: BUCK2 {
262 regulator-name = "VDD_INT_1.1V";
263 regulator-min-microvolt = <900000>;
264 regulator-max-microvolt = <1100000>;
265 regulator-always-on;
266 regulator-boot-on;
267 };
268
269 buck3_reg: BUCK3 {
270 regulator-name = "VDD_G3D_1.1V";
271 regulator-min-microvolt = <900000>;
272 regulator-max-microvolt = <1100000>;
273 };
274
275 buck5_reg: BUCK5 {
276 regulator-name = "VDDQ_M1M2_1.2V";
277 regulator-min-microvolt = <1200000>;
278 regulator-max-microvolt = <1200000>;
279 regulator-always-on;
280 };
281
282 buck7_reg: BUCK7 {
283 regulator-name = "VDD_LCD_3.3V";
284 regulator-min-microvolt = <3300000>;
285 regulator-max-microvolt = <3300000>;
286 regulator-boot-on;
287 regulator-always-on;
288 };
289 };
290 };
291};
292
293&mfc {
294 samsung,mfc-r = <0x43000000 0x800000>;
295 samsung,mfc-l = <0x51000000 0x800000>;
296 status = "okay";
297};
298
299&sdhci_0 {
300 bus-width = <4>;
301 pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_cd>;
302 pinctrl-names = "default";
303 vmmc-supply = <&mmc_reg>;
304 status = "okay";
305};
306
307&sdhci_2 {
308 bus-width = <4>;
309 pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>;
310 pinctrl-names = "default";
311 vmmc-supply = <&mmc_reg>;
312 status = "okay";
313};
314
315&serial_0 {
316 status = "okay";
317};
318
319&serial_1 {
320 status = "okay";
321};
322
323&serial_2 {
324 status = "okay";
325};
326
327&serial_3 {
328 status = "okay";
329};
330
331&rtc {
332 status = "okay";
333};
334
335&tmu {
336 status = "okay";
337};
338
339&watchdog {
340 status = "okay";
341};