1 // SPDX-License-Identifier: GPL-2.0
3 * Samsung's Exynos4212 based Galaxy Tab 3 board common source
5 * Copyright (c) 2013 Samsung Electronics Co., Ltd.
6 * http://www.samsung.com
10 #include "exynos4212.dtsi"
11 #include "exynos4412-ppmu-common.dtsi"
12 #include "exynos-mfc-reserved-memory.dtsi"
13 #include <dt-bindings/clock/samsung,s2mps11.h>
14 #include <dt-bindings/gpio/gpio.h>
15 #include <dt-bindings/leds/common.h>
16 #include <dt-bindings/input/gpio-keys.h>
17 #include <dt-bindings/input/input.h>
18 #include <dt-bindings/interrupt-controller/irq.h>
19 #include "exynos-pinctrl.h"
22 compatible = "samsung,tab3", "samsung,exynos4212", "samsung,exynos4";
25 device_type = "memory";
28 * Technically 1.5GB is available, but the latter 512MB is handled
29 * in a special way by downstream (every second page is skipped),
30 * and thus doesn't initialize correctly on mainline. Only 1020M is
33 reg = <0x40000000 0x3fc00000>;
37 mmc0 = &mshc_0; /* Internal storage */
38 mmc1 = &sdhci_2; /* SD card */
39 mmc2 = &sdhci_3; /* WiFi */
43 stdout-path = &serial_2;
45 /* Default S-BOOT bootloader loads initramfs here */
46 linux,initrd-start = <0x42000000>;
47 linux,initrd-end = <0x42800000>;
51 compatible = "samsung,secure-firmware";
52 reg = <0x0204F000 0x1000>;
57 compatible = "samsung,clock-xxti";
58 clock-frequency = <0>;
62 compatible = "samsung,clock-xusbxti";
63 clock-frequency = <24000000>;
68 compatible = "gpio-keys";
69 pinctrl-names = "default";
70 pinctrl-0 = <&gpio_keys>;
73 gpios = <&gpx2 7 GPIO_ACTIVE_LOW>;
74 linux,code = <KEY_POWER>;
76 debounce-interval = <10>;
81 gpios = <&gpx2 2 GPIO_ACTIVE_LOW>;
82 linux,code = <KEY_VOLUMEUP>;
83 label = "volume down";
84 debounce-interval = <10>;
88 gpios = <&gpx3 3 GPIO_ACTIVE_LOW>;
89 linux,code = <KEY_VOLUMEDOWN>;
91 debounce-interval = <10>;
95 gpios = <&gpx1 2 GPIO_ACTIVE_LOW>;
96 linux,code = <KEY_HOME>;
98 debounce-interval = <10>;
102 gpios = <&gpx2 4 GPIO_ACTIVE_LOW>;
103 linux,input-type = <EV_SW>;
104 linux,code = <SW_LID>;
106 label = "hall effect sensor";
107 debounce-interval = <10>;
113 compatible = "regulator-led";
114 vled-supply = <&ldo20_reg>;
115 default-state = "off";
116 function = LED_FUNCTION_KBD_BACKLIGHT;
117 color = <LED_COLOR_ID_WHITE>;
120 i2c_max77693: i2c-gpio-1 {
121 compatible = "i2c-gpio";
122 sda-gpios = <&gpm2 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
123 scl-gpios = <&gpm2 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
124 i2c-gpio,delay-us = <2>;
125 #address-cells = <1>;
129 compatible = "maxim,max77693";
131 interrupt-parent = <&gpx1>;
132 interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
133 pinctrl-names = "default";
134 pinctrl-0 = <&max77693_irq>;
137 esafeout1_reg: ESAFEOUT1 {
138 regulator-name = "ESAFEOUT1";
142 esafeout2_reg: ESAFEOUT2 {
143 regulator-name = "ESAFEOUT2";
146 charger_reg: CHARGER {
147 regulator-name = "CHARGER";
148 regulator-min-microamp = <60000>;
149 regulator-max-microamp = <2580000>;
155 compatible = "maxim,max77693-charger";
157 maxim,constant-microvolt = <4350000>;
158 maxim,min-system-microvolt = <3600000>;
159 maxim,thermal-regulation-celsius = <100>;
160 maxim,battery-overcurrent-microamp = <3500000>;
161 maxim,charge-input-threshold-microvolt = <4300000>;
166 i2c_max77693_fuel: i2c-gpio-2 {
167 compatible = "i2c-gpio";
168 sda-gpios = <&gpy0 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
169 scl-gpios = <&gpy0 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
170 i2c-gpio,delay-us = <2>;
171 #address-cells = <1>;
175 compatible = "maxim,max17050";
177 interrupt-parent = <&gpx2>;
178 interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
179 pinctrl-names = "default";
180 pinctrl-0 = <&max77693_fuel_irq>;
182 maxim,over-heat-temp = <500>;
183 maxim,over-volt = <4500>;
187 i2c_magnetometer: i2c-gpio-3 {
188 compatible = "i2c-gpio";
189 sda-gpios = <&gpy2 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
190 scl-gpios = <&gpy2 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
191 i2c-gpio,delay-us = <2>;
192 #address-cells = <1>;
196 compatible = "yamaha,yas532";
198 iovdd-supply = <&ldo3_reg>;
199 mount-matrix = "-1", "0", "0",
205 i2c_lightsensor: i2c-gpio-4 {
206 compatible = "i2c-gpio";
207 sda-gpios = <&gpl0 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
208 scl-gpios = <&gpl0 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
209 i2c-gpio,delay-us = <2>;
210 #address-cells = <1>;
214 /* WiFi model uses CM3323, 3G/LTE use CM36653 */
218 compatible = "i2c-gpio";
219 sda-gpios = <&gpm4 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
220 scl-gpios = <&gpm4 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
221 #address-cells = <1>;
224 backlight: backlight@2c {
225 compatible = "ti,lp8556";
229 dev-ctrl = /bits/ 8 <0x80>;
230 init-brt = /bits/ 8 <0x78>; /* 120 */
232 power-supply = <&vbatt_reg>;
233 enable-supply = <&backlight_reset_supply>;
235 pwms = <&pwm 1 78770 0>;
236 pwm-names = "lp8556";
239 rom-addr = /bits/ 8 <0xa3>;
240 rom-val = /bits/ 8 <0x5e>;
244 rom-addr = /bits/ 8 <0xa5>;
245 rom-val = /bits/ 8 <0x34>;
249 rom-addr = /bits/ 8 <0xa7>;
250 rom-val = /bits/ 8 <0xfa>;
255 vbatt_reg: voltage-regulator-1 {
256 compatible = "regulator-fixed";
257 regulator-name = "VBATT";
258 regulator-min-microvolt = <5000000>;
259 regulator-max-microvolt = <5000000>;
263 backlight_reset_supply: voltage-regulator-2 {
264 compatible = "regulator-fixed";
265 regulator-name = "BACKLIGHT_ENVDDIO";
266 pinctrl-names = "default";
267 pinctrl-0 = <&backlight_reset>;
268 gpio = <&gpm0 1 GPIO_ACTIVE_HIGH>;
272 display_3v3_supply: voltage-regulator-3 {
273 compatible = "regulator-fixed";
274 regulator-name = "DISPLAY_3.3V";
275 regulator-min-microvolt = <3300000>;
276 regulator-max-microvolt = <3300000>;
277 pinctrl-names = "default";
278 pinctrl-0 = <&lcd_en>;
279 gpio = <&gpc0 1 GPIO_ACTIVE_HIGH>; /* LCD_EN */
283 mic_bias_reg: voltage-regulator-4 {
284 compatible = "regulator-fixed";
285 regulator-name = "MICBIAS_LDO_2.8V";
286 regulator-min-microvolt = <2800000>;
287 regulator-max-microvolt = <2800000>;
290 submic_bias_reg: voltage-regulator-5 {
291 compatible = "regulator-fixed";
292 regulator-name = "SUB_MICBIAS_LDO_2.8V";
293 regulator-min-microvolt = <2800000>;
294 regulator-max-microvolt = <2800000>;
298 compatible = "samsung,midas-audio";
300 mic-bias-supply = <&mic_bias_reg>;
301 submic-bias-supply = <&submic_bias_reg>;
303 audio-routing = "HP", "HPOUT1L",
320 "IN2LP:VXRN", "MICBIAS1",
322 "Main Mic", "MICBIAS1",
326 "Sub Mic", "MICBIAS2",
328 "IN1LP", "Headset Mic",
329 "IN1LN", "Headset Mic";
332 sound-dai = <&i2s0 0>;
336 sound-dai = <&wm1811>;
340 wlan_pwrseq: sdhci3-pwrseq {
341 compatible = "mmc-pwrseq-simple";
342 reset-gpios = <&gpm3 5 GPIO_ACTIVE_LOW>;
343 clocks = <&s5m8767_osc S2MPS11_CLK_BT>;
344 clock-names = "ext_clock";
349 devfreq = <&bus_dmc>;
354 devfreq = <&bus_dmc>;
359 devfreq = <&bus_leftbus>;
364 devfreq-events = <&ppmu_dmc0_3>, <&ppmu_dmc1_3>;
365 vdd-supply = <&buck1_reg>;
370 devfreq = <&bus_leftbus>;
375 devfreq-events = <&ppmu_leftbus_3>, <&ppmu_rightbus_3>;
376 vdd-supply = <&buck3_reg>;
381 devfreq = <&bus_leftbus>;
386 devfreq = <&bus_leftbus>;
391 devfreq = <&bus_leftbus>;
396 cpu0-supply = <&buck2_reg>;
402 /* Corresponds to 800MHz at freq_table */
403 cooling-device = <&cpu0 7 7>, <&cpu1 7 7>;
406 /* Corresponds to 200MHz at freq_table */
407 cooling-device = <&cpu0 13 13>, <&cpu1 13 13>;
413 vddcore-supply = <&ldo8_reg>;
414 vddio-supply = <&ldo10_reg>;
415 samsung,burst-clock-frequency = <500000000>;
416 samsung,esc-clock-frequency = <20000000>;
417 samsung,pll-clock-frequency = <24000000>;
421 compatible = "samsung,lsl080al02", "samsung,s6d7aa0";
423 power-supply = <&display_3v3_supply>;
424 pinctrl-names = "default";
425 pinctrl-0 = <&lcd_nrst>;
426 reset-gpios = <&gpf0 4 GPIO_ACTIVE_LOW>;
427 backlight = <&backlight>;
432 vbus-supply = <&esafeout1_reg>;
441 mali-supply = <&buck4_reg>;
446 vusb_d-supply = <&ldo15_reg>;
447 vusb_a-supply = <&ldo12_reg>;
453 pinctrl-0 = <&i2c1_bus>;
454 pinctrl-names = "default";
457 lis3dh: accelerometer@19 {
458 /* K2DH seems to be the same as lis2dh12 in terms of registers */
459 compatible = "st,lis2dh12-accel";
462 interrupt-parent = <&gpx0>;
463 interrupts = <0 IRQ_TYPE_EDGE_FALLING>;
465 vdd-supply = <&ldo17_reg>;
466 vddio-supply = <&ldo3_reg>;
468 mount-matrix = "-1", "0", "0",
475 samsung,i2c-sda-delay = <100>;
476 samsung,i2c-slave-addr = <0x10>;
477 samsung,i2c-max-bus-freq = <400000>;
478 pinctrl-0 = <&i2c3_bus>;
479 pinctrl-names = "default";
483 /* MELFAS MMS252, using MMS114 compatible for now */
484 compatible = "melfas,mms114";
486 interrupt-parent = <&gpb>;
487 interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
488 touchscreen-size-x = <800>;
489 touchscreen-size-y = <1280>;
490 avdd-supply = <&ldo21_reg>;
491 vdd-supply = <&ldo25_reg>;
492 linux,keycodes = <KEY_MENU KEY_BACK>;
497 samsung,i2c-sda-delay = <100>;
498 samsung,i2c-slave-addr = <0x10>;
499 samsung,i2c-max-bus-freq = <100000>;
500 pinctrl-0 = <&i2c4_bus>;
501 pinctrl-names = "default";
504 wm1811: audio-codec@1a {
505 compatible = "wlf,wm1811";
507 clocks = <&pmu_system_controller 0>;
508 clock-names = "MCLK1";
509 interrupt-controller;
510 #interrupt-cells = <2>;
511 interrupt-parent = <&gpx3>;
512 interrupts = <6 IRQ_TYPE_LEVEL_HIGH>;
516 #sound-dai-cells = <0>;
518 wlf,gpio-cfg = <0x3 0x0 0x0 0x0 0x0 0x0
519 0x0 0x8000 0x0 0x0 0x0>;
520 wlf,micbias-cfg = <0x25 0x2f>;
522 wlf,lineout1-feedback;
525 wlf,ldoena-always-driven;
527 AVDD2-supply = <&ldo3_reg>;
528 CPVDD-supply = <&ldo3_reg>;
529 DBVDD1-supply = <&ldo3_reg>;
530 DBVDD2-supply = <&ldo3_reg>;
531 DBVDD3-supply = <&ldo3_reg>;
532 SPKVDD1-supply = <&vbatt_reg>;
533 SPKVDD2-supply = <&vbatt_reg>;
534 wlf,ldo1ena-gpios = <&gpm4 4 GPIO_ACTIVE_HIGH>;
535 wlf,ldo2ena-gpios = <&gpm4 4 GPIO_ACTIVE_HIGH>;
540 samsung,i2c-sda-delay = <100>;
541 samsung,i2c-slave-addr = <0x10>;
542 samsung,i2c-max-bus-freq = <100000>;
543 pinctrl-0 = <&i2c7_bus>;
544 pinctrl-names = "default";
548 compatible = "samsung,s5m8767-pmic";
550 interrupt-parent = <&gpx0>;
551 interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
552 pinctrl-names = "default";
553 pinctrl-0 = <&s5m8767_irq &s5m8767_dvs &s5m8767_ds>;
556 s5m8767,pmic-buck-default-dvs-idx = <1>;
558 s5m8767,pmic-buck-dvs-gpios = <&gpm3 0 GPIO_ACTIVE_HIGH>,
559 <&gpm3 1 GPIO_ACTIVE_HIGH>,
560 <&gpm3 2 GPIO_ACTIVE_HIGH>;
562 s5m8767,pmic-buck-ds-gpios = <&gpf3 1 GPIO_ACTIVE_HIGH>,
563 <&gpf3 2 GPIO_ACTIVE_HIGH>,
564 <&gpf3 3 GPIO_ACTIVE_HIGH>;
566 s5m8767,pmic-buck2-dvs-voltage = <1100000>, <1100000>,
567 <1100000>, <1100000>,
568 <1100000>, <1100000>,
569 <1100000>, <1100000>;
571 s5m8767,pmic-buck3-dvs-voltage = <1100000>, <1100000>,
572 <1100000>, <1100000>,
573 <1100000>, <1100000>,
574 <1100000>, <1100000>;
576 s5m8767,pmic-buck4-dvs-voltage = <1100000>, <1100000>,
577 <1100000>, <1100000>,
578 <1100000>, <1100000>,
579 <1100000>, <1100000>;
583 regulator-name = "VALIVE_1.0V_AP";
584 regulator-min-microvolt = <1000000>;
585 regulator-max-microvolt = <1000000>;
592 regulator-name = "VM1M2_1.2V_AP";
593 regulator-min-microvolt = <1200000>;
594 regulator-max-microvolt = <1200000>;
601 regulator-name = "VCC_1.8V_AP";
602 regulator-min-microvolt = <1800000>;
603 regulator-max-microvolt = <1800000>;
609 regulator-name = "VCC_3.3V_MHL";
610 regulator-min-microvolt = <3300000>;
611 regulator-max-microvolt = <3300000>;
616 regulator-name = "VMIPI_1.0V";
617 regulator-min-microvolt = <1000000>;
618 regulator-max-microvolt = <1000000>;
623 regulator-name = "VSIL_1.2V";
624 regulator-min-microvolt = <1200000>;
625 regulator-max-microvolt = <1200000>;
630 regulator-name = "VMIPI_1.8V";
631 regulator-min-microvolt = <1800000>;
632 regulator-max-microvolt = <1800000>;
637 regulator-name = "VUOTG_3.0V";
638 regulator-min-microvolt = <3000000>;
639 regulator-max-microvolt = <3000000>;
641 regulator-state-mem {
642 regulator-off-in-suspend;
647 regulator-name = "VCC_1.8V_MHL";
648 regulator-min-microvolt = <1800000>;
649 regulator-max-microvolt = <1800000>;
654 regulator-name = "VHSIC_1.0V";
655 regulator-min-microvolt = <1000000>;
656 regulator-max-microvolt = <1000000>;
658 regulator-state-mem {
659 regulator-on-in-suspend;
664 regulator-name = "VCC_2.8V_AP";
665 regulator-min-microvolt = <2800000>;
666 regulator-max-microvolt = <2800000>;
672 regulator-name = "VLED_IC_1.9V";
673 regulator-min-microvolt = <1900000>;
674 regulator-max-microvolt = <1900000>;
680 regulator-name = "VTOUCH_3.3V";
681 regulator-min-microvolt = <3300000>;
682 regulator-max-microvolt = <3300000>;
687 regulator-name = "TSP_VDD_3.3V";
688 regulator-min-microvolt = <3300000>;
689 regulator-max-microvolt = <3300000>;
694 regulator-name = "5M_AF_2.8V";
695 regulator-min-microvolt = <2800000>;
696 regulator-max-microvolt = <2800000>;
701 regulator-name = "VTF_2.8V";
702 regulator-min-microvolt = <2800000>;
703 regulator-max-microvolt = <2800000>;
708 regulator-name = "LEDA_2.8V";
709 regulator-min-microvolt = <2800000>;
710 regulator-max-microvolt = <2800000>;
715 regulator-name = "TSP_VDD_1.8V";
716 regulator-min-microvolt = <1800000>;
717 regulator-max-microvolt = <1800000>;
722 regulator-name = "CAM_IO_1.8V";
723 regulator-min-microvolt = <1800000>;
724 regulator-max-microvolt = <1800000>;
729 regulator-name = "VTCAM_1.8V";
730 regulator-min-microvolt = <1800000>;
731 regulator-max-microvolt = <1800000>;
736 regulator-name = "VDD_MIF";
737 regulator-min-microvolt = <850000>;
738 regulator-max-microvolt = <1100000>;
745 regulator-name = "VDD_ARM";
746 regulator-min-microvolt = <850000>;
747 regulator-max-microvolt = <1500000>;
754 regulator-name = "VDD_INT";
755 regulator-min-microvolt = <850000>;
756 regulator-max-microvolt = <1300000>;
763 regulator-name = "VDD_G3D";
764 regulator-min-microvolt = <850000>;
765 regulator-max-microvolt = <1150000>;
771 regulator-name = "VMEM_1.2V_AP";
772 regulator-min-microvolt = <1200000>;
773 regulator-max-microvolt = <1200000>;
780 regulator-name = "CAM_ISP_CORE_1.2V";
781 regulator-min-microvolt = <1200000>;
782 regulator-max-microvolt = <1200000>;
785 regulator-state-mem {
786 regulator-off-in-suspend;
791 s5m8767_osc: clocks {
792 compatible = "samsung,s5m8767-clk";
794 clock-output-names = "en32khz_ap",
802 pinctrl-0 = <&i2s0_bus>;
803 pinctrl-names = "default";
810 card-detect-delay = <200>;
811 vmmc-supply = <&ldo22_reg>;
812 clock-frequency = <400000000>;
813 samsung,dw-mshc-ciu-div = <0>;
814 samsung,dw-mshc-sdr-timing = <2 3>;
815 samsung,dw-mshc-ddr-timing = <1 2>;
816 pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
817 pinctrl-names = "default";
825 pinctrl-names = "default";
826 pinctrl-0 = <&sleep0>;
828 lcd_en: lcd-en-pins {
829 samsung,pins = "gpc0-1";
830 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
831 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
834 lcd_nrst: lcd-nrst-pins {
835 samsung,pins = "gpf0-4";
836 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
837 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
840 s5m8767_ds: s5m8767-ds-pins {
841 samsung,pins = "gpf3-1", "gpf3-2", "gpf3-3";
842 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
843 samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
844 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
847 sleep0: sleep-state {
848 PIN_SLP(gpa0-0, INPUT, NONE);
849 PIN_SLP(gpa0-1, OUT0, NONE);
850 PIN_SLP(gpa0-2, INPUT, NONE);
851 PIN_SLP(gpa0-3, INPUT, UP);
852 PIN_SLP(gpa0-4, INPUT, DOWN);
853 PIN_SLP(gpa0-5, INPUT, DOWN);
854 PIN_SLP(gpa0-6, INPUT, DOWN);
855 PIN_SLP(gpa0-7, INPUT, DOWN);
857 PIN_SLP(gpa1-0, INPUT, DOWN);
858 PIN_SLP(gpa1-1, INPUT, DOWN);
859 PIN_SLP(gpa1-2, INPUT, DOWN);
860 PIN_SLP(gpa1-3, INPUT, DOWN);
861 PIN_SLP(gpa1-4, INPUT, DOWN);
862 PIN_SLP(gpa1-5, INPUT, DOWN);
864 PIN_SLP(gpb-0, INPUT, NONE);
865 PIN_SLP(gpb-1, INPUT, NONE);
866 PIN_SLP(gpb-2, INPUT, NONE);
867 PIN_SLP(gpb-3, INPUT, NONE);
868 PIN_SLP(gpb-4, INPUT, DOWN);
869 PIN_SLP(gpb-5, INPUT, DOWN);
870 PIN_SLP(gpb-6, INPUT, DOWN);
871 PIN_SLP(gpb-7, INPUT, DOWN);
873 PIN_SLP(gpc0-0, INPUT, DOWN);
874 PIN_SLP(gpc0-1, INPUT, DOWN);
875 PIN_SLP(gpc0-2, INPUT, NONE);
876 PIN_SLP(gpc0-3, INPUT, NONE);
877 PIN_SLP(gpc0-4, INPUT, NONE);
879 PIN_SLP(gpc1-0, INPUT, DOWN);
880 PIN_SLP(gpc1-1, INPUT, DOWN);
881 PIN_SLP(gpc1-2, INPUT, DOWN);
882 PIN_SLP(gpc1-3, INPUT, DOWN);
883 PIN_SLP(gpc1-4, INPUT, DOWN);
885 PIN_SLP(gpd0-0, INPUT, DOWN);
886 PIN_SLP(gpd0-1, OUT0, NONE);
887 PIN_SLP(gpd0-2, INPUT, NONE);
888 PIN_SLP(gpd0-3, INPUT, NONE);
890 PIN_SLP(gpd1-0, INPUT, DOWN);
891 PIN_SLP(gpd1-1, INPUT, DOWN);
892 PIN_SLP(gpd1-2, INPUT, NONE);
893 PIN_SLP(gpd1-3, INPUT, NONE);
895 PIN_SLP(gpf0-0, INPUT, DOWN);
896 PIN_SLP(gpf0-1, INPUT, DOWN);
897 PIN_SLP(gpf0-2, INPUT, DOWN);
898 PIN_SLP(gpf0-3, INPUT, DOWN);
899 PIN_SLP(gpf0-4, OUT0, NONE);
900 PIN_SLP(gpf0-5, OUT0, NONE);
901 PIN_SLP(gpf0-6, INPUT, DOWN);
902 PIN_SLP(gpf0-7, INPUT, DOWN);
904 PIN_SLP(gpf1-0, INPUT, DOWN);
905 PIN_SLP(gpf1-1, INPUT, DOWN);
906 PIN_SLP(gpf1-2, INPUT, DOWN);
907 PIN_SLP(gpf1-3, INPUT, DOWN);
908 PIN_SLP(gpf1-4, INPUT, DOWN);
909 PIN_SLP(gpf1-5, INPUT, DOWN);
910 PIN_SLP(gpf1-6, INPUT, DOWN);
911 PIN_SLP(gpf1-7, INPUT, DOWN);
913 PIN_SLP(gpf2-0, INPUT, DOWN);
914 PIN_SLP(gpf2-1, INPUT, DOWN);
915 PIN_SLP(gpf2-2, INPUT, DOWN);
916 PIN_SLP(gpf2-3, INPUT, DOWN);
917 PIN_SLP(gpf2-4, INPUT, DOWN);
918 PIN_SLP(gpf2-5, INPUT, DOWN);
919 PIN_SLP(gpf2-6, INPUT, DOWN);
920 PIN_SLP(gpf2-7, INPUT, DOWN);
922 PIN_SLP(gpf3-0, INPUT, DOWN);
923 PIN_SLP(gpf3-1, INPUT, DOWN);
924 PIN_SLP(gpf3-2, INPUT, DOWN);
925 PIN_SLP(gpf3-3, INPUT, DOWN);
926 PIN_SLP(gpf3-4, PREV, NONE);
927 PIN_SLP(gpf3-5, OUT0, DOWN);
929 PIN_SLP(gpj0-0, INPUT, DOWN);
930 PIN_SLP(gpj0-1, INPUT, DOWN);
931 PIN_SLP(gpj0-2, INPUT, DOWN);
932 PIN_SLP(gpj0-3, OUT0, NONE);
933 PIN_SLP(gpj0-4, INPUT, DOWN);
934 PIN_SLP(gpj0-5, INPUT, DOWN);
935 PIN_SLP(gpj0-6, OUT0, NONE);
936 PIN_SLP(gpj0-7, OUT0, NONE);
938 PIN_SLP(gpj1-0, OUT0, NONE);
939 PIN_SLP(gpj1-1, INPUT, DOWN);
940 PIN_SLP(gpj1-2, PREV, NONE);
941 PIN_SLP(gpj1-3, INPUT, DOWN);
942 PIN_SLP(gpj1-4, INPUT, DOWN);
947 pinctrl-names = "default";
948 pinctrl-0 = <&sleep1>;
950 bt_shutdown: bt-shutdown-pins {
951 samsung,pins = "gpl0-6";
952 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
955 bt_host_wakeup: bt-host-wakeup-pins {
956 samsung,pins = "gpx2-6";
957 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
960 bt_device_wakeup: bt-device-wakeup-pins {
961 samsung,pins = "gpx3-1";
962 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
965 backlight_reset: backlight-reset-pins {
966 samsung,pins = "gpm0-1";
967 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
968 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
971 gpio_keys: gpio-keys-pins {
972 samsung,pins = "gpx1-2", "gpx2-2", "gpx2-4", "gpx2-7", "gpx3-3";
973 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
976 max77693_irq: max77693-irq-pins {
977 samsung,pins = "gpx1-5";
978 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
979 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
980 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
983 max77693_fuel_irq: max77693-fuel-irq-pins {
984 samsung,pins = "gpx2-3";
985 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
986 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
987 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
990 sdhci2_cd: sdhci2-cd-irq-pins {
991 samsung,pins = "gpx3-4";
992 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
993 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
994 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
997 s5m8767_dvs: s5m8767-dvs-pins {
998 samsung,pins = "gpm3-0", "gpm3-1", "gpm3-2";
999 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
1000 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1001 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
1004 s5m8767_irq: s5m8767-irq-pins {
1005 samsung,pins = "gpx0-7";
1006 samsung,pin-function = <EXYNOS_PIN_FUNC_EINT>;
1007 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1008 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
1011 sleep1: sleep-state {
1012 PIN_SLP(gpk0-0, PREV, NONE);
1013 PIN_SLP(gpk0-1, PREV, NONE);
1014 PIN_SLP(gpk0-2, PREV, NONE);
1015 PIN_SLP(gpk0-3, PREV, NONE);
1016 PIN_SLP(gpk0-4, PREV, NONE);
1017 PIN_SLP(gpk0-5, PREV, NONE);
1018 PIN_SLP(gpk0-6, PREV, NONE);
1020 PIN_SLP(gpk1-0, INPUT, DOWN);
1021 PIN_SLP(gpk1-1, INPUT, DOWN);
1022 PIN_SLP(gpk1-2, INPUT, DOWN);
1023 PIN_SLP(gpk1-3, PREV, NONE);
1024 PIN_SLP(gpk1-4, PREV, NONE);
1025 PIN_SLP(gpk1-5, PREV, NONE);
1026 PIN_SLP(gpk1-6, PREV, NONE);
1028 PIN_SLP(gpk2-0, INPUT, DOWN);
1029 PIN_SLP(gpk2-1, INPUT, DOWN);
1030 PIN_SLP(gpk2-2, INPUT, DOWN);
1031 PIN_SLP(gpk2-3, INPUT, DOWN);
1032 PIN_SLP(gpk2-4, INPUT, DOWN);
1033 PIN_SLP(gpk2-5, INPUT, DOWN);
1034 PIN_SLP(gpk2-6, INPUT, DOWN);
1036 PIN_SLP(gpk3-0, OUT0, NONE);
1037 PIN_SLP(gpk3-1, INPUT, NONE);
1038 PIN_SLP(gpk3-2, INPUT, DOWN);
1039 PIN_SLP(gpk3-3, INPUT, NONE);
1040 PIN_SLP(gpk3-4, INPUT, NONE);
1041 PIN_SLP(gpk3-5, INPUT, NONE);
1042 PIN_SLP(gpk3-6, INPUT, NONE);
1044 PIN_SLP(gpl0-0, INPUT, DOWN);
1045 PIN_SLP(gpl0-1, INPUT, NONE);
1046 PIN_SLP(gpl0-2, INPUT, NONE);
1047 PIN_SLP(gpl0-3, INPUT, DOWN);
1048 PIN_SLP(gpl0-4, INPUT, DOWN);
1049 PIN_SLP(gpl0-6, PREV, NONE);
1051 PIN_SLP(gpl1-0, INPUT, DOWN);
1052 PIN_SLP(gpl1-1, OUT0, NONE);
1053 PIN_SLP(gpl2-0, INPUT, DOWN);
1054 PIN_SLP(gpl2-1, PREV, NONE);
1055 PIN_SLP(gpl2-2, PREV, NONE);
1056 PIN_SLP(gpl2-3, INPUT, DOWN);
1057 PIN_SLP(gpl2-4, INPUT, DOWN);
1058 PIN_SLP(gpl2-5, INPUT, DOWN);
1059 PIN_SLP(gpl2-6, INPUT, DOWN);
1060 PIN_SLP(gpl2-7, INPUT, DOWN);
1062 PIN_SLP(gpm0-0, PREV, NONE);
1063 PIN_SLP(gpm0-1, OUT0, NONE);
1064 PIN_SLP(gpm0-2, INPUT, DOWN);
1065 PIN_SLP(gpm0-3, INPUT, DOWN);
1066 PIN_SLP(gpm0-4, INPUT, DOWN);
1067 PIN_SLP(gpm0-5, INPUT, DOWN);
1068 PIN_SLP(gpm0-6, INPUT, DOWN);
1069 PIN_SLP(gpm0-7, INPUT, DOWN);
1071 PIN_SLP(gpm1-0, INPUT, DOWN);
1072 PIN_SLP(gpm1-1, INPUT, DOWN);
1073 PIN_SLP(gpm1-2, INPUT, NONE);
1074 PIN_SLP(gpm1-3, INPUT, NONE);
1075 PIN_SLP(gpm1-4, INPUT, NONE);
1076 PIN_SLP(gpm1-5, INPUT, NONE);
1077 PIN_SLP(gpm1-6, OUT0, NONE);
1079 PIN_SLP(gpm2-0, INPUT, NONE);
1080 PIN_SLP(gpm2-1, INPUT, NONE);
1081 PIN_SLP(gpm2-2, OUT0, NONE);
1082 PIN_SLP(gpm2-3, INPUT, DOWN);
1083 PIN_SLP(gpm2-4, INPUT, DOWN);
1085 PIN_SLP(gpm3-0, PREV, NONE);
1086 PIN_SLP(gpm3-1, PREV, NONE);
1087 PIN_SLP(gpm3-2, PREV, NONE);
1088 PIN_SLP(gpm3-3, INPUT, DOWN);
1089 PIN_SLP(gpm3-4, INPUT, DOWN);
1090 PIN_SLP(gpm3-5, PREV, NONE);
1091 PIN_SLP(gpm3-6, INPUT, DOWN);
1092 PIN_SLP(gpm3-7, OUT0, NONE);
1094 PIN_SLP(gpm4-0, INPUT, DOWN);
1095 PIN_SLP(gpm4-1, INPUT, DOWN);
1096 PIN_SLP(gpm4-2, INPUT, DOWN);
1097 PIN_SLP(gpm4-3, INPUT, DOWN);
1098 PIN_SLP(gpm4-4, PREV, NONE);
1099 PIN_SLP(gpm4-5, INPUT, NONE);
1100 PIN_SLP(gpm4-6, INPUT, DOWN);
1101 PIN_SLP(gpm4-7, INPUT, DOWN);
1103 PIN_SLP(gpy0-0, INPUT, DOWN);
1104 PIN_SLP(gpy0-1, INPUT, DOWN);
1105 PIN_SLP(gpy0-2, INPUT, NONE);
1106 PIN_SLP(gpy0-3, INPUT, NONE);
1107 PIN_SLP(gpy0-4, INPUT, DOWN);
1108 PIN_SLP(gpy0-5, INPUT, DOWN);
1110 PIN_SLP(gpy1-0, INPUT, DOWN);
1111 PIN_SLP(gpy1-1, INPUT, DOWN);
1112 PIN_SLP(gpy1-2, INPUT, DOWN);
1113 PIN_SLP(gpy1-3, INPUT, DOWN);
1115 PIN_SLP(gpy2-0, PREV, NONE);
1116 PIN_SLP(gpy2-1, INPUT, DOWN);
1117 PIN_SLP(gpy2-2, INPUT, NONE);
1118 PIN_SLP(gpy2-3, INPUT, NONE);
1119 PIN_SLP(gpy2-4, INPUT, NONE);
1120 PIN_SLP(gpy2-5, INPUT, NONE);
1122 PIN_SLP(gpy3-0, INPUT, DOWN);
1123 PIN_SLP(gpy3-1, INPUT, DOWN);
1124 PIN_SLP(gpy3-2, INPUT, DOWN);
1125 PIN_SLP(gpy3-3, INPUT, DOWN);
1126 PIN_SLP(gpy3-4, INPUT, DOWN);
1127 PIN_SLP(gpy3-5, INPUT, DOWN);
1128 PIN_SLP(gpy3-6, INPUT, DOWN);
1129 PIN_SLP(gpy3-7, INPUT, DOWN);
1131 PIN_SLP(gpy4-0, INPUT, DOWN);
1132 PIN_SLP(gpy4-1, INPUT, DOWN);
1133 PIN_SLP(gpy4-2, INPUT, DOWN);
1134 PIN_SLP(gpy4-3, INPUT, DOWN);
1135 PIN_SLP(gpy4-4, INPUT, DOWN);
1136 PIN_SLP(gpy4-5, INPUT, DOWN);
1137 PIN_SLP(gpy4-6, INPUT, DOWN);
1138 PIN_SLP(gpy4-7, INPUT, DOWN);
1140 PIN_SLP(gpy5-0, INPUT, DOWN);
1141 PIN_SLP(gpy5-1, INPUT, DOWN);
1142 PIN_SLP(gpy5-2, INPUT, DOWN);
1143 PIN_SLP(gpy5-3, INPUT, DOWN);
1144 PIN_SLP(gpy5-4, INPUT, DOWN);
1145 PIN_SLP(gpy5-5, INPUT, DOWN);
1146 PIN_SLP(gpy5-6, INPUT, DOWN);
1147 PIN_SLP(gpy5-7, INPUT, DOWN);
1149 PIN_SLP(gpy6-0, INPUT, DOWN);
1150 PIN_SLP(gpy6-1, INPUT, DOWN);
1151 PIN_SLP(gpy6-2, INPUT, DOWN);
1152 PIN_SLP(gpy6-3, INPUT, DOWN);
1153 PIN_SLP(gpy6-4, INPUT, DOWN);
1154 PIN_SLP(gpy6-5, INPUT, DOWN);
1155 PIN_SLP(gpy6-6, INPUT, DOWN);
1156 PIN_SLP(gpy6-7, INPUT, DOWN);
1161 pinctrl-names = "default";
1162 pinctrl-0 = <&sleep2>;
1164 sleep2: sleep-state {
1165 PIN_SLP(gpz-0, INPUT, DOWN);
1166 PIN_SLP(gpz-1, INPUT, DOWN);
1167 PIN_SLP(gpz-2, INPUT, DOWN);
1168 PIN_SLP(gpz-3, INPUT, DOWN);
1169 PIN_SLP(gpz-4, INPUT, DOWN);
1170 PIN_SLP(gpz-5, INPUT, DOWN);
1171 PIN_SLP(gpz-6, INPUT, DOWN);
1176 pinctrl-names = "default";
1177 pinctrl-0 = <&sleep3>;
1179 sleep3: sleep-state {
1180 PIN_SLP(gpv0-0, INPUT, DOWN);
1181 PIN_SLP(gpv0-1, INPUT, DOWN);
1182 PIN_SLP(gpv0-2, INPUT, DOWN);
1183 PIN_SLP(gpv0-3, INPUT, DOWN);
1184 PIN_SLP(gpv0-4, INPUT, DOWN);
1185 PIN_SLP(gpv0-5, INPUT, DOWN);
1186 PIN_SLP(gpv0-6, INPUT, DOWN);
1187 PIN_SLP(gpv0-7, INPUT, DOWN);
1189 PIN_SLP(gpv1-0, INPUT, DOWN);
1190 PIN_SLP(gpv1-1, INPUT, DOWN);
1191 PIN_SLP(gpv1-2, INPUT, DOWN);
1192 PIN_SLP(gpv1-3, INPUT, DOWN);
1193 PIN_SLP(gpv1-4, INPUT, DOWN);
1194 PIN_SLP(gpv1-5, INPUT, DOWN);
1195 PIN_SLP(gpv1-6, INPUT, DOWN);
1196 PIN_SLP(gpv1-7, INPUT, DOWN);
1198 PIN_SLP(gpv2-0, INPUT, DOWN);
1199 PIN_SLP(gpv2-1, INPUT, DOWN);
1200 PIN_SLP(gpv2-2, INPUT, DOWN);
1201 PIN_SLP(gpv2-3, INPUT, DOWN);
1202 PIN_SLP(gpv2-4, INPUT, DOWN);
1203 PIN_SLP(gpv2-5, INPUT, DOWN);
1204 PIN_SLP(gpv2-6, INPUT, DOWN);
1205 PIN_SLP(gpv2-7, INPUT, DOWN);
1207 PIN_SLP(gpv3-0, INPUT, DOWN);
1208 PIN_SLP(gpv3-1, INPUT, DOWN);
1209 PIN_SLP(gpv3-2, INPUT, DOWN);
1210 PIN_SLP(gpv3-3, INPUT, DOWN);
1211 PIN_SLP(gpv3-4, INPUT, DOWN);
1212 PIN_SLP(gpv3-5, INPUT, DOWN);
1213 PIN_SLP(gpv3-6, INPUT, DOWN);
1214 PIN_SLP(gpv3-7, INPUT, DOWN);
1216 PIN_SLP(gpv4-0, INPUT, DOWN);
1217 PIN_SLP(gpv4-1, INPUT, DOWN);
1221 &pmu_system_controller {
1222 assigned-clocks = <&pmu_system_controller 0>;
1223 assigned-clock-parents = <&clock CLK_XUSBXTI>;
1227 pinctrl-0 = <&pwm1_out>;
1228 pinctrl-names = "default";
1229 samsung,pwm-outputs = <1>;
1234 * The internal RTC does not work; instead, the RTC provided by the
1235 * S5M8766 PMIC is used. Disable the RTC to make sure the working
1238 * We add this node to avoid DTB check warnings, as the Exynos4 RTC
1239 * requires two clocks, and only one is set up by default.
1242 clocks = <&clock CLK_RTC>, <&s5m8767_osc S2MPS11_CLK_AP>;
1243 clock-names = "rtc", "rtc_src";
1244 status = "disabled";
1249 cd-gpios = <&gpx3 4 GPIO_ACTIVE_LOW>;
1250 pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sdhci2_cd>;
1251 pinctrl-names = "default";
1252 vmmc-supply = <&ldo23_reg>;
1257 #address-cells = <1>;
1262 mmc-pwrseq = <&wlan_pwrseq>;
1263 pinctrl-names = "default";
1264 pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_bus4>;
1268 compatible = "brcm,bcm4334-fmac", "brcm,bcm4329-fmac";
1271 interrupt-parent = <&gpx2>;
1272 interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
1273 interrupt-names = "host-wake";
1278 pinctrl-0 = <&uart0_data &uart0_fctl>;
1279 pinctrl-names = "default";
1283 compatible = "brcm,bcm4330-bt"; /* BCM4334B0 */
1284 pinctrl-0 = <&bt_shutdown &bt_device_wakeup &bt_host_wakeup>;
1285 pinctrl-names = "default";
1286 max-speed = <3000000>;
1287 shutdown-gpios = <&gpl0 6 GPIO_ACTIVE_HIGH>;
1288 device-wakeup-gpios = <&gpx3 1 GPIO_ACTIVE_HIGH>;
1289 host-wakeup-gpios = <&gpx2 6 GPIO_ACTIVE_HIGH>;
1290 clocks = <&s5m8767_osc S2MPS11_CLK_BT>;
1307 vtmu-supply = <&ldo10_reg>;