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