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