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