1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Samsung's Exynos4412 based Trats 2 board device tree source
4 *
5 * Copyright (c) 2013 Samsung Electronics Co., Ltd.
6 *		http://www.samsung.com
7 *
8 * Device tree source file for Samsung's Trats 2 board which is based on
9 * Samsung's Exynos4412 SoC.
10 */
11
12/dts-v1/;
13#include "exynos4412.dtsi"
14#include "exynos4412-ppmu-common.dtsi"
15#include <dt-bindings/gpio/gpio.h>
16#include <dt-bindings/input/input.h>
17#include <dt-bindings/interrupt-controller/irq.h>
18#include <dt-bindings/clock/maxim,max77686.h>
19#include <dt-bindings/pinctrl/samsung.h>
20
21/ {
22	compatible = "samsung,midas", "samsung,exynos4412", "samsung,exynos4";
23
24	aliases {
25		i2c11 = &i2c_max77693;
26		i2c12 = &i2c_max77693_fuel;
27	};
28
29	chosen {
30		stdout-path = &serial_2;
31	};
32
33	firmware@204f000 {
34		compatible = "samsung,secure-firmware";
35		reg = <0x0204F000 0x1000>;
36	};
37
38	fixed-rate-clocks {
39		xxti {
40			compatible = "samsung,clock-xxti";
41			clock-frequency = <0>;
42		};
43
44		xusbxti {
45			compatible = "samsung,clock-xusbxti";
46			clock-frequency = <24000000>;
47		};
48	};
49
50	cam_io_reg: voltage-regulator-1 {
51		compatible = "regulator-fixed";
52		regulator-name = "CAM_SENSOR_A";
53		regulator-min-microvolt = <2800000>;
54		regulator-max-microvolt = <2800000>;
55		enable-active-high;
56		status = "disabled";
57	};
58
59	cam_af_reg: voltage-regulator-2 {
60		compatible = "regulator-fixed";
61		regulator-name = "CAM_AF";
62		regulator-min-microvolt = <2800000>;
63		regulator-max-microvolt = <2800000>;
64		enable-active-high;
65		status = "disabled";
66	};
67
68	vsil12: voltage-regulator-3 {
69		compatible = "regulator-fixed";
70		regulator-name = "VSIL_1.2V";
71		regulator-min-microvolt = <1200000>;
72		regulator-max-microvolt = <1200000>;
73		gpio = <&gpl0 4 GPIO_ACTIVE_HIGH>;
74		enable-active-high;
75		vin-supply = <&buck7_reg>;
76	};
77
78	vcc33mhl: voltage-regulator-4 {
79		compatible = "regulator-fixed";
80		regulator-name = "VCC_3.3_MHL";
81		regulator-min-microvolt = <3300000>;
82		regulator-max-microvolt = <3300000>;
83		gpio = <&gpl0 4 GPIO_ACTIVE_HIGH>;
84		enable-active-high;
85	};
86
87	vcc18mhl: voltage-regulator-5 {
88		compatible = "regulator-fixed";
89		regulator-name = "VCC_1.8_MHL";
90		regulator-min-microvolt = <1800000>;
91		regulator-max-microvolt = <1800000>;
92		gpio = <&gpl0 4 GPIO_ACTIVE_HIGH>;
93		enable-active-high;
94	};
95
96	touchkey_reg: voltage-regulator-6 {
97		compatible = "regulator-fixed";
98		regulator-name = "LED_VDD_3.3V";
99		regulator-min-microvolt = <3300000>;
100		regulator-max-microvolt = <3300000>;
101		enable-active-high;
102		status = "disabled";
103	};
104
105	vbatt_reg: voltage-regulator-7 {
106		compatible = "regulator-fixed";
107		regulator-name = "VBATT";
108		regulator-min-microvolt = <5000000>;
109		regulator-max-microvolt = <5000000>;
110		regulator-always-on;
111	};
112
113	mic_bias_reg: voltage-regulator-8 {
114		compatible = "regulator-fixed";
115		regulator-name = "MICBIAS_LDO_2.8V";
116		regulator-min-microvolt = <2800000>;
117		regulator-max-microvolt = <2800000>;
118		gpio = <&gpf1 7 GPIO_ACTIVE_HIGH>;
119		enable-active-high;
120	};
121
122	submic_bias_reg: voltage-regulator-9 {
123		compatible = "regulator-fixed";
124		regulator-name = "SUB_MICBIAS_LDO_2.8V";
125		regulator-min-microvolt = <2800000>;
126		regulator-max-microvolt = <2800000>;
127	};
128
129	gpio-keys {
130		compatible = "gpio-keys";
131		pinctrl-names = "default";
132		pinctrl-0 = <&gpio_keys>;
133
134		key-down {
135			gpios = <&gpx3 3 GPIO_ACTIVE_LOW>;
136			linux,code = <114>;
137			label = "volume down";
138			debounce-interval = <10>;
139		};
140
141		key-up {
142			gpios = <&gpx2 2 GPIO_ACTIVE_LOW>;
143			linux,code = <115>;
144			label = "volume up";
145			debounce-interval = <10>;
146		};
147
148		key-power {
149			gpios = <&gpx2 7 GPIO_ACTIVE_LOW>;
150			linux,code = <116>;
151			label = "power";
152			debounce-interval = <10>;
153			wakeup-source;
154		};
155
156		key-ok {
157			gpios = <&gpx0 1 GPIO_ACTIVE_LOW>;
158			linux,code = <139>;
159			label = "ok";
160			debounce-interval = <10>;
161			wakeup-source;
162		};
163	};
164
165	i2c_max77693: i2c-gpio-1 {
166		compatible = "i2c-gpio";
167		sda-gpios = <&gpm2 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
168		scl-gpios = <&gpm2 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
169		i2c-gpio,delay-us = <2>;
170		#address-cells = <1>;
171		#size-cells = <0>;
172
173		pmic@66 {
174			compatible = "maxim,max77693";
175			interrupt-parent = <&gpx1>;
176			interrupts = <5 IRQ_TYPE_LEVEL_LOW>;
177			pinctrl-names = "default";
178			pinctrl-0 = <&max77693_irq>;
179			reg = <0x66>;
180
181			regulators {
182				esafeout1_reg: ESAFEOUT1 {
183					regulator-name = "ESAFEOUT1";
184				};
185				esafeout2_reg: ESAFEOUT2 {
186					regulator-name = "ESAFEOUT2";
187				};
188				charger_reg: CHARGER {
189					regulator-name = "CHARGER";
190					regulator-min-microamp = <60000>;
191					regulator-max-microamp = <2580000>;
192				};
193			};
194
195			motor-driver {
196				compatible = "maxim,max77693-haptic";
197				haptic-supply = <&ldo26_reg>;
198				pwms = <&pwm 0 38022 0>;
199			};
200
201			charger {
202				compatible = "maxim,max77693-charger";
203
204				maxim,constant-microvolt = <4350000>;
205				maxim,min-system-microvolt = <3600000>;
206				maxim,thermal-regulation-celsius = <100>;
207				maxim,battery-overcurrent-microamp = <3500000>;
208				maxim,charge-input-threshold-microvolt = <4300000>;
209			};
210		};
211	};
212
213	i2c_max77693_fuel: i2c-gpio-3 {
214		compatible = "i2c-gpio";
215		sda-gpios = <&gpf1 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
216		scl-gpios = <&gpf1 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
217		i2c-gpio,delay-us = <2>;
218		#address-cells = <1>;
219		#size-cells = <0>;
220
221		fuel-gauge@36 {
222			compatible = "maxim,max17047";
223			interrupt-parent = <&gpx2>;
224			interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
225			pinctrl-names = "default";
226			pinctrl-0 = <&max77693_fuel_irq>;
227			reg = <0x36>;
228
229			maxim,over-heat-temp = <700>;
230			maxim,over-volt = <4500>;
231		};
232	};
233
234	i2c-gpio-4 {
235		compatible = "i2c-gpio";
236		sda-gpios = <&gpl0 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
237		scl-gpios = <&gpl0 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
238		i2c-gpio,delay-us = <2>;
239		#address-cells = <1>;
240		#size-cells = <0>;
241
242		touchkey@20 {
243			compatible = "cypress,midas-touchkey";
244			reg = <0x20>;
245			vdd-supply = <&touchkey_reg>;
246			vcc-supply = <&ldo5_reg>;
247			interrupt-parent = <&gpj0>;
248			interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
249			linux,keycodes = <KEY_BACK KEY_MENU>;
250		};
251	};
252
253	i2c-mhl {
254		compatible = "i2c-gpio";
255		sda-gpios = <&gpf0 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
256		scl-gpios = <&gpf0 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
257		i2c-gpio,delay-us = <100>;
258		#address-cells = <1>;
259		#size-cells = <0>;
260
261		pinctrl-0 = <&i2c_mhl_bus>;
262		pinctrl-names = "default";
263
264		sii9234: hdmi-bridge@39 {
265			compatible = "sil,sii9234";
266			avcc33-supply = <&vcc33mhl>;
267			iovcc18-supply = <&vcc18mhl>;
268			avcc12-supply = <&vsil12>;
269			cvcc12-supply = <&vsil12>;
270			reset-gpios = <&gpf3 4 GPIO_ACTIVE_LOW>;
271			interrupt-parent = <&gpf3>;
272			interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
273			reg = <0x39>;
274
275			port {
276				mhl_to_hdmi: endpoint {
277					remote-endpoint = <&hdmi_to_mhl>;
278				};
279			};
280		};
281	};
282
283	wlan_pwrseq: sdhci3-pwrseq {
284		compatible = "mmc-pwrseq-simple";
285		reset-gpios = <&gpj0 0 GPIO_ACTIVE_LOW>;
286		clocks = <&max77686 MAX77686_CLK_PMIC>;
287		clock-names = "ext_clock";
288	};
289
290	sound: sound {
291		compatible = "samsung,midas-audio";
292		model = "Midas";
293		mic-bias-supply = <&mic_bias_reg>;
294		submic-bias-supply = <&submic_bias_reg>;
295
296		cpu {
297			sound-dai = <&i2s0 0>;
298		};
299		codec {
300			sound-dai = <&wm1811>;
301		};
302	};
303
304	thermistor-ap {
305		compatible = "murata,ncp15wb473";
306		pullup-uv = <1800000>;	 /* VCC_1.8V_AP */
307		pullup-ohm = <100000>;	 /* 100K */
308		pulldown-ohm = <100000>; /* 100K */
309		io-channels = <&adc 1>;  /* AP temperature */
310	};
311
312	thermistor-battery {
313		compatible = "murata,ncp15wb473";
314		pullup-uv = <1800000>;	 /* VCC_1.8V_AP */
315		pullup-ohm = <100000>;	 /* 100K */
316		pulldown-ohm = <100000>; /* 100K */
317		io-channels = <&adc 2>;  /* Battery temperature */
318	};
319};
320
321&adc {
322	vdd-supply = <&ldo3_reg>;
323	status = "okay";
324};
325
326&bus_dmc {
327	devfreq-events = <&ppmu_dmc0_3>, <&ppmu_dmc1_3>;
328	vdd-supply = <&buck1_reg>;
329	status = "okay";
330};
331
332&bus_acp {
333	devfreq = <&bus_dmc>;
334	status = "okay";
335};
336
337&bus_c2c {
338	devfreq = <&bus_dmc>;
339	status = "okay";
340};
341
342&bus_leftbus {
343	devfreq-events = <&ppmu_leftbus_3>, <&ppmu_rightbus_3>;
344	vdd-supply = <&buck3_reg>;
345	status = "okay";
346};
347
348&bus_rightbus {
349	devfreq = <&bus_leftbus>;
350	status = "okay";
351};
352
353&bus_display {
354	devfreq = <&bus_leftbus>;
355	status = "okay";
356};
357
358&bus_fsys {
359	devfreq = <&bus_leftbus>;
360	status = "okay";
361};
362
363&bus_peri {
364	devfreq = <&bus_leftbus>;
365	status = "okay";
366};
367
368&bus_mfc {
369	devfreq = <&bus_leftbus>;
370	status = "okay";
371};
372
373&camera {
374	pinctrl-0 = <&cam_port_a_clk_active &cam_port_b_clk_active>;
375	pinctrl-names = "default";
376	status = "okay";
377	assigned-clocks = <&clock CLK_MOUT_CAM0>,
378		<&clock CLK_MOUT_CAM1>;
379	assigned-clock-parents = <&clock CLK_XUSBXTI>,
380		<&clock CLK_XUSBXTI>;
381};
382
383&cpu0 {
384	cpu0-supply = <&buck2_reg>;
385};
386
387&cpu_thermal {
388	cooling-maps {
389		map0 {
390			/* Corresponds to 800MHz at freq_table */
391			cooling-device = <&cpu0 7 7>, <&cpu1 7 7>,
392					 <&cpu2 7 7>, <&cpu3 7 7>;
393		};
394		map1 {
395			/* Corresponds to 200MHz at freq_table */
396			cooling-device = <&cpu0 13 13>, <&cpu1 13 13>,
397					 <&cpu2 13 13>, <&cpu3 13 13>;
398		};
399	};
400};
401
402&csis_0 {
403	status = "okay";
404	vddcore-supply = <&ldo8_reg>;
405	vddio-supply = <&ldo10_reg>;
406	assigned-clocks = <&clock CLK_MOUT_CSIS0>,
407			<&clock CLK_SCLK_CSIS0>;
408	assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
409	assigned-clock-rates = <0>, <176000000>;
410
411	/* Camera C (3) MIPI CSI-2 (CSIS0) */
412	port@3 {
413		reg = <3>;
414		csis0_ep: endpoint {
415			remote-endpoint = <&s5c73m3_ep>;
416			data-lanes = <1 2 3 4>;
417			samsung,csis-hs-settle = <12>;
418		};
419	};
420};
421
422&csis_1 {
423	status = "okay";
424	vddcore-supply = <&ldo8_reg>;
425	vddio-supply = <&ldo10_reg>;
426	assigned-clocks = <&clock CLK_MOUT_CSIS1>,
427			<&clock CLK_SCLK_CSIS1>;
428	assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
429	assigned-clock-rates = <0>, <176000000>;
430
431	/* Camera D (4) MIPI CSI-2 (CSIS1) */
432	port@4 {
433		reg = <4>;
434		csis1_ep: endpoint {
435			remote-endpoint = <&is_s5k6a3_ep>;
436			data-lanes = <1>;
437			samsung,csis-hs-settle = <18>;
438			samsung,csis-wclk;
439		};
440	};
441};
442
443&dsi_0 {
444	vddcore-supply = <&ldo8_reg>;
445	vddio-supply = <&ldo10_reg>;
446	samsung,burst-clock-frequency = <500000000>;
447	samsung,esc-clock-frequency = <20000000>;
448	samsung,pll-clock-frequency = <24000000>;
449};
450
451&exynos_usbphy {
452	vbus-supply = <&esafeout1_reg>;
453	status = "okay";
454};
455
456&fimc_0 {
457	status = "okay";
458	assigned-clocks = <&clock CLK_MOUT_FIMC0>,
459			<&clock CLK_SCLK_FIMC0>;
460	assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
461	assigned-clock-rates = <0>, <176000000>;
462};
463
464&fimc_1 {
465	status = "okay";
466	assigned-clocks = <&clock CLK_MOUT_FIMC1>,
467			<&clock CLK_SCLK_FIMC1>;
468	assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
469	assigned-clock-rates = <0>, <176000000>;
470};
471
472&fimc_2 {
473	status = "okay";
474	assigned-clocks = <&clock CLK_MOUT_FIMC2>,
475			<&clock CLK_SCLK_FIMC2>;
476	assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
477	assigned-clock-rates = <0>, <176000000>;
478};
479
480&fimc_3 {
481	status = "okay";
482	assigned-clocks = <&clock CLK_MOUT_FIMC3>,
483			<&clock CLK_SCLK_FIMC3>;
484	assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
485	assigned-clock-rates = <0>, <176000000>;
486};
487
488&fimc_is {
489	pinctrl-0 = <&fimc_is_uart>;
490	pinctrl-names = "default";
491	status = "okay";
492
493	};
494
495&fimc_lite_0 {
496	status = "okay";
497};
498
499&fimc_lite_1 {
500	status = "okay";
501};
502
503&fimd {
504	status = "okay";
505};
506
507&gpu {
508	mali-supply = <&buck4_reg>;
509	status = "okay";
510};
511
512&hdmi {
513	hpd-gpios = <&gpx3 7 GPIO_ACTIVE_HIGH>;
514	pinctrl-names = "default";
515	pinctrl-0 = <&hdmi_hpd>;
516	vdd-supply = <&ldo3_reg>;
517	vdd_osc-supply = <&ldo4_reg>;
518	vdd_pll-supply = <&ldo3_reg>;
519	ddc = <&i2c_5>;
520	status = "okay";
521
522	ports {
523		#address-cells = <1>;
524		#size-cells = <0>;
525
526		port@1 {
527			reg = <1>;
528			hdmi_to_mhl: endpoint {
529				remote-endpoint = <&mhl_to_hdmi>;
530			};
531		};
532	};
533};
534
535&hsotg {
536	vusb_d-supply = <&ldo15_reg>;
537	vusb_a-supply = <&ldo12_reg>;
538	dr_mode = "peripheral";
539	status = "okay";
540};
541
542&i2c_0 {
543	samsung,i2c-sda-delay = <100>;
544	samsung,i2c-slave-addr = <0x10>;
545	samsung,i2c-max-bus-freq = <400000>;
546	pinctrl-0 = <&i2c0_bus>;
547	pinctrl-names = "default";
548	status = "okay";
549
550	s5c73m3: image-sensor@3c {
551		compatible = "samsung,s5c73m3";
552		reg = <0x3c>;
553		xshutdown-gpios = <&gpf1 3 GPIO_ACTIVE_LOW>; /* ISP_RESET */
554		vdd-int-supply = <&buck9_reg>;
555		vddio-cis-supply = <&ldo9_reg>;
556		vddio-host-supply = <&ldo18_reg>;
557		vdd-af-supply = <&cam_af_reg>;
558		vdd-reg-supply = <&cam_io_reg>;
559		clock-frequency = <24000000>;
560		/* CAM_A_CLKOUT */
561		clocks = <&camera 0>;
562		clock-names = "cis_extclk";
563		status = "disabled";
564		port {
565			s5c73m3_ep: endpoint {
566				remote-endpoint = <&csis0_ep>;
567				data-lanes = <1 2 3 4>;
568			};
569		};
570	};
571};
572
573&i2c1_isp {
574	pinctrl-0 = <&fimc_is_i2c1>;
575	pinctrl-names = "default";
576
577	image-sensor@10 {
578		compatible = "samsung,s5k6a3";
579		reg = <0x10>;
580		svdda-supply = <&cam_io_reg>;
581		svddio-supply = <&ldo19_reg>;
582		afvdd-supply = <&ldo19_reg>;
583		clock-frequency = <24000000>;
584		/* CAM_B_CLKOUT */
585		clocks = <&camera 1>;
586		clock-names = "extclk";
587		samsung,camclk-out = <1>;
588		gpios = <&gpm1 6 GPIO_ACTIVE_HIGH>;
589
590		port {
591			is_s5k6a3_ep: endpoint {
592				remote-endpoint = <&csis1_ep>;
593				data-lanes = <1>;
594			};
595		};
596	};
597};
598
599&i2c_3 {
600	samsung,i2c-sda-delay = <100>;
601	samsung,i2c-slave-addr = <0x10>;
602	samsung,i2c-max-bus-freq = <400000>;
603	pinctrl-0 = <&i2c3_bus>;
604	pinctrl-names = "default";
605	status = "okay";
606};
607
608&i2c_4 {
609	samsung,i2c-sda-delay = <100>;
610	samsung,i2c-slave-addr = <0x10>;
611	samsung,i2c-max-bus-freq = <100000>;
612	pinctrl-0 = <&i2c4_bus>;
613	pinctrl-names = "default";
614	status = "okay";
615
616	wm1811: audio-codec@1a {
617		compatible = "wlf,wm1811";
618		reg = <0x1a>;
619		clocks = <&pmu_system_controller 0>,
620			<&max77686 MAX77686_CLK_PMIC>;
621		clock-names = "MCLK1", "MCLK2";
622		interrupt-controller;
623		#interrupt-cells = <2>;
624		interrupt-parent = <&gpx3>;
625		interrupts = <6 IRQ_TYPE_LEVEL_HIGH>;
626
627		gpio-controller;
628		#gpio-cells = <2>;
629		#sound-dai-cells = <0>;
630
631		wlf,gpio-cfg = <0x3 0x0 0x0 0x0 0x0 0x0
632			0x0 0x8000 0x0 0x0 0x0>;
633		wlf,micbias-cfg = <0x2f 0x2b>;
634
635		wlf,lineout1-feedback;
636		wlf,lineout1-se;
637		wlf,lineout2-se;
638		wlf,ldoena-always-driven;
639
640		AVDD2-supply = <&vbatt_reg>;
641		DBVDD1-supply = <&ldo3_reg>;
642		DBVDD2-supply = <&vbatt_reg>;
643		DBVDD3-supply = <&vbatt_reg>;
644		DCVDD-supply = <&ldo3_reg>;
645		CPVDD-supply = <&vbatt_reg>;
646		SPKVDD1-supply = <&vbatt_reg>;
647		SPKVDD2-supply = <&vbatt_reg>;
648		wlf,ldo1ena = <&gpj0 4 0>;
649		wlf,ldo2ena = <&gpj0 4 0>;
650	};
651};
652
653&i2c_5 {
654	status = "okay";
655};
656
657&i2c_7 {
658	samsung,i2c-sda-delay = <100>;
659	samsung,i2c-slave-addr = <0x10>;
660	samsung,i2c-max-bus-freq = <100000>;
661	pinctrl-0 = <&i2c7_bus>;
662	pinctrl-names = "default";
663	status = "okay";
664
665	max77686: pmic@9 {
666		compatible = "maxim,max77686";
667		interrupt-parent = <&gpx0>;
668		interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
669		pinctrl-0 = <&max77686_irq>;
670		pinctrl-names = "default";
671		wakeup-source;
672		reg = <0x09>;
673		#clock-cells = <1>;
674
675		voltage-regulators {
676			ldo1_reg: LDO1 {
677				regulator-name = "VALIVE_1.0V_AP";
678				regulator-min-microvolt = <1000000>;
679				regulator-max-microvolt = <1000000>;
680				regulator-always-on;
681			};
682
683			ldo2_reg: LDO2 {
684				regulator-name = "VM1M2_1.2V_AP";
685				regulator-min-microvolt = <1200000>;
686				regulator-max-microvolt = <1200000>;
687				regulator-always-on;
688				regulator-state-mem {
689					regulator-on-in-suspend;
690				};
691			};
692
693			ldo3_reg: LDO3 {
694				regulator-name = "VCC_1.8V_AP";
695				regulator-min-microvolt = <1800000>;
696				regulator-max-microvolt = <1800000>;
697				regulator-always-on;
698			};
699
700			ldo4_reg: LDO4 {
701				regulator-name = "VCC_2.8V_AP";
702				regulator-min-microvolt = <2800000>;
703				regulator-max-microvolt = <2800000>;
704				regulator-always-on;
705			};
706
707			ldo5_reg: LDO5 {
708				regulator-name = "VCC_1.8V_IO";
709				regulator-min-microvolt = <1800000>;
710				regulator-max-microvolt = <1800000>;
711				regulator-always-on;
712			};
713
714			ldo6_reg: LDO6 {
715				regulator-name = "VMPLL_1.0V_AP";
716				regulator-min-microvolt = <1000000>;
717				regulator-max-microvolt = <1000000>;
718				regulator-always-on;
719				regulator-state-mem {
720					regulator-on-in-suspend;
721				};
722			};
723
724			ldo7_reg: LDO7 {
725				regulator-name = "VPLL_1.0V_AP";
726				regulator-min-microvolt = <1000000>;
727				regulator-max-microvolt = <1000000>;
728				regulator-always-on;
729				regulator-state-mem {
730					regulator-on-in-suspend;
731				};
732			};
733
734			ldo8_reg: LDO8 {
735				regulator-name = "VMIPI_1.0V";
736				regulator-min-microvolt = <1000000>;
737				regulator-max-microvolt = <1000000>;
738				regulator-state-mem {
739					regulator-off-in-suspend;
740				};
741			};
742
743			ldo9_reg: LDO9 {
744				regulator-name = "CAM_ISP_MIPI_1.2V";
745				regulator-min-microvolt = <1200000>;
746				regulator-max-microvolt = <1200000>;
747			};
748
749			ldo10_reg: LDO10 {
750				regulator-name = "VMIPI_1.8V";
751				regulator-min-microvolt = <1800000>;
752				regulator-max-microvolt = <1800000>;
753				regulator-state-mem {
754					regulator-off-in-suspend;
755				};
756			};
757
758			ldo11_reg: LDO11 {
759				regulator-name = "VABB1_1.95V";
760				regulator-min-microvolt = <1950000>;
761				regulator-max-microvolt = <1950000>;
762				regulator-always-on;
763				regulator-state-mem {
764					regulator-off-in-suspend;
765				};
766			};
767
768			ldo12_reg: LDO12 {
769				regulator-name = "VUOTG_3.0V";
770				regulator-min-microvolt = <3000000>;
771				regulator-max-microvolt = <3000000>;
772				regulator-state-mem {
773					regulator-off-in-suspend;
774				};
775			};
776
777			ldo13_reg: LDO13 {
778				regulator-name = "NFC_AVDD_1.8V";
779				regulator-min-microvolt = <1800000>;
780				regulator-max-microvolt = <1800000>;
781			};
782
783			ldo14_reg: LDO14 {
784				regulator-name = "VABB2_1.95V";
785				regulator-min-microvolt = <1950000>;
786				regulator-max-microvolt = <1950000>;
787				regulator-always-on;
788				regulator-state-mem {
789					regulator-off-in-suspend;
790				};
791			};
792
793			ldo15_reg: LDO15 {
794				regulator-name = "VHSIC_1.0V";
795				regulator-min-microvolt = <1000000>;
796				regulator-max-microvolt = <1000000>;
797				regulator-state-mem {
798					regulator-on-in-suspend;
799				};
800			};
801
802			ldo16_reg: LDO16 {
803				regulator-name = "VHSIC_1.8V";
804				regulator-min-microvolt = <1800000>;
805				regulator-max-microvolt = <1800000>;
806				regulator-state-mem {
807					regulator-on-in-suspend;
808				};
809			};
810
811			ldo17_reg: LDO17 {
812				regulator-name = "CAM_SENSOR_CORE_1.2V";
813				regulator-min-microvolt = <1200000>;
814				regulator-max-microvolt = <1200000>;
815			};
816
817			ldo18_reg: LDO18 {
818				regulator-name = "CAM_ISP_SEN_IO_1.8V";
819				regulator-min-microvolt = <1800000>;
820				regulator-max-microvolt = <1800000>;
821			};
822
823			ldo19_reg: LDO19 {
824				regulator-name = "VT_CAM_1.8V";
825				regulator-min-microvolt = <1800000>;
826				regulator-max-microvolt = <1800000>;
827			};
828
829			ldo20_reg: LDO20 {
830				regulator-name = "VDDQ_PRE_1.8V";
831				regulator-min-microvolt = <1800000>;
832				regulator-max-microvolt = <1800000>;
833			};
834
835			ldo21_reg: LDO21 {
836				regulator-name = "VTF_2.8V";
837				regulator-min-microvolt = <2800000>;
838				regulator-max-microvolt = <2800000>;
839				maxim,ena-gpios = <&gpy2 0 GPIO_ACTIVE_HIGH>;
840			};
841
842			ldo22_reg: LDO22 {
843				regulator-name = "VMEM_VDD_2.8V";
844				regulator-min-microvolt = <2800000>;
845				regulator-max-microvolt = <2800000>;
846				maxim,ena-gpios = <&gpk0 2 GPIO_ACTIVE_HIGH>;
847			};
848
849			ldo23_reg: LDO23 {
850				regulator-name = "TSP_AVDD_3.3V";
851				regulator-min-microvolt = <3300000>;
852				regulator-max-microvolt = <3300000>;
853			};
854
855			ldo24_reg: LDO24 {
856				regulator-name = "TSP_VDD_1.8V";
857				regulator-min-microvolt = <1800000>;
858				regulator-max-microvolt = <1800000>;
859			};
860
861			ldo25_reg: LDO25 {
862				regulator-name = "LDO25";
863			};
864
865			ldo26_reg: LDO26 {
866				regulator-name = "MOTOR_VCC_3.0V";
867				regulator-min-microvolt = <3000000>;
868				regulator-max-microvolt = <3000000>;
869			};
870
871			buck1_reg: BUCK1 {
872				regulator-name = "VDD_MIF";
873				regulator-min-microvolt = <850000>;
874				regulator-max-microvolt = <1100000>;
875				regulator-always-on;
876				regulator-boot-on;
877				regulator-state-mem {
878					regulator-off-in-suspend;
879				};
880			};
881
882			buck2_reg: BUCK2 {
883				regulator-name = "VDD_ARM";
884				regulator-min-microvolt = <850000>;
885				regulator-max-microvolt = <1500000>;
886				regulator-always-on;
887				regulator-boot-on;
888				regulator-state-mem {
889					regulator-on-in-suspend;
890				};
891			};
892
893			buck3_reg: BUCK3 {
894				regulator-name = "VDD_INT";
895				regulator-min-microvolt = <850000>;
896				regulator-max-microvolt = <1150000>;
897				regulator-always-on;
898				regulator-boot-on;
899				regulator-state-mem {
900					regulator-off-in-suspend;
901				};
902			};
903
904			buck4_reg: BUCK4 {
905				regulator-name = "VDD_G3D";
906				regulator-min-microvolt = <850000>;
907				regulator-max-microvolt = <1150000>;
908				regulator-boot-on;
909				regulator-state-mem {
910					regulator-off-in-suspend;
911				};
912			};
913
914			buck5_reg: BUCK5 {
915				regulator-name = "VMEM_1.2V_AP";
916				regulator-min-microvolt = <1200000>;
917				regulator-max-microvolt = <1200000>;
918				regulator-always-on;
919			};
920
921			buck6_reg: BUCK6 {
922				regulator-name = "VCC_SUB_1.35V";
923				regulator-min-microvolt = <1350000>;
924				regulator-max-microvolt = <1350000>;
925				regulator-always-on;
926			};
927
928			buck7_reg: BUCK7 {
929				regulator-name = "VCC_SUB_2.0V";
930				regulator-min-microvolt = <2000000>;
931				regulator-max-microvolt = <2000000>;
932				regulator-always-on;
933			};
934
935			buck8_reg: BUCK8 {
936				regulator-name = "VMEM_VDDF_3.0V";
937				regulator-min-microvolt = <2850000>;
938				regulator-max-microvolt = <2850000>;
939				maxim,ena-gpios = <&gpk0 2 GPIO_ACTIVE_HIGH>;
940			};
941
942			buck9_reg: BUCK9 {
943				regulator-name = "CAM_ISP_CORE_1.2V";
944				regulator-min-microvolt = <1000000>;
945				regulator-max-microvolt = <1200000>;
946			};
947		};
948	};
949};
950
951&i2c_8 {
952	status = "okay";
953};
954
955&i2s0 {
956	pinctrl-0 = <&i2s0_bus>;
957	pinctrl-names = "default";
958	status = "okay";
959};
960
961&mixer {
962	status = "okay";
963};
964
965&mshc_0 {
966	broken-cd;
967	non-removable;
968	card-detect-delay = <200>;
969	vmmc-supply = <&ldo22_reg>;
970	clock-frequency = <400000000>;
971	samsung,dw-mshc-ciu-div = <0>;
972	samsung,dw-mshc-sdr-timing = <2 3>;
973	samsung,dw-mshc-ddr-timing = <1 2>;
974	pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
975	pinctrl-names = "default";
976	status = "okay";
977	bus-width = <8>;
978	cap-mmc-highspeed;
979};
980
981&pmu_system_controller {
982	assigned-clocks = <&pmu_system_controller 0>;
983	assigned-clock-parents =  <&clock CLK_XUSBXTI>;
984};
985
986&pinctrl_0 {
987	pinctrl-names = "default";
988	pinctrl-0 = <&sleep0>;
989
990	mhl_int: mhl-int {
991		samsung,pins = "gpf3-5";
992		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
993	};
994
995	i2c_mhl_bus: i2c-mhl-bus {
996		samsung,pins = "gpf0-4", "gpf0-6";
997		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
998		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
999		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
1000	};
1001
1002	sleep0: sleep-states {
1003		PIN_SLP(gpa0-0, INPUT, NONE);
1004		PIN_SLP(gpa0-1, OUT0, NONE);
1005		PIN_SLP(gpa0-2, INPUT, NONE);
1006		PIN_SLP(gpa0-3, INPUT, UP);
1007		PIN_SLP(gpa0-4, INPUT, NONE);
1008		PIN_SLP(gpa0-5, INPUT, DOWN);
1009		PIN_SLP(gpa0-6, INPUT, DOWN);
1010		PIN_SLP(gpa0-7, INPUT, UP);
1011
1012		PIN_SLP(gpa1-0, INPUT, DOWN);
1013		PIN_SLP(gpa1-1, INPUT, DOWN);
1014		PIN_SLP(gpa1-2, INPUT, DOWN);
1015		PIN_SLP(gpa1-3, INPUT, DOWN);
1016		PIN_SLP(gpa1-4, INPUT, DOWN);
1017		PIN_SLP(gpa1-5, INPUT, DOWN);
1018
1019		PIN_SLP(gpb-0, INPUT, NONE);
1020		PIN_SLP(gpb-1, INPUT, NONE);
1021		PIN_SLP(gpb-2, INPUT, NONE);
1022		PIN_SLP(gpb-3, INPUT, NONE);
1023		PIN_SLP(gpb-4, INPUT, DOWN);
1024		PIN_SLP(gpb-5, INPUT, UP);
1025		PIN_SLP(gpb-6, INPUT, DOWN);
1026		PIN_SLP(gpb-7, INPUT, DOWN);
1027
1028		PIN_SLP(gpc0-0, INPUT, DOWN);
1029		PIN_SLP(gpc0-1, INPUT, DOWN);
1030		PIN_SLP(gpc0-2, INPUT, DOWN);
1031		PIN_SLP(gpc0-3, INPUT, DOWN);
1032		PIN_SLP(gpc0-4, INPUT, DOWN);
1033
1034		PIN_SLP(gpc1-0, INPUT, NONE);
1035		PIN_SLP(gpc1-1, PREV, NONE);
1036		PIN_SLP(gpc1-2, INPUT, NONE);
1037		PIN_SLP(gpc1-3, INPUT, NONE);
1038		PIN_SLP(gpc1-4, INPUT, NONE);
1039
1040		PIN_SLP(gpd0-0, INPUT, DOWN);
1041		PIN_SLP(gpd0-1, INPUT, DOWN);
1042		PIN_SLP(gpd0-2, INPUT, NONE);
1043		PIN_SLP(gpd0-3, INPUT, NONE);
1044
1045		PIN_SLP(gpd1-0, INPUT, DOWN);
1046		PIN_SLP(gpd1-1, INPUT, DOWN);
1047		PIN_SLP(gpd1-2, INPUT, NONE);
1048		PIN_SLP(gpd1-3, INPUT, NONE);
1049
1050		PIN_SLP(gpf0-0, INPUT, NONE);
1051		PIN_SLP(gpf0-1, INPUT, NONE);
1052		PIN_SLP(gpf0-2, INPUT, DOWN);
1053		PIN_SLP(gpf0-3, INPUT, DOWN);
1054		PIN_SLP(gpf0-4, INPUT, NONE);
1055		PIN_SLP(gpf0-5, INPUT, DOWN);
1056		PIN_SLP(gpf0-6, INPUT, NONE);
1057		PIN_SLP(gpf0-7, INPUT, DOWN);
1058
1059		PIN_SLP(gpf1-0, INPUT, DOWN);
1060		PIN_SLP(gpf1-1, INPUT, DOWN);
1061		PIN_SLP(gpf1-2, INPUT, DOWN);
1062		PIN_SLP(gpf1-3, INPUT, DOWN);
1063		PIN_SLP(gpf1-4, INPUT, NONE);
1064		PIN_SLP(gpf1-5, INPUT, NONE);
1065		PIN_SLP(gpf1-6, INPUT, DOWN);
1066		PIN_SLP(gpf1-7, PREV, NONE);
1067
1068		PIN_SLP(gpf2-0, PREV, NONE);
1069		PIN_SLP(gpf2-1, INPUT, DOWN);
1070		PIN_SLP(gpf2-2, INPUT, DOWN);
1071		PIN_SLP(gpf2-3, INPUT, DOWN);
1072		PIN_SLP(gpf2-4, INPUT, DOWN);
1073		PIN_SLP(gpf2-5, INPUT, DOWN);
1074		PIN_SLP(gpf2-6, INPUT, NONE);
1075		PIN_SLP(gpf2-7, INPUT, NONE);
1076
1077		PIN_SLP(gpf3-0, INPUT, NONE);
1078		PIN_SLP(gpf3-1, PREV, NONE);
1079		PIN_SLP(gpf3-2, PREV, NONE);
1080		PIN_SLP(gpf3-3, PREV, NONE);
1081		PIN_SLP(gpf3-4, OUT1, NONE);
1082		PIN_SLP(gpf3-5, INPUT, DOWN);
1083
1084		PIN_SLP(gpj0-0, PREV, NONE);
1085		PIN_SLP(gpj0-1, PREV, NONE);
1086		PIN_SLP(gpj0-2, PREV, NONE);
1087		PIN_SLP(gpj0-3, INPUT, DOWN);
1088		PIN_SLP(gpj0-4, PREV, NONE);
1089		PIN_SLP(gpj0-5, PREV, NONE);
1090		PIN_SLP(gpj0-6, INPUT, DOWN);
1091		PIN_SLP(gpj0-7, INPUT, DOWN);
1092
1093		PIN_SLP(gpj1-0, INPUT, DOWN);
1094		PIN_SLP(gpj1-1, PREV, NONE);
1095		PIN_SLP(gpj1-2, PREV, NONE);
1096		PIN_SLP(gpj1-3, INPUT, DOWN);
1097		PIN_SLP(gpj1-4, INPUT, DOWN);
1098	};
1099};
1100
1101&pinctrl_1 {
1102	pinctrl-names = "default";
1103	pinctrl-0 = <&sleep1>;
1104
1105	gpio_keys: gpio-keys {
1106		samsung,pins = "gpx0-1", "gpx2-2", "gpx2-7", "gpx3-3";
1107		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1108	};
1109
1110	bt_shutdown: bt-shutdown {
1111		samsung,pins = "gpl0-6";
1112		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1113	};
1114
1115	bt_host_wakeup: bt-host-wakeup {
1116		samsung,pins = "gpx2-6";
1117		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1118	};
1119
1120	bt_device_wakeup: bt-device-wakeup {
1121		samsung,pins = "gpx3-1";
1122		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1123	};
1124
1125	max77686_irq: max77686-irq {
1126		samsung,pins = "gpx0-7";
1127		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1128	};
1129
1130	max77693_irq: max77693-irq {
1131		samsung,pins = "gpx1-5";
1132		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1133	};
1134
1135	max77693_fuel_irq: max77693-fuel-irq {
1136		samsung,pins = "gpx2-3";
1137		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1138	};
1139
1140	sdhci2_cd: sdhci2-cd-irq {
1141		samsung,pins = "gpx3-4";
1142		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1143	};
1144
1145	hdmi_hpd: hdmi-hpd {
1146		samsung,pins = "gpx3-7";
1147		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
1148	};
1149
1150	sleep1: sleep-states {
1151		PIN_SLP(gpk0-0, PREV, NONE);
1152		PIN_SLP(gpk0-1, PREV, NONE);
1153		PIN_SLP(gpk0-2, OUT0, NONE);
1154		PIN_SLP(gpk0-3, PREV, NONE);
1155		PIN_SLP(gpk0-4, PREV, NONE);
1156		PIN_SLP(gpk0-5, PREV, NONE);
1157		PIN_SLP(gpk0-6, PREV, NONE);
1158
1159		PIN_SLP(gpk1-0, INPUT, DOWN);
1160		PIN_SLP(gpk1-1, INPUT, DOWN);
1161		PIN_SLP(gpk1-2, INPUT, DOWN);
1162		PIN_SLP(gpk1-3, PREV, NONE);
1163		PIN_SLP(gpk1-4, PREV, NONE);
1164		PIN_SLP(gpk1-5, PREV, NONE);
1165		PIN_SLP(gpk1-6, PREV, NONE);
1166
1167		PIN_SLP(gpk2-0, INPUT, DOWN);
1168		PIN_SLP(gpk2-1, INPUT, DOWN);
1169		PIN_SLP(gpk2-2, INPUT, DOWN);
1170		PIN_SLP(gpk2-3, INPUT, DOWN);
1171		PIN_SLP(gpk2-4, INPUT, DOWN);
1172		PIN_SLP(gpk2-5, INPUT, DOWN);
1173		PIN_SLP(gpk2-6, INPUT, DOWN);
1174
1175		PIN_SLP(gpk3-0, OUT0, NONE);
1176		PIN_SLP(gpk3-1, INPUT, NONE);
1177		PIN_SLP(gpk3-2, INPUT, DOWN);
1178		PIN_SLP(gpk3-3, INPUT, NONE);
1179		PIN_SLP(gpk3-4, INPUT, NONE);
1180		PIN_SLP(gpk3-5, INPUT, NONE);
1181		PIN_SLP(gpk3-6, INPUT, NONE);
1182
1183		PIN_SLP(gpl0-0, INPUT, DOWN);
1184		PIN_SLP(gpl0-1, INPUT, DOWN);
1185		PIN_SLP(gpl0-2, INPUT, DOWN);
1186		PIN_SLP(gpl0-3, INPUT, DOWN);
1187		PIN_SLP(gpl0-4, PREV, NONE);
1188		PIN_SLP(gpl0-6, PREV, NONE);
1189
1190		PIN_SLP(gpl1-0, INPUT, DOWN);
1191		PIN_SLP(gpl1-1, INPUT, DOWN);
1192		PIN_SLP(gpl2-0, INPUT, DOWN);
1193		PIN_SLP(gpl2-1, INPUT, DOWN);
1194		PIN_SLP(gpl2-2, INPUT, DOWN);
1195		PIN_SLP(gpl2-3, INPUT, DOWN);
1196		PIN_SLP(gpl2-4, INPUT, DOWN);
1197		PIN_SLP(gpl2-5, INPUT, DOWN);
1198		PIN_SLP(gpl2-6, PREV, NONE);
1199		PIN_SLP(gpl2-7, INPUT, DOWN);
1200
1201		PIN_SLP(gpm0-0, INPUT, DOWN);
1202		PIN_SLP(gpm0-1, INPUT, DOWN);
1203		PIN_SLP(gpm0-2, INPUT, DOWN);
1204		PIN_SLP(gpm0-3, INPUT, DOWN);
1205		PIN_SLP(gpm0-4, INPUT, DOWN);
1206		PIN_SLP(gpm0-5, INPUT, DOWN);
1207		PIN_SLP(gpm0-6, INPUT, DOWN);
1208		PIN_SLP(gpm0-7, INPUT, DOWN);
1209
1210		PIN_SLP(gpm1-0, INPUT, DOWN);
1211		PIN_SLP(gpm1-1, INPUT, DOWN);
1212		PIN_SLP(gpm1-2, INPUT, NONE);
1213		PIN_SLP(gpm1-3, INPUT, NONE);
1214		PIN_SLP(gpm1-4, INPUT, NONE);
1215		PIN_SLP(gpm1-5, INPUT, NONE);
1216		PIN_SLP(gpm1-6, INPUT, DOWN);
1217
1218		PIN_SLP(gpm2-0, INPUT, NONE);
1219		PIN_SLP(gpm2-1, INPUT, NONE);
1220		PIN_SLP(gpm2-2, INPUT, DOWN);
1221		PIN_SLP(gpm2-3, INPUT, DOWN);
1222		PIN_SLP(gpm2-4, INPUT, DOWN);
1223
1224		PIN_SLP(gpm3-0, PREV, NONE);
1225		PIN_SLP(gpm3-1, PREV, NONE);
1226		PIN_SLP(gpm3-2, PREV, NONE);
1227		PIN_SLP(gpm3-3, OUT1, NONE);
1228		PIN_SLP(gpm3-4, INPUT, DOWN);
1229		PIN_SLP(gpm3-5, INPUT, DOWN);
1230		PIN_SLP(gpm3-6, INPUT, DOWN);
1231		PIN_SLP(gpm3-7, INPUT, DOWN);
1232
1233		PIN_SLP(gpm4-0, INPUT, DOWN);
1234		PIN_SLP(gpm4-1, INPUT, DOWN);
1235		PIN_SLP(gpm4-2, INPUT, DOWN);
1236		PIN_SLP(gpm4-3, INPUT, DOWN);
1237		PIN_SLP(gpm4-4, INPUT, DOWN);
1238		PIN_SLP(gpm4-5, INPUT, DOWN);
1239		PIN_SLP(gpm4-6, INPUT, DOWN);
1240		PIN_SLP(gpm4-7, INPUT, DOWN);
1241
1242		PIN_SLP(gpy0-0, INPUT, DOWN);
1243		PIN_SLP(gpy0-1, INPUT, DOWN);
1244		PIN_SLP(gpy0-2, INPUT, DOWN);
1245		PIN_SLP(gpy0-3, INPUT, DOWN);
1246		PIN_SLP(gpy0-4, INPUT, DOWN);
1247		PIN_SLP(gpy0-5, INPUT, DOWN);
1248
1249		PIN_SLP(gpy1-0, INPUT, DOWN);
1250		PIN_SLP(gpy1-1, INPUT, DOWN);
1251		PIN_SLP(gpy1-2, INPUT, DOWN);
1252		PIN_SLP(gpy1-3, INPUT, DOWN);
1253
1254		PIN_SLP(gpy2-0, PREV, NONE);
1255		PIN_SLP(gpy2-1, INPUT, DOWN);
1256		PIN_SLP(gpy2-2, INPUT, NONE);
1257		PIN_SLP(gpy2-3, INPUT, NONE);
1258		PIN_SLP(gpy2-4, INPUT, NONE);
1259		PIN_SLP(gpy2-5, INPUT, NONE);
1260
1261		PIN_SLP(gpy3-0, INPUT, DOWN);
1262		PIN_SLP(gpy3-1, INPUT, DOWN);
1263		PIN_SLP(gpy3-2, INPUT, DOWN);
1264		PIN_SLP(gpy3-3, INPUT, DOWN);
1265		PIN_SLP(gpy3-4, INPUT, DOWN);
1266		PIN_SLP(gpy3-5, INPUT, DOWN);
1267		PIN_SLP(gpy3-6, INPUT, DOWN);
1268		PIN_SLP(gpy3-7, INPUT, DOWN);
1269
1270		PIN_SLP(gpy4-0, INPUT, DOWN);
1271		PIN_SLP(gpy4-1, INPUT, DOWN);
1272		PIN_SLP(gpy4-2, INPUT, DOWN);
1273		PIN_SLP(gpy4-3, INPUT, DOWN);
1274		PIN_SLP(gpy4-4, INPUT, DOWN);
1275		PIN_SLP(gpy4-5, INPUT, DOWN);
1276		PIN_SLP(gpy4-6, INPUT, DOWN);
1277		PIN_SLP(gpy4-7, INPUT, DOWN);
1278
1279		PIN_SLP(gpy5-0, INPUT, DOWN);
1280		PIN_SLP(gpy5-1, INPUT, DOWN);
1281		PIN_SLP(gpy5-2, INPUT, DOWN);
1282		PIN_SLP(gpy5-3, INPUT, DOWN);
1283		PIN_SLP(gpy5-4, INPUT, DOWN);
1284		PIN_SLP(gpy5-5, INPUT, DOWN);
1285		PIN_SLP(gpy5-6, INPUT, DOWN);
1286		PIN_SLP(gpy5-7, INPUT, DOWN);
1287
1288		PIN_SLP(gpy6-0, INPUT, DOWN);
1289		PIN_SLP(gpy6-1, INPUT, DOWN);
1290		PIN_SLP(gpy6-2, INPUT, DOWN);
1291		PIN_SLP(gpy6-3, INPUT, DOWN);
1292		PIN_SLP(gpy6-4, INPUT, DOWN);
1293		PIN_SLP(gpy6-5, INPUT, DOWN);
1294		PIN_SLP(gpy6-6, INPUT, DOWN);
1295		PIN_SLP(gpy6-7, INPUT, DOWN);
1296	};
1297};
1298
1299&pinctrl_2 {
1300	pinctrl-names = "default";
1301	pinctrl-0 = <&sleep2>;
1302
1303	sleep2: sleep-states {
1304		PIN_SLP(gpz-0, INPUT, DOWN);
1305		PIN_SLP(gpz-1, INPUT, DOWN);
1306		PIN_SLP(gpz-2, INPUT, DOWN);
1307		PIN_SLP(gpz-3, INPUT, DOWN);
1308		PIN_SLP(gpz-4, INPUT, DOWN);
1309		PIN_SLP(gpz-5, INPUT, DOWN);
1310		PIN_SLP(gpz-6, INPUT, DOWN);
1311	};
1312};
1313
1314&pinctrl_3 {
1315	pinctrl-names = "default";
1316	pinctrl-0 = <&sleep3>;
1317
1318	sleep3: sleep-states {
1319		PIN_SLP(gpv0-0, INPUT, DOWN);
1320		PIN_SLP(gpv0-1, INPUT, DOWN);
1321		PIN_SLP(gpv0-2, INPUT, DOWN);
1322		PIN_SLP(gpv0-3, INPUT, DOWN);
1323		PIN_SLP(gpv0-4, INPUT, DOWN);
1324		PIN_SLP(gpv0-5, INPUT, DOWN);
1325		PIN_SLP(gpv0-6, INPUT, DOWN);
1326		PIN_SLP(gpv0-7, INPUT, DOWN);
1327
1328		PIN_SLP(gpv1-0, INPUT, DOWN);
1329		PIN_SLP(gpv1-1, INPUT, DOWN);
1330		PIN_SLP(gpv1-2, INPUT, DOWN);
1331		PIN_SLP(gpv1-3, INPUT, DOWN);
1332		PIN_SLP(gpv1-4, INPUT, DOWN);
1333		PIN_SLP(gpv1-5, INPUT, DOWN);
1334		PIN_SLP(gpv1-6, INPUT, DOWN);
1335		PIN_SLP(gpv1-7, INPUT, DOWN);
1336
1337		PIN_SLP(gpv2-0, INPUT, DOWN);
1338		PIN_SLP(gpv2-1, INPUT, DOWN);
1339		PIN_SLP(gpv2-2, INPUT, DOWN);
1340		PIN_SLP(gpv2-3, INPUT, DOWN);
1341		PIN_SLP(gpv2-4, INPUT, DOWN);
1342		PIN_SLP(gpv2-5, INPUT, DOWN);
1343		PIN_SLP(gpv2-6, INPUT, DOWN);
1344		PIN_SLP(gpv2-7, INPUT, DOWN);
1345
1346		PIN_SLP(gpv3-0, INPUT, DOWN);
1347		PIN_SLP(gpv3-1, INPUT, DOWN);
1348		PIN_SLP(gpv3-2, INPUT, DOWN);
1349		PIN_SLP(gpv3-3, INPUT, DOWN);
1350		PIN_SLP(gpv3-4, INPUT, DOWN);
1351		PIN_SLP(gpv3-5, INPUT, DOWN);
1352		PIN_SLP(gpv3-6, INPUT, DOWN);
1353		PIN_SLP(gpv3-7, INPUT, DOWN);
1354
1355		PIN_SLP(gpv4-0, INPUT, DOWN);
1356	};
1357};
1358
1359&pwm {
1360	pinctrl-0 = <&pwm0_out>;
1361	pinctrl-names = "default";
1362	samsung,pwm-outputs = <0>;
1363	status = "okay";
1364};
1365
1366&rtc {
1367	status = "okay";
1368	clocks = <&clock CLK_RTC>, <&max77686 MAX77686_CLK_AP>;
1369	clock-names = "rtc", "rtc_src";
1370};
1371
1372&sdhci_2 {
1373	bus-width = <4>;
1374	cd-gpios = <&gpx3 4 GPIO_ACTIVE_LOW>;
1375	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sdhci2_cd>;
1376	pinctrl-names = "default";
1377	vmmc-supply = <&ldo21_reg>;
1378	status = "okay";
1379};
1380
1381&sdhci_3 {
1382	#address-cells = <1>;
1383	#size-cells = <0>;
1384	non-removable;
1385	bus-width = <4>;
1386
1387	mmc-pwrseq = <&wlan_pwrseq>;
1388	pinctrl-names = "default";
1389	pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_bus4>;
1390	status = "okay";
1391
1392	brcmf: wifi@1 {
1393		reg = <1>;
1394		compatible = "brcm,bcm4329-fmac";
1395		interrupt-parent = <&gpx2>;
1396		interrupts = <5 IRQ_TYPE_NONE>;
1397		interrupt-names = "host-wake";
1398	};
1399};
1400
1401&serial_0 {
1402	pinctrl-0 = <&uart0_data &uart0_fctl>;
1403	pinctrl-names = "default";
1404	status = "okay";
1405
1406	bluetooth {
1407		compatible = "brcm,bcm4330-bt";
1408		pinctrl-0 = <&bt_shutdown &bt_device_wakeup &bt_host_wakeup>;
1409		pinctrl-names = "default";
1410		max-speed = <3000000>;
1411		shutdown-gpios = <&gpl0 6 GPIO_ACTIVE_HIGH>;
1412		device-wakeup-gpios = <&gpx3 1 GPIO_ACTIVE_HIGH>;
1413		host-wakeup-gpios = <&gpx2 6 GPIO_ACTIVE_HIGH>;
1414		clocks = <&max77686 MAX77686_CLK_PMIC>;
1415	};
1416};
1417
1418&serial_1 {
1419	status = "okay";
1420};
1421
1422&serial_2 {
1423	status = "okay";
1424};
1425
1426&serial_3 {
1427	status = "okay";
1428};
1429
1430&spi_1 {
1431	pinctrl-names = "default";
1432	pinctrl-0 = <&spi1_bus>;
1433	cs-gpios = <&gpb 5 GPIO_ACTIVE_HIGH>;
1434	status = "okay";
1435
1436	s5c73m3_spi: image-sensor@0 {
1437		compatible = "samsung,s5c73m3";
1438		spi-max-frequency = <50000000>;
1439		reg = <0>;
1440		controller-data {
1441			samsung,spi-feedback-delay = <2>;
1442		};
1443	};
1444};
1445
1446&tmu {
1447	vtmu-supply = <&ldo10_reg>;
1448	status = "okay";
1449};
1450