• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Insignal's Exynos4412 based Origen board device tree source
3 *
4 * Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
5 *		http://www.samsung.com
6 *
7 * Device tree source file for Insignal's Origen board which is based on
8 * Samsung's Exynos4412 SoC.
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13*/
14
15/dts-v1/;
16#include "exynos4412.dtsi"
17#include <dt-bindings/gpio/gpio.h>
18#include <dt-bindings/input/input.h>
19#include "exynos-mfc-reserved-memory.dtsi"
20
21/ {
22	model = "Insignal Origen evaluation board based on Exynos4412";
23	compatible = "insignal,origen4412", "samsung,exynos4412", "samsung,exynos4";
24
25	memory@40000000 {
26		device_type = "memory";
27		reg = <0x40000000 0x40000000>;
28	};
29
30	chosen {
31		bootargs ="console=ttySAC2,115200";
32		stdout-path = &serial_2;
33	};
34
35	firmware@0203F000 {
36		compatible = "samsung,secure-firmware";
37		reg = <0x0203F000 0x1000>;
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	display-timings {
57		native-mode = <&timing0>;
58		timing0: timing {
59			clock-frequency = <47500000>;
60			hactive = <1024>;
61			vactive = <600>;
62			hfront-porch = <64>;
63			hback-porch = <16>;
64			hsync-len = <48>;
65			vback-porch = <64>;
66			vfront-porch = <16>;
67			vsync-len = <3>;
68		};
69	};
70
71	fixed-rate-clocks {
72		xxti {
73			compatible = "samsung,clock-xxti";
74			clock-frequency = <0>;
75		};
76
77		xusbxti {
78			compatible = "samsung,clock-xusbxti";
79			clock-frequency = <24000000>;
80		};
81	};
82};
83
84&cpu0 {
85	cpu0-supply = <&buck2_reg>;
86};
87
88&exynos_usbphy {
89	status = "okay";
90};
91
92&ehci {
93	samsung,vbus-gpio = <&gpx3 5 1>;
94	status = "okay";
95
96	port@1{
97		status = "okay";
98	};
99	port@2 {
100		status = "okay";
101	};
102};
103
104&fimd {
105	pinctrl-0 = <&lcd_clk &lcd_data24 &pwm1_out>;
106	pinctrl-names = "default";
107	status = "okay";
108};
109
110&i2c_0 {
111	#address-cells = <1>;
112	#size-cells = <0>;
113	samsung,i2c-sda-delay = <100>;
114	samsung,i2c-max-bus-freq = <20000>;
115	pinctrl-0 = <&i2c0_bus>;
116	pinctrl-names = "default";
117	status = "okay";
118
119	s5m8767_pmic@66 {
120		compatible = "samsung,s5m8767-pmic";
121		reg = <0x66>;
122
123		s5m8767,pmic-buck-default-dvs-idx = <3>;
124
125		s5m8767,pmic-buck-dvs-gpios = <&gpx2 3 GPIO_ACTIVE_HIGH>,
126						 <&gpx2 4 GPIO_ACTIVE_HIGH>,
127						 <&gpx2 5 GPIO_ACTIVE_HIGH>;
128
129		s5m8767,pmic-buck-ds-gpios = <&gpm3 5 GPIO_ACTIVE_HIGH>,
130						<&gpm3 6 GPIO_ACTIVE_HIGH>,
131						<&gpm3 7 GPIO_ACTIVE_HIGH>;
132
133		s5m8767,pmic-buck2-dvs-voltage = <1250000>, <1200000>,
134						 <1200000>, <1200000>,
135						 <1200000>, <1200000>,
136						 <1200000>, <1200000>;
137
138		s5m8767,pmic-buck3-dvs-voltage = <1100000>, <1100000>,
139						 <1100000>, <1100000>,
140						 <1100000>, <1100000>,
141						 <1100000>, <1100000>;
142
143		s5m8767,pmic-buck4-dvs-voltage = <1200000>, <1200000>,
144						 <1200000>, <1200000>,
145						 <1200000>, <1200000>,
146						 <1200000>, <1200000>;
147
148		regulators {
149			ldo1_reg: LDO1 {
150				regulator-name = "VDD_ALIVE";
151				regulator-min-microvolt = <1100000>;
152				regulator-max-microvolt = <1100000>;
153				regulator-always-on;
154				regulator-boot-on;
155				op_mode = <1>; /* Normal Mode */
156			};
157
158			ldo2_reg: LDO2 {
159				regulator-name = "VDDQ_M12";
160				regulator-min-microvolt = <1200000>;
161				regulator-max-microvolt = <1200000>;
162				regulator-always-on;
163				op_mode = <1>; /* Normal Mode */
164			};
165
166			ldo3_reg: LDO3 {
167				regulator-name = "VDDIOAP_18";
168				regulator-min-microvolt = <1800000>;
169				regulator-max-microvolt = <1800000>;
170				regulator-always-on;
171				op_mode = <1>; /* Normal Mode */
172			};
173
174			ldo4_reg: LDO4 {
175				regulator-name = "VDDQ_PRE";
176				regulator-min-microvolt = <1800000>;
177				regulator-max-microvolt = <1800000>;
178				regulator-always-on;
179				op_mode = <1>; /* Normal Mode */
180			};
181
182			ldo5_reg: LDO5 {
183				regulator-name = "VDD18_2M";
184				regulator-min-microvolt = <1800000>;
185				regulator-max-microvolt = <1800000>;
186				regulator-always-on;
187				op_mode = <1>; /* Normal Mode */
188			};
189
190			ldo6_reg: LDO6 {
191				regulator-name = "VDD10_MPLL";
192				regulator-min-microvolt = <1000000>;
193				regulator-max-microvolt = <1000000>;
194				regulator-always-on;
195				op_mode = <1>; /* Normal Mode */
196			};
197
198			ldo7_reg: LDO7 {
199				regulator-name = "VDD10_XPLL";
200				regulator-min-microvolt = <1000000>;
201				regulator-max-microvolt = <1000000>;
202				regulator-always-on;
203				op_mode = <1>; /* Normal Mode */
204			};
205
206			ldo8_reg: LDO8 {
207				regulator-name = "VDD10_MIPI";
208				regulator-min-microvolt = <1000000>;
209				regulator-max-microvolt = <1000000>;
210				regulator-always-on;
211				op_mode = <1>; /* Normal Mode */
212			};
213
214			ldo9_reg: LDO9 {
215				regulator-name = "VDD33_LCD";
216				regulator-min-microvolt = <3300000>;
217				regulator-max-microvolt = <3300000>;
218				regulator-always-on;
219				op_mode = <1>; /* Normal Mode */
220			};
221
222			ldo10_reg: LDO10 {
223				regulator-name = "VDD18_MIPI";
224				regulator-min-microvolt = <1800000>;
225				regulator-max-microvolt = <1800000>;
226				regulator-always-on;
227				op_mode = <1>; /* Normal Mode */
228			};
229
230			ldo11_reg: LDO11 {
231				regulator-name = "VDD18_ABB1";
232				regulator-min-microvolt = <1800000>;
233				regulator-max-microvolt = <1800000>;
234				regulator-always-on;
235				op_mode = <1>; /* Normal Mode */
236			};
237
238			ldo12_reg: LDO12 {
239				regulator-name = "VDD33_UOTG";
240				regulator-min-microvolt = <3300000>;
241				regulator-max-microvolt = <3300000>;
242				regulator-always-on;
243				op_mode = <1>; /* Normal Mode */
244			};
245
246			ldo13_reg: LDO13 {
247				regulator-name = "VDDIOPERI_18";
248				regulator-min-microvolt = <1800000>;
249				regulator-max-microvolt = <1800000>;
250				regulator-always-on;
251				op_mode = <1>; /* Normal Mode */
252			};
253
254			ldo14_reg: LDO14 {
255				regulator-name = "VDD18_ABB02";
256				regulator-min-microvolt = <1800000>;
257				regulator-max-microvolt = <1800000>;
258				regulator-always-on;
259				op_mode = <1>; /* Normal Mode */
260			};
261
262			ldo15_reg: LDO15 {
263				regulator-name = "VDD10_USH";
264				regulator-min-microvolt = <1000000>;
265				regulator-max-microvolt = <1000000>;
266				regulator-always-on;
267				op_mode = <1>; /* Normal Mode */
268			};
269
270			ldo16_reg: LDO16 {
271				regulator-name = "VDD18_HSIC";
272				regulator-min-microvolt = <1800000>;
273				regulator-max-microvolt = <1800000>;
274				regulator-always-on;
275				op_mode = <1>; /* Normal Mode */
276			};
277
278			ldo17_reg: LDO17 {
279				regulator-name = "VDDIOAP_MMC012_28";
280				regulator-min-microvolt = <2800000>;
281				regulator-max-microvolt = <2800000>;
282				regulator-always-on;
283				op_mode = <1>; /* Normal Mode */
284			};
285
286			ldo18_reg: LDO18 {
287				regulator-name = "VDDIOPERI_28";
288				regulator-min-microvolt = <2800000>;
289				regulator-max-microvolt = <2800000>;
290				regulator-always-on;
291				op_mode = <1>; /* Normal Mode */
292			};
293
294			ldo19_reg: LDO19 {
295				regulator-name = "DVDD25";
296				regulator-min-microvolt = <2500000>;
297				regulator-max-microvolt = <2500000>;
298				regulator-always-on;
299				op_mode = <1>; /* Normal Mode */
300			};
301
302			ldo20_reg: LDO20 {
303				regulator-name = "VDD28_CAM";
304				regulator-min-microvolt = <2800000>;
305				regulator-max-microvolt = <2800000>;
306				regulator-always-on;
307				op_mode = <1>; /* Normal Mode */
308			};
309
310			ldo21_reg: LDO21 {
311				regulator-name = "VDD28_AF";
312				regulator-min-microvolt = <2800000>;
313				regulator-max-microvolt = <2800000>;
314				regulator-always-on;
315				op_mode = <1>; /* Normal Mode */
316			};
317
318			ldo22_reg: LDO22 {
319				regulator-name = "VDDA28_2M";
320				regulator-min-microvolt = <2800000>;
321				regulator-max-microvolt = <2800000>;
322				regulator-always-on;
323				op_mode = <1>; /* Normal Mode */
324			};
325
326			ldo23_reg: LDO23 {
327				regulator-name = "VDD28_TF";
328				regulator-min-microvolt = <2800000>;
329				regulator-max-microvolt = <2800000>;
330				regulator-always-on;
331				op_mode = <1>; /* Normal Mode */
332			};
333
334			ldo24_reg: LDO24 {
335				regulator-name = "VDD33_A31";
336				regulator-min-microvolt = <3300000>;
337				regulator-max-microvolt = <3300000>;
338				regulator-always-on;
339				op_mode = <1>; /* Normal Mode */
340			};
341
342			ldo25_reg: LDO25 {
343				regulator-name = "VDD18_CAM";
344				regulator-min-microvolt = <1800000>;
345				regulator-max-microvolt = <1800000>;
346				regulator-always-on;
347				op_mode = <1>; /* Normal Mode */
348			};
349
350			ldo26_reg: LDO26 {
351				regulator-name = "VDD18_A31";
352				regulator-min-microvolt = <1800000>;
353				regulator-max-microvolt = <1800000>;
354				regulator-always-on;
355				op_mode = <1>; /* Normal Mode */
356			};
357
358			ldo27_reg: LDO27 {
359				regulator-name = "GPS_1V8";
360				regulator-min-microvolt = <1800000>;
361				regulator-max-microvolt = <1800000>;
362				regulator-always-on;
363				op_mode = <1>; /* Normal Mode */
364			};
365
366			ldo28_reg: LDO28 {
367				regulator-name = "DVDD12";
368				regulator-min-microvolt = <1200000>;
369				regulator-max-microvolt = <1200000>;
370				regulator-always-on;
371				op_mode = <1>; /* Normal Mode */
372			};
373
374			buck1_reg: BUCK1 {
375				regulator-name = "vdd_mif";
376				regulator-min-microvolt = <950000>;
377				regulator-max-microvolt	= <1100000>;
378				regulator-always-on;
379				regulator-boot-on;
380				op_mode = <1>; /* Normal Mode */
381			};
382
383			buck2_reg: BUCK2 {
384				regulator-name = "vdd_arm";
385				regulator-min-microvolt = <900000>;
386				regulator-max-microvolt	= <1350000>;
387				regulator-always-on;
388				regulator-boot-on;
389				op_mode = <1>; /* Normal Mode */
390			};
391
392			buck3_reg: BUCK3 {
393				regulator-name = "vdd_int";
394				regulator-min-microvolt = <900000>;
395				regulator-max-microvolt	= <1200000>;
396				regulator-always-on;
397				regulator-boot-on;
398				op_mode = <1>; /* Normal Mode */
399			};
400
401			buck4_reg: BUCK4 {
402				regulator-name = "vdd_g3d";
403				regulator-min-microvolt = <750000>;
404				regulator-max-microvolt	= <1500000>;
405				regulator-always-on;
406				regulator-boot-on;
407				op_mode = <1>; /* Normal Mode */
408			};
409
410			buck5_reg: BUCK5 {
411				regulator-name = "vdd_m12";
412				regulator-min-microvolt = <750000>;
413				regulator-max-microvolt	= <1500000>;
414				regulator-always-on;
415				regulator-boot-on;
416				op_mode = <1>; /* Normal Mode */
417			};
418
419			buck6_reg: BUCK6 {
420				regulator-name = "vdd12_5m";
421				regulator-min-microvolt = <750000>;
422				regulator-max-microvolt	= <1500000>;
423				regulator-always-on;
424				regulator-boot-on;
425				op_mode = <1>; /* Normal Mode */
426			};
427
428			buck9_reg: BUCK9 {
429				regulator-name = "vddf28_emmc";
430				regulator-min-microvolt = <750000>;
431				regulator-max-microvolt	= <3000000>;
432				regulator-always-on;
433				regulator-boot-on;
434				op_mode = <1>; /* Normal Mode */
435			};
436		};
437	};
438};
439
440&keypad {
441	samsung,keypad-num-rows = <3>;
442	samsung,keypad-num-columns = <2>;
443	linux,keypad-no-autorepeat;
444	wakeup-source;
445	pinctrl-0 = <&keypad_rows &keypad_cols>;
446	pinctrl-names = "default";
447	status = "okay";
448
449	key_home {
450		keypad,row = <0>;
451		keypad,column = <0>;
452		linux,code = <KEY_HOME>;
453	};
454
455	key_down {
456		keypad,row = <0>;
457		keypad,column = <1>;
458		linux,code = <KEY_DOWN>;
459	};
460
461	key_up {
462		keypad,row = <1>;
463		keypad,column = <0>;
464		linux,code = <KEY_UP>;
465	};
466
467	key_menu {
468		keypad,row = <1>;
469		keypad,column = <1>;
470		linux,code = <KEY_MENU>;
471	};
472
473	key_back {
474		keypad,row = <2>;
475		keypad,column = <0>;
476		linux,code = <KEY_BACK>;
477	};
478
479	key_enter {
480		keypad,row = <2>;
481		keypad,column = <1>;
482		linux,code = <KEY_ENTER>;
483	};
484};
485
486&mshc_0 {
487	pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
488	pinctrl-names = "default";
489	status = "okay";
490
491	broken-cd;
492	card-detect-delay = <200>;
493	samsung,dw-mshc-ciu-div = <3>;
494	samsung,dw-mshc-sdr-timing = <2 3>;
495	samsung,dw-mshc-ddr-timing = <1 2>;
496	bus-width = <8>;
497	cap-mmc-highspeed;
498};
499
500&pinctrl_1 {
501	keypad_rows: keypad-rows {
502		samsung,pins = "gpx2-0", "gpx2-1", "gpx2-2";
503		samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
504		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
505		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
506	};
507
508	keypad_cols: keypad-cols {
509		samsung,pins = "gpx1-0", "gpx1-1";
510		samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
511		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
512		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
513	};
514};
515
516&rtc {
517	status = "okay";
518};
519
520&sdhci_2 {
521	bus-width = <4>;
522	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>;
523	pinctrl-names = "default";
524	vmmc-supply = <&mmc_reg>;
525	status = "okay";
526};
527
528&serial_0 {
529	status = "okay";
530};
531
532&serial_1 {
533	status = "okay";
534};
535
536&serial_2 {
537	status = "okay";
538};
539
540&serial_3 {
541	status = "okay";
542};
543