132c23138SJohan Hovold// SPDX-License-Identifier: BSD-3-Clause
232c23138SJohan Hovold/*
332c23138SJohan Hovold * Copyright (c) 2021, The Linux Foundation. All rights reserved.
432c23138SJohan Hovold * Copyright (c) 2022, Linaro Limited
532c23138SJohan Hovold */
632c23138SJohan Hovold
732c23138SJohan Hovold/dts-v1/;
832c23138SJohan Hovold
932c23138SJohan Hovold#include <dt-bindings/gpio/gpio.h>
103375151aSManivannan Sadhasivam#include <dt-bindings/iio/qcom,spmi-adc7-pm8350.h>
119a6b3042SManivannan Sadhasivam#include <dt-bindings/iio/qcom,spmi-adc7-pmk8350.h>
129d41cd17SManivannan Sadhasivam#include <dt-bindings/iio/qcom,spmi-adc7-pmr735a.h>
13a607fe5eSBjorn Andersson#include <dt-bindings/input/gpio-keys.h>
14a607fe5eSBjorn Andersson#include <dt-bindings/input/input.h>
1532c23138SJohan Hovold#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
1632c23138SJohan Hovold
1732c23138SJohan Hovold#include "sc8280xp.dtsi"
1832c23138SJohan Hovold#include "sc8280xp-pmics.dtsi"
1932c23138SJohan Hovold
2032c23138SJohan Hovold/ {
2132c23138SJohan Hovold	model = "Lenovo ThinkPad X13s";
2232c23138SJohan Hovold	compatible = "lenovo,thinkpad-x13s", "qcom,sc8280xp";
2332c23138SJohan Hovold
24*fdc6a0b2SJohan Hovold	wcd938x: audio-codec {
25*fdc6a0b2SJohan Hovold		compatible = "qcom,wcd9380-codec";
26*fdc6a0b2SJohan Hovold
27*fdc6a0b2SJohan Hovold		pinctrl-names = "default";
28*fdc6a0b2SJohan Hovold		pinctrl-0 = <&wcd_default>;
29*fdc6a0b2SJohan Hovold
30*fdc6a0b2SJohan Hovold		reset-gpios = <&tlmm 106 GPIO_ACTIVE_LOW>;
31*fdc6a0b2SJohan Hovold
32*fdc6a0b2SJohan Hovold		vdd-buck-supply = <&vreg_s10b>;
33*fdc6a0b2SJohan Hovold		vdd-rxtx-supply = <&vreg_s10b>;
34*fdc6a0b2SJohan Hovold		vdd-io-supply = <&vreg_s10b>;
35*fdc6a0b2SJohan Hovold		vdd-mic-bias-supply = <&vreg_bob>;
36*fdc6a0b2SJohan Hovold
37*fdc6a0b2SJohan Hovold		qcom,micbias1-microvolt = <1800000>;
38*fdc6a0b2SJohan Hovold		qcom,micbias2-microvolt = <1800000>;
39*fdc6a0b2SJohan Hovold		qcom,micbias3-microvolt = <1800000>;
40*fdc6a0b2SJohan Hovold		qcom,micbias4-microvolt = <1800000>;
41*fdc6a0b2SJohan Hovold		qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>;
42*fdc6a0b2SJohan Hovold		qcom,mbhc-headset-vthreshold-microvolt = <1700000>;
43*fdc6a0b2SJohan Hovold		qcom,mbhc-headphone-vthreshold-microvolt = <50000>;
44*fdc6a0b2SJohan Hovold		qcom,rx-device = <&wcd_rx>;
45*fdc6a0b2SJohan Hovold		qcom,tx-device = <&wcd_tx>;
46*fdc6a0b2SJohan Hovold
47*fdc6a0b2SJohan Hovold		#sound-dai-cells = <1>;
48*fdc6a0b2SJohan Hovold	};
49*fdc6a0b2SJohan Hovold
50f48c70b1SJohan Hovold	backlight: backlight {
5132c23138SJohan Hovold		compatible = "pwm-backlight";
5232c23138SJohan Hovold		pwms = <&pmc8280c_lpg 3 1000000>;
5332c23138SJohan Hovold		enable-gpios = <&pmc8280_1_gpios 8 GPIO_ACTIVE_HIGH>;
5432c23138SJohan Hovold		power-supply = <&vreg_edp_bl>;
5532c23138SJohan Hovold
5632c23138SJohan Hovold		pinctrl-names = "default";
5732c23138SJohan Hovold		pinctrl-0 = <&edp_bl_en>, <&edp_bl_pwm>;
5832c23138SJohan Hovold	};
5932c23138SJohan Hovold
60a607fe5eSBjorn Andersson	gpio-keys {
61a607fe5eSBjorn Andersson		compatible = "gpio-keys";
62a607fe5eSBjorn Andersson
63a607fe5eSBjorn Andersson		pinctrl-names = "default";
64a607fe5eSBjorn Andersson		pinctrl-0 = <&hall_int_n_default>;
65a607fe5eSBjorn Andersson
66a607fe5eSBjorn Andersson		switch-lid {
67a607fe5eSBjorn Andersson			gpios = <&tlmm 107 GPIO_ACTIVE_LOW>;
68a607fe5eSBjorn Andersson			linux,input-type = <EV_SW>;
69a607fe5eSBjorn Andersson			linux,code = <SW_LID>;
70a607fe5eSBjorn Andersson			wakeup-source;
71a607fe5eSBjorn Andersson			wakeup-event-action = <EV_ACT_DEASSERTED>;
72a607fe5eSBjorn Andersson		};
73a607fe5eSBjorn Andersson	};
74a607fe5eSBjorn Andersson
75f48c70b1SJohan Hovold	vreg_edp_3p3: regulator-edp-3p3 {
76f48c70b1SJohan Hovold		compatible = "regulator-fixed";
77f48c70b1SJohan Hovold
78f48c70b1SJohan Hovold		regulator-name = "VCC3LCD";
79f48c70b1SJohan Hovold		regulator-min-microvolt = <3300000>;
80f48c70b1SJohan Hovold		regulator-max-microvolt = <3300000>;
81f48c70b1SJohan Hovold
82f48c70b1SJohan Hovold		gpio = <&tlmm 25 GPIO_ACTIVE_HIGH>;
83f48c70b1SJohan Hovold		enable-active-high;
84f48c70b1SJohan Hovold
85f48c70b1SJohan Hovold		pinctrl-names = "default";
86f48c70b1SJohan Hovold		pinctrl-0 = <&edp_reg_en>;
87f48c70b1SJohan Hovold
88f48c70b1SJohan Hovold		regulator-boot-on;
89f48c70b1SJohan Hovold	};
90f48c70b1SJohan Hovold
9132c23138SJohan Hovold	vreg_edp_bl: regulator-edp-bl {
9232c23138SJohan Hovold		compatible = "regulator-fixed";
9332c23138SJohan Hovold
9432c23138SJohan Hovold		regulator-name = "VBL9";
9532c23138SJohan Hovold		regulator-min-microvolt = <3600000>;
9632c23138SJohan Hovold		regulator-max-microvolt = <3600000>;
9732c23138SJohan Hovold
9832c23138SJohan Hovold		gpio = <&pmc8280_1_gpios 9 GPIO_ACTIVE_HIGH>;
9932c23138SJohan Hovold		enable-active-high;
10032c23138SJohan Hovold
10132c23138SJohan Hovold		pinctrl-names = "default";
10232c23138SJohan Hovold		pinctrl-0 = <&edp_bl_reg_en>;
10332c23138SJohan Hovold
10432c23138SJohan Hovold		regulator-boot-on;
10532c23138SJohan Hovold	};
10632c23138SJohan Hovold
10732c23138SJohan Hovold	vreg_misc_3p3: regulator-misc-3p3 {
10832c23138SJohan Hovold		compatible = "regulator-fixed";
10932c23138SJohan Hovold
11032c23138SJohan Hovold		regulator-name = "VCC3B";
11132c23138SJohan Hovold		regulator-min-microvolt = <3300000>;
11232c23138SJohan Hovold		regulator-max-microvolt = <3300000>;
11332c23138SJohan Hovold
11432c23138SJohan Hovold		gpio = <&pmc8280_1_gpios 1 GPIO_ACTIVE_HIGH>;
11532c23138SJohan Hovold		enable-active-high;
11632c23138SJohan Hovold
11732c23138SJohan Hovold		pinctrl-names = "default";
11832c23138SJohan Hovold		pinctrl-0 = <&misc_3p3_reg_en>;
11932c23138SJohan Hovold
12032c23138SJohan Hovold		regulator-boot-on;
12132c23138SJohan Hovold		regulator-always-on;
12232c23138SJohan Hovold	};
123b4bb952eSJohan Hovold
124b4bb952eSJohan Hovold	vreg_nvme: regulator-nvme {
125b4bb952eSJohan Hovold		compatible = "regulator-fixed";
126b4bb952eSJohan Hovold
127b4bb952eSJohan Hovold		regulator-name = "VCC3_SSD";
128b4bb952eSJohan Hovold		regulator-min-microvolt = <3300000>;
129b4bb952eSJohan Hovold		regulator-max-microvolt = <3300000>;
130b4bb952eSJohan Hovold
131b4bb952eSJohan Hovold		gpio = <&tlmm 135 GPIO_ACTIVE_HIGH>;
132b4bb952eSJohan Hovold		enable-active-high;
133b4bb952eSJohan Hovold
134b4bb952eSJohan Hovold		pinctrl-names = "default";
135b4bb952eSJohan Hovold		pinctrl-0 = <&nvme_reg_en>;
136b4bb952eSJohan Hovold
137b4bb952eSJohan Hovold		regulator-boot-on;
138b4bb952eSJohan Hovold	};
139176d54acSJohan Hovold
1403abf1f5cSJohan Hovold	vreg_vph_pwr: regulator-vph-pwr {
1413abf1f5cSJohan Hovold		compatible = "regulator-fixed";
1423abf1f5cSJohan Hovold
1433abf1f5cSJohan Hovold		regulator-name = "VPH_VCC3R9";
1443abf1f5cSJohan Hovold		regulator-min-microvolt = <3900000>;
1453abf1f5cSJohan Hovold		regulator-max-microvolt = <3900000>;
1463abf1f5cSJohan Hovold
1473abf1f5cSJohan Hovold		regulator-always-on;
1483abf1f5cSJohan Hovold	};
1493abf1f5cSJohan Hovold
150123b30a7SJohan Hovold	vreg_wlan: regulator-wlan {
151123b30a7SJohan Hovold		compatible = "regulator-fixed";
152123b30a7SJohan Hovold
153123b30a7SJohan Hovold		regulator-name = "VCC_WLAN_3R9";
154123b30a7SJohan Hovold		regulator-min-microvolt = <3900000>;
155123b30a7SJohan Hovold		regulator-max-microvolt = <3900000>;
156123b30a7SJohan Hovold
157123b30a7SJohan Hovold		gpio = <&pmr735a_gpios 1 GPIO_ACTIVE_HIGH>;
158123b30a7SJohan Hovold		enable-active-high;
159123b30a7SJohan Hovold
160123b30a7SJohan Hovold		pinctrl-names = "default";
161123b30a7SJohan Hovold		pinctrl-0 = <&hastings_reg_en>;
162123b30a7SJohan Hovold
163123b30a7SJohan Hovold		regulator-boot-on;
164123b30a7SJohan Hovold	};
165123b30a7SJohan Hovold
166176d54acSJohan Hovold	vreg_wwan: regulator-wwan {
167176d54acSJohan Hovold		compatible = "regulator-fixed";
168176d54acSJohan Hovold
169176d54acSJohan Hovold		regulator-name = "VCC3B_WAN";
170176d54acSJohan Hovold		regulator-min-microvolt = <3300000>;
171176d54acSJohan Hovold		regulator-max-microvolt = <3300000>;
172176d54acSJohan Hovold
173176d54acSJohan Hovold		gpio = <&pmc8280_2_gpios 1 GPIO_ACTIVE_HIGH>;
174176d54acSJohan Hovold		enable-active-high;
175176d54acSJohan Hovold
176176d54acSJohan Hovold		pinctrl-names = "default";
177176d54acSJohan Hovold		pinctrl-0 = <&wwan_sw_en>;
178176d54acSJohan Hovold
179176d54acSJohan Hovold		regulator-boot-on;
180176d54acSJohan Hovold	};
181f29077d8SSrinivas Kandagatla
1825e4cab73SJohan Hovold	thermal-zones {
1835e4cab73SJohan Hovold		skin-temp-thermal {
1845e4cab73SJohan Hovold			polling-delay-passive = <250>;
1855e4cab73SJohan Hovold			polling-delay = <0>;
1865e4cab73SJohan Hovold			thermal-sensors = <&pmk8280_adc_tm 5>;
1875e4cab73SJohan Hovold
1885e4cab73SJohan Hovold			trips {
1895e4cab73SJohan Hovold				skin_temp_alert0: trip-point0 {
1905e4cab73SJohan Hovold					temperature = <55000>;
1915e4cab73SJohan Hovold					hysteresis = <1000>;
1925e4cab73SJohan Hovold					type = "passive";
1935e4cab73SJohan Hovold				};
1945e4cab73SJohan Hovold
1955e4cab73SJohan Hovold				skin_temp_alert1: trip-point1 {
1965e4cab73SJohan Hovold					temperature = <58000>;
1975e4cab73SJohan Hovold					hysteresis = <1000>;
1985e4cab73SJohan Hovold					type = "passive";
1995e4cab73SJohan Hovold				};
2005e4cab73SJohan Hovold
2015e4cab73SJohan Hovold				skin-temp-crit {
2025e4cab73SJohan Hovold					temperature = <73000>;
2035e4cab73SJohan Hovold					hysteresis = <1000>;
2045e4cab73SJohan Hovold					type = "critical";
2055e4cab73SJohan Hovold				};
2065e4cab73SJohan Hovold			};
2075e4cab73SJohan Hovold
2085e4cab73SJohan Hovold			cooling-maps {
2095e4cab73SJohan Hovold				map0 {
2105e4cab73SJohan Hovold					trip = <&skin_temp_alert0>;
2115e4cab73SJohan Hovold					cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2125e4cab73SJohan Hovold							 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2135e4cab73SJohan Hovold							 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2145e4cab73SJohan Hovold							 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
2155e4cab73SJohan Hovold				};
2165e4cab73SJohan Hovold
2175e4cab73SJohan Hovold				map1 {
2185e4cab73SJohan Hovold					trip = <&skin_temp_alert1>;
2195e4cab73SJohan Hovold					cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2205e4cab73SJohan Hovold							 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2215e4cab73SJohan Hovold							 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2225e4cab73SJohan Hovold							 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
2235e4cab73SJohan Hovold				};
2245e4cab73SJohan Hovold			};
2255e4cab73SJohan Hovold		};
2265e4cab73SJohan Hovold	};
22732c23138SJohan Hovold};
22832c23138SJohan Hovold
22932c23138SJohan Hovold&apps_rsc {
23032c23138SJohan Hovold	pmc8280-1-rpmh-regulators {
23132c23138SJohan Hovold		compatible = "qcom,pm8350-rpmh-regulators";
23232c23138SJohan Hovold		qcom,pmic-id = "b";
23332c23138SJohan Hovold
23432c23138SJohan Hovold		vdd-l3-l5-supply = <&vreg_s11b>;
23532c23138SJohan Hovold
236f29077d8SSrinivas Kandagatla		vreg_s10b: smps10 {
237f29077d8SSrinivas Kandagatla			regulator-name = "vreg_s10b";
238f29077d8SSrinivas Kandagatla			regulator-min-microvolt = <1800000>;
239f29077d8SSrinivas Kandagatla			regulator-max-microvolt = <1800000>;
240f29077d8SSrinivas Kandagatla			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
241f29077d8SSrinivas Kandagatla		};
242f29077d8SSrinivas Kandagatla
24332c23138SJohan Hovold		vreg_s11b: smps11 {
24432c23138SJohan Hovold			regulator-name = "vreg_s11b";
24532c23138SJohan Hovold			regulator-min-microvolt = <1272000>;
24632c23138SJohan Hovold			regulator-max-microvolt = <1272000>;
24732c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
24832c23138SJohan Hovold		};
24932c23138SJohan Hovold
250f29077d8SSrinivas Kandagatla		vreg_s12b: smps12 {
251f29077d8SSrinivas Kandagatla			regulator-name = "vreg_s12b";
252f29077d8SSrinivas Kandagatla			regulator-min-microvolt = <984000>;
253f29077d8SSrinivas Kandagatla			regulator-max-microvolt = <984000>;
254f29077d8SSrinivas Kandagatla			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
255f29077d8SSrinivas Kandagatla		};
256f29077d8SSrinivas Kandagatla
25732c23138SJohan Hovold		vreg_l3b: ldo3 {
25832c23138SJohan Hovold			regulator-name = "vreg_l3b";
25932c23138SJohan Hovold			regulator-min-microvolt = <1200000>;
26032c23138SJohan Hovold			regulator-max-microvolt = <1200000>;
26132c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
26232c23138SJohan Hovold			regulator-boot-on;
26332c23138SJohan Hovold		};
26432c23138SJohan Hovold
26532c23138SJohan Hovold		vreg_l4b: ldo4 {
26632c23138SJohan Hovold			regulator-name = "vreg_l4b";
26732c23138SJohan Hovold			regulator-min-microvolt = <912000>;
26832c23138SJohan Hovold			regulator-max-microvolt = <912000>;
26932c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
27032c23138SJohan Hovold		};
27132c23138SJohan Hovold
27232c23138SJohan Hovold		vreg_l6b: ldo6 {
27332c23138SJohan Hovold			regulator-name = "vreg_l6b";
27432c23138SJohan Hovold			regulator-min-microvolt = <880000>;
27532c23138SJohan Hovold			regulator-max-microvolt = <880000>;
27632c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
27732c23138SJohan Hovold			regulator-boot-on;
27832c23138SJohan Hovold		};
27932c23138SJohan Hovold	};
28032c23138SJohan Hovold
28132c23138SJohan Hovold	pmc8280c-rpmh-regulators {
28232c23138SJohan Hovold		compatible = "qcom,pm8350c-rpmh-regulators";
28332c23138SJohan Hovold		qcom,pmic-id = "c";
284f29077d8SSrinivas Kandagatla		vdd-bob-supply = <&vreg_vph_pwr>;
28532c23138SJohan Hovold
28632c23138SJohan Hovold		vreg_l1c: ldo1 {
28732c23138SJohan Hovold			regulator-name = "vreg_l1c";
28832c23138SJohan Hovold			regulator-min-microvolt = <1800000>;
28932c23138SJohan Hovold			regulator-max-microvolt = <1800000>;
29032c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
29132c23138SJohan Hovold		};
29232c23138SJohan Hovold
29332c23138SJohan Hovold		vreg_l12c: ldo12 {
29432c23138SJohan Hovold			regulator-name = "vreg_l12c";
29532c23138SJohan Hovold			regulator-min-microvolt = <1800000>;
29632c23138SJohan Hovold			regulator-max-microvolt = <1800000>;
29732c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
29832c23138SJohan Hovold		};
29932c23138SJohan Hovold
30032c23138SJohan Hovold		vreg_l13c: ldo13 {
30132c23138SJohan Hovold			regulator-name = "vreg_l13c";
30232c23138SJohan Hovold			regulator-min-microvolt = <3072000>;
30332c23138SJohan Hovold			regulator-max-microvolt = <3072000>;
30432c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
30532c23138SJohan Hovold		};
306f29077d8SSrinivas Kandagatla
307f29077d8SSrinivas Kandagatla		vreg_bob: bob {
308f29077d8SSrinivas Kandagatla			regulator-name = "vreg_bob";
309f29077d8SSrinivas Kandagatla			regulator-min-microvolt = <3008000>;
310f29077d8SSrinivas Kandagatla			regulator-max-microvolt = <3960000>;
311f29077d8SSrinivas Kandagatla			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
312f29077d8SSrinivas Kandagatla		};
31332c23138SJohan Hovold	};
31432c23138SJohan Hovold
31532c23138SJohan Hovold	pmc8280-2-rpmh-regulators {
31632c23138SJohan Hovold		compatible = "qcom,pm8350-rpmh-regulators";
31732c23138SJohan Hovold		qcom,pmic-id = "d";
31832c23138SJohan Hovold
31932c23138SJohan Hovold		vdd-l1-l4-supply = <&vreg_s11b>;
32032c23138SJohan Hovold
32132c23138SJohan Hovold		vreg_l3d: ldo3 {
32232c23138SJohan Hovold			regulator-name = "vreg_l3d";
32332c23138SJohan Hovold			regulator-min-microvolt = <1200000>;
32432c23138SJohan Hovold			regulator-max-microvolt = <1200000>;
32532c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
32632c23138SJohan Hovold		};
32732c23138SJohan Hovold
32832c23138SJohan Hovold		vreg_l4d: ldo4 {
32932c23138SJohan Hovold			regulator-name = "vreg_l4d";
33032c23138SJohan Hovold			regulator-min-microvolt = <1200000>;
33132c23138SJohan Hovold			regulator-max-microvolt = <1200000>;
33232c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
33332c23138SJohan Hovold		};
33432c23138SJohan Hovold
335b4bb952eSJohan Hovold		vreg_l6d: ldo6 {
336b4bb952eSJohan Hovold			regulator-name = "vreg_l6d";
337b4bb952eSJohan Hovold			regulator-min-microvolt = <880000>;
338b4bb952eSJohan Hovold			regulator-max-microvolt = <880000>;
339b4bb952eSJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
340b4bb952eSJohan Hovold		};
341b4bb952eSJohan Hovold
34232c23138SJohan Hovold		vreg_l7d: ldo7 {
34332c23138SJohan Hovold			regulator-name = "vreg_l7d";
34432c23138SJohan Hovold			regulator-min-microvolt = <3072000>;
34532c23138SJohan Hovold			regulator-max-microvolt = <3072000>;
34632c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
34732c23138SJohan Hovold		};
34832c23138SJohan Hovold
34932c23138SJohan Hovold		vreg_l9d: ldo9 {
35032c23138SJohan Hovold			regulator-name = "vreg_l9d";
35132c23138SJohan Hovold			regulator-min-microvolt = <912000>;
35232c23138SJohan Hovold			regulator-max-microvolt = <912000>;
35332c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
35432c23138SJohan Hovold		};
35532c23138SJohan Hovold	};
35632c23138SJohan Hovold};
35732c23138SJohan Hovold
358f48c70b1SJohan Hovold&dispcc0 {
359f48c70b1SJohan Hovold	status = "okay";
360f48c70b1SJohan Hovold};
361f48c70b1SJohan Hovold
362f48c70b1SJohan Hovold&mdss0 {
363f48c70b1SJohan Hovold	status = "okay";
364f48c70b1SJohan Hovold};
365f48c70b1SJohan Hovold
366f48c70b1SJohan Hovold&mdss0_dp3 {
367f48c70b1SJohan Hovold	compatible = "qcom,sc8280xp-edp";
368f48c70b1SJohan Hovold
369f48c70b1SJohan Hovold	data-lanes = <0 1 2 3>;
370f48c70b1SJohan Hovold
371f48c70b1SJohan Hovold	status = "okay";
372f48c70b1SJohan Hovold
373f48c70b1SJohan Hovold	aux-bus {
374f48c70b1SJohan Hovold		panel {
375f48c70b1SJohan Hovold			compatible = "edp-panel";
376f48c70b1SJohan Hovold
377f48c70b1SJohan Hovold			backlight = <&backlight>;
378f48c70b1SJohan Hovold			power-supply = <&vreg_edp_3p3>;
379f48c70b1SJohan Hovold
380f48c70b1SJohan Hovold			ports {
381f48c70b1SJohan Hovold				port {
382f48c70b1SJohan Hovold					edp_panel_in: endpoint {
383f48c70b1SJohan Hovold						remote-endpoint = <&mdss0_dp3_out>;
384f48c70b1SJohan Hovold					};
385f48c70b1SJohan Hovold				};
386f48c70b1SJohan Hovold			};
387f48c70b1SJohan Hovold		};
388f48c70b1SJohan Hovold	};
389f48c70b1SJohan Hovold
390f48c70b1SJohan Hovold	ports {
391f48c70b1SJohan Hovold		port@1 {
392f48c70b1SJohan Hovold			reg = <1>;
393f48c70b1SJohan Hovold			mdss0_dp3_out: endpoint {
394f48c70b1SJohan Hovold				remote-endpoint = <&edp_panel_in>;
395f48c70b1SJohan Hovold			};
396f48c70b1SJohan Hovold		};
397f48c70b1SJohan Hovold	};
398f48c70b1SJohan Hovold};
399f48c70b1SJohan Hovold
400f48c70b1SJohan Hovold&mdss0_dp3_phy {
401f48c70b1SJohan Hovold	vdda-phy-supply = <&vreg_l6b>;
402f48c70b1SJohan Hovold	vdda-pll-supply = <&vreg_l3b>;
403f48c70b1SJohan Hovold
404f48c70b1SJohan Hovold	status = "okay";
405f48c70b1SJohan Hovold};
406f48c70b1SJohan Hovold
407b4bb952eSJohan Hovold&pcie2a {
408b4bb952eSJohan Hovold	perst-gpios = <&tlmm 143 GPIO_ACTIVE_LOW>;
409b4bb952eSJohan Hovold	wake-gpios = <&tlmm 145 GPIO_ACTIVE_LOW>;
410b4bb952eSJohan Hovold
411b4bb952eSJohan Hovold	vddpe-3v3-supply = <&vreg_nvme>;
412b4bb952eSJohan Hovold
413b4bb952eSJohan Hovold	pinctrl-names = "default";
414b4bb952eSJohan Hovold	pinctrl-0 = <&pcie2a_default>;
415b4bb952eSJohan Hovold
416b4bb952eSJohan Hovold	status = "okay";
417b4bb952eSJohan Hovold};
418b4bb952eSJohan Hovold
419b4bb952eSJohan Hovold&pcie2a_phy {
420b4bb952eSJohan Hovold	vdda-phy-supply = <&vreg_l6d>;
421b4bb952eSJohan Hovold	vdda-pll-supply = <&vreg_l4d>;
422b4bb952eSJohan Hovold
423b4bb952eSJohan Hovold	status = "okay";
424b4bb952eSJohan Hovold};
425b4bb952eSJohan Hovold
426176d54acSJohan Hovold&pcie3a {
427176d54acSJohan Hovold	perst-gpios = <&tlmm 151 GPIO_ACTIVE_LOW>;
428176d54acSJohan Hovold	wake-gpios = <&tlmm 148 GPIO_ACTIVE_LOW>;
429176d54acSJohan Hovold
430176d54acSJohan Hovold	vddpe-3v3-supply = <&vreg_wwan>;
431176d54acSJohan Hovold
432176d54acSJohan Hovold	pinctrl-names = "default";
433176d54acSJohan Hovold	pinctrl-0 = <&pcie3a_default>;
434176d54acSJohan Hovold
435176d54acSJohan Hovold	status = "okay";
436176d54acSJohan Hovold};
437176d54acSJohan Hovold
438176d54acSJohan Hovold&pcie3a_phy {
439176d54acSJohan Hovold	vdda-phy-supply = <&vreg_l6d>;
440176d54acSJohan Hovold	vdda-pll-supply = <&vreg_l4d>;
441176d54acSJohan Hovold
442176d54acSJohan Hovold	status = "okay";
443176d54acSJohan Hovold};
444176d54acSJohan Hovold
445123b30a7SJohan Hovold&pcie4 {
446123b30a7SJohan Hovold	perst-gpios = <&tlmm 141 GPIO_ACTIVE_LOW>;
447123b30a7SJohan Hovold	wake-gpios = <&tlmm 139 GPIO_ACTIVE_LOW>;
448123b30a7SJohan Hovold
449123b30a7SJohan Hovold	vddpe-3v3-supply = <&vreg_wlan>;
450123b30a7SJohan Hovold
451123b30a7SJohan Hovold	pinctrl-names = "default";
452123b30a7SJohan Hovold	pinctrl-0 = <&pcie4_default>;
453123b30a7SJohan Hovold
454123b30a7SJohan Hovold	status = "okay";
455123b30a7SJohan Hovold};
456123b30a7SJohan Hovold
457123b30a7SJohan Hovold&pcie4_phy {
458123b30a7SJohan Hovold	vdda-phy-supply = <&vreg_l6d>;
459123b30a7SJohan Hovold	vdda-pll-supply = <&vreg_l4d>;
460123b30a7SJohan Hovold
461123b30a7SJohan Hovold	status = "okay";
462123b30a7SJohan Hovold};
463123b30a7SJohan Hovold
46432c23138SJohan Hovold&pmc8280c_lpg {
46532c23138SJohan Hovold	status = "okay";
46632c23138SJohan Hovold};
46732c23138SJohan Hovold
4687c015134SManivannan Sadhasivam&pmk8280_adc_tm {
4697c015134SManivannan Sadhasivam	status = "okay";
4707c015134SManivannan Sadhasivam
4717c015134SManivannan Sadhasivam	sys-therm@0 {
4727c015134SManivannan Sadhasivam		reg = <0>;
4737c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM1_100K_PU(1)>;
4747c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
4757c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
4767c015134SManivannan Sadhasivam		qcom,ratiometric;
4777c015134SManivannan Sadhasivam	};
4787c015134SManivannan Sadhasivam
4797c015134SManivannan Sadhasivam	sys-therm@1 {
4807c015134SManivannan Sadhasivam		reg = <1>;
4817c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM2_100K_PU(1)>;
4827c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
4837c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
4847c015134SManivannan Sadhasivam		qcom,ratiometric;
4857c015134SManivannan Sadhasivam	};
4867c015134SManivannan Sadhasivam
4877c015134SManivannan Sadhasivam	sys-therm@2 {
4887c015134SManivannan Sadhasivam		reg = <2>;
4897c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM3_100K_PU(1)>;
4907c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
4917c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
4927c015134SManivannan Sadhasivam		qcom,ratiometric;
4937c015134SManivannan Sadhasivam	};
4947c015134SManivannan Sadhasivam
4957c015134SManivannan Sadhasivam	sys-therm@3 {
4967c015134SManivannan Sadhasivam		reg = <3>;
4977c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM4_100K_PU(1)>;
4987c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
4997c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
5007c015134SManivannan Sadhasivam		qcom,ratiometric;
5017c015134SManivannan Sadhasivam	};
5027c015134SManivannan Sadhasivam
5037c015134SManivannan Sadhasivam	sys-therm@4 {
5047c015134SManivannan Sadhasivam		reg = <4>;
5057c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM1_100K_PU(3)>;
5067c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
5077c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
5087c015134SManivannan Sadhasivam		qcom,ratiometric;
5097c015134SManivannan Sadhasivam	};
5107c015134SManivannan Sadhasivam
5117c015134SManivannan Sadhasivam	sys-therm@5 {
5127c015134SManivannan Sadhasivam		reg = <5>;
5137c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM2_100K_PU(3)>;
5147c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
5157c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
5167c015134SManivannan Sadhasivam		qcom,ratiometric;
5177c015134SManivannan Sadhasivam	};
5187c015134SManivannan Sadhasivam
5197c015134SManivannan Sadhasivam	sys-therm@6 {
5207c015134SManivannan Sadhasivam		reg = <6>;
5217c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM3_100K_PU(3)>;
5227c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
5237c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
5247c015134SManivannan Sadhasivam		qcom,ratiometric;
5257c015134SManivannan Sadhasivam	};
5267c015134SManivannan Sadhasivam
5277c015134SManivannan Sadhasivam	sys-therm@7 {
5287c015134SManivannan Sadhasivam		reg = <7>;
5297c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM4_100K_PU(3)>;
5307c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
5317c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
5327c015134SManivannan Sadhasivam		qcom,ratiometric;
5337c015134SManivannan Sadhasivam	};
5347c015134SManivannan Sadhasivam};
5357c015134SManivannan Sadhasivam
53632c23138SJohan Hovold&pmk8280_pon_pwrkey {
53732c23138SJohan Hovold	status = "okay";
53832c23138SJohan Hovold};
53932c23138SJohan Hovold
5407858c676SManivannan Sadhasivam&pmk8280_pon_resin {
5417858c676SManivannan Sadhasivam	status = "okay";
5427858c676SManivannan Sadhasivam};
5437858c676SManivannan Sadhasivam
5449a6b3042SManivannan Sadhasivam&pmk8280_vadc {
5459a6b3042SManivannan Sadhasivam	status = "okay";
5469a6b3042SManivannan Sadhasivam
5479a6b3042SManivannan Sadhasivam	pmic-die-temp@3 {
5489a6b3042SManivannan Sadhasivam		reg = <PMK8350_ADC7_DIE_TEMP>;
5499a6b3042SManivannan Sadhasivam		qcom,pre-scaling = <1 1>;
5509a6b3042SManivannan Sadhasivam	};
5519a6b3042SManivannan Sadhasivam
5529a6b3042SManivannan Sadhasivam	xo-therm@44 {
5539a6b3042SManivannan Sadhasivam		reg = <PMK8350_ADC7_AMUX_THM1_100K_PU>;
5549a6b3042SManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5559a6b3042SManivannan Sadhasivam		qcom,ratiometric;
5569a6b3042SManivannan Sadhasivam	};
5573375151aSManivannan Sadhasivam
5583375151aSManivannan Sadhasivam	pmic-die-temp@103 {
5593375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_DIE_TEMP(1)>;
5603375151aSManivannan Sadhasivam		qcom,pre-scaling = <1 1>;
5613375151aSManivannan Sadhasivam	};
5623375151aSManivannan Sadhasivam
5633375151aSManivannan Sadhasivam	sys-therm@144 {
5643375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM1_100K_PU(1)>;
5653375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5663375151aSManivannan Sadhasivam		qcom,ratiometric;
5673375151aSManivannan Sadhasivam	};
5683375151aSManivannan Sadhasivam
5693375151aSManivannan Sadhasivam	sys-therm@145 {
5703375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM2_100K_PU(1)>;
5713375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5723375151aSManivannan Sadhasivam		qcom,ratiometric;
5733375151aSManivannan Sadhasivam	};
5743375151aSManivannan Sadhasivam
5753375151aSManivannan Sadhasivam	sys-therm@146 {
5763375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM3_100K_PU(1)>;
5773375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5783375151aSManivannan Sadhasivam		qcom,ratiometric;
5793375151aSManivannan Sadhasivam	};
5803375151aSManivannan Sadhasivam
5813375151aSManivannan Sadhasivam	sys-therm@147 {
5823375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM4_100K_PU(1)>;
5833375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5843375151aSManivannan Sadhasivam		qcom,ratiometric;
5853375151aSManivannan Sadhasivam	};
5863375151aSManivannan Sadhasivam
5873375151aSManivannan Sadhasivam	pmic-die-temp@303 {
5883375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_DIE_TEMP(3)>;
5893375151aSManivannan Sadhasivam		qcom,pre-scaling = <1 1>;
5903375151aSManivannan Sadhasivam	};
5913375151aSManivannan Sadhasivam
5923375151aSManivannan Sadhasivam	sys-therm@344 {
5933375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM1_100K_PU(3)>;
5943375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5953375151aSManivannan Sadhasivam		qcom,ratiometric;
5963375151aSManivannan Sadhasivam	};
5973375151aSManivannan Sadhasivam
5983375151aSManivannan Sadhasivam	sys-therm@345 {
5993375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM2_100K_PU(3)>;
6003375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
6013375151aSManivannan Sadhasivam		qcom,ratiometric;
6023375151aSManivannan Sadhasivam	};
6033375151aSManivannan Sadhasivam
6043375151aSManivannan Sadhasivam	sys-therm@346 {
6053375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM3_100K_PU(3)>;
6063375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
6073375151aSManivannan Sadhasivam		qcom,ratiometric;
6083375151aSManivannan Sadhasivam	};
6093375151aSManivannan Sadhasivam
6103375151aSManivannan Sadhasivam	sys-therm@347 {
6113375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM4_100K_PU(3)>;
6123375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
6133375151aSManivannan Sadhasivam		qcom,ratiometric;
6143375151aSManivannan Sadhasivam	};
6159d41cd17SManivannan Sadhasivam
6169d41cd17SManivannan Sadhasivam	pmic-die-temp@403 {
6179d41cd17SManivannan Sadhasivam		reg = <PMR735A_ADC7_DIE_TEMP>;
6189d41cd17SManivannan Sadhasivam		qcom,pre-scaling = <1 1>;
6199d41cd17SManivannan Sadhasivam	};
6209a6b3042SManivannan Sadhasivam};
6219a6b3042SManivannan Sadhasivam
62232c23138SJohan Hovold&qup0 {
62332c23138SJohan Hovold	status = "okay";
62432c23138SJohan Hovold};
62532c23138SJohan Hovold
62632c23138SJohan Hovold&qup0_i2c4 {
62732c23138SJohan Hovold	clock-frequency = <400000>;
62832c23138SJohan Hovold
62932c23138SJohan Hovold	pinctrl-names = "default";
63097cc7ab3SJohan Hovold	pinctrl-0 = <&qup0_i2c4_default>;
63132c23138SJohan Hovold
63232c23138SJohan Hovold	status = "okay";
63332c23138SJohan Hovold
63432c23138SJohan Hovold	/* FIXME: verify */
63532c23138SJohan Hovold	touchscreen@10 {
63632c23138SJohan Hovold		compatible = "hid-over-i2c";
63732c23138SJohan Hovold		reg = <0x10>;
63897cc7ab3SJohan Hovold
63932c23138SJohan Hovold		hid-descr-addr = <0x1>;
64032c23138SJohan Hovold		interrupts-extended = <&tlmm 175 IRQ_TYPE_LEVEL_LOW>;
64132c23138SJohan Hovold		vdd-supply = <&vreg_misc_3p3>;
64297cc7ab3SJohan Hovold
64397cc7ab3SJohan Hovold		pinctrl-names = "default";
64497cc7ab3SJohan Hovold		pinctrl-0 = <&ts0_default>;
64532c23138SJohan Hovold	};
64632c23138SJohan Hovold};
64732c23138SJohan Hovold
64832c23138SJohan Hovold&qup1 {
64932c23138SJohan Hovold	status = "okay";
65032c23138SJohan Hovold};
65132c23138SJohan Hovold
65232c23138SJohan Hovold&qup2 {
65332c23138SJohan Hovold	status = "okay";
65432c23138SJohan Hovold};
65532c23138SJohan Hovold
65632c23138SJohan Hovold&qup2_i2c5 {
65732c23138SJohan Hovold	clock-frequency = <400000>;
65832c23138SJohan Hovold
65932c23138SJohan Hovold	pinctrl-names = "default";
66097cc7ab3SJohan Hovold	pinctrl-0 = <&qup2_i2c5_default>;
66132c23138SJohan Hovold
66232c23138SJohan Hovold	status = "okay";
66332c23138SJohan Hovold
664ca1ce720SJohan Hovold	touchpad@15 {
665ca1ce720SJohan Hovold		compatible = "hid-over-i2c";
666ca1ce720SJohan Hovold		reg = <0x15>;
667ca1ce720SJohan Hovold
668ca1ce720SJohan Hovold		hid-descr-addr = <0x1>;
669ca1ce720SJohan Hovold		interrupts-extended = <&tlmm 182 IRQ_TYPE_LEVEL_LOW>;
670ca1ce720SJohan Hovold		vdd-supply = <&vreg_misc_3p3>;
671ca1ce720SJohan Hovold
672ca1ce720SJohan Hovold		pinctrl-names = "default";
673ca1ce720SJohan Hovold		pinctrl-0 = <&tpad_default>;
674ca1ce720SJohan Hovold
675ca1ce720SJohan Hovold		wakeup-source;
676ca1ce720SJohan Hovold
677ca1ce720SJohan Hovold		status = "disabled";
678ca1ce720SJohan Hovold	};
679ca1ce720SJohan Hovold
68032c23138SJohan Hovold	touchpad@2c {
68132c23138SJohan Hovold		compatible = "hid-over-i2c";
68232c23138SJohan Hovold		reg = <0x2c>;
68397cc7ab3SJohan Hovold
68432c23138SJohan Hovold		hid-descr-addr = <0x20>;
68532c23138SJohan Hovold		interrupts-extended = <&tlmm 182 IRQ_TYPE_LEVEL_LOW>;
68632c23138SJohan Hovold		vdd-supply = <&vreg_misc_3p3>;
68797cc7ab3SJohan Hovold
68897cc7ab3SJohan Hovold		pinctrl-names = "default";
68997cc7ab3SJohan Hovold		pinctrl-0 = <&tpad_default>;
69070934652SJohan Hovold
69170934652SJohan Hovold		wakeup-source;
69232c23138SJohan Hovold	};
69332c23138SJohan Hovold
69432c23138SJohan Hovold	keyboard@68 {
69532c23138SJohan Hovold		compatible = "hid-over-i2c";
69632c23138SJohan Hovold		reg = <0x68>;
69797cc7ab3SJohan Hovold
69832c23138SJohan Hovold		hid-descr-addr = <0x1>;
69932c23138SJohan Hovold		interrupts-extended = <&tlmm 104 IRQ_TYPE_LEVEL_LOW>;
70032c23138SJohan Hovold		vdd-supply = <&vreg_misc_3p3>;
70197cc7ab3SJohan Hovold
70297cc7ab3SJohan Hovold		pinctrl-names = "default";
70397cc7ab3SJohan Hovold		pinctrl-0 = <&kybd_default>;
70470934652SJohan Hovold
70570934652SJohan Hovold		wakeup-source;
70632c23138SJohan Hovold	};
70732c23138SJohan Hovold};
70832c23138SJohan Hovold
70932c23138SJohan Hovold&remoteproc_adsp {
71029f894ecSManivannan Sadhasivam	firmware-name = "qcom/sc8280xp/LENOVO/21BX/qcadsp8280.mbn";
71132c23138SJohan Hovold
71232c23138SJohan Hovold	status = "okay";
71332c23138SJohan Hovold};
71432c23138SJohan Hovold
71532c23138SJohan Hovold&remoteproc_nsp0 {
71629f894ecSManivannan Sadhasivam	firmware-name = "qcom/sc8280xp/LENOVO/21BX/qccdsp8280.mbn";
71732c23138SJohan Hovold
71832c23138SJohan Hovold	status = "okay";
71932c23138SJohan Hovold};
72032c23138SJohan Hovold
7216ded5ed6SJohan Hovold&rxmacro {
7226ded5ed6SJohan Hovold	status = "okay";
7236ded5ed6SJohan Hovold};
7246ded5ed6SJohan Hovold
725f29077d8SSrinivas Kandagatla&sound {
726f29077d8SSrinivas Kandagatla	compatible = "qcom,sc8280xp-sndcard";
727f29077d8SSrinivas Kandagatla	model = "SC8280XP-LENOVO-X13S";
728f29077d8SSrinivas Kandagatla	audio-routing =
729f29077d8SSrinivas Kandagatla		"SpkrLeft IN", "WSA_SPK1 OUT",
730f29077d8SSrinivas Kandagatla		"SpkrRight IN", "WSA_SPK2 OUT",
731f29077d8SSrinivas Kandagatla		"IN1_HPHL", "HPHL_OUT",
732f29077d8SSrinivas Kandagatla		"IN2_HPHR", "HPHR_OUT",
733f29077d8SSrinivas Kandagatla		"AMIC2", "MIC BIAS2",
734f29077d8SSrinivas Kandagatla		"VA DMIC0", "MIC BIAS1",
735f29077d8SSrinivas Kandagatla		"VA DMIC1", "MIC BIAS1",
736f29077d8SSrinivas Kandagatla		"VA DMIC2", "MIC BIAS3",
737f29077d8SSrinivas Kandagatla		"TX DMIC0", "MIC BIAS1",
738f29077d8SSrinivas Kandagatla		"TX DMIC1", "MIC BIAS2",
739f29077d8SSrinivas Kandagatla		"TX DMIC2", "MIC BIAS3",
740f29077d8SSrinivas Kandagatla		"TX SWR_ADC1", "ADC2_OUTPUT";
741f29077d8SSrinivas Kandagatla
742f29077d8SSrinivas Kandagatla	wcd-playback-dai-link {
743f29077d8SSrinivas Kandagatla		link-name = "WCD Playback";
744f29077d8SSrinivas Kandagatla		cpu {
745f29077d8SSrinivas Kandagatla			sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
746f29077d8SSrinivas Kandagatla		};
747f29077d8SSrinivas Kandagatla
748f29077d8SSrinivas Kandagatla		codec {
749f29077d8SSrinivas Kandagatla			sound-dai = <&wcd938x 0>, <&swr1 0>, <&rxmacro 0>;
750f29077d8SSrinivas Kandagatla		};
751f29077d8SSrinivas Kandagatla
752f29077d8SSrinivas Kandagatla		platform {
753f29077d8SSrinivas Kandagatla			sound-dai = <&q6apm>;
754f29077d8SSrinivas Kandagatla		};
755f29077d8SSrinivas Kandagatla	};
756f29077d8SSrinivas Kandagatla
757f29077d8SSrinivas Kandagatla	wcd-capture-dai-link {
758f29077d8SSrinivas Kandagatla		link-name = "WCD Capture";
759f29077d8SSrinivas Kandagatla		cpu {
760f29077d8SSrinivas Kandagatla			sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
761f29077d8SSrinivas Kandagatla		};
762f29077d8SSrinivas Kandagatla
763f29077d8SSrinivas Kandagatla		codec {
764f29077d8SSrinivas Kandagatla			sound-dai = <&wcd938x 1>, <&swr2 0>, <&txmacro 0>;
765f29077d8SSrinivas Kandagatla		};
766f29077d8SSrinivas Kandagatla
767f29077d8SSrinivas Kandagatla		platform {
768f29077d8SSrinivas Kandagatla			sound-dai = <&q6apm>;
769f29077d8SSrinivas Kandagatla		};
770f29077d8SSrinivas Kandagatla	};
771f29077d8SSrinivas Kandagatla
772f29077d8SSrinivas Kandagatla	wsa-dai-link {
773f29077d8SSrinivas Kandagatla		link-name = "WSA Playback";
774f29077d8SSrinivas Kandagatla		cpu {
775f29077d8SSrinivas Kandagatla			sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>;
776f29077d8SSrinivas Kandagatla		};
777f29077d8SSrinivas Kandagatla
778f29077d8SSrinivas Kandagatla		codec {
779f29077d8SSrinivas Kandagatla			sound-dai = <&left_spkr>, <&right_spkr>, <&swr0 0>, <&wsamacro 0>;
780f29077d8SSrinivas Kandagatla		};
781f29077d8SSrinivas Kandagatla
782f29077d8SSrinivas Kandagatla		platform {
783f29077d8SSrinivas Kandagatla			sound-dai = <&q6apm>;
784f29077d8SSrinivas Kandagatla		};
785f29077d8SSrinivas Kandagatla	};
786f29077d8SSrinivas Kandagatla
787f29077d8SSrinivas Kandagatla	va-dai-link {
788f29077d8SSrinivas Kandagatla		link-name = "VA Capture";
789f29077d8SSrinivas Kandagatla		cpu {
790f29077d8SSrinivas Kandagatla			sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
791f29077d8SSrinivas Kandagatla		};
792f29077d8SSrinivas Kandagatla
793f29077d8SSrinivas Kandagatla		platform {
794f29077d8SSrinivas Kandagatla			sound-dai = <&q6apm>;
795f29077d8SSrinivas Kandagatla		};
796f29077d8SSrinivas Kandagatla
797f29077d8SSrinivas Kandagatla		codec {
798f29077d8SSrinivas Kandagatla			sound-dai = <&vamacro 0>;
799f29077d8SSrinivas Kandagatla		};
800f29077d8SSrinivas Kandagatla	};
801f29077d8SSrinivas Kandagatla};
802f29077d8SSrinivas Kandagatla
803f29077d8SSrinivas Kandagatla&swr0 {
8046ded5ed6SJohan Hovold	status = "okay";
8056ded5ed6SJohan Hovold
806f29077d8SSrinivas Kandagatla	left_spkr: wsa8830-left@0,1 {
807f29077d8SSrinivas Kandagatla		compatible = "sdw10217020200";
808f29077d8SSrinivas Kandagatla		reg = <0 1>;
809f29077d8SSrinivas Kandagatla		pinctrl-names = "default";
810f29077d8SSrinivas Kandagatla		pinctrl-0 = <&spkr_1_sd_n_default>;
811f29077d8SSrinivas Kandagatla		powerdown-gpios = <&tlmm 178 GPIO_ACTIVE_LOW>;
812f29077d8SSrinivas Kandagatla		#thermal-sensor-cells = <0>;
813f29077d8SSrinivas Kandagatla		sound-name-prefix = "SpkrLeft";
814f29077d8SSrinivas Kandagatla		#sound-dai-cells = <0>;
815f29077d8SSrinivas Kandagatla		vdd-supply = <&vreg_s10b>;
816f29077d8SSrinivas Kandagatla	};
817f29077d8SSrinivas Kandagatla
818f29077d8SSrinivas Kandagatla	right_spkr: wsa8830-right@0,2 {
819f29077d8SSrinivas Kandagatla		compatible = "sdw10217020200";
820f29077d8SSrinivas Kandagatla		reg = <0 2>;
821f29077d8SSrinivas Kandagatla		pinctrl-names = "default";
822f29077d8SSrinivas Kandagatla		pinctrl-0 = <&spkr_2_sd_n_default>;
823f29077d8SSrinivas Kandagatla		powerdown-gpios = <&tlmm 179 GPIO_ACTIVE_LOW>;
824f29077d8SSrinivas Kandagatla		#thermal-sensor-cells = <0>;
825f29077d8SSrinivas Kandagatla		sound-name-prefix = "SpkrRight";
826f29077d8SSrinivas Kandagatla		#sound-dai-cells = <0>;
827f29077d8SSrinivas Kandagatla		vdd-supply = <&vreg_s10b>;
828f29077d8SSrinivas Kandagatla	};
829f29077d8SSrinivas Kandagatla};
830f29077d8SSrinivas Kandagatla
831f29077d8SSrinivas Kandagatla&swr1 {
832f29077d8SSrinivas Kandagatla	status = "okay";
833f29077d8SSrinivas Kandagatla
834f29077d8SSrinivas Kandagatla	wcd_rx: wcd9380-rx@0,4 {
835f29077d8SSrinivas Kandagatla		compatible = "sdw20217010d00";
836f29077d8SSrinivas Kandagatla		reg = <0 4>;
837f29077d8SSrinivas Kandagatla		qcom,rx-port-mapping = <1 2 3 4 5>;
838f29077d8SSrinivas Kandagatla	};
839f29077d8SSrinivas Kandagatla};
840f29077d8SSrinivas Kandagatla
841f29077d8SSrinivas Kandagatla&swr2 {
842f29077d8SSrinivas Kandagatla	status = "okay";
843f29077d8SSrinivas Kandagatla
844f29077d8SSrinivas Kandagatla	wcd_tx: wcd9380-tx@0,3 {
845f29077d8SSrinivas Kandagatla		compatible = "sdw20217010d00";
846f29077d8SSrinivas Kandagatla		reg = <0 3>;
847f29077d8SSrinivas Kandagatla		qcom,tx-port-mapping = <1 1 2 3>;
848f29077d8SSrinivas Kandagatla	};
849f29077d8SSrinivas Kandagatla};
850f29077d8SSrinivas Kandagatla
8516ded5ed6SJohan Hovold&txmacro {
8526ded5ed6SJohan Hovold	status = "okay";
8536ded5ed6SJohan Hovold};
8546ded5ed6SJohan Hovold
85532c23138SJohan Hovold&usb_0 {
85632c23138SJohan Hovold	status = "okay";
85732c23138SJohan Hovold};
85832c23138SJohan Hovold
85932c23138SJohan Hovold&usb_0_dwc3 {
86032c23138SJohan Hovold	/* TODO: Define USB-C connector properly */
86132c23138SJohan Hovold	dr_mode = "host";
86232c23138SJohan Hovold};
86332c23138SJohan Hovold
86432c23138SJohan Hovold&usb_0_hsphy {
86532c23138SJohan Hovold	vdda-pll-supply = <&vreg_l9d>;
86632c23138SJohan Hovold	vdda18-supply = <&vreg_l1c>;
86732c23138SJohan Hovold	vdda33-supply = <&vreg_l7d>;
86832c23138SJohan Hovold
86932c23138SJohan Hovold	status = "okay";
87032c23138SJohan Hovold};
87132c23138SJohan Hovold
87232c23138SJohan Hovold&usb_0_qmpphy {
87332c23138SJohan Hovold	vdda-phy-supply = <&vreg_l9d>;
87432c23138SJohan Hovold	vdda-pll-supply = <&vreg_l4d>;
87532c23138SJohan Hovold
87632c23138SJohan Hovold	status = "okay";
87732c23138SJohan Hovold};
87832c23138SJohan Hovold
87932c23138SJohan Hovold&usb_1 {
88032c23138SJohan Hovold	status = "okay";
88132c23138SJohan Hovold};
88232c23138SJohan Hovold
88332c23138SJohan Hovold&usb_1_dwc3 {
88432c23138SJohan Hovold	/* TODO: Define USB-C connector properly */
88532c23138SJohan Hovold	dr_mode = "host";
88632c23138SJohan Hovold};
88732c23138SJohan Hovold
88832c23138SJohan Hovold&usb_1_hsphy {
88932c23138SJohan Hovold	vdda-pll-supply = <&vreg_l4b>;
89032c23138SJohan Hovold	vdda18-supply = <&vreg_l1c>;
89132c23138SJohan Hovold	vdda33-supply = <&vreg_l13c>;
89232c23138SJohan Hovold
89332c23138SJohan Hovold	status = "okay";
89432c23138SJohan Hovold};
89532c23138SJohan Hovold
89632c23138SJohan Hovold&usb_1_qmpphy {
89732c23138SJohan Hovold	vdda-phy-supply = <&vreg_l4b>;
89832c23138SJohan Hovold	vdda-pll-supply = <&vreg_l3b>;
89932c23138SJohan Hovold
90032c23138SJohan Hovold	status = "okay";
90132c23138SJohan Hovold};
90232c23138SJohan Hovold
903acf90614SJohan Hovold&vamacro {
904acf90614SJohan Hovold	pinctrl-0 = <&dmic01_default>, <&dmic02_default>;
905acf90614SJohan Hovold	pinctrl-names = "default";
906acf90614SJohan Hovold
907acf90614SJohan Hovold	vdd-micb-supply = <&vreg_s10b>;
908acf90614SJohan Hovold
909acf90614SJohan Hovold	qcom,dmic-sample-rate = <600000>;
910acf90614SJohan Hovold
911acf90614SJohan Hovold	status = "okay";
912acf90614SJohan Hovold};
913acf90614SJohan Hovold
9146ded5ed6SJohan Hovold&wsamacro {
9156ded5ed6SJohan Hovold	status = "okay";
9166ded5ed6SJohan Hovold};
9176ded5ed6SJohan Hovold
91832c23138SJohan Hovold&xo_board_clk {
91932c23138SJohan Hovold	clock-frequency = <38400000>;
92032c23138SJohan Hovold};
92132c23138SJohan Hovold
92232c23138SJohan Hovold/* PINCTRL */
92332c23138SJohan Hovold
9246ded5ed6SJohan Hovold&lpass_tlmm {
9256ded5ed6SJohan Hovold	status = "okay";
9266ded5ed6SJohan Hovold};
9276ded5ed6SJohan Hovold
92832c23138SJohan Hovold&pmc8280_1_gpios {
92932c23138SJohan Hovold	edp_bl_en: edp-bl-en-state {
93032c23138SJohan Hovold		pins = "gpio8";
93132c23138SJohan Hovold		function = "normal";
93232c23138SJohan Hovold	};
93332c23138SJohan Hovold
93432c23138SJohan Hovold	edp_bl_reg_en: edp-bl-reg-en-state {
93532c23138SJohan Hovold		pins = "gpio9";
93632c23138SJohan Hovold		function = "normal";
93732c23138SJohan Hovold	};
93832c23138SJohan Hovold
93932c23138SJohan Hovold	misc_3p3_reg_en: misc-3p3-reg-en-state {
94032c23138SJohan Hovold		pins = "gpio1";
94132c23138SJohan Hovold		function = "normal";
94232c23138SJohan Hovold	};
94332c23138SJohan Hovold};
94432c23138SJohan Hovold
945176d54acSJohan Hovold&pmc8280_2_gpios {
946176d54acSJohan Hovold	wwan_sw_en: wwan-sw-en-state {
947176d54acSJohan Hovold		pins = "gpio1";
948176d54acSJohan Hovold		function = "normal";
949176d54acSJohan Hovold	};
950176d54acSJohan Hovold};
951176d54acSJohan Hovold
95232c23138SJohan Hovold&pmc8280c_gpios {
95332c23138SJohan Hovold	edp_bl_pwm: edp-bl-pwm-state {
95432c23138SJohan Hovold		pins = "gpio8";
95532c23138SJohan Hovold		function = "func1";
95632c23138SJohan Hovold	};
95732c23138SJohan Hovold};
95832c23138SJohan Hovold
959123b30a7SJohan Hovold&pmr735a_gpios {
960123b30a7SJohan Hovold	hastings_reg_en: hastings-reg-en-state {
961123b30a7SJohan Hovold		pins = "gpio1";
962123b30a7SJohan Hovold		function = "normal";
963123b30a7SJohan Hovold	};
964123b30a7SJohan Hovold};
965123b30a7SJohan Hovold
96632c23138SJohan Hovold&tlmm {
96732c23138SJohan Hovold	gpio-reserved-ranges = <70 2>, <74 6>, <83 4>, <125 2>, <128 2>, <154 7>;
96832c23138SJohan Hovold
969f48c70b1SJohan Hovold	edp_reg_en: edp-reg-en-state {
970f48c70b1SJohan Hovold		pins = "gpio25";
971f48c70b1SJohan Hovold		function = "gpio";
972f48c70b1SJohan Hovold		drive-strength = <16>;
973f48c70b1SJohan Hovold		bias-disable;
974f48c70b1SJohan Hovold	};
975f48c70b1SJohan Hovold
976a607fe5eSBjorn Andersson	hall_int_n_default: hall-int-n-state {
977a607fe5eSBjorn Andersson		pins = "gpio107";
978a607fe5eSBjorn Andersson		function = "gpio";
979a607fe5eSBjorn Andersson		input-enable;
980a607fe5eSBjorn Andersson		bias-disable;
981a607fe5eSBjorn Andersson	};
982a607fe5eSBjorn Andersson
98332c23138SJohan Hovold	kybd_default: kybd-default-state {
98491c4431bSKrzysztof Kozlowski		disable-pins {
98532c23138SJohan Hovold			pins = "gpio102";
98632c23138SJohan Hovold			function = "gpio";
98732c23138SJohan Hovold			output-low;
98832c23138SJohan Hovold		};
98932c23138SJohan Hovold
99091c4431bSKrzysztof Kozlowski		int-n-pins {
99132c23138SJohan Hovold			pins = "gpio104";
99232c23138SJohan Hovold			function = "gpio";
99332c23138SJohan Hovold			bias-disable;
99432c23138SJohan Hovold		};
99532c23138SJohan Hovold
99691c4431bSKrzysztof Kozlowski		reset-pins {
99732c23138SJohan Hovold			pins = "gpio105";
99832c23138SJohan Hovold			function = "gpio";
99932c23138SJohan Hovold			bias-disable;
100032c23138SJohan Hovold		};
100132c23138SJohan Hovold	};
100232c23138SJohan Hovold
1003b4bb952eSJohan Hovold	nvme_reg_en: nvme-reg-en-state {
1004b4bb952eSJohan Hovold		pins = "gpio135";
1005b4bb952eSJohan Hovold		function = "gpio";
1006b4bb952eSJohan Hovold		drive-strength = <2>;
1007b4bb952eSJohan Hovold		bias-disable;
1008b4bb952eSJohan Hovold	};
1009b4bb952eSJohan Hovold
1010b4bb952eSJohan Hovold	pcie2a_default: pcie2a-default-state {
1011b4bb952eSJohan Hovold		clkreq-n-pins {
1012b4bb952eSJohan Hovold			pins = "gpio142";
1013b4bb952eSJohan Hovold			function = "pcie2a_clkreq";
1014b4bb952eSJohan Hovold			drive-strength = <2>;
1015b4bb952eSJohan Hovold			bias-pull-up;
1016b4bb952eSJohan Hovold		};
1017b4bb952eSJohan Hovold
1018b4bb952eSJohan Hovold		perst-n-pins {
1019b4bb952eSJohan Hovold			pins = "gpio143";
1020b4bb952eSJohan Hovold			function = "gpio";
1021b4bb952eSJohan Hovold			drive-strength = <2>;
1022b4bb952eSJohan Hovold			bias-pull-down;
1023b4bb952eSJohan Hovold		};
1024b4bb952eSJohan Hovold
1025b4bb952eSJohan Hovold		wake-n-pins {
1026b4bb952eSJohan Hovold		       pins = "gpio145";
1027b4bb952eSJohan Hovold		       function = "gpio";
1028b4bb952eSJohan Hovold		       drive-strength = <2>;
1029b4bb952eSJohan Hovold		       bias-pull-up;
1030b4bb952eSJohan Hovold	       };
1031b4bb952eSJohan Hovold	};
1032b4bb952eSJohan Hovold
1033176d54acSJohan Hovold	pcie3a_default: pcie3a-default-state {
1034176d54acSJohan Hovold		clkreq-n-pins {
1035176d54acSJohan Hovold			pins = "gpio150";
1036176d54acSJohan Hovold			function = "pcie3a_clkreq";
1037176d54acSJohan Hovold			drive-strength = <2>;
1038176d54acSJohan Hovold			bias-pull-up;
1039176d54acSJohan Hovold		};
1040176d54acSJohan Hovold
1041176d54acSJohan Hovold		perst-n-pins {
1042176d54acSJohan Hovold			pins = "gpio151";
1043176d54acSJohan Hovold			function = "gpio";
1044176d54acSJohan Hovold			drive-strength = <2>;
1045176d54acSJohan Hovold			bias-pull-down;
1046176d54acSJohan Hovold		};
1047176d54acSJohan Hovold
1048176d54acSJohan Hovold		wake-n-pins {
1049176d54acSJohan Hovold			pins = "gpio148";
1050176d54acSJohan Hovold			function = "gpio";
1051176d54acSJohan Hovold			drive-strength = <2>;
1052176d54acSJohan Hovold			bias-pull-up;
1053176d54acSJohan Hovold		};
1054176d54acSJohan Hovold	};
1055176d54acSJohan Hovold
1056123b30a7SJohan Hovold	pcie4_default: pcie4-default-state {
1057123b30a7SJohan Hovold		clkreq-n-pins {
1058123b30a7SJohan Hovold			pins = "gpio140";
1059123b30a7SJohan Hovold			function = "pcie4_clkreq";
1060123b30a7SJohan Hovold			drive-strength = <2>;
1061123b30a7SJohan Hovold			bias-pull-up;
1062123b30a7SJohan Hovold		};
1063123b30a7SJohan Hovold
1064123b30a7SJohan Hovold		perst-n-pins {
1065123b30a7SJohan Hovold			pins = "gpio141";
1066123b30a7SJohan Hovold			function = "gpio";
1067123b30a7SJohan Hovold			drive-strength = <2>;
1068123b30a7SJohan Hovold			bias-pull-down;
1069123b30a7SJohan Hovold		};
1070123b30a7SJohan Hovold
1071123b30a7SJohan Hovold		wake-n-pins {
1072123b30a7SJohan Hovold			pins = "gpio139";
1073123b30a7SJohan Hovold			function = "gpio";
1074123b30a7SJohan Hovold			drive-strength = <2>;
1075123b30a7SJohan Hovold			bias-pull-up;
1076123b30a7SJohan Hovold		};
1077123b30a7SJohan Hovold	};
1078123b30a7SJohan Hovold
107932c23138SJohan Hovold	qup0_i2c4_default: qup0-i2c4-default-state {
108032c23138SJohan Hovold		pins = "gpio171", "gpio172";
108132c23138SJohan Hovold		function = "qup4";
108232c23138SJohan Hovold		bias-disable;
108332c23138SJohan Hovold		drive-strength = <16>;
108432c23138SJohan Hovold	};
108532c23138SJohan Hovold
108632c23138SJohan Hovold	qup2_i2c5_default: qup2-i2c5-default-state {
108732c23138SJohan Hovold		pins = "gpio81", "gpio82";
108832c23138SJohan Hovold		function = "qup21";
108932c23138SJohan Hovold		bias-disable;
109032c23138SJohan Hovold		drive-strength = <16>;
109132c23138SJohan Hovold	};
109232c23138SJohan Hovold
1093f29077d8SSrinivas Kandagatla	spkr_1_sd_n_default: spkr-1-sd-n-default-state {
1094f29077d8SSrinivas Kandagatla		perst-n-pins {
1095f29077d8SSrinivas Kandagatla			pins = "gpio178";
1096f29077d8SSrinivas Kandagatla			function = "gpio";
1097f29077d8SSrinivas Kandagatla			drive-strength = <16>;
1098f29077d8SSrinivas Kandagatla			bias-disable;
1099f29077d8SSrinivas Kandagatla			output-high;
1100f29077d8SSrinivas Kandagatla		};
1101f29077d8SSrinivas Kandagatla	};
1102f29077d8SSrinivas Kandagatla
1103f29077d8SSrinivas Kandagatla	spkr_2_sd_n_default: spkr-2-sd-n-default-state {
1104f29077d8SSrinivas Kandagatla		perst-n-pins {
1105f29077d8SSrinivas Kandagatla			pins = "gpio179";
1106f29077d8SSrinivas Kandagatla			function = "gpio";
1107f29077d8SSrinivas Kandagatla			drive-strength = <16>;
1108f29077d8SSrinivas Kandagatla			bias-disable;
1109f29077d8SSrinivas Kandagatla			output-high;
1110f29077d8SSrinivas Kandagatla		};
1111f29077d8SSrinivas Kandagatla	};
1112f29077d8SSrinivas Kandagatla
111332c23138SJohan Hovold	tpad_default: tpad-default-state {
111491c4431bSKrzysztof Kozlowski		int-n-pins {
111532c23138SJohan Hovold			pins = "gpio182";
111632c23138SJohan Hovold			function = "gpio";
111732c23138SJohan Hovold			bias-disable;
111832c23138SJohan Hovold		};
111932c23138SJohan Hovold	};
112032c23138SJohan Hovold
112132c23138SJohan Hovold	ts0_default: ts0-default-state {
112291c4431bSKrzysztof Kozlowski		int-n-pins {
112332c23138SJohan Hovold			pins = "gpio175";
112432c23138SJohan Hovold			function = "gpio";
1125e11978deSJohan Hovold			bias-disable;
112632c23138SJohan Hovold		};
112732c23138SJohan Hovold
112891c4431bSKrzysztof Kozlowski		reset-n-pins {
112932c23138SJohan Hovold			pins = "gpio99";
113032c23138SJohan Hovold			function = "gpio";
113132c23138SJohan Hovold			output-high;
113232c23138SJohan Hovold			drive-strength = <16>;
113332c23138SJohan Hovold		};
113432c23138SJohan Hovold	};
1135f29077d8SSrinivas Kandagatla
1136f29077d8SSrinivas Kandagatla	wcd_default: wcd-default-state {
1137f29077d8SSrinivas Kandagatla		reset-pins {
1138f29077d8SSrinivas Kandagatla			pins = "gpio106";
1139f29077d8SSrinivas Kandagatla			function = "gpio";
1140f29077d8SSrinivas Kandagatla			bias-disable;
1141f29077d8SSrinivas Kandagatla		};
1142f29077d8SSrinivas Kandagatla	};
114332c23138SJohan Hovold};
1144