Linux Audio

Check our new training course

In-person Linux kernel drivers training

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