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		reg = <0x09>;
672		#clock-cells = <1>;
673
674		voltage-regulators {
675			ldo1_reg: LDO1 {
676				regulator-name = "VALIVE_1.0V_AP";
677				regulator-min-microvolt = <1000000>;
678				regulator-max-microvolt = <1000000>;
679				regulator-always-on;
680			};
681
682			ldo2_reg: LDO2 {
683				regulator-name = "VM1M2_1.2V_AP";
684				regulator-min-microvolt = <1200000>;
685				regulator-max-microvolt = <1200000>;
686				regulator-always-on;
687				regulator-state-mem {
688					regulator-on-in-suspend;
689				};
690			};
691
692			ldo3_reg: LDO3 {
693				regulator-name = "VCC_1.8V_AP";
694				regulator-min-microvolt = <1800000>;
695				regulator-max-microvolt = <1800000>;
696				regulator-always-on;
697			};
698
699			ldo4_reg: LDO4 {
700				regulator-name = "VCC_2.8V_AP";
701				regulator-min-microvolt = <2800000>;
702				regulator-max-microvolt = <2800000>;
703				regulator-always-on;
704			};
705
706			ldo5_reg: LDO5 {
707				regulator-name = "VCC_1.8V_IO";
708				regulator-min-microvolt = <1800000>;
709				regulator-max-microvolt = <1800000>;
710				regulator-always-on;
711			};
712
713			ldo6_reg: LDO6 {
714				regulator-name = "VMPLL_1.0V_AP";
715				regulator-min-microvolt = <1000000>;
716				regulator-max-microvolt = <1000000>;
717				regulator-always-on;
718				regulator-state-mem {
719					regulator-on-in-suspend;
720				};
721			};
722
723			ldo7_reg: LDO7 {
724				regulator-name = "VPLL_1.0V_AP";
725				regulator-min-microvolt = <1000000>;
726				regulator-max-microvolt = <1000000>;
727				regulator-always-on;
728				regulator-state-mem {
729					regulator-on-in-suspend;
730				};
731			};
732
733			ldo8_reg: LDO8 {
734				regulator-name = "VMIPI_1.0V";
735				regulator-min-microvolt = <1000000>;
736				regulator-max-microvolt = <1000000>;
737				regulator-state-mem {
738					regulator-off-in-suspend;
739				};
740			};
741
742			ldo9_reg: LDO9 {
743				regulator-name = "CAM_ISP_MIPI_1.2V";
744				regulator-min-microvolt = <1200000>;
745				regulator-max-microvolt = <1200000>;
746			};
747
748			ldo10_reg: LDO10 {
749				regulator-name = "VMIPI_1.8V";
750				regulator-min-microvolt = <1800000>;
751				regulator-max-microvolt = <1800000>;
752				regulator-state-mem {
753					regulator-off-in-suspend;
754				};
755			};
756
757			ldo11_reg: LDO11 {
758				regulator-name = "VABB1_1.95V";
759				regulator-min-microvolt = <1950000>;
760				regulator-max-microvolt = <1950000>;
761				regulator-always-on;
762				regulator-state-mem {
763					regulator-off-in-suspend;
764				};
765			};
766
767			ldo12_reg: LDO12 {
768				regulator-name = "VUOTG_3.0V";
769				regulator-min-microvolt = <3000000>;
770				regulator-max-microvolt = <3000000>;
771				regulator-state-mem {
772					regulator-off-in-suspend;
773				};
774			};
775
776			ldo13_reg: LDO13 {
777				regulator-name = "NFC_AVDD_1.8V";
778				regulator-min-microvolt = <1800000>;
779				regulator-max-microvolt = <1800000>;
780			};
781
782			ldo14_reg: LDO14 {
783				regulator-name = "VABB2_1.95V";
784				regulator-min-microvolt = <1950000>;
785				regulator-max-microvolt = <1950000>;
786				regulator-always-on;
787				regulator-state-mem {
788					regulator-off-in-suspend;
789				};
790			};
791
792			ldo15_reg: LDO15 {
793				regulator-name = "VHSIC_1.0V";
794				regulator-min-microvolt = <1000000>;
795				regulator-max-microvolt = <1000000>;
796				regulator-state-mem {
797					regulator-on-in-suspend;
798				};
799			};
800
801			ldo16_reg: LDO16 {
802				regulator-name = "VHSIC_1.8V";
803				regulator-min-microvolt = <1800000>;
804				regulator-max-microvolt = <1800000>;
805				regulator-state-mem {
806					regulator-on-in-suspend;
807				};
808			};
809
810			ldo17_reg: LDO17 {
811				regulator-name = "CAM_SENSOR_CORE_1.2V";
812				regulator-min-microvolt = <1200000>;
813				regulator-max-microvolt = <1200000>;
814			};
815
816			ldo18_reg: LDO18 {
817				regulator-name = "CAM_ISP_SEN_IO_1.8V";
818				regulator-min-microvolt = <1800000>;
819				regulator-max-microvolt = <1800000>;
820			};
821
822			ldo19_reg: LDO19 {
823				regulator-name = "VT_CAM_1.8V";
824				regulator-min-microvolt = <1800000>;
825				regulator-max-microvolt = <1800000>;
826			};
827
828			ldo20_reg: LDO20 {
829				regulator-name = "VDDQ_PRE_1.8V";
830				regulator-min-microvolt = <1800000>;
831				regulator-max-microvolt = <1800000>;
832			};
833
834			ldo21_reg: LDO21 {
835				regulator-name = "VTF_2.8V";
836				regulator-min-microvolt = <2800000>;
837				regulator-max-microvolt = <2800000>;
838				maxim,ena-gpios = <&gpy2 0 GPIO_ACTIVE_HIGH>;
839			};
840
841			ldo22_reg: LDO22 {
842				regulator-name = "VMEM_VDD_2.8V";
843				regulator-min-microvolt = <2800000>;
844				regulator-max-microvolt = <2800000>;
845				maxim,ena-gpios = <&gpk0 2 GPIO_ACTIVE_HIGH>;
846			};
847
848			ldo23_reg: LDO23 {
849				regulator-name = "TSP_AVDD_3.3V";
850				regulator-min-microvolt = <3300000>;
851				regulator-max-microvolt = <3300000>;
852			};
853
854			ldo24_reg: LDO24 {
855				regulator-name = "TSP_VDD_1.8V";
856				regulator-min-microvolt = <1800000>;
857				regulator-max-microvolt = <1800000>;
858			};
859
860			ldo25_reg: LDO25 {
861				regulator-name = "LDO25";
862			};
863
864			ldo26_reg: LDO26 {
865				regulator-name = "MOTOR_VCC_3.0V";
866				regulator-min-microvolt = <3000000>;
867				regulator-max-microvolt = <3000000>;
868			};
869
870			buck1_reg: BUCK1 {
871				regulator-name = "VDD_MIF";
872				regulator-min-microvolt = <850000>;
873				regulator-max-microvolt = <1100000>;
874				regulator-always-on;
875				regulator-boot-on;
876				regulator-state-mem {
877					regulator-off-in-suspend;
878				};
879			};
880
881			buck2_reg: BUCK2 {
882				regulator-name = "VDD_ARM";
883				regulator-min-microvolt = <850000>;
884				regulator-max-microvolt = <1500000>;
885				regulator-always-on;
886				regulator-boot-on;
887				regulator-state-mem {
888					regulator-on-in-suspend;
889				};
890			};
891
892			buck3_reg: BUCK3 {
893				regulator-name = "VDD_INT";
894				regulator-min-microvolt = <850000>;
895				regulator-max-microvolt = <1150000>;
896				regulator-always-on;
897				regulator-boot-on;
898				regulator-state-mem {
899					regulator-off-in-suspend;
900				};
901			};
902
903			buck4_reg: BUCK4 {
904				regulator-name = "VDD_G3D";
905				regulator-min-microvolt = <850000>;
906				regulator-max-microvolt = <1150000>;
907				regulator-boot-on;
908				regulator-state-mem {
909					regulator-off-in-suspend;
910				};
911			};
912
913			buck5_reg: BUCK5 {
914				regulator-name = "VMEM_1.2V_AP";
915				regulator-min-microvolt = <1200000>;
916				regulator-max-microvolt = <1200000>;
917				regulator-always-on;
918			};
919
920			buck6_reg: BUCK6 {
921				regulator-name = "VCC_SUB_1.35V";
922				regulator-min-microvolt = <1350000>;
923				regulator-max-microvolt = <1350000>;
924				regulator-always-on;
925			};
926
927			buck7_reg: BUCK7 {
928				regulator-name = "VCC_SUB_2.0V";
929				regulator-min-microvolt = <2000000>;
930				regulator-max-microvolt = <2000000>;
931				regulator-always-on;
932			};
933
934			buck8_reg: BUCK8 {
935				regulator-name = "VMEM_VDDF_3.0V";
936				regulator-min-microvolt = <2850000>;
937				regulator-max-microvolt = <2850000>;
938				maxim,ena-gpios = <&gpk0 2 GPIO_ACTIVE_HIGH>;
939			};
940
941			buck9_reg: BUCK9 {
942				regulator-name = "CAM_ISP_CORE_1.2V";
943				regulator-min-microvolt = <1000000>;
944				regulator-max-microvolt = <1200000>;
945			};
946		};
947	};
948};
949
950&i2c_8 {
951	status = "okay";
952};
953
954&i2s0 {
955	pinctrl-0 = <&i2s0_bus>;
956	pinctrl-names = "default";
957	status = "okay";
958};
959
960&mixer {
961	status = "okay";
962};
963
964&mshc_0 {
965	broken-cd;
966	non-removable;
967	card-detect-delay = <200>;
968	vmmc-supply = <&ldo22_reg>;
969	clock-frequency = <400000000>;
970	samsung,dw-mshc-ciu-div = <0>;
971	samsung,dw-mshc-sdr-timing = <2 3>;
972	samsung,dw-mshc-ddr-timing = <1 2>;
973	pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
974	pinctrl-names = "default";
975	status = "okay";
976	bus-width = <8>;
977	cap-mmc-highspeed;
978};
979
980&pmu_system_controller {
981	assigned-clocks = <&pmu_system_controller 0>;
982	assigned-clock-parents =  <&clock CLK_XUSBXTI>;
983};
984
985&pinctrl_0 {
986	pinctrl-names = "default";
987	pinctrl-0 = <&sleep0>;
988
989	mhl_int: mhl-int {
990		samsung,pins = "gpf3-5";
991		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
992	};
993
994	i2c_mhl_bus: i2c-mhl-bus {
995		samsung,pins = "gpf0-4", "gpf0-6";
996		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
997		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
998		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
999	};
1000
1001	sleep0: sleep-states {
1002		PIN_SLP(gpa0-0, INPUT, NONE);
1003		PIN_SLP(gpa0-1, OUT0, NONE);
1004		PIN_SLP(gpa0-2, INPUT, NONE);
1005		PIN_SLP(gpa0-3, INPUT, UP);
1006		PIN_SLP(gpa0-4, INPUT, NONE);
1007		PIN_SLP(gpa0-5, INPUT, DOWN);
1008		PIN_SLP(gpa0-6, INPUT, DOWN);
1009		PIN_SLP(gpa0-7, INPUT, UP);
1010
1011		PIN_SLP(gpa1-0, INPUT, DOWN);
1012		PIN_SLP(gpa1-1, INPUT, DOWN);
1013		PIN_SLP(gpa1-2, INPUT, DOWN);
1014		PIN_SLP(gpa1-3, INPUT, DOWN);
1015		PIN_SLP(gpa1-4, INPUT, DOWN);
1016		PIN_SLP(gpa1-5, INPUT, DOWN);
1017
1018		PIN_SLP(gpb-0, INPUT, NONE);
1019		PIN_SLP(gpb-1, INPUT, NONE);
1020		PIN_SLP(gpb-2, INPUT, NONE);
1021		PIN_SLP(gpb-3, INPUT, NONE);
1022		PIN_SLP(gpb-4, INPUT, DOWN);
1023		PIN_SLP(gpb-5, INPUT, UP);
1024		PIN_SLP(gpb-6, INPUT, DOWN);
1025		PIN_SLP(gpb-7, INPUT, DOWN);
1026
1027		PIN_SLP(gpc0-0, INPUT, DOWN);
1028		PIN_SLP(gpc0-1, INPUT, DOWN);
1029		PIN_SLP(gpc0-2, INPUT, DOWN);
1030		PIN_SLP(gpc0-3, INPUT, DOWN);
1031		PIN_SLP(gpc0-4, INPUT, DOWN);
1032
1033		PIN_SLP(gpc1-0, INPUT, NONE);
1034		PIN_SLP(gpc1-1, PREV, NONE);
1035		PIN_SLP(gpc1-2, INPUT, NONE);
1036		PIN_SLP(gpc1-3, INPUT, NONE);
1037		PIN_SLP(gpc1-4, INPUT, NONE);
1038
1039		PIN_SLP(gpd0-0, INPUT, DOWN);
1040		PIN_SLP(gpd0-1, INPUT, DOWN);
1041		PIN_SLP(gpd0-2, INPUT, NONE);
1042		PIN_SLP(gpd0-3, INPUT, NONE);
1043
1044		PIN_SLP(gpd1-0, INPUT, DOWN);
1045		PIN_SLP(gpd1-1, INPUT, DOWN);
1046		PIN_SLP(gpd1-2, INPUT, NONE);
1047		PIN_SLP(gpd1-3, INPUT, NONE);
1048
1049		PIN_SLP(gpf0-0, INPUT, NONE);
1050		PIN_SLP(gpf0-1, INPUT, NONE);
1051		PIN_SLP(gpf0-2, INPUT, DOWN);
1052		PIN_SLP(gpf0-3, INPUT, DOWN);
1053		PIN_SLP(gpf0-4, INPUT, NONE);
1054		PIN_SLP(gpf0-5, INPUT, DOWN);
1055		PIN_SLP(gpf0-6, INPUT, NONE);
1056		PIN_SLP(gpf0-7, INPUT, DOWN);
1057
1058		PIN_SLP(gpf1-0, INPUT, DOWN);
1059		PIN_SLP(gpf1-1, INPUT, DOWN);
1060		PIN_SLP(gpf1-2, INPUT, DOWN);
1061		PIN_SLP(gpf1-3, INPUT, DOWN);
1062		PIN_SLP(gpf1-4, INPUT, NONE);
1063		PIN_SLP(gpf1-5, INPUT, NONE);
1064		PIN_SLP(gpf1-6, INPUT, DOWN);
1065		PIN_SLP(gpf1-7, PREV, NONE);
1066
1067		PIN_SLP(gpf2-0, PREV, NONE);
1068		PIN_SLP(gpf2-1, INPUT, DOWN);
1069		PIN_SLP(gpf2-2, INPUT, DOWN);
1070		PIN_SLP(gpf2-3, INPUT, DOWN);
1071		PIN_SLP(gpf2-4, INPUT, DOWN);
1072		PIN_SLP(gpf2-5, INPUT, DOWN);
1073		PIN_SLP(gpf2-6, INPUT, NONE);
1074		PIN_SLP(gpf2-7, INPUT, NONE);
1075
1076		PIN_SLP(gpf3-0, INPUT, NONE);
1077		PIN_SLP(gpf3-1, PREV, NONE);
1078		PIN_SLP(gpf3-2, PREV, NONE);
1079		PIN_SLP(gpf3-3, PREV, NONE);
1080		PIN_SLP(gpf3-4, OUT1, NONE);
1081		PIN_SLP(gpf3-5, INPUT, DOWN);
1082
1083		PIN_SLP(gpj0-0, PREV, NONE);
1084		PIN_SLP(gpj0-1, PREV, NONE);
1085		PIN_SLP(gpj0-2, PREV, NONE);
1086		PIN_SLP(gpj0-3, INPUT, DOWN);
1087		PIN_SLP(gpj0-4, PREV, NONE);
1088		PIN_SLP(gpj0-5, PREV, NONE);
1089		PIN_SLP(gpj0-6, INPUT, DOWN);
1090		PIN_SLP(gpj0-7, INPUT, DOWN);
1091
1092		PIN_SLP(gpj1-0, INPUT, DOWN);
1093		PIN_SLP(gpj1-1, PREV, NONE);
1094		PIN_SLP(gpj1-2, PREV, NONE);
1095		PIN_SLP(gpj1-3, INPUT, DOWN);
1096		PIN_SLP(gpj1-4, INPUT, DOWN);
1097	};
1098};
1099
1100&pinctrl_1 {
1101	pinctrl-names = "default";
1102	pinctrl-0 = <&sleep1>;
1103
1104	gpio_keys: gpio-keys {
1105		samsung,pins = "gpx0-1", "gpx2-2", "gpx2-7", "gpx3-3";
1106		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1107	};
1108
1109	bt_shutdown: bt-shutdown {
1110		samsung,pins = "gpl0-6";
1111		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1112	};
1113
1114	bt_host_wakeup: bt-host-wakeup {
1115		samsung,pins = "gpx2-6";
1116		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1117	};
1118
1119	bt_device_wakeup: bt-device-wakeup {
1120		samsung,pins = "gpx3-1";
1121		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1122	};
1123
1124	max77686_irq: max77686-irq {
1125		samsung,pins = "gpx0-7";
1126		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1127	};
1128
1129	max77693_irq: max77693-irq {
1130		samsung,pins = "gpx1-5";
1131		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1132	};
1133
1134	max77693_fuel_irq: max77693-fuel-irq {
1135		samsung,pins = "gpx2-3";
1136		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1137	};
1138
1139	sdhci2_cd: sdhci2-cd-irq {
1140		samsung,pins = "gpx3-4";
1141		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1142	};
1143
1144	hdmi_hpd: hdmi-hpd {
1145		samsung,pins = "gpx3-7";
1146		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
1147	};
1148
1149	sleep1: sleep-states {
1150		PIN_SLP(gpk0-0, PREV, NONE);
1151		PIN_SLP(gpk0-1, PREV, NONE);
1152		PIN_SLP(gpk0-2, OUT0, NONE);
1153		PIN_SLP(gpk0-3, PREV, NONE);
1154		PIN_SLP(gpk0-4, PREV, NONE);
1155		PIN_SLP(gpk0-5, PREV, NONE);
1156		PIN_SLP(gpk0-6, PREV, NONE);
1157
1158		PIN_SLP(gpk1-0, INPUT, DOWN);
1159		PIN_SLP(gpk1-1, INPUT, DOWN);
1160		PIN_SLP(gpk1-2, INPUT, DOWN);
1161		PIN_SLP(gpk1-3, PREV, NONE);
1162		PIN_SLP(gpk1-4, PREV, NONE);
1163		PIN_SLP(gpk1-5, PREV, NONE);
1164		PIN_SLP(gpk1-6, PREV, NONE);
1165
1166		PIN_SLP(gpk2-0, INPUT, DOWN);
1167		PIN_SLP(gpk2-1, INPUT, DOWN);
1168		PIN_SLP(gpk2-2, INPUT, DOWN);
1169		PIN_SLP(gpk2-3, INPUT, DOWN);
1170		PIN_SLP(gpk2-4, INPUT, DOWN);
1171		PIN_SLP(gpk2-5, INPUT, DOWN);
1172		PIN_SLP(gpk2-6, INPUT, DOWN);
1173
1174		PIN_SLP(gpk3-0, OUT0, NONE);
1175		PIN_SLP(gpk3-1, INPUT, NONE);
1176		PIN_SLP(gpk3-2, INPUT, DOWN);
1177		PIN_SLP(gpk3-3, INPUT, NONE);
1178		PIN_SLP(gpk3-4, INPUT, NONE);
1179		PIN_SLP(gpk3-5, INPUT, NONE);
1180		PIN_SLP(gpk3-6, INPUT, NONE);
1181
1182		PIN_SLP(gpl0-0, INPUT, DOWN);
1183		PIN_SLP(gpl0-1, INPUT, DOWN);
1184		PIN_SLP(gpl0-2, INPUT, DOWN);
1185		PIN_SLP(gpl0-3, INPUT, DOWN);
1186		PIN_SLP(gpl0-4, PREV, NONE);
1187		PIN_SLP(gpl0-6, PREV, NONE);
1188
1189		PIN_SLP(gpl1-0, INPUT, DOWN);
1190		PIN_SLP(gpl1-1, INPUT, DOWN);
1191		PIN_SLP(gpl2-0, INPUT, DOWN);
1192		PIN_SLP(gpl2-1, INPUT, DOWN);
1193		PIN_SLP(gpl2-2, INPUT, DOWN);
1194		PIN_SLP(gpl2-3, INPUT, DOWN);
1195		PIN_SLP(gpl2-4, INPUT, DOWN);
1196		PIN_SLP(gpl2-5, INPUT, DOWN);
1197		PIN_SLP(gpl2-6, PREV, NONE);
1198		PIN_SLP(gpl2-7, INPUT, DOWN);
1199
1200		PIN_SLP(gpm0-0, INPUT, DOWN);
1201		PIN_SLP(gpm0-1, INPUT, DOWN);
1202		PIN_SLP(gpm0-2, INPUT, DOWN);
1203		PIN_SLP(gpm0-3, INPUT, DOWN);
1204		PIN_SLP(gpm0-4, INPUT, DOWN);
1205		PIN_SLP(gpm0-5, INPUT, DOWN);
1206		PIN_SLP(gpm0-6, INPUT, DOWN);
1207		PIN_SLP(gpm0-7, INPUT, DOWN);
1208
1209		PIN_SLP(gpm1-0, INPUT, DOWN);
1210		PIN_SLP(gpm1-1, INPUT, DOWN);
1211		PIN_SLP(gpm1-2, INPUT, NONE);
1212		PIN_SLP(gpm1-3, INPUT, NONE);
1213		PIN_SLP(gpm1-4, INPUT, NONE);
1214		PIN_SLP(gpm1-5, INPUT, NONE);
1215		PIN_SLP(gpm1-6, INPUT, DOWN);
1216
1217		PIN_SLP(gpm2-0, INPUT, NONE);
1218		PIN_SLP(gpm2-1, INPUT, NONE);
1219		PIN_SLP(gpm2-2, INPUT, DOWN);
1220		PIN_SLP(gpm2-3, INPUT, DOWN);
1221		PIN_SLP(gpm2-4, INPUT, DOWN);
1222
1223		PIN_SLP(gpm3-0, PREV, NONE);
1224		PIN_SLP(gpm3-1, PREV, NONE);
1225		PIN_SLP(gpm3-2, PREV, NONE);
1226		PIN_SLP(gpm3-3, OUT1, NONE);
1227		PIN_SLP(gpm3-4, INPUT, DOWN);
1228		PIN_SLP(gpm3-5, INPUT, DOWN);
1229		PIN_SLP(gpm3-6, INPUT, DOWN);
1230		PIN_SLP(gpm3-7, INPUT, DOWN);
1231
1232		PIN_SLP(gpm4-0, INPUT, DOWN);
1233		PIN_SLP(gpm4-1, INPUT, DOWN);
1234		PIN_SLP(gpm4-2, INPUT, DOWN);
1235		PIN_SLP(gpm4-3, INPUT, DOWN);
1236		PIN_SLP(gpm4-4, INPUT, DOWN);
1237		PIN_SLP(gpm4-5, INPUT, DOWN);
1238		PIN_SLP(gpm4-6, INPUT, DOWN);
1239		PIN_SLP(gpm4-7, INPUT, DOWN);
1240
1241		PIN_SLP(gpy0-0, INPUT, DOWN);
1242		PIN_SLP(gpy0-1, INPUT, DOWN);
1243		PIN_SLP(gpy0-2, INPUT, DOWN);
1244		PIN_SLP(gpy0-3, INPUT, DOWN);
1245		PIN_SLP(gpy0-4, INPUT, DOWN);
1246		PIN_SLP(gpy0-5, INPUT, DOWN);
1247
1248		PIN_SLP(gpy1-0, INPUT, DOWN);
1249		PIN_SLP(gpy1-1, INPUT, DOWN);
1250		PIN_SLP(gpy1-2, INPUT, DOWN);
1251		PIN_SLP(gpy1-3, INPUT, DOWN);
1252
1253		PIN_SLP(gpy2-0, PREV, NONE);
1254		PIN_SLP(gpy2-1, INPUT, DOWN);
1255		PIN_SLP(gpy2-2, INPUT, NONE);
1256		PIN_SLP(gpy2-3, INPUT, NONE);
1257		PIN_SLP(gpy2-4, INPUT, NONE);
1258		PIN_SLP(gpy2-5, INPUT, NONE);
1259
1260		PIN_SLP(gpy3-0, INPUT, DOWN);
1261		PIN_SLP(gpy3-1, INPUT, DOWN);
1262		PIN_SLP(gpy3-2, INPUT, DOWN);
1263		PIN_SLP(gpy3-3, INPUT, DOWN);
1264		PIN_SLP(gpy3-4, INPUT, DOWN);
1265		PIN_SLP(gpy3-5, INPUT, DOWN);
1266		PIN_SLP(gpy3-6, INPUT, DOWN);
1267		PIN_SLP(gpy3-7, INPUT, DOWN);
1268
1269		PIN_SLP(gpy4-0, INPUT, DOWN);
1270		PIN_SLP(gpy4-1, INPUT, DOWN);
1271		PIN_SLP(gpy4-2, INPUT, DOWN);
1272		PIN_SLP(gpy4-3, INPUT, DOWN);
1273		PIN_SLP(gpy4-4, INPUT, DOWN);
1274		PIN_SLP(gpy4-5, INPUT, DOWN);
1275		PIN_SLP(gpy4-6, INPUT, DOWN);
1276		PIN_SLP(gpy4-7, INPUT, DOWN);
1277
1278		PIN_SLP(gpy5-0, INPUT, DOWN);
1279		PIN_SLP(gpy5-1, INPUT, DOWN);
1280		PIN_SLP(gpy5-2, INPUT, DOWN);
1281		PIN_SLP(gpy5-3, INPUT, DOWN);
1282		PIN_SLP(gpy5-4, INPUT, DOWN);
1283		PIN_SLP(gpy5-5, INPUT, DOWN);
1284		PIN_SLP(gpy5-6, INPUT, DOWN);
1285		PIN_SLP(gpy5-7, INPUT, DOWN);
1286
1287		PIN_SLP(gpy6-0, INPUT, DOWN);
1288		PIN_SLP(gpy6-1, INPUT, DOWN);
1289		PIN_SLP(gpy6-2, INPUT, DOWN);
1290		PIN_SLP(gpy6-3, INPUT, DOWN);
1291		PIN_SLP(gpy6-4, INPUT, DOWN);
1292		PIN_SLP(gpy6-5, INPUT, DOWN);
1293		PIN_SLP(gpy6-6, INPUT, DOWN);
1294		PIN_SLP(gpy6-7, INPUT, DOWN);
1295	};
1296};
1297
1298&pinctrl_2 {
1299	pinctrl-names = "default";
1300	pinctrl-0 = <&sleep2>;
1301
1302	sleep2: sleep-states {
1303		PIN_SLP(gpz-0, INPUT, DOWN);
1304		PIN_SLP(gpz-1, INPUT, DOWN);
1305		PIN_SLP(gpz-2, INPUT, DOWN);
1306		PIN_SLP(gpz-3, INPUT, DOWN);
1307		PIN_SLP(gpz-4, INPUT, DOWN);
1308		PIN_SLP(gpz-5, INPUT, DOWN);
1309		PIN_SLP(gpz-6, INPUT, DOWN);
1310	};
1311};
1312
1313&pinctrl_3 {
1314	pinctrl-names = "default";
1315	pinctrl-0 = <&sleep3>;
1316
1317	sleep3: sleep-states {
1318		PIN_SLP(gpv0-0, INPUT, DOWN);
1319		PIN_SLP(gpv0-1, INPUT, DOWN);
1320		PIN_SLP(gpv0-2, INPUT, DOWN);
1321		PIN_SLP(gpv0-3, INPUT, DOWN);
1322		PIN_SLP(gpv0-4, INPUT, DOWN);
1323		PIN_SLP(gpv0-5, INPUT, DOWN);
1324		PIN_SLP(gpv0-6, INPUT, DOWN);
1325		PIN_SLP(gpv0-7, INPUT, DOWN);
1326
1327		PIN_SLP(gpv1-0, INPUT, DOWN);
1328		PIN_SLP(gpv1-1, INPUT, DOWN);
1329		PIN_SLP(gpv1-2, INPUT, DOWN);
1330		PIN_SLP(gpv1-3, INPUT, DOWN);
1331		PIN_SLP(gpv1-4, INPUT, DOWN);
1332		PIN_SLP(gpv1-5, INPUT, DOWN);
1333		PIN_SLP(gpv1-6, INPUT, DOWN);
1334		PIN_SLP(gpv1-7, INPUT, DOWN);
1335
1336		PIN_SLP(gpv2-0, INPUT, DOWN);
1337		PIN_SLP(gpv2-1, INPUT, DOWN);
1338		PIN_SLP(gpv2-2, INPUT, DOWN);
1339		PIN_SLP(gpv2-3, INPUT, DOWN);
1340		PIN_SLP(gpv2-4, INPUT, DOWN);
1341		PIN_SLP(gpv2-5, INPUT, DOWN);
1342		PIN_SLP(gpv2-6, INPUT, DOWN);
1343		PIN_SLP(gpv2-7, INPUT, DOWN);
1344
1345		PIN_SLP(gpv3-0, INPUT, DOWN);
1346		PIN_SLP(gpv3-1, INPUT, DOWN);
1347		PIN_SLP(gpv3-2, INPUT, DOWN);
1348		PIN_SLP(gpv3-3, INPUT, DOWN);
1349		PIN_SLP(gpv3-4, INPUT, DOWN);
1350		PIN_SLP(gpv3-5, INPUT, DOWN);
1351		PIN_SLP(gpv3-6, INPUT, DOWN);
1352		PIN_SLP(gpv3-7, INPUT, DOWN);
1353
1354		PIN_SLP(gpv4-0, INPUT, DOWN);
1355	};
1356};
1357
1358&pwm {
1359	pinctrl-0 = <&pwm0_out>;
1360	pinctrl-names = "default";
1361	samsung,pwm-outputs = <0>;
1362	status = "okay";
1363};
1364
1365&rtc {
1366	status = "okay";
1367	clocks = <&clock CLK_RTC>, <&max77686 MAX77686_CLK_AP>;
1368	clock-names = "rtc", "rtc_src";
1369};
1370
1371&sdhci_2 {
1372	bus-width = <4>;
1373	cd-gpios = <&gpx3 4 GPIO_ACTIVE_LOW>;
1374	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sdhci2_cd>;
1375	pinctrl-names = "default";
1376	vmmc-supply = <&ldo21_reg>;
1377	status = "okay";
1378};
1379
1380&sdhci_3 {
1381	#address-cells = <1>;
1382	#size-cells = <0>;
1383	non-removable;
1384	bus-width = <4>;
1385
1386	mmc-pwrseq = <&wlan_pwrseq>;
1387	pinctrl-names = "default";
1388	pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_bus4>;
1389	status = "okay";
1390
1391	brcmf: wifi@1 {
1392		reg = <1>;
1393		compatible = "brcm,bcm4329-fmac";
1394		interrupt-parent = <&gpx2>;
1395		interrupts = <5 IRQ_TYPE_NONE>;
1396		interrupt-names = "host-wake";
1397	};
1398};
1399
1400&serial_0 {
1401	pinctrl-0 = <&uart0_data &uart0_fctl>;
1402	pinctrl-names = "default";
1403	status = "okay";
1404
1405	bluetooth {
1406		compatible = "brcm,bcm4330-bt";
1407		pinctrl-0 = <&bt_shutdown &bt_device_wakeup &bt_host_wakeup>;
1408		pinctrl-names = "default";
1409		max-speed = <3000000>;
1410		shutdown-gpios = <&gpl0 6 GPIO_ACTIVE_HIGH>;
1411		device-wakeup-gpios = <&gpx3 1 GPIO_ACTIVE_HIGH>;
1412		host-wakeup-gpios = <&gpx2 6 GPIO_ACTIVE_HIGH>;
1413		clocks = <&max77686 MAX77686_CLK_PMIC>;
1414	};
1415};
1416
1417&serial_1 {
1418	status = "okay";
1419};
1420
1421&serial_2 {
1422	status = "okay";
1423};
1424
1425&serial_3 {
1426	status = "okay";
1427};
1428
1429&spi_1 {
1430	pinctrl-names = "default";
1431	pinctrl-0 = <&spi1_bus>;
1432	cs-gpios = <&gpb 5 GPIO_ACTIVE_HIGH>;
1433	status = "okay";
1434
1435	s5c73m3_spi: image-sensor@0 {
1436		compatible = "samsung,s5c73m3";
1437		spi-max-frequency = <50000000>;
1438		reg = <0>;
1439		controller-data {
1440			samsung,spi-feedback-delay = <2>;
1441		};
1442	};
1443};
1444
1445&tmu {
1446	vtmu-supply = <&ldo10_reg>;
1447	status = "okay";
1448};
1449