blob: be2751eebaf84484bfb6281701876972b500e77a [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"
Javier Martinez Canillas39c1c412015-10-08 07:39:58 +090019#include <dt-bindings/gpio/gpio.h>
Sachin Kamat2d7a5bd2014-05-28 00:56:16 +090020#include <dt-bindings/input/input.h>
Marek Szyprowski8b9ac7e2016-05-24 15:31:29 +020021#include "exynos-mfc-reserved-memory.dtsi"
Thomas Abraham0561cea2011-11-02 19:31:15 +090022
23/ {
24 model = "Insignal Origen evaluation board based on Exynos4210";
Sachin Kamat8bdb31b2014-03-21 02:17:22 +090025 compatible = "insignal,origen", "samsung,exynos4210", "samsung,exynos4";
Thomas Abraham0561cea2011-11-02 19:31:15 +090026
27 memory {
Tomasz Figa49ed67a42012-11-22 00:15:40 +090028 reg = <0x40000000 0x10000000
29 0x50000000 0x10000000
30 0x60000000 0x10000000
31 0x70000000 0x10000000>;
Thomas Abraham0561cea2011-11-02 19:31:15 +090032 };
33
34 chosen {
35 bootargs ="root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M console=ttySAC2,115200 init=/linuxrc";
Tomasz Figa62d38092015-01-23 14:47:42 +010036 stdout-path = &serial_2;
Thomas Abraham0561cea2011-11-02 19:31:15 +090037 };
38
Sachin Kamataf617c92013-10-06 09:20:59 +090039 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>;
Javier Martinez Canillas39c1c412015-10-08 07:39:58 +090050 gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>;
Sachin Kamataf617c92013-10-06 09:20:59 +090051 enable-active-high;
52 };
Tomasz Figacf7c3972012-11-22 00:15:40 +090053 };
54
Thomas Abraham0561cea2011-11-02 19:31:15 +090055 gpio_keys {
56 compatible = "gpio-keys";
57 #address-cells = <1>;
58 #size-cells = <0>;
59
60 up {
61 label = "Up";
Javier Martinez Canillas39c1c412015-10-08 07:39:58 +090062 gpios = <&gpx2 0 GPIO_ACTIVE_LOW>;
Sachin Kamat2d7a5bd2014-05-28 00:56:16 +090063 linux,code = <KEY_UP>;
Sudeep Holla36a02822016-01-28 15:59:58 +000064 wakeup-source;
Thomas Abraham0561cea2011-11-02 19:31:15 +090065 };
66
67 down {
68 label = "Down";
Javier Martinez Canillas39c1c412015-10-08 07:39:58 +090069 gpios = <&gpx2 1 GPIO_ACTIVE_LOW>;
Sachin Kamat2d7a5bd2014-05-28 00:56:16 +090070 linux,code = <KEY_DOWN>;
Sudeep Holla36a02822016-01-28 15:59:58 +000071 wakeup-source;
Thomas Abraham0561cea2011-11-02 19:31:15 +090072 };
73
74 back {
75 label = "Back";
Javier Martinez Canillas39c1c412015-10-08 07:39:58 +090076 gpios = <&gpx1 7 GPIO_ACTIVE_LOW>;
Sachin Kamat2d7a5bd2014-05-28 00:56:16 +090077 linux,code = <KEY_BACK>;
Sudeep Holla36a02822016-01-28 15:59:58 +000078 wakeup-source;
Thomas Abraham0561cea2011-11-02 19:31:15 +090079 };
80
81 home {
82 label = "Home";
Javier Martinez Canillas39c1c412015-10-08 07:39:58 +090083 gpios = <&gpx1 6 GPIO_ACTIVE_LOW>;
Sachin Kamat2d7a5bd2014-05-28 00:56:16 +090084 linux,code = <KEY_HOME>;
Sudeep Holla36a02822016-01-28 15:59:58 +000085 wakeup-source;
Thomas Abraham0561cea2011-11-02 19:31:15 +090086 };
87
88 menu {
89 label = "Menu";
Javier Martinez Canillas39c1c412015-10-08 07:39:58 +090090 gpios = <&gpx1 5 GPIO_ACTIVE_LOW>;
Sachin Kamat2d7a5bd2014-05-28 00:56:16 +090091 linux,code = <KEY_MENU>;
Sudeep Holla36a02822016-01-28 15:59:58 +000092 wakeup-source;
Thomas Abraham0561cea2011-11-02 19:31:15 +090093 };
94 };
95
Sachin Kamat162b1722012-09-08 10:09:03 +090096 leds {
97 compatible = "gpio-leds";
98 status {
Javier Martinez Canillas39c1c412015-10-08 07:39:58 +090099 gpios = <&gpx1 3 GPIO_ACTIVE_LOW>;
Sachin Kamat162b1722012-09-08 10:09:03 +0900100 linux,default-trigger = "heartbeat";
101 };
102 };
Thomas Abraham8b6076d2013-03-09 17:19:22 +0900103
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 };
Sachin Kamat7c1a26a2013-06-19 00:41:51 +0900115
Sachin Kamat7c1a26a2013-06-19 00:41:51 +0900116 display-timings {
117 native-mode = <&timing0>;
118 timing0: timing {
Tushar Behera67ddd052013-12-12 07:45:07 +0900119 clock-frequency = <47500000>;
Sachin Kamat7c1a26a2013-06-19 00:41:51 +0900120 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 };
Thomas Abraham0561cea2011-11-02 19:31:15 +0900130};
Krzysztof Kozlowski165d6582015-04-06 21:00:44 +0200131
Thomas Abraham300bde72015-04-03 18:43:47 +0200132&cpu0 {
133 cpu0-supply = <&buck1_reg>;
134};
135
Krzysztof Kozlowski165d6582015-04-06 21:00:44 +0200136&fimd {
137 pinctrl-0 = <&lcd_en &lcd_clk &lcd_data24 &pwm0_out>;
138 pinctrl-names = "default";
139 status = "okay";
140};
141
Krzysztof Kozlowski165d6582015-04-06 21:00:44 +0200142&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
Krzysztof Kozlowski165d6582015-04-06 21:00:44 +0200291&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};