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