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