xref: /linux/scripts/dtc/include-prefixes/arm/qcom/qcom-msm8974pro-sony-xperia-shinano-common.dtsi (revision a1ff5a7d78a036d6c2178ee5acd6ba4946243800)
153426f53SLuca Weiss// SPDX-License-Identifier: GPL-2.0
253426f53SLuca Weiss#include "qcom-msm8974pro.dtsi"
353426f53SLuca Weiss#include "pm8841.dtsi"
453426f53SLuca Weiss#include "pm8941.dtsi"
553426f53SLuca Weiss#include <dt-bindings/input/input.h>
653426f53SLuca Weiss#include <dt-bindings/leds/common.h>
753426f53SLuca Weiss#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
853426f53SLuca Weiss
953426f53SLuca Weiss/ {
1053426f53SLuca Weiss	aliases {
1153426f53SLuca Weiss		mmc0 = &sdhc_1;
1253426f53SLuca Weiss		mmc1 = &sdhc_2;
1353426f53SLuca Weiss		serial0 = &blsp1_uart2;
1453426f53SLuca Weiss		serial1 = &blsp2_uart1;
1553426f53SLuca Weiss	};
1653426f53SLuca Weiss
1753426f53SLuca Weiss	chosen {
1853426f53SLuca Weiss		stdout-path = "serial0:115200n8";
1953426f53SLuca Weiss	};
2053426f53SLuca Weiss
2153426f53SLuca Weiss	gpio-keys {
2253426f53SLuca Weiss		compatible = "gpio-keys";
2353426f53SLuca Weiss
2453426f53SLuca Weiss		pinctrl-0 = <&gpio_keys_pin_a>;
2553426f53SLuca Weiss		pinctrl-names = "default";
2653426f53SLuca Weiss
2753426f53SLuca Weiss		key-volume-down {
2853426f53SLuca Weiss			label = "volume_down";
2953426f53SLuca Weiss			gpios = <&pm8941_gpios 2 GPIO_ACTIVE_LOW>;
3053426f53SLuca Weiss			linux,code = <KEY_VOLUMEDOWN>;
3153426f53SLuca Weiss			debounce-interval = <15>;
3253426f53SLuca Weiss		};
3353426f53SLuca Weiss
3453426f53SLuca Weiss		key-volume-up {
3553426f53SLuca Weiss			label = "volume_up";
3653426f53SLuca Weiss			gpios = <&pm8941_gpios 5 GPIO_ACTIVE_LOW>;
3753426f53SLuca Weiss			linux,code = <KEY_VOLUMEUP>;
3853426f53SLuca Weiss			debounce-interval = <15>;
3953426f53SLuca Weiss		};
4053426f53SLuca Weiss	};
4153426f53SLuca Weiss
4253426f53SLuca Weiss	vreg_vsp: lcd-dcdc-regulator {
4353426f53SLuca Weiss		compatible = "regulator-fixed";
4453426f53SLuca Weiss		regulator-name = "vreg_vsp";
4553426f53SLuca Weiss		regulator-min-microvolt = <5600000>;
4653426f53SLuca Weiss		regulator-max-microvolt = <5600000>;
4753426f53SLuca Weiss
4853426f53SLuca Weiss		gpio = <&pm8941_gpios 20 GPIO_ACTIVE_HIGH>;
4953426f53SLuca Weiss		enable-active-high;
5053426f53SLuca Weiss
5153426f53SLuca Weiss		pinctrl-0 = <&lcd_dcdc_en_pin_a>;
5253426f53SLuca Weiss		pinctrl-names = "default";
5353426f53SLuca Weiss	};
5453426f53SLuca Weiss
5553426f53SLuca Weiss	vreg_boost: vreg-boost {
5653426f53SLuca Weiss		compatible = "regulator-fixed";
5753426f53SLuca Weiss
5853426f53SLuca Weiss		regulator-name = "vreg-boost";
5953426f53SLuca Weiss		regulator-min-microvolt = <3150000>;
6053426f53SLuca Weiss		regulator-max-microvolt = <3150000>;
6153426f53SLuca Weiss
6253426f53SLuca Weiss		regulator-always-on;
6353426f53SLuca Weiss		regulator-boot-on;
6453426f53SLuca Weiss
6553426f53SLuca Weiss		gpio = <&pm8941_gpios 21 GPIO_ACTIVE_HIGH>;
6653426f53SLuca Weiss		enable-active-high;
6753426f53SLuca Weiss
6853426f53SLuca Weiss		pinctrl-names = "default";
6953426f53SLuca Weiss		pinctrl-0 = <&boost_bypass_n_pin>;
7053426f53SLuca Weiss	};
7153426f53SLuca Weiss
7253426f53SLuca Weiss	vreg_vph_pwr: vreg-vph-pwr {
7353426f53SLuca Weiss		compatible = "regulator-fixed";
7453426f53SLuca Weiss		regulator-name = "vph-pwr";
7553426f53SLuca Weiss
7653426f53SLuca Weiss		regulator-min-microvolt = <3600000>;
7753426f53SLuca Weiss		regulator-max-microvolt = <3600000>;
7853426f53SLuca Weiss
7953426f53SLuca Weiss		regulator-always-on;
8053426f53SLuca Weiss	};
8153426f53SLuca Weiss
8253426f53SLuca Weiss	vreg_wlan: wlan-regulator {
8353426f53SLuca Weiss		compatible = "regulator-fixed";
8453426f53SLuca Weiss
8553426f53SLuca Weiss		regulator-name = "wl-reg";
8653426f53SLuca Weiss		regulator-min-microvolt = <3300000>;
8753426f53SLuca Weiss		regulator-max-microvolt = <3300000>;
8853426f53SLuca Weiss
8953426f53SLuca Weiss		gpio = <&pm8941_gpios 18 GPIO_ACTIVE_HIGH>;
9053426f53SLuca Weiss		enable-active-high;
9153426f53SLuca Weiss
9253426f53SLuca Weiss		pinctrl-0 = <&wlan_regulator_pin>;
9353426f53SLuca Weiss		pinctrl-names = "default";
9453426f53SLuca Weiss	};
9553426f53SLuca Weiss};
9653426f53SLuca Weiss
9753426f53SLuca Weiss&blsp1_uart2 {
9853426f53SLuca Weiss	status = "okay";
9953426f53SLuca Weiss};
10053426f53SLuca Weiss
10153426f53SLuca Weiss&blsp2_i2c2 {
10253426f53SLuca Weiss	clock-frequency = <355000>;
10353426f53SLuca Weiss
10453426f53SLuca Weiss	status = "okay";
10553426f53SLuca Weiss
10653426f53SLuca Weiss	synaptics_touchscreen: synaptics@2c {
10753426f53SLuca Weiss		compatible = "syna,rmi4-i2c";
10853426f53SLuca Weiss		reg = <0x2c>;
10953426f53SLuca Weiss
11053426f53SLuca Weiss		interrupt-parent = <&tlmm>;
11153426f53SLuca Weiss		interrupts = <86 IRQ_TYPE_EDGE_FALLING>;
11253426f53SLuca Weiss
11353426f53SLuca Weiss		#address-cells = <1>;
11453426f53SLuca Weiss		#size-cells = <0>;
11553426f53SLuca Weiss
11653426f53SLuca Weiss		vdd-supply = <&pm8941_l22>;
11753426f53SLuca Weiss		/* vio-supply is set in dts */
11853426f53SLuca Weiss
11953426f53SLuca Weiss		pinctrl-0 = <&ts_int_pin>;
12053426f53SLuca Weiss		pinctrl-names = "default";
12153426f53SLuca Weiss
12253426f53SLuca Weiss		syna,startup-delay-ms = <100>;
12353426f53SLuca Weiss
12453426f53SLuca Weiss		rmi4-f01@1 {
12553426f53SLuca Weiss			reg = <0x1>;
12653426f53SLuca Weiss			syna,nosleep-mode = <1>;
12753426f53SLuca Weiss		};
12853426f53SLuca Weiss
12953426f53SLuca Weiss		rmi4-f11@11 {
13053426f53SLuca Weiss			reg = <0x11>;
13153426f53SLuca Weiss			syna,sensor-type = <1>;
13253426f53SLuca Weiss			touchscreen-inverted-x;
13353426f53SLuca Weiss		};
13453426f53SLuca Weiss	};
13553426f53SLuca Weiss};
13653426f53SLuca Weiss
13753426f53SLuca Weiss&pm8941_coincell {
13853426f53SLuca Weiss	qcom,rset-ohms = <2100>;
13953426f53SLuca Weiss	qcom,vset-millivolts = <3000>;
14053426f53SLuca Weiss
14153426f53SLuca Weiss	status = "okay";
14253426f53SLuca Weiss};
14353426f53SLuca Weiss
14453426f53SLuca Weiss&pm8941_gpios {
14553426f53SLuca Weiss	gpio_keys_pin_a: gpio-keys-active-state {
14653426f53SLuca Weiss		pins = "gpio2", "gpio5";
14753426f53SLuca Weiss		function = "normal";
14853426f53SLuca Weiss		bias-pull-up;
14953426f53SLuca Weiss		power-source = <PM8941_GPIO_S3>;
15053426f53SLuca Weiss	};
15153426f53SLuca Weiss
15253426f53SLuca Weiss	wlan_sleep_clk_pin: wl-sleep-clk-state {
15353426f53SLuca Weiss		pins = "gpio17";
15453426f53SLuca Weiss		function = "func2";
15553426f53SLuca Weiss		output-high;
15653426f53SLuca Weiss		power-source = <PM8941_GPIO_S3>;
15753426f53SLuca Weiss	};
15853426f53SLuca Weiss
15953426f53SLuca Weiss	wlan_regulator_pin: wl-reg-active-state {
16053426f53SLuca Weiss		pins = "gpio18";
16153426f53SLuca Weiss		function = "normal";
16253426f53SLuca Weiss		bias-disable;
16353426f53SLuca Weiss		power-source = <PM8941_GPIO_S3>;
16453426f53SLuca Weiss	};
16553426f53SLuca Weiss
16653426f53SLuca Weiss	lcd_dcdc_en_pin_a: lcd-dcdc-en-active-state {
16753426f53SLuca Weiss		pins = "gpio20";
16853426f53SLuca Weiss		function = "normal";
16953426f53SLuca Weiss		bias-disable;
17053426f53SLuca Weiss		power-source = <PM8941_GPIO_S3>;
17153426f53SLuca Weiss		input-disable;
17253426f53SLuca Weiss		output-low;
17353426f53SLuca Weiss	};
17453426f53SLuca Weiss};
17553426f53SLuca Weiss
17653426f53SLuca Weiss&pm8941_lpg {
17753426f53SLuca Weiss	qcom,power-source = <1>;
17853426f53SLuca Weiss
17953426f53SLuca Weiss	status = "okay";
18053426f53SLuca Weiss
18153426f53SLuca Weiss	multi-led {
18253426f53SLuca Weiss		color = <LED_COLOR_ID_RGB>;
18353426f53SLuca Weiss		function = LED_FUNCTION_STATUS;
18453426f53SLuca Weiss
18553426f53SLuca Weiss		#address-cells = <1>;
18653426f53SLuca Weiss		#size-cells = <0>;
18753426f53SLuca Weiss
18853426f53SLuca Weiss		led@5 {
18953426f53SLuca Weiss			reg = <5>;
19053426f53SLuca Weiss			color = <LED_COLOR_ID_BLUE>;
19153426f53SLuca Weiss		};
19253426f53SLuca Weiss
19353426f53SLuca Weiss		led@6 {
19453426f53SLuca Weiss			reg = <6>;
19553426f53SLuca Weiss			color = <LED_COLOR_ID_GREEN>;
19653426f53SLuca Weiss		};
19753426f53SLuca Weiss
19853426f53SLuca Weiss		led@7 {
19953426f53SLuca Weiss			reg = <7>;
20053426f53SLuca Weiss			color = <LED_COLOR_ID_RED>;
20153426f53SLuca Weiss		};
20253426f53SLuca Weiss	};
20353426f53SLuca Weiss};
20453426f53SLuca Weiss
2055c94b0b9SLuca Weiss&pm8941_vib {
2065c94b0b9SLuca Weiss	status = "okay";
2075c94b0b9SLuca Weiss};
2085c94b0b9SLuca Weiss
20953426f53SLuca Weiss&remoteproc_adsp {
21053426f53SLuca Weiss	cx-supply = <&pm8841_s2>;
21153426f53SLuca Weiss	status = "okay";
21253426f53SLuca Weiss};
21353426f53SLuca Weiss
21453426f53SLuca Weiss&remoteproc_mss {
21553426f53SLuca Weiss	cx-supply = <&pm8841_s2>;
21653426f53SLuca Weiss	mss-supply = <&pm8841_s3>;
21753426f53SLuca Weiss	mx-supply = <&pm8841_s1>;
21853426f53SLuca Weiss	pll-supply = <&pm8941_l12>;
21953426f53SLuca Weiss	status = "okay";
22053426f53SLuca Weiss};
22153426f53SLuca Weiss
22253426f53SLuca Weiss&rpm_requests {
22353426f53SLuca Weiss	regulators-0 {
22453426f53SLuca Weiss		compatible = "qcom,rpm-pm8841-regulators";
22553426f53SLuca Weiss
22653426f53SLuca Weiss		pm8841_s1: s1 {
22753426f53SLuca Weiss			regulator-min-microvolt = <675000>;
22853426f53SLuca Weiss			regulator-max-microvolt = <1050000>;
22953426f53SLuca Weiss		};
23053426f53SLuca Weiss
23153426f53SLuca Weiss		pm8841_s2: s2 {
23253426f53SLuca Weiss			regulator-min-microvolt = <500000>;
23353426f53SLuca Weiss			regulator-max-microvolt = <1050000>;
23453426f53SLuca Weiss		};
23553426f53SLuca Weiss
23653426f53SLuca Weiss		pm8841_s3: s3 {
23753426f53SLuca Weiss			regulator-min-microvolt = <500000>;
23853426f53SLuca Weiss			regulator-max-microvolt = <1050000>;
23953426f53SLuca Weiss		};
24053426f53SLuca Weiss
24153426f53SLuca Weiss		pm8841_s4: s4 {
24253426f53SLuca Weiss			regulator-min-microvolt = <500000>;
24353426f53SLuca Weiss			regulator-max-microvolt = <1050000>;
24453426f53SLuca Weiss		};
24553426f53SLuca Weiss	};
24653426f53SLuca Weiss
24753426f53SLuca Weiss	regulators-1 {
24853426f53SLuca Weiss		compatible = "qcom,rpm-pm8941-regulators";
24953426f53SLuca Weiss
25053426f53SLuca Weiss		vdd_l1_l3-supply = <&pm8941_s1>;
25153426f53SLuca Weiss		vdd_l2_lvs1_2_3-supply = <&pm8941_s3>;
25253426f53SLuca Weiss		vdd_l4_l11-supply = <&pm8941_s1>;
25353426f53SLuca Weiss		vdd_l5_l7-supply = <&pm8941_s2>;
25453426f53SLuca Weiss		vdd_l6_l12_l14_l15-supply = <&pm8941_s2>;
25553426f53SLuca Weiss		vdd_l9_l10_l17_l22-supply = <&vreg_boost>;
25653426f53SLuca Weiss		vdd_l13_l20_l23_l24-supply = <&vreg_boost>;
25753426f53SLuca Weiss		vdd_l21-supply = <&vreg_boost>;
25853426f53SLuca Weiss
25953426f53SLuca Weiss		pm8941_s1: s1 {
26053426f53SLuca Weiss			regulator-min-microvolt = <1300000>;
26153426f53SLuca Weiss			regulator-max-microvolt = <1300000>;
26253426f53SLuca Weiss			regulator-always-on;
26353426f53SLuca Weiss			regulator-boot-on;
26453426f53SLuca Weiss		};
26553426f53SLuca Weiss
26653426f53SLuca Weiss		pm8941_s2: s2 {
26753426f53SLuca Weiss			regulator-min-microvolt = <2150000>;
26853426f53SLuca Weiss			regulator-max-microvolt = <2150000>;
26953426f53SLuca Weiss			regulator-boot-on;
27053426f53SLuca Weiss		};
27153426f53SLuca Weiss
27253426f53SLuca Weiss		pm8941_s3: s3 {
27353426f53SLuca Weiss			regulator-min-microvolt = <1800000>;
27453426f53SLuca Weiss			regulator-max-microvolt = <1800000>;
27553426f53SLuca Weiss			regulator-system-load = <154000>;
27653426f53SLuca Weiss			regulator-always-on;
27753426f53SLuca Weiss			regulator-boot-on;
27853426f53SLuca Weiss		};
27953426f53SLuca Weiss
28053426f53SLuca Weiss		pm8941_s4: s4 {
28153426f53SLuca Weiss			regulator-min-microvolt = <5000000>;
28253426f53SLuca Weiss			regulator-max-microvolt = <5000000>;
28353426f53SLuca Weiss		};
28453426f53SLuca Weiss
28553426f53SLuca Weiss		pm8941_l1: l1 {
28653426f53SLuca Weiss			regulator-min-microvolt = <1225000>;
28753426f53SLuca Weiss			regulator-max-microvolt = <1225000>;
28853426f53SLuca Weiss			regulator-always-on;
28953426f53SLuca Weiss			regulator-boot-on;
29053426f53SLuca Weiss		};
29153426f53SLuca Weiss
29253426f53SLuca Weiss		pm8941_l2: l2 {
29353426f53SLuca Weiss			regulator-min-microvolt = <1200000>;
29453426f53SLuca Weiss			regulator-max-microvolt = <1200000>;
29553426f53SLuca Weiss		};
29653426f53SLuca Weiss
29753426f53SLuca Weiss		pm8941_l3: l3 {
29853426f53SLuca Weiss			regulator-min-microvolt = <1200000>;
29953426f53SLuca Weiss			regulator-max-microvolt = <1200000>;
30053426f53SLuca Weiss		};
30153426f53SLuca Weiss
30253426f53SLuca Weiss		pm8941_l4: l4 {
30353426f53SLuca Weiss			regulator-min-microvolt = <1225000>;
30453426f53SLuca Weiss			regulator-max-microvolt = <1225000>;
30553426f53SLuca Weiss		};
30653426f53SLuca Weiss
30753426f53SLuca Weiss		pm8941_l5: l5 {
30853426f53SLuca Weiss			regulator-min-microvolt = <1800000>;
30953426f53SLuca Weiss			regulator-max-microvolt = <1800000>;
31053426f53SLuca Weiss		};
31153426f53SLuca Weiss
31253426f53SLuca Weiss		pm8941_l6: l6 {
31353426f53SLuca Weiss			regulator-min-microvolt = <1800000>;
31453426f53SLuca Weiss			regulator-max-microvolt = <1800000>;
31553426f53SLuca Weiss			regulator-boot-on;
31653426f53SLuca Weiss		};
31753426f53SLuca Weiss
31853426f53SLuca Weiss		pm8941_l7: l7 {
31953426f53SLuca Weiss			regulator-min-microvolt = <1800000>;
32053426f53SLuca Weiss			regulator-max-microvolt = <1800000>;
32153426f53SLuca Weiss			regulator-boot-on;
32253426f53SLuca Weiss		};
32353426f53SLuca Weiss
32453426f53SLuca Weiss		pm8941_l8: l8 {
32553426f53SLuca Weiss			regulator-min-microvolt = <1800000>;
32653426f53SLuca Weiss			regulator-max-microvolt = <1800000>;
32753426f53SLuca Weiss		};
32853426f53SLuca Weiss
32953426f53SLuca Weiss		pm8941_l9: l9 {
33053426f53SLuca Weiss			regulator-min-microvolt = <1800000>;
33153426f53SLuca Weiss			regulator-max-microvolt = <2950000>;
33253426f53SLuca Weiss		};
33353426f53SLuca Weiss
33453426f53SLuca Weiss		pm8941_l12: l12 {
33553426f53SLuca Weiss			regulator-min-microvolt = <1800000>;
33653426f53SLuca Weiss			regulator-max-microvolt = <1800000>;
33753426f53SLuca Weiss			regulator-always-on;
33853426f53SLuca Weiss			regulator-boot-on;
33953426f53SLuca Weiss		};
34053426f53SLuca Weiss
34153426f53SLuca Weiss		pm8941_l13: l13 {
34253426f53SLuca Weiss			regulator-min-microvolt = <1800000>;
34353426f53SLuca Weiss			regulator-max-microvolt = <2950000>;
34453426f53SLuca Weiss			regulator-boot-on;
34553426f53SLuca Weiss		};
34653426f53SLuca Weiss
34753426f53SLuca Weiss		pm8941_l14: l14 {
34853426f53SLuca Weiss			regulator-min-microvolt = <1800000>;
34953426f53SLuca Weiss			regulator-max-microvolt = <1800000>;
35053426f53SLuca Weiss		};
35153426f53SLuca Weiss
35253426f53SLuca Weiss		pm8941_l15: l15 {
35353426f53SLuca Weiss			regulator-min-microvolt = <2050000>;
35453426f53SLuca Weiss			regulator-max-microvolt = <2050000>;
35553426f53SLuca Weiss		};
35653426f53SLuca Weiss
35753426f53SLuca Weiss		pm8941_l16: l16 {
35853426f53SLuca Weiss			regulator-min-microvolt = <2700000>;
35953426f53SLuca Weiss			regulator-max-microvolt = <2700000>;
36053426f53SLuca Weiss		};
36153426f53SLuca Weiss
36253426f53SLuca Weiss		pm8941_l17: l17 {
36353426f53SLuca Weiss			regulator-min-microvolt = <2700000>;
36453426f53SLuca Weiss			regulator-max-microvolt = <2700000>;
36553426f53SLuca Weiss		};
36653426f53SLuca Weiss
36753426f53SLuca Weiss		pm8941_l18: l18 {
36853426f53SLuca Weiss			regulator-min-microvolt = <2850000>;
36953426f53SLuca Weiss			regulator-max-microvolt = <2850000>;
37053426f53SLuca Weiss		};
37153426f53SLuca Weiss
37253426f53SLuca Weiss		pm8941_l20: l20 {
37353426f53SLuca Weiss			regulator-min-microvolt = <2950000>;
37453426f53SLuca Weiss			regulator-max-microvolt = <2950000>;
37553426f53SLuca Weiss			regulator-system-load = <500000>;
37653426f53SLuca Weiss			regulator-allow-set-load;
37753426f53SLuca Weiss			regulator-boot-on;
37853426f53SLuca Weiss		};
37953426f53SLuca Weiss
38053426f53SLuca Weiss		pm8941_l21: l21 {
38153426f53SLuca Weiss			regulator-min-microvolt = <2950000>;
38253426f53SLuca Weiss			regulator-max-microvolt = <2950000>;
383*f1a77effSValeriy Klimin			regulator-system-load = <500000>;
384*f1a77effSValeriy Klimin			regulator-allow-set-load;
38553426f53SLuca Weiss			regulator-boot-on;
38653426f53SLuca Weiss		};
38753426f53SLuca Weiss
38853426f53SLuca Weiss		pm8941_l22: l22 {
38953426f53SLuca Weiss			regulator-min-microvolt = <3000000>;
39053426f53SLuca Weiss			regulator-max-microvolt = <3000000>;
39153426f53SLuca Weiss		};
39253426f53SLuca Weiss
39353426f53SLuca Weiss		pm8941_l23: l23 {
39453426f53SLuca Weiss			regulator-min-microvolt = <2800000>;
39553426f53SLuca Weiss			regulator-max-microvolt = <2800000>;
39653426f53SLuca Weiss		};
39753426f53SLuca Weiss
39853426f53SLuca Weiss		pm8941_l24: l24 {
39953426f53SLuca Weiss			regulator-min-microvolt = <3075000>;
40053426f53SLuca Weiss			regulator-max-microvolt = <3075000>;
40153426f53SLuca Weiss			regulator-boot-on;
40253426f53SLuca Weiss		};
40353426f53SLuca Weiss
40453426f53SLuca Weiss		pm8941_lvs3: lvs3 {};
40553426f53SLuca Weiss	};
40653426f53SLuca Weiss};
40753426f53SLuca Weiss
40853426f53SLuca Weiss&sdhc_1 {
40953426f53SLuca Weiss	vmmc-supply = <&pm8941_l20>;
41053426f53SLuca Weiss	vqmmc-supply = <&pm8941_s3>;
41153426f53SLuca Weiss
41253426f53SLuca Weiss	pinctrl-0 = <&sdc1_on>;
41353426f53SLuca Weiss	pinctrl-1 = <&sdc1_off>;
41453426f53SLuca Weiss	pinctrl-names = "default", "sleep";
41553426f53SLuca Weiss
41653426f53SLuca Weiss	status = "okay";
41753426f53SLuca Weiss};
41853426f53SLuca Weiss
41953426f53SLuca Weiss&sdhc_2 {
42053426f53SLuca Weiss	vmmc-supply = <&pm8941_l21>;
42153426f53SLuca Weiss	vqmmc-supply = <&pm8941_l13>;
42253426f53SLuca Weiss
42353426f53SLuca Weiss	cd-gpios = <&tlmm 62 GPIO_ACTIVE_LOW>;
42453426f53SLuca Weiss
42553426f53SLuca Weiss	pinctrl-0 = <&sdc2_on>;
42653426f53SLuca Weiss	pinctrl-1 = <&sdc2_off>;
42753426f53SLuca Weiss	pinctrl-names = "default", "sleep";
42853426f53SLuca Weiss
42953426f53SLuca Weiss	status = "okay";
43053426f53SLuca Weiss};
43153426f53SLuca Weiss
43253426f53SLuca Weiss&sdhc_3 {
43353426f53SLuca Weiss	max-frequency = <100000000>;
43453426f53SLuca Weiss	vmmc-supply = <&vreg_wlan>;
43553426f53SLuca Weiss	non-removable;
43653426f53SLuca Weiss
43753426f53SLuca Weiss	pinctrl-0 = <&sdc3_on>;
43853426f53SLuca Weiss	pinctrl-names = "default";
43953426f53SLuca Weiss
44053426f53SLuca Weiss	status = "okay";
44153426f53SLuca Weiss
44253426f53SLuca Weiss	wifi@1 {
44353426f53SLuca Weiss		compatible = "brcm,bcm4339-fmac", "brcm,bcm4329-fmac";
44453426f53SLuca Weiss		reg = <1>;
44553426f53SLuca Weiss
44653426f53SLuca Weiss		brcm,drive-strength = <10>;
44753426f53SLuca Weiss
44853426f53SLuca Weiss		pinctrl-0 = <&wlan_sleep_clk_pin>;
44953426f53SLuca Weiss		pinctrl-names = "default";
45053426f53SLuca Weiss	};
45153426f53SLuca Weiss};
45253426f53SLuca Weiss
45353426f53SLuca Weiss&tlmm {
45453426f53SLuca Weiss	sdc1_on: sdc1-on-state {
45553426f53SLuca Weiss		clk-pins {
45653426f53SLuca Weiss			pins = "sdc1_clk";
45753426f53SLuca Weiss			drive-strength = <16>;
45853426f53SLuca Weiss			bias-disable;
45953426f53SLuca Weiss		};
46053426f53SLuca Weiss
46153426f53SLuca Weiss		cmd-data-pins {
46253426f53SLuca Weiss			pins = "sdc1_cmd", "sdc1_data";
46353426f53SLuca Weiss			drive-strength = <10>;
46453426f53SLuca Weiss			bias-pull-up;
46553426f53SLuca Weiss		};
46653426f53SLuca Weiss	};
46753426f53SLuca Weiss
46853426f53SLuca Weiss	sdc2_on: sdc2-on-state {
46953426f53SLuca Weiss		clk-pins {
47053426f53SLuca Weiss			pins = "sdc2_clk";
47153426f53SLuca Weiss			drive-strength = <6>;
47253426f53SLuca Weiss			bias-disable;
47353426f53SLuca Weiss		};
47453426f53SLuca Weiss
47553426f53SLuca Weiss		cmd-data-pins {
47653426f53SLuca Weiss			pins = "sdc2_cmd", "sdc2_data";
47753426f53SLuca Weiss			drive-strength = <6>;
47853426f53SLuca Weiss			bias-pull-up;
47953426f53SLuca Weiss		};
48053426f53SLuca Weiss
48153426f53SLuca Weiss		cd-pins {
48253426f53SLuca Weiss			pins = "gpio62";
48353426f53SLuca Weiss			function = "gpio";
48453426f53SLuca Weiss			drive-strength = <2>;
48553426f53SLuca Weiss			bias-disable;
48653426f53SLuca Weiss		};
48753426f53SLuca Weiss	};
48853426f53SLuca Weiss
48953426f53SLuca Weiss	sdc3_on: sdc3-on-state {
49053426f53SLuca Weiss		clk-pins {
49153426f53SLuca Weiss			pins = "gpio40";
49253426f53SLuca Weiss			function = "sdc3";
49353426f53SLuca Weiss			drive-strength = <10>;
49453426f53SLuca Weiss			bias-disable;
49553426f53SLuca Weiss		};
49653426f53SLuca Weiss
49753426f53SLuca Weiss		cmd-pins {
49853426f53SLuca Weiss			pins = "gpio39";
49953426f53SLuca Weiss			function = "sdc3";
50053426f53SLuca Weiss			drive-strength = <10>;
50153426f53SLuca Weiss			bias-pull-up;
50253426f53SLuca Weiss		};
50353426f53SLuca Weiss
50453426f53SLuca Weiss		data-pins {
50553426f53SLuca Weiss			pins = "gpio35", "gpio36", "gpio37", "gpio38";
50653426f53SLuca Weiss			function = "sdc3";
50753426f53SLuca Weiss			drive-strength = <10>;
50853426f53SLuca Weiss			bias-pull-up;
50953426f53SLuca Weiss		};
51053426f53SLuca Weiss	};
51153426f53SLuca Weiss
51253426f53SLuca Weiss	ts_int_pin: ts-int-pin-state {
51353426f53SLuca Weiss		pins = "gpio86";
51453426f53SLuca Weiss		function = "gpio";
51553426f53SLuca Weiss		drive-strength = <2>;
51653426f53SLuca Weiss		bias-disable;
51753426f53SLuca Weiss	};
51853426f53SLuca Weiss};
51953426f53SLuca Weiss
52053426f53SLuca Weiss&usb {
52153426f53SLuca Weiss	phys = <&usb_hs1_phy>;
52253426f53SLuca Weiss	phy-select = <&tcsr 0xb000 0>;
52353426f53SLuca Weiss	extcon = <&smbb>, <&usb_id>;
52453426f53SLuca Weiss	vbus-supply = <&chg_otg>;
52553426f53SLuca Weiss
52653426f53SLuca Weiss	hnp-disable;
52753426f53SLuca Weiss	srp-disable;
52853426f53SLuca Weiss	adp-disable;
52953426f53SLuca Weiss
53053426f53SLuca Weiss	status = "okay";
53153426f53SLuca Weiss};
53253426f53SLuca Weiss
53353426f53SLuca Weiss&usb_hs1_phy {
53453426f53SLuca Weiss	v1p8-supply = <&pm8941_l6>;
53553426f53SLuca Weiss	v3p3-supply = <&pm8941_l24>;
53653426f53SLuca Weiss
53753426f53SLuca Weiss	extcon = <&smbb>;
53853426f53SLuca Weiss	qcom,init-seq = /bits/ 8 <0x1 0x64>;
53953426f53SLuca Weiss
54053426f53SLuca Weiss	status = "okay";
54153426f53SLuca Weiss};
542