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
24f48c70b1SJohan Hovold	backlight: backlight {
2532c23138SJohan Hovold		compatible = "pwm-backlight";
2632c23138SJohan Hovold		pwms = <&pmc8280c_lpg 3 1000000>;
2732c23138SJohan Hovold		enable-gpios = <&pmc8280_1_gpios 8 GPIO_ACTIVE_HIGH>;
2832c23138SJohan Hovold		power-supply = <&vreg_edp_bl>;
2932c23138SJohan Hovold
3032c23138SJohan Hovold		pinctrl-names = "default";
3132c23138SJohan Hovold		pinctrl-0 = <&edp_bl_en>, <&edp_bl_pwm>;
3232c23138SJohan Hovold	};
3332c23138SJohan Hovold
34a607fe5eSBjorn Andersson	gpio-keys {
35a607fe5eSBjorn Andersson		compatible = "gpio-keys";
36a607fe5eSBjorn Andersson
37a607fe5eSBjorn Andersson		pinctrl-names = "default";
38a607fe5eSBjorn Andersson		pinctrl-0 = <&hall_int_n_default>;
39a607fe5eSBjorn Andersson
40a607fe5eSBjorn Andersson		switch-lid {
41a607fe5eSBjorn Andersson			gpios = <&tlmm 107 GPIO_ACTIVE_LOW>;
42a607fe5eSBjorn Andersson			linux,input-type = <EV_SW>;
43a607fe5eSBjorn Andersson			linux,code = <SW_LID>;
44a607fe5eSBjorn Andersson			wakeup-source;
45a607fe5eSBjorn Andersson			wakeup-event-action = <EV_ACT_DEASSERTED>;
46a607fe5eSBjorn Andersson		};
47a607fe5eSBjorn Andersson	};
48a607fe5eSBjorn Andersson
49f48c70b1SJohan Hovold	vreg_edp_3p3: regulator-edp-3p3 {
50f48c70b1SJohan Hovold		compatible = "regulator-fixed";
51f48c70b1SJohan Hovold
52f48c70b1SJohan Hovold		regulator-name = "VCC3LCD";
53f48c70b1SJohan Hovold		regulator-min-microvolt = <3300000>;
54f48c70b1SJohan Hovold		regulator-max-microvolt = <3300000>;
55f48c70b1SJohan Hovold
56f48c70b1SJohan Hovold		gpio = <&tlmm 25 GPIO_ACTIVE_HIGH>;
57f48c70b1SJohan Hovold		enable-active-high;
58f48c70b1SJohan Hovold
59f48c70b1SJohan Hovold		pinctrl-names = "default";
60f48c70b1SJohan Hovold		pinctrl-0 = <&edp_reg_en>;
61f48c70b1SJohan Hovold
62f48c70b1SJohan Hovold		regulator-boot-on;
63f48c70b1SJohan Hovold	};
64f48c70b1SJohan Hovold
6532c23138SJohan Hovold	vreg_edp_bl: regulator-edp-bl {
6632c23138SJohan Hovold		compatible = "regulator-fixed";
6732c23138SJohan Hovold
6832c23138SJohan Hovold		regulator-name = "VBL9";
6932c23138SJohan Hovold		regulator-min-microvolt = <3600000>;
7032c23138SJohan Hovold		regulator-max-microvolt = <3600000>;
7132c23138SJohan Hovold
7232c23138SJohan Hovold		gpio = <&pmc8280_1_gpios 9 GPIO_ACTIVE_HIGH>;
7332c23138SJohan Hovold		enable-active-high;
7432c23138SJohan Hovold
7532c23138SJohan Hovold		pinctrl-names = "default";
7632c23138SJohan Hovold		pinctrl-0 = <&edp_bl_reg_en>;
7732c23138SJohan Hovold
7832c23138SJohan Hovold		regulator-boot-on;
7932c23138SJohan Hovold	};
8032c23138SJohan Hovold
8132c23138SJohan Hovold	vreg_misc_3p3: regulator-misc-3p3 {
8232c23138SJohan Hovold		compatible = "regulator-fixed";
8332c23138SJohan Hovold
8432c23138SJohan Hovold		regulator-name = "VCC3B";
8532c23138SJohan Hovold		regulator-min-microvolt = <3300000>;
8632c23138SJohan Hovold		regulator-max-microvolt = <3300000>;
8732c23138SJohan Hovold
8832c23138SJohan Hovold		gpio = <&pmc8280_1_gpios 1 GPIO_ACTIVE_HIGH>;
8932c23138SJohan Hovold		enable-active-high;
9032c23138SJohan Hovold
9132c23138SJohan Hovold		pinctrl-names = "default";
9232c23138SJohan Hovold		pinctrl-0 = <&misc_3p3_reg_en>;
9332c23138SJohan Hovold
9432c23138SJohan Hovold		regulator-boot-on;
9532c23138SJohan Hovold		regulator-always-on;
9632c23138SJohan Hovold	};
97b4bb952eSJohan Hovold
98b4bb952eSJohan Hovold	vreg_nvme: regulator-nvme {
99b4bb952eSJohan Hovold		compatible = "regulator-fixed";
100b4bb952eSJohan Hovold
101b4bb952eSJohan Hovold		regulator-name = "VCC3_SSD";
102b4bb952eSJohan Hovold		regulator-min-microvolt = <3300000>;
103b4bb952eSJohan Hovold		regulator-max-microvolt = <3300000>;
104b4bb952eSJohan Hovold
105b4bb952eSJohan Hovold		gpio = <&tlmm 135 GPIO_ACTIVE_HIGH>;
106b4bb952eSJohan Hovold		enable-active-high;
107b4bb952eSJohan Hovold
108b4bb952eSJohan Hovold		pinctrl-names = "default";
109b4bb952eSJohan Hovold		pinctrl-0 = <&nvme_reg_en>;
110b4bb952eSJohan Hovold
111b4bb952eSJohan Hovold		regulator-boot-on;
112b4bb952eSJohan Hovold	};
113176d54acSJohan Hovold
1143abf1f5cSJohan Hovold	vreg_vph_pwr: regulator-vph-pwr {
1153abf1f5cSJohan Hovold		compatible = "regulator-fixed";
1163abf1f5cSJohan Hovold
1173abf1f5cSJohan Hovold		regulator-name = "VPH_VCC3R9";
1183abf1f5cSJohan Hovold		regulator-min-microvolt = <3900000>;
1193abf1f5cSJohan Hovold		regulator-max-microvolt = <3900000>;
1203abf1f5cSJohan Hovold
1213abf1f5cSJohan Hovold		regulator-always-on;
1223abf1f5cSJohan Hovold	};
1233abf1f5cSJohan Hovold
124123b30a7SJohan Hovold	vreg_wlan: regulator-wlan {
125123b30a7SJohan Hovold		compatible = "regulator-fixed";
126123b30a7SJohan Hovold
127123b30a7SJohan Hovold		regulator-name = "VCC_WLAN_3R9";
128123b30a7SJohan Hovold		regulator-min-microvolt = <3900000>;
129123b30a7SJohan Hovold		regulator-max-microvolt = <3900000>;
130123b30a7SJohan Hovold
131123b30a7SJohan Hovold		gpio = <&pmr735a_gpios 1 GPIO_ACTIVE_HIGH>;
132123b30a7SJohan Hovold		enable-active-high;
133123b30a7SJohan Hovold
134123b30a7SJohan Hovold		pinctrl-names = "default";
135123b30a7SJohan Hovold		pinctrl-0 = <&hastings_reg_en>;
136123b30a7SJohan Hovold
137123b30a7SJohan Hovold		regulator-boot-on;
138123b30a7SJohan Hovold	};
139123b30a7SJohan Hovold
140176d54acSJohan Hovold	vreg_wwan: regulator-wwan {
141176d54acSJohan Hovold		compatible = "regulator-fixed";
142176d54acSJohan Hovold
143176d54acSJohan Hovold		regulator-name = "VCC3B_WAN";
144176d54acSJohan Hovold		regulator-min-microvolt = <3300000>;
145176d54acSJohan Hovold		regulator-max-microvolt = <3300000>;
146176d54acSJohan Hovold
147176d54acSJohan Hovold		gpio = <&pmc8280_2_gpios 1 GPIO_ACTIVE_HIGH>;
148176d54acSJohan Hovold		enable-active-high;
149176d54acSJohan Hovold
150176d54acSJohan Hovold		pinctrl-names = "default";
151176d54acSJohan Hovold		pinctrl-0 = <&wwan_sw_en>;
152176d54acSJohan Hovold
153176d54acSJohan Hovold		regulator-boot-on;
154176d54acSJohan Hovold	};
155f29077d8SSrinivas Kandagatla
1565e4cab73SJohan Hovold	thermal-zones {
1575e4cab73SJohan Hovold		skin-temp-thermal {
1585e4cab73SJohan Hovold			polling-delay-passive = <250>;
1595e4cab73SJohan Hovold			polling-delay = <0>;
1605e4cab73SJohan Hovold			thermal-sensors = <&pmk8280_adc_tm 5>;
1615e4cab73SJohan Hovold
1625e4cab73SJohan Hovold			trips {
1635e4cab73SJohan Hovold				skin_temp_alert0: trip-point0 {
1645e4cab73SJohan Hovold					temperature = <55000>;
1655e4cab73SJohan Hovold					hysteresis = <1000>;
1665e4cab73SJohan Hovold					type = "passive";
1675e4cab73SJohan Hovold				};
1685e4cab73SJohan Hovold
1695e4cab73SJohan Hovold				skin_temp_alert1: trip-point1 {
1705e4cab73SJohan Hovold					temperature = <58000>;
1715e4cab73SJohan Hovold					hysteresis = <1000>;
1725e4cab73SJohan Hovold					type = "passive";
1735e4cab73SJohan Hovold				};
1745e4cab73SJohan Hovold
1755e4cab73SJohan Hovold				skin-temp-crit {
1765e4cab73SJohan Hovold					temperature = <73000>;
1775e4cab73SJohan Hovold					hysteresis = <1000>;
1785e4cab73SJohan Hovold					type = "critical";
1795e4cab73SJohan Hovold				};
1805e4cab73SJohan Hovold			};
1815e4cab73SJohan Hovold
1825e4cab73SJohan Hovold			cooling-maps {
1835e4cab73SJohan Hovold				map0 {
1845e4cab73SJohan Hovold					trip = <&skin_temp_alert0>;
1855e4cab73SJohan Hovold					cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
1865e4cab73SJohan Hovold							 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
1875e4cab73SJohan Hovold							 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
1885e4cab73SJohan Hovold							 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
1895e4cab73SJohan Hovold				};
1905e4cab73SJohan Hovold
1915e4cab73SJohan Hovold				map1 {
1925e4cab73SJohan Hovold					trip = <&skin_temp_alert1>;
1935e4cab73SJohan Hovold					cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
1945e4cab73SJohan Hovold							 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
1955e4cab73SJohan Hovold							 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
1965e4cab73SJohan Hovold							 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
1975e4cab73SJohan Hovold				};
1985e4cab73SJohan Hovold			};
1995e4cab73SJohan Hovold		};
2005e4cab73SJohan Hovold	};
20132c23138SJohan Hovold};
20232c23138SJohan Hovold
20332c23138SJohan Hovold&apps_rsc {
20432c23138SJohan Hovold	pmc8280-1-rpmh-regulators {
20532c23138SJohan Hovold		compatible = "qcom,pm8350-rpmh-regulators";
20632c23138SJohan Hovold		qcom,pmic-id = "b";
20732c23138SJohan Hovold
20832c23138SJohan Hovold		vdd-l3-l5-supply = <&vreg_s11b>;
20932c23138SJohan Hovold
210f29077d8SSrinivas Kandagatla		vreg_s10b: smps10 {
211f29077d8SSrinivas Kandagatla			regulator-name = "vreg_s10b";
212f29077d8SSrinivas Kandagatla			regulator-min-microvolt = <1800000>;
213f29077d8SSrinivas Kandagatla			regulator-max-microvolt = <1800000>;
214f29077d8SSrinivas Kandagatla			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
215f29077d8SSrinivas Kandagatla		};
216f29077d8SSrinivas Kandagatla
21732c23138SJohan Hovold		vreg_s11b: smps11 {
21832c23138SJohan Hovold			regulator-name = "vreg_s11b";
21932c23138SJohan Hovold			regulator-min-microvolt = <1272000>;
22032c23138SJohan Hovold			regulator-max-microvolt = <1272000>;
22132c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
22232c23138SJohan Hovold		};
22332c23138SJohan Hovold
224f29077d8SSrinivas Kandagatla		vreg_s12b: smps12 {
225f29077d8SSrinivas Kandagatla			regulator-name = "vreg_s12b";
226f29077d8SSrinivas Kandagatla			regulator-min-microvolt = <984000>;
227f29077d8SSrinivas Kandagatla			regulator-max-microvolt = <984000>;
228f29077d8SSrinivas Kandagatla			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
229f29077d8SSrinivas Kandagatla		};
230f29077d8SSrinivas Kandagatla
23132c23138SJohan Hovold		vreg_l3b: ldo3 {
23232c23138SJohan Hovold			regulator-name = "vreg_l3b";
23332c23138SJohan Hovold			regulator-min-microvolt = <1200000>;
23432c23138SJohan Hovold			regulator-max-microvolt = <1200000>;
23532c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
23632c23138SJohan Hovold			regulator-boot-on;
23732c23138SJohan Hovold		};
23832c23138SJohan Hovold
23932c23138SJohan Hovold		vreg_l4b: ldo4 {
24032c23138SJohan Hovold			regulator-name = "vreg_l4b";
24132c23138SJohan Hovold			regulator-min-microvolt = <912000>;
24232c23138SJohan Hovold			regulator-max-microvolt = <912000>;
24332c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
24432c23138SJohan Hovold		};
24532c23138SJohan Hovold
24632c23138SJohan Hovold		vreg_l6b: ldo6 {
24732c23138SJohan Hovold			regulator-name = "vreg_l6b";
24832c23138SJohan Hovold			regulator-min-microvolt = <880000>;
24932c23138SJohan Hovold			regulator-max-microvolt = <880000>;
25032c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
25132c23138SJohan Hovold			regulator-boot-on;
25232c23138SJohan Hovold		};
25332c23138SJohan Hovold	};
25432c23138SJohan Hovold
25532c23138SJohan Hovold	pmc8280c-rpmh-regulators {
25632c23138SJohan Hovold		compatible = "qcom,pm8350c-rpmh-regulators";
25732c23138SJohan Hovold		qcom,pmic-id = "c";
258f29077d8SSrinivas Kandagatla		vdd-bob-supply = <&vreg_vph_pwr>;
25932c23138SJohan Hovold
26032c23138SJohan Hovold		vreg_l1c: ldo1 {
26132c23138SJohan Hovold			regulator-name = "vreg_l1c";
26232c23138SJohan Hovold			regulator-min-microvolt = <1800000>;
26332c23138SJohan Hovold			regulator-max-microvolt = <1800000>;
26432c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
26532c23138SJohan Hovold		};
26632c23138SJohan Hovold
26732c23138SJohan Hovold		vreg_l12c: ldo12 {
26832c23138SJohan Hovold			regulator-name = "vreg_l12c";
26932c23138SJohan Hovold			regulator-min-microvolt = <1800000>;
27032c23138SJohan Hovold			regulator-max-microvolt = <1800000>;
27132c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
27232c23138SJohan Hovold		};
27332c23138SJohan Hovold
27432c23138SJohan Hovold		vreg_l13c: ldo13 {
27532c23138SJohan Hovold			regulator-name = "vreg_l13c";
27632c23138SJohan Hovold			regulator-min-microvolt = <3072000>;
27732c23138SJohan Hovold			regulator-max-microvolt = <3072000>;
27832c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
27932c23138SJohan Hovold		};
280f29077d8SSrinivas Kandagatla
281f29077d8SSrinivas Kandagatla		vreg_bob: bob {
282f29077d8SSrinivas Kandagatla			regulator-name = "vreg_bob";
283f29077d8SSrinivas Kandagatla			regulator-min-microvolt = <3008000>;
284f29077d8SSrinivas Kandagatla			regulator-max-microvolt = <3960000>;
285f29077d8SSrinivas Kandagatla			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
286f29077d8SSrinivas Kandagatla		};
28732c23138SJohan Hovold	};
28832c23138SJohan Hovold
28932c23138SJohan Hovold	pmc8280-2-rpmh-regulators {
29032c23138SJohan Hovold		compatible = "qcom,pm8350-rpmh-regulators";
29132c23138SJohan Hovold		qcom,pmic-id = "d";
29232c23138SJohan Hovold
29332c23138SJohan Hovold		vdd-l1-l4-supply = <&vreg_s11b>;
29432c23138SJohan Hovold
29532c23138SJohan Hovold		vreg_l3d: ldo3 {
29632c23138SJohan Hovold			regulator-name = "vreg_l3d";
29732c23138SJohan Hovold			regulator-min-microvolt = <1200000>;
29832c23138SJohan Hovold			regulator-max-microvolt = <1200000>;
29932c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
30032c23138SJohan Hovold		};
30132c23138SJohan Hovold
30232c23138SJohan Hovold		vreg_l4d: ldo4 {
30332c23138SJohan Hovold			regulator-name = "vreg_l4d";
30432c23138SJohan Hovold			regulator-min-microvolt = <1200000>;
30532c23138SJohan Hovold			regulator-max-microvolt = <1200000>;
30632c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
30732c23138SJohan Hovold		};
30832c23138SJohan Hovold
309b4bb952eSJohan Hovold		vreg_l6d: ldo6 {
310b4bb952eSJohan Hovold			regulator-name = "vreg_l6d";
311b4bb952eSJohan Hovold			regulator-min-microvolt = <880000>;
312b4bb952eSJohan Hovold			regulator-max-microvolt = <880000>;
313b4bb952eSJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
314b4bb952eSJohan Hovold		};
315b4bb952eSJohan Hovold
31632c23138SJohan Hovold		vreg_l7d: ldo7 {
31732c23138SJohan Hovold			regulator-name = "vreg_l7d";
31832c23138SJohan Hovold			regulator-min-microvolt = <3072000>;
31932c23138SJohan Hovold			regulator-max-microvolt = <3072000>;
32032c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
32132c23138SJohan Hovold		};
32232c23138SJohan Hovold
32332c23138SJohan Hovold		vreg_l9d: ldo9 {
32432c23138SJohan Hovold			regulator-name = "vreg_l9d";
32532c23138SJohan Hovold			regulator-min-microvolt = <912000>;
32632c23138SJohan Hovold			regulator-max-microvolt = <912000>;
32732c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
32832c23138SJohan Hovold		};
32932c23138SJohan Hovold	};
33032c23138SJohan Hovold};
33132c23138SJohan Hovold
332f48c70b1SJohan Hovold&dispcc0 {
333f48c70b1SJohan Hovold	status = "okay";
334f48c70b1SJohan Hovold};
335f48c70b1SJohan Hovold
336f48c70b1SJohan Hovold&mdss0 {
337f48c70b1SJohan Hovold	status = "okay";
338f48c70b1SJohan Hovold};
339f48c70b1SJohan Hovold
340f48c70b1SJohan Hovold&mdss0_dp3 {
341f48c70b1SJohan Hovold	compatible = "qcom,sc8280xp-edp";
342f48c70b1SJohan Hovold
343f48c70b1SJohan Hovold	data-lanes = <0 1 2 3>;
344f48c70b1SJohan Hovold
345f48c70b1SJohan Hovold	status = "okay";
346f48c70b1SJohan Hovold
347f48c70b1SJohan Hovold	aux-bus {
348f48c70b1SJohan Hovold		panel {
349f48c70b1SJohan Hovold			compatible = "edp-panel";
350f48c70b1SJohan Hovold
351f48c70b1SJohan Hovold			backlight = <&backlight>;
352f48c70b1SJohan Hovold			power-supply = <&vreg_edp_3p3>;
353f48c70b1SJohan Hovold
354f48c70b1SJohan Hovold			ports {
355f48c70b1SJohan Hovold				port {
356f48c70b1SJohan Hovold					edp_panel_in: endpoint {
357f48c70b1SJohan Hovold						remote-endpoint = <&mdss0_dp3_out>;
358f48c70b1SJohan Hovold					};
359f48c70b1SJohan Hovold				};
360f48c70b1SJohan Hovold			};
361f48c70b1SJohan Hovold		};
362f48c70b1SJohan Hovold	};
363f48c70b1SJohan Hovold
364f48c70b1SJohan Hovold	ports {
365f48c70b1SJohan Hovold		port@1 {
366f48c70b1SJohan Hovold			reg = <1>;
367f48c70b1SJohan Hovold			mdss0_dp3_out: endpoint {
368f48c70b1SJohan Hovold				remote-endpoint = <&edp_panel_in>;
369f48c70b1SJohan Hovold			};
370f48c70b1SJohan Hovold		};
371f48c70b1SJohan Hovold	};
372f48c70b1SJohan Hovold};
373f48c70b1SJohan Hovold
374f48c70b1SJohan Hovold&mdss0_dp3_phy {
375f48c70b1SJohan Hovold	vdda-phy-supply = <&vreg_l6b>;
376f48c70b1SJohan Hovold	vdda-pll-supply = <&vreg_l3b>;
377f48c70b1SJohan Hovold
378f48c70b1SJohan Hovold	status = "okay";
379f48c70b1SJohan Hovold};
380f48c70b1SJohan Hovold
381b4bb952eSJohan Hovold&pcie2a {
382b4bb952eSJohan Hovold	perst-gpios = <&tlmm 143 GPIO_ACTIVE_LOW>;
383b4bb952eSJohan Hovold	wake-gpios = <&tlmm 145 GPIO_ACTIVE_LOW>;
384b4bb952eSJohan Hovold
385b4bb952eSJohan Hovold	vddpe-3v3-supply = <&vreg_nvme>;
386b4bb952eSJohan Hovold
387b4bb952eSJohan Hovold	pinctrl-names = "default";
388b4bb952eSJohan Hovold	pinctrl-0 = <&pcie2a_default>;
389b4bb952eSJohan Hovold
390b4bb952eSJohan Hovold	status = "okay";
391b4bb952eSJohan Hovold};
392b4bb952eSJohan Hovold
393b4bb952eSJohan Hovold&pcie2a_phy {
394b4bb952eSJohan Hovold	vdda-phy-supply = <&vreg_l6d>;
395b4bb952eSJohan Hovold	vdda-pll-supply = <&vreg_l4d>;
396b4bb952eSJohan Hovold
397b4bb952eSJohan Hovold	status = "okay";
398b4bb952eSJohan Hovold};
399b4bb952eSJohan Hovold
400176d54acSJohan Hovold&pcie3a {
401176d54acSJohan Hovold	perst-gpios = <&tlmm 151 GPIO_ACTIVE_LOW>;
402176d54acSJohan Hovold	wake-gpios = <&tlmm 148 GPIO_ACTIVE_LOW>;
403176d54acSJohan Hovold
404176d54acSJohan Hovold	vddpe-3v3-supply = <&vreg_wwan>;
405176d54acSJohan Hovold
406176d54acSJohan Hovold	pinctrl-names = "default";
407176d54acSJohan Hovold	pinctrl-0 = <&pcie3a_default>;
408176d54acSJohan Hovold
409176d54acSJohan Hovold	status = "okay";
410176d54acSJohan Hovold};
411176d54acSJohan Hovold
412176d54acSJohan Hovold&pcie3a_phy {
413176d54acSJohan Hovold	vdda-phy-supply = <&vreg_l6d>;
414176d54acSJohan Hovold	vdda-pll-supply = <&vreg_l4d>;
415176d54acSJohan Hovold
416176d54acSJohan Hovold	status = "okay";
417176d54acSJohan Hovold};
418176d54acSJohan Hovold
419123b30a7SJohan Hovold&pcie4 {
420123b30a7SJohan Hovold	perst-gpios = <&tlmm 141 GPIO_ACTIVE_LOW>;
421123b30a7SJohan Hovold	wake-gpios = <&tlmm 139 GPIO_ACTIVE_LOW>;
422123b30a7SJohan Hovold
423123b30a7SJohan Hovold	vddpe-3v3-supply = <&vreg_wlan>;
424123b30a7SJohan Hovold
425123b30a7SJohan Hovold	pinctrl-names = "default";
426123b30a7SJohan Hovold	pinctrl-0 = <&pcie4_default>;
427123b30a7SJohan Hovold
428123b30a7SJohan Hovold	status = "okay";
429123b30a7SJohan Hovold};
430123b30a7SJohan Hovold
431123b30a7SJohan Hovold&pcie4_phy {
432123b30a7SJohan Hovold	vdda-phy-supply = <&vreg_l6d>;
433123b30a7SJohan Hovold	vdda-pll-supply = <&vreg_l4d>;
434123b30a7SJohan Hovold
435123b30a7SJohan Hovold	status = "okay";
436123b30a7SJohan Hovold};
437123b30a7SJohan Hovold
43832c23138SJohan Hovold&pmc8280c_lpg {
43932c23138SJohan Hovold	status = "okay";
44032c23138SJohan Hovold};
44132c23138SJohan Hovold
4427c015134SManivannan Sadhasivam&pmk8280_adc_tm {
4437c015134SManivannan Sadhasivam	status = "okay";
4447c015134SManivannan Sadhasivam
4457c015134SManivannan Sadhasivam	sys-therm@0 {
4467c015134SManivannan Sadhasivam		reg = <0>;
4477c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM1_100K_PU(1)>;
4487c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
4497c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
4507c015134SManivannan Sadhasivam		qcom,ratiometric;
4517c015134SManivannan Sadhasivam	};
4527c015134SManivannan Sadhasivam
4537c015134SManivannan Sadhasivam	sys-therm@1 {
4547c015134SManivannan Sadhasivam		reg = <1>;
4557c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM2_100K_PU(1)>;
4567c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
4577c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
4587c015134SManivannan Sadhasivam		qcom,ratiometric;
4597c015134SManivannan Sadhasivam	};
4607c015134SManivannan Sadhasivam
4617c015134SManivannan Sadhasivam	sys-therm@2 {
4627c015134SManivannan Sadhasivam		reg = <2>;
4637c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM3_100K_PU(1)>;
4647c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
4657c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
4667c015134SManivannan Sadhasivam		qcom,ratiometric;
4677c015134SManivannan Sadhasivam	};
4687c015134SManivannan Sadhasivam
4697c015134SManivannan Sadhasivam	sys-therm@3 {
4707c015134SManivannan Sadhasivam		reg = <3>;
4717c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM4_100K_PU(1)>;
4727c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
4737c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
4747c015134SManivannan Sadhasivam		qcom,ratiometric;
4757c015134SManivannan Sadhasivam	};
4767c015134SManivannan Sadhasivam
4777c015134SManivannan Sadhasivam	sys-therm@4 {
4787c015134SManivannan Sadhasivam		reg = <4>;
4797c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM1_100K_PU(3)>;
4807c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
4817c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
4827c015134SManivannan Sadhasivam		qcom,ratiometric;
4837c015134SManivannan Sadhasivam	};
4847c015134SManivannan Sadhasivam
4857c015134SManivannan Sadhasivam	sys-therm@5 {
4867c015134SManivannan Sadhasivam		reg = <5>;
4877c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM2_100K_PU(3)>;
4887c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
4897c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
4907c015134SManivannan Sadhasivam		qcom,ratiometric;
4917c015134SManivannan Sadhasivam	};
4927c015134SManivannan Sadhasivam
4937c015134SManivannan Sadhasivam	sys-therm@6 {
4947c015134SManivannan Sadhasivam		reg = <6>;
4957c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM3_100K_PU(3)>;
4967c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
4977c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
4987c015134SManivannan Sadhasivam		qcom,ratiometric;
4997c015134SManivannan Sadhasivam	};
5007c015134SManivannan Sadhasivam
5017c015134SManivannan Sadhasivam	sys-therm@7 {
5027c015134SManivannan Sadhasivam		reg = <7>;
5037c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM4_100K_PU(3)>;
5047c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
5057c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
5067c015134SManivannan Sadhasivam		qcom,ratiometric;
5077c015134SManivannan Sadhasivam	};
5087c015134SManivannan Sadhasivam};
5097c015134SManivannan Sadhasivam
51032c23138SJohan Hovold&pmk8280_pon_pwrkey {
51132c23138SJohan Hovold	status = "okay";
51232c23138SJohan Hovold};
51332c23138SJohan Hovold
5147858c676SManivannan Sadhasivam&pmk8280_pon_resin {
5157858c676SManivannan Sadhasivam	status = "okay";
5167858c676SManivannan Sadhasivam};
5177858c676SManivannan Sadhasivam
5189a6b3042SManivannan Sadhasivam&pmk8280_vadc {
5199a6b3042SManivannan Sadhasivam	status = "okay";
5209a6b3042SManivannan Sadhasivam
5219a6b3042SManivannan Sadhasivam	pmic-die-temp@3 {
5229a6b3042SManivannan Sadhasivam		reg = <PMK8350_ADC7_DIE_TEMP>;
5239a6b3042SManivannan Sadhasivam		qcom,pre-scaling = <1 1>;
5249a6b3042SManivannan Sadhasivam	};
5259a6b3042SManivannan Sadhasivam
5269a6b3042SManivannan Sadhasivam	xo-therm@44 {
5279a6b3042SManivannan Sadhasivam		reg = <PMK8350_ADC7_AMUX_THM1_100K_PU>;
5289a6b3042SManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5299a6b3042SManivannan Sadhasivam		qcom,ratiometric;
5309a6b3042SManivannan Sadhasivam	};
5313375151aSManivannan Sadhasivam
5323375151aSManivannan Sadhasivam	pmic-die-temp@103 {
5333375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_DIE_TEMP(1)>;
5343375151aSManivannan Sadhasivam		qcom,pre-scaling = <1 1>;
5353375151aSManivannan Sadhasivam	};
5363375151aSManivannan Sadhasivam
5373375151aSManivannan Sadhasivam	sys-therm@144 {
5383375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM1_100K_PU(1)>;
5393375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5403375151aSManivannan Sadhasivam		qcom,ratiometric;
5413375151aSManivannan Sadhasivam	};
5423375151aSManivannan Sadhasivam
5433375151aSManivannan Sadhasivam	sys-therm@145 {
5443375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM2_100K_PU(1)>;
5453375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5463375151aSManivannan Sadhasivam		qcom,ratiometric;
5473375151aSManivannan Sadhasivam	};
5483375151aSManivannan Sadhasivam
5493375151aSManivannan Sadhasivam	sys-therm@146 {
5503375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM3_100K_PU(1)>;
5513375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5523375151aSManivannan Sadhasivam		qcom,ratiometric;
5533375151aSManivannan Sadhasivam	};
5543375151aSManivannan Sadhasivam
5553375151aSManivannan Sadhasivam	sys-therm@147 {
5563375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM4_100K_PU(1)>;
5573375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5583375151aSManivannan Sadhasivam		qcom,ratiometric;
5593375151aSManivannan Sadhasivam	};
5603375151aSManivannan Sadhasivam
5613375151aSManivannan Sadhasivam	pmic-die-temp@303 {
5623375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_DIE_TEMP(3)>;
5633375151aSManivannan Sadhasivam		qcom,pre-scaling = <1 1>;
5643375151aSManivannan Sadhasivam	};
5653375151aSManivannan Sadhasivam
5663375151aSManivannan Sadhasivam	sys-therm@344 {
5673375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM1_100K_PU(3)>;
5683375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5693375151aSManivannan Sadhasivam		qcom,ratiometric;
5703375151aSManivannan Sadhasivam	};
5713375151aSManivannan Sadhasivam
5723375151aSManivannan Sadhasivam	sys-therm@345 {
5733375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM2_100K_PU(3)>;
5743375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5753375151aSManivannan Sadhasivam		qcom,ratiometric;
5763375151aSManivannan Sadhasivam	};
5773375151aSManivannan Sadhasivam
5783375151aSManivannan Sadhasivam	sys-therm@346 {
5793375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM3_100K_PU(3)>;
5803375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5813375151aSManivannan Sadhasivam		qcom,ratiometric;
5823375151aSManivannan Sadhasivam	};
5833375151aSManivannan Sadhasivam
5843375151aSManivannan Sadhasivam	sys-therm@347 {
5853375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM4_100K_PU(3)>;
5863375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5873375151aSManivannan Sadhasivam		qcom,ratiometric;
5883375151aSManivannan Sadhasivam	};
5899d41cd17SManivannan Sadhasivam
5909d41cd17SManivannan Sadhasivam	pmic-die-temp@403 {
5919d41cd17SManivannan Sadhasivam		reg = <PMR735A_ADC7_DIE_TEMP>;
5929d41cd17SManivannan Sadhasivam		qcom,pre-scaling = <1 1>;
5939d41cd17SManivannan Sadhasivam	};
5949a6b3042SManivannan Sadhasivam};
5959a6b3042SManivannan Sadhasivam
59632c23138SJohan Hovold&qup0 {
59732c23138SJohan Hovold	status = "okay";
59832c23138SJohan Hovold};
59932c23138SJohan Hovold
60032c23138SJohan Hovold&qup0_i2c4 {
60132c23138SJohan Hovold	clock-frequency = <400000>;
60232c23138SJohan Hovold
60332c23138SJohan Hovold	pinctrl-names = "default";
60497cc7ab3SJohan Hovold	pinctrl-0 = <&qup0_i2c4_default>;
60532c23138SJohan Hovold
60632c23138SJohan Hovold	status = "okay";
60732c23138SJohan Hovold
60832c23138SJohan Hovold	/* FIXME: verify */
60932c23138SJohan Hovold	touchscreen@10 {
61032c23138SJohan Hovold		compatible = "hid-over-i2c";
61132c23138SJohan Hovold		reg = <0x10>;
61297cc7ab3SJohan Hovold
61332c23138SJohan Hovold		hid-descr-addr = <0x1>;
61432c23138SJohan Hovold		interrupts-extended = <&tlmm 175 IRQ_TYPE_LEVEL_LOW>;
61532c23138SJohan Hovold		vdd-supply = <&vreg_misc_3p3>;
61697cc7ab3SJohan Hovold
61797cc7ab3SJohan Hovold		pinctrl-names = "default";
61897cc7ab3SJohan Hovold		pinctrl-0 = <&ts0_default>;
61932c23138SJohan Hovold	};
62032c23138SJohan Hovold};
62132c23138SJohan Hovold
62232c23138SJohan Hovold&qup1 {
62332c23138SJohan Hovold	status = "okay";
62432c23138SJohan Hovold};
62532c23138SJohan Hovold
62632c23138SJohan Hovold&qup2 {
62732c23138SJohan Hovold	status = "okay";
62832c23138SJohan Hovold};
62932c23138SJohan Hovold
63032c23138SJohan Hovold&qup2_i2c5 {
63132c23138SJohan Hovold	clock-frequency = <400000>;
63232c23138SJohan Hovold
63332c23138SJohan Hovold	pinctrl-names = "default";
63497cc7ab3SJohan Hovold	pinctrl-0 = <&qup2_i2c5_default>;
63532c23138SJohan Hovold
63632c23138SJohan Hovold	status = "okay";
63732c23138SJohan Hovold
638ca1ce720SJohan Hovold	touchpad@15 {
639ca1ce720SJohan Hovold		compatible = "hid-over-i2c";
640ca1ce720SJohan Hovold		reg = <0x15>;
641ca1ce720SJohan Hovold
642ca1ce720SJohan Hovold		hid-descr-addr = <0x1>;
643ca1ce720SJohan Hovold		interrupts-extended = <&tlmm 182 IRQ_TYPE_LEVEL_LOW>;
644ca1ce720SJohan Hovold		vdd-supply = <&vreg_misc_3p3>;
645ca1ce720SJohan Hovold
646ca1ce720SJohan Hovold		pinctrl-names = "default";
647ca1ce720SJohan Hovold		pinctrl-0 = <&tpad_default>;
648ca1ce720SJohan Hovold
649ca1ce720SJohan Hovold		wakeup-source;
650ca1ce720SJohan Hovold
651ca1ce720SJohan Hovold		status = "disabled";
652ca1ce720SJohan Hovold	};
653ca1ce720SJohan Hovold
65432c23138SJohan Hovold	touchpad@2c {
65532c23138SJohan Hovold		compatible = "hid-over-i2c";
65632c23138SJohan Hovold		reg = <0x2c>;
65797cc7ab3SJohan Hovold
65832c23138SJohan Hovold		hid-descr-addr = <0x20>;
65932c23138SJohan Hovold		interrupts-extended = <&tlmm 182 IRQ_TYPE_LEVEL_LOW>;
66032c23138SJohan Hovold		vdd-supply = <&vreg_misc_3p3>;
66197cc7ab3SJohan Hovold
66297cc7ab3SJohan Hovold		pinctrl-names = "default";
66397cc7ab3SJohan Hovold		pinctrl-0 = <&tpad_default>;
66470934652SJohan Hovold
66570934652SJohan Hovold		wakeup-source;
66632c23138SJohan Hovold	};
66732c23138SJohan Hovold
66832c23138SJohan Hovold	keyboard@68 {
66932c23138SJohan Hovold		compatible = "hid-over-i2c";
67032c23138SJohan Hovold		reg = <0x68>;
67197cc7ab3SJohan Hovold
67232c23138SJohan Hovold		hid-descr-addr = <0x1>;
67332c23138SJohan Hovold		interrupts-extended = <&tlmm 104 IRQ_TYPE_LEVEL_LOW>;
67432c23138SJohan Hovold		vdd-supply = <&vreg_misc_3p3>;
67597cc7ab3SJohan Hovold
67697cc7ab3SJohan Hovold		pinctrl-names = "default";
67797cc7ab3SJohan Hovold		pinctrl-0 = <&kybd_default>;
67870934652SJohan Hovold
67970934652SJohan Hovold		wakeup-source;
68032c23138SJohan Hovold	};
68132c23138SJohan Hovold};
68232c23138SJohan Hovold
68332c23138SJohan Hovold&remoteproc_adsp {
68429f894ecSManivannan Sadhasivam	firmware-name = "qcom/sc8280xp/LENOVO/21BX/qcadsp8280.mbn";
68532c23138SJohan Hovold
68632c23138SJohan Hovold	status = "okay";
68732c23138SJohan Hovold};
68832c23138SJohan Hovold
68932c23138SJohan Hovold&remoteproc_nsp0 {
69029f894ecSManivannan Sadhasivam	firmware-name = "qcom/sc8280xp/LENOVO/21BX/qccdsp8280.mbn";
69132c23138SJohan Hovold
69232c23138SJohan Hovold	status = "okay";
69332c23138SJohan Hovold};
69432c23138SJohan Hovold
6956ded5ed6SJohan Hovold&rxmacro {
6966ded5ed6SJohan Hovold	status = "okay";
6976ded5ed6SJohan Hovold};
6986ded5ed6SJohan Hovold
699f29077d8SSrinivas Kandagatla&soc {
700f29077d8SSrinivas Kandagatla	wcd938x: codec {
701f29077d8SSrinivas Kandagatla		compatible = "qcom,wcd9380-codec";
702f29077d8SSrinivas Kandagatla		pinctrl-names = "default";
703f29077d8SSrinivas Kandagatla		pinctrl-0 = <&wcd_default>;
704f29077d8SSrinivas Kandagatla		reset-gpios = <&tlmm 106 GPIO_ACTIVE_LOW>;
705f29077d8SSrinivas Kandagatla		#sound-dai-cells = <1>;
706f29077d8SSrinivas Kandagatla
707f29077d8SSrinivas Kandagatla		vdd-buck-supply = <&vreg_s10b>;
708f29077d8SSrinivas Kandagatla		vdd-rxtx-supply = <&vreg_s10b>;
709f29077d8SSrinivas Kandagatla		vdd-io-supply = <&vreg_s10b>;
710f29077d8SSrinivas Kandagatla		vdd-mic-bias-supply = <&vreg_bob>;
711f29077d8SSrinivas Kandagatla		qcom,micbias1-microvolt = <1800000>;
712f29077d8SSrinivas Kandagatla		qcom,micbias2-microvolt = <1800000>;
713f29077d8SSrinivas Kandagatla		qcom,micbias3-microvolt = <1800000>;
714f29077d8SSrinivas Kandagatla		qcom,micbias4-microvolt = <1800000>;
715f29077d8SSrinivas Kandagatla		qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>;
716f29077d8SSrinivas Kandagatla		qcom,mbhc-headset-vthreshold-microvolt = <1700000>;
717f29077d8SSrinivas Kandagatla		qcom,mbhc-headphone-vthreshold-microvolt = <50000>;
718f29077d8SSrinivas Kandagatla		qcom,rx-device = <&wcd_rx>;
719f29077d8SSrinivas Kandagatla		qcom,tx-device = <&wcd_tx>;
720f29077d8SSrinivas Kandagatla	};
721f29077d8SSrinivas Kandagatla};
722f29077d8SSrinivas Kandagatla
723f29077d8SSrinivas Kandagatla&sound {
724f29077d8SSrinivas Kandagatla	compatible = "qcom,sc8280xp-sndcard";
725f29077d8SSrinivas Kandagatla	model = "SC8280XP-LENOVO-X13S";
726f29077d8SSrinivas Kandagatla	audio-routing =
727f29077d8SSrinivas Kandagatla		"SpkrLeft IN", "WSA_SPK1 OUT",
728f29077d8SSrinivas Kandagatla		"SpkrRight IN", "WSA_SPK2 OUT",
729f29077d8SSrinivas Kandagatla		"IN1_HPHL", "HPHL_OUT",
730f29077d8SSrinivas Kandagatla		"IN2_HPHR", "HPHR_OUT",
731f29077d8SSrinivas Kandagatla		"AMIC2", "MIC BIAS2",
732f29077d8SSrinivas Kandagatla		"VA DMIC0", "MIC BIAS1",
733f29077d8SSrinivas Kandagatla		"VA DMIC1", "MIC BIAS1",
734f29077d8SSrinivas Kandagatla		"VA DMIC2", "MIC BIAS3",
735f29077d8SSrinivas Kandagatla		"TX DMIC0", "MIC BIAS1",
736f29077d8SSrinivas Kandagatla		"TX DMIC1", "MIC BIAS2",
737f29077d8SSrinivas Kandagatla		"TX DMIC2", "MIC BIAS3",
738f29077d8SSrinivas Kandagatla		"TX SWR_ADC1", "ADC2_OUTPUT";
739f29077d8SSrinivas Kandagatla
740f29077d8SSrinivas Kandagatla	wcd-playback-dai-link {
741f29077d8SSrinivas Kandagatla		link-name = "WCD Playback";
742f29077d8SSrinivas Kandagatla		cpu {
743f29077d8SSrinivas Kandagatla			sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
744f29077d8SSrinivas Kandagatla		};
745f29077d8SSrinivas Kandagatla
746f29077d8SSrinivas Kandagatla		codec {
747f29077d8SSrinivas Kandagatla			sound-dai = <&wcd938x 0>, <&swr1 0>, <&rxmacro 0>;
748f29077d8SSrinivas Kandagatla		};
749f29077d8SSrinivas Kandagatla
750f29077d8SSrinivas Kandagatla		platform {
751f29077d8SSrinivas Kandagatla			sound-dai = <&q6apm>;
752f29077d8SSrinivas Kandagatla		};
753f29077d8SSrinivas Kandagatla	};
754f29077d8SSrinivas Kandagatla
755f29077d8SSrinivas Kandagatla	wcd-capture-dai-link {
756f29077d8SSrinivas Kandagatla		link-name = "WCD Capture";
757f29077d8SSrinivas Kandagatla		cpu {
758f29077d8SSrinivas Kandagatla			sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
759f29077d8SSrinivas Kandagatla		};
760f29077d8SSrinivas Kandagatla
761f29077d8SSrinivas Kandagatla		codec {
762f29077d8SSrinivas Kandagatla			sound-dai = <&wcd938x 1>, <&swr2 0>, <&txmacro 0>;
763f29077d8SSrinivas Kandagatla		};
764f29077d8SSrinivas Kandagatla
765f29077d8SSrinivas Kandagatla		platform {
766f29077d8SSrinivas Kandagatla			sound-dai = <&q6apm>;
767f29077d8SSrinivas Kandagatla		};
768f29077d8SSrinivas Kandagatla	};
769f29077d8SSrinivas Kandagatla
770f29077d8SSrinivas Kandagatla	wsa-dai-link {
771f29077d8SSrinivas Kandagatla		link-name = "WSA Playback";
772f29077d8SSrinivas Kandagatla		cpu {
773f29077d8SSrinivas Kandagatla			sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>;
774f29077d8SSrinivas Kandagatla		};
775f29077d8SSrinivas Kandagatla
776f29077d8SSrinivas Kandagatla		codec {
777f29077d8SSrinivas Kandagatla			sound-dai = <&left_spkr>, <&right_spkr>, <&swr0 0>, <&wsamacro 0>;
778f29077d8SSrinivas Kandagatla		};
779f29077d8SSrinivas Kandagatla
780f29077d8SSrinivas Kandagatla		platform {
781f29077d8SSrinivas Kandagatla			sound-dai = <&q6apm>;
782f29077d8SSrinivas Kandagatla		};
783f29077d8SSrinivas Kandagatla	};
784f29077d8SSrinivas Kandagatla
785f29077d8SSrinivas Kandagatla	va-dai-link {
786f29077d8SSrinivas Kandagatla		link-name = "VA Capture";
787f29077d8SSrinivas Kandagatla		cpu {
788f29077d8SSrinivas Kandagatla			sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
789f29077d8SSrinivas Kandagatla		};
790f29077d8SSrinivas Kandagatla
791f29077d8SSrinivas Kandagatla		platform {
792f29077d8SSrinivas Kandagatla			sound-dai = <&q6apm>;
793f29077d8SSrinivas Kandagatla		};
794f29077d8SSrinivas Kandagatla
795f29077d8SSrinivas Kandagatla		codec {
796f29077d8SSrinivas Kandagatla			sound-dai = <&vamacro 0>;
797f29077d8SSrinivas Kandagatla		};
798f29077d8SSrinivas Kandagatla	};
799f29077d8SSrinivas Kandagatla};
800f29077d8SSrinivas Kandagatla
801f29077d8SSrinivas Kandagatla&swr0 {
8026ded5ed6SJohan Hovold	status = "okay";
8036ded5ed6SJohan Hovold
804f29077d8SSrinivas Kandagatla	left_spkr: wsa8830-left@0,1 {
805f29077d8SSrinivas Kandagatla		compatible = "sdw10217020200";
806f29077d8SSrinivas Kandagatla		reg = <0 1>;
807f29077d8SSrinivas Kandagatla		pinctrl-names = "default";
808f29077d8SSrinivas Kandagatla		pinctrl-0 = <&spkr_1_sd_n_default>;
809f29077d8SSrinivas Kandagatla		powerdown-gpios = <&tlmm 178 GPIO_ACTIVE_LOW>;
810f29077d8SSrinivas Kandagatla		#thermal-sensor-cells = <0>;
811f29077d8SSrinivas Kandagatla		sound-name-prefix = "SpkrLeft";
812f29077d8SSrinivas Kandagatla		#sound-dai-cells = <0>;
813f29077d8SSrinivas Kandagatla		vdd-supply = <&vreg_s10b>;
814f29077d8SSrinivas Kandagatla	};
815f29077d8SSrinivas Kandagatla
816f29077d8SSrinivas Kandagatla	right_spkr: wsa8830-right@0,2 {
817f29077d8SSrinivas Kandagatla		compatible = "sdw10217020200";
818f29077d8SSrinivas Kandagatla		reg = <0 2>;
819f29077d8SSrinivas Kandagatla		pinctrl-names = "default";
820f29077d8SSrinivas Kandagatla		pinctrl-0 = <&spkr_2_sd_n_default>;
821f29077d8SSrinivas Kandagatla		powerdown-gpios = <&tlmm 179 GPIO_ACTIVE_LOW>;
822f29077d8SSrinivas Kandagatla		#thermal-sensor-cells = <0>;
823f29077d8SSrinivas Kandagatla		sound-name-prefix = "SpkrRight";
824f29077d8SSrinivas Kandagatla		#sound-dai-cells = <0>;
825f29077d8SSrinivas Kandagatla		vdd-supply = <&vreg_s10b>;
826f29077d8SSrinivas Kandagatla	};
827f29077d8SSrinivas Kandagatla};
828f29077d8SSrinivas Kandagatla
829f29077d8SSrinivas Kandagatla&swr1 {
830f29077d8SSrinivas Kandagatla	status = "okay";
831f29077d8SSrinivas Kandagatla
832f29077d8SSrinivas Kandagatla	wcd_rx: wcd9380-rx@0,4 {
833f29077d8SSrinivas Kandagatla		compatible = "sdw20217010d00";
834f29077d8SSrinivas Kandagatla		reg = <0 4>;
835f29077d8SSrinivas Kandagatla		qcom,rx-port-mapping = <1 2 3 4 5>;
836f29077d8SSrinivas Kandagatla	};
837f29077d8SSrinivas Kandagatla};
838f29077d8SSrinivas Kandagatla
839f29077d8SSrinivas Kandagatla&swr2 {
840f29077d8SSrinivas Kandagatla	status = "okay";
841f29077d8SSrinivas Kandagatla
842f29077d8SSrinivas Kandagatla	wcd_tx: wcd9380-tx@0,3 {
843f29077d8SSrinivas Kandagatla		compatible = "sdw20217010d00";
844f29077d8SSrinivas Kandagatla		reg = <0 3>;
845f29077d8SSrinivas Kandagatla		qcom,tx-port-mapping = <1 1 2 3>;
846f29077d8SSrinivas Kandagatla	};
847f29077d8SSrinivas Kandagatla};
848f29077d8SSrinivas Kandagatla
8496ded5ed6SJohan Hovold&txmacro {
8506ded5ed6SJohan Hovold	status = "okay";
8516ded5ed6SJohan Hovold};
8526ded5ed6SJohan Hovold
85332c23138SJohan Hovold&usb_0 {
85432c23138SJohan Hovold	status = "okay";
85532c23138SJohan Hovold};
85632c23138SJohan Hovold
85732c23138SJohan Hovold&usb_0_dwc3 {
85832c23138SJohan Hovold	/* TODO: Define USB-C connector properly */
85932c23138SJohan Hovold	dr_mode = "host";
86032c23138SJohan Hovold};
86132c23138SJohan Hovold
86232c23138SJohan Hovold&usb_0_hsphy {
86332c23138SJohan Hovold	vdda-pll-supply = <&vreg_l9d>;
86432c23138SJohan Hovold	vdda18-supply = <&vreg_l1c>;
86532c23138SJohan Hovold	vdda33-supply = <&vreg_l7d>;
86632c23138SJohan Hovold
86732c23138SJohan Hovold	status = "okay";
86832c23138SJohan Hovold};
86932c23138SJohan Hovold
87032c23138SJohan Hovold&usb_0_qmpphy {
87132c23138SJohan Hovold	vdda-phy-supply = <&vreg_l9d>;
87232c23138SJohan Hovold	vdda-pll-supply = <&vreg_l4d>;
87332c23138SJohan Hovold
87432c23138SJohan Hovold	status = "okay";
87532c23138SJohan Hovold};
87632c23138SJohan Hovold
87732c23138SJohan Hovold&usb_1 {
87832c23138SJohan Hovold	status = "okay";
87932c23138SJohan Hovold};
88032c23138SJohan Hovold
88132c23138SJohan Hovold&usb_1_dwc3 {
88232c23138SJohan Hovold	/* TODO: Define USB-C connector properly */
88332c23138SJohan Hovold	dr_mode = "host";
88432c23138SJohan Hovold};
88532c23138SJohan Hovold
88632c23138SJohan Hovold&usb_1_hsphy {
88732c23138SJohan Hovold	vdda-pll-supply = <&vreg_l4b>;
88832c23138SJohan Hovold	vdda18-supply = <&vreg_l1c>;
88932c23138SJohan Hovold	vdda33-supply = <&vreg_l13c>;
89032c23138SJohan Hovold
89132c23138SJohan Hovold	status = "okay";
89232c23138SJohan Hovold};
89332c23138SJohan Hovold
89432c23138SJohan Hovold&usb_1_qmpphy {
89532c23138SJohan Hovold	vdda-phy-supply = <&vreg_l4b>;
89632c23138SJohan Hovold	vdda-pll-supply = <&vreg_l3b>;
89732c23138SJohan Hovold
89832c23138SJohan Hovold	status = "okay";
89932c23138SJohan Hovold};
90032c23138SJohan Hovold
901*acf90614SJohan Hovold&vamacro {
902*acf90614SJohan Hovold	pinctrl-0 = <&dmic01_default>, <&dmic02_default>;
903*acf90614SJohan Hovold	pinctrl-names = "default";
904*acf90614SJohan Hovold
905*acf90614SJohan Hovold	vdd-micb-supply = <&vreg_s10b>;
906*acf90614SJohan Hovold
907*acf90614SJohan Hovold	qcom,dmic-sample-rate = <600000>;
908*acf90614SJohan Hovold
909*acf90614SJohan Hovold	status = "okay";
910*acf90614SJohan Hovold};
911*acf90614SJohan Hovold
9126ded5ed6SJohan Hovold&wsamacro {
9136ded5ed6SJohan Hovold	status = "okay";
9146ded5ed6SJohan Hovold};
9156ded5ed6SJohan Hovold
91632c23138SJohan Hovold&xo_board_clk {
91732c23138SJohan Hovold	clock-frequency = <38400000>;
91832c23138SJohan Hovold};
91932c23138SJohan Hovold
92032c23138SJohan Hovold/* PINCTRL */
92132c23138SJohan Hovold
9226ded5ed6SJohan Hovold&lpass_tlmm {
9236ded5ed6SJohan Hovold	status = "okay";
9246ded5ed6SJohan Hovold};
9256ded5ed6SJohan Hovold
92632c23138SJohan Hovold&pmc8280_1_gpios {
92732c23138SJohan Hovold	edp_bl_en: edp-bl-en-state {
92832c23138SJohan Hovold		pins = "gpio8";
92932c23138SJohan Hovold		function = "normal";
93032c23138SJohan Hovold	};
93132c23138SJohan Hovold
93232c23138SJohan Hovold	edp_bl_reg_en: edp-bl-reg-en-state {
93332c23138SJohan Hovold		pins = "gpio9";
93432c23138SJohan Hovold		function = "normal";
93532c23138SJohan Hovold	};
93632c23138SJohan Hovold
93732c23138SJohan Hovold	misc_3p3_reg_en: misc-3p3-reg-en-state {
93832c23138SJohan Hovold		pins = "gpio1";
93932c23138SJohan Hovold		function = "normal";
94032c23138SJohan Hovold	};
94132c23138SJohan Hovold};
94232c23138SJohan Hovold
943176d54acSJohan Hovold&pmc8280_2_gpios {
944176d54acSJohan Hovold	wwan_sw_en: wwan-sw-en-state {
945176d54acSJohan Hovold		pins = "gpio1";
946176d54acSJohan Hovold		function = "normal";
947176d54acSJohan Hovold	};
948176d54acSJohan Hovold};
949176d54acSJohan Hovold
95032c23138SJohan Hovold&pmc8280c_gpios {
95132c23138SJohan Hovold	edp_bl_pwm: edp-bl-pwm-state {
95232c23138SJohan Hovold		pins = "gpio8";
95332c23138SJohan Hovold		function = "func1";
95432c23138SJohan Hovold	};
95532c23138SJohan Hovold};
95632c23138SJohan Hovold
957123b30a7SJohan Hovold&pmr735a_gpios {
958123b30a7SJohan Hovold	hastings_reg_en: hastings-reg-en-state {
959123b30a7SJohan Hovold		pins = "gpio1";
960123b30a7SJohan Hovold		function = "normal";
961123b30a7SJohan Hovold	};
962123b30a7SJohan Hovold};
963123b30a7SJohan Hovold
96432c23138SJohan Hovold&tlmm {
96532c23138SJohan Hovold	gpio-reserved-ranges = <70 2>, <74 6>, <83 4>, <125 2>, <128 2>, <154 7>;
96632c23138SJohan Hovold
967f48c70b1SJohan Hovold	edp_reg_en: edp-reg-en-state {
968f48c70b1SJohan Hovold		pins = "gpio25";
969f48c70b1SJohan Hovold		function = "gpio";
970f48c70b1SJohan Hovold		drive-strength = <16>;
971f48c70b1SJohan Hovold		bias-disable;
972f48c70b1SJohan Hovold	};
973f48c70b1SJohan Hovold
974a607fe5eSBjorn Andersson	hall_int_n_default: hall-int-n-state {
975a607fe5eSBjorn Andersson		pins = "gpio107";
976a607fe5eSBjorn Andersson		function = "gpio";
977a607fe5eSBjorn Andersson		input-enable;
978a607fe5eSBjorn Andersson		bias-disable;
979a607fe5eSBjorn Andersson	};
980a607fe5eSBjorn Andersson
98132c23138SJohan Hovold	kybd_default: kybd-default-state {
98291c4431bSKrzysztof Kozlowski		disable-pins {
98332c23138SJohan Hovold			pins = "gpio102";
98432c23138SJohan Hovold			function = "gpio";
98532c23138SJohan Hovold			output-low;
98632c23138SJohan Hovold		};
98732c23138SJohan Hovold
98891c4431bSKrzysztof Kozlowski		int-n-pins {
98932c23138SJohan Hovold			pins = "gpio104";
99032c23138SJohan Hovold			function = "gpio";
99132c23138SJohan Hovold			bias-disable;
99232c23138SJohan Hovold		};
99332c23138SJohan Hovold
99491c4431bSKrzysztof Kozlowski		reset-pins {
99532c23138SJohan Hovold			pins = "gpio105";
99632c23138SJohan Hovold			function = "gpio";
99732c23138SJohan Hovold			bias-disable;
99832c23138SJohan Hovold		};
99932c23138SJohan Hovold	};
100032c23138SJohan Hovold
1001b4bb952eSJohan Hovold	nvme_reg_en: nvme-reg-en-state {
1002b4bb952eSJohan Hovold		pins = "gpio135";
1003b4bb952eSJohan Hovold		function = "gpio";
1004b4bb952eSJohan Hovold		drive-strength = <2>;
1005b4bb952eSJohan Hovold		bias-disable;
1006b4bb952eSJohan Hovold	};
1007b4bb952eSJohan Hovold
1008b4bb952eSJohan Hovold	pcie2a_default: pcie2a-default-state {
1009b4bb952eSJohan Hovold		clkreq-n-pins {
1010b4bb952eSJohan Hovold			pins = "gpio142";
1011b4bb952eSJohan Hovold			function = "pcie2a_clkreq";
1012b4bb952eSJohan Hovold			drive-strength = <2>;
1013b4bb952eSJohan Hovold			bias-pull-up;
1014b4bb952eSJohan Hovold		};
1015b4bb952eSJohan Hovold
1016b4bb952eSJohan Hovold		perst-n-pins {
1017b4bb952eSJohan Hovold			pins = "gpio143";
1018b4bb952eSJohan Hovold			function = "gpio";
1019b4bb952eSJohan Hovold			drive-strength = <2>;
1020b4bb952eSJohan Hovold			bias-pull-down;
1021b4bb952eSJohan Hovold		};
1022b4bb952eSJohan Hovold
1023b4bb952eSJohan Hovold		wake-n-pins {
1024b4bb952eSJohan Hovold		       pins = "gpio145";
1025b4bb952eSJohan Hovold		       function = "gpio";
1026b4bb952eSJohan Hovold		       drive-strength = <2>;
1027b4bb952eSJohan Hovold		       bias-pull-up;
1028b4bb952eSJohan Hovold	       };
1029b4bb952eSJohan Hovold	};
1030b4bb952eSJohan Hovold
1031176d54acSJohan Hovold	pcie3a_default: pcie3a-default-state {
1032176d54acSJohan Hovold		clkreq-n-pins {
1033176d54acSJohan Hovold			pins = "gpio150";
1034176d54acSJohan Hovold			function = "pcie3a_clkreq";
1035176d54acSJohan Hovold			drive-strength = <2>;
1036176d54acSJohan Hovold			bias-pull-up;
1037176d54acSJohan Hovold		};
1038176d54acSJohan Hovold
1039176d54acSJohan Hovold		perst-n-pins {
1040176d54acSJohan Hovold			pins = "gpio151";
1041176d54acSJohan Hovold			function = "gpio";
1042176d54acSJohan Hovold			drive-strength = <2>;
1043176d54acSJohan Hovold			bias-pull-down;
1044176d54acSJohan Hovold		};
1045176d54acSJohan Hovold
1046176d54acSJohan Hovold		wake-n-pins {
1047176d54acSJohan Hovold			pins = "gpio148";
1048176d54acSJohan Hovold			function = "gpio";
1049176d54acSJohan Hovold			drive-strength = <2>;
1050176d54acSJohan Hovold			bias-pull-up;
1051176d54acSJohan Hovold		};
1052176d54acSJohan Hovold	};
1053176d54acSJohan Hovold
1054123b30a7SJohan Hovold	pcie4_default: pcie4-default-state {
1055123b30a7SJohan Hovold		clkreq-n-pins {
1056123b30a7SJohan Hovold			pins = "gpio140";
1057123b30a7SJohan Hovold			function = "pcie4_clkreq";
1058123b30a7SJohan Hovold			drive-strength = <2>;
1059123b30a7SJohan Hovold			bias-pull-up;
1060123b30a7SJohan Hovold		};
1061123b30a7SJohan Hovold
1062123b30a7SJohan Hovold		perst-n-pins {
1063123b30a7SJohan Hovold			pins = "gpio141";
1064123b30a7SJohan Hovold			function = "gpio";
1065123b30a7SJohan Hovold			drive-strength = <2>;
1066123b30a7SJohan Hovold			bias-pull-down;
1067123b30a7SJohan Hovold		};
1068123b30a7SJohan Hovold
1069123b30a7SJohan Hovold		wake-n-pins {
1070123b30a7SJohan Hovold			pins = "gpio139";
1071123b30a7SJohan Hovold			function = "gpio";
1072123b30a7SJohan Hovold			drive-strength = <2>;
1073123b30a7SJohan Hovold			bias-pull-up;
1074123b30a7SJohan Hovold		};
1075123b30a7SJohan Hovold	};
1076123b30a7SJohan Hovold
107732c23138SJohan Hovold	qup0_i2c4_default: qup0-i2c4-default-state {
107832c23138SJohan Hovold		pins = "gpio171", "gpio172";
107932c23138SJohan Hovold		function = "qup4";
108032c23138SJohan Hovold		bias-disable;
108132c23138SJohan Hovold		drive-strength = <16>;
108232c23138SJohan Hovold	};
108332c23138SJohan Hovold
108432c23138SJohan Hovold	qup2_i2c5_default: qup2-i2c5-default-state {
108532c23138SJohan Hovold		pins = "gpio81", "gpio82";
108632c23138SJohan Hovold		function = "qup21";
108732c23138SJohan Hovold		bias-disable;
108832c23138SJohan Hovold		drive-strength = <16>;
108932c23138SJohan Hovold	};
109032c23138SJohan Hovold
1091f29077d8SSrinivas Kandagatla	spkr_1_sd_n_default: spkr-1-sd-n-default-state {
1092f29077d8SSrinivas Kandagatla		perst-n-pins {
1093f29077d8SSrinivas Kandagatla			pins = "gpio178";
1094f29077d8SSrinivas Kandagatla			function = "gpio";
1095f29077d8SSrinivas Kandagatla			drive-strength = <16>;
1096f29077d8SSrinivas Kandagatla			bias-disable;
1097f29077d8SSrinivas Kandagatla			output-high;
1098f29077d8SSrinivas Kandagatla		};
1099f29077d8SSrinivas Kandagatla	};
1100f29077d8SSrinivas Kandagatla
1101f29077d8SSrinivas Kandagatla	spkr_2_sd_n_default: spkr-2-sd-n-default-state {
1102f29077d8SSrinivas Kandagatla		perst-n-pins {
1103f29077d8SSrinivas Kandagatla			pins = "gpio179";
1104f29077d8SSrinivas Kandagatla			function = "gpio";
1105f29077d8SSrinivas Kandagatla			drive-strength = <16>;
1106f29077d8SSrinivas Kandagatla			bias-disable;
1107f29077d8SSrinivas Kandagatla			output-high;
1108f29077d8SSrinivas Kandagatla		};
1109f29077d8SSrinivas Kandagatla	};
1110f29077d8SSrinivas Kandagatla
111132c23138SJohan Hovold	tpad_default: tpad-default-state {
111291c4431bSKrzysztof Kozlowski		int-n-pins {
111332c23138SJohan Hovold			pins = "gpio182";
111432c23138SJohan Hovold			function = "gpio";
111532c23138SJohan Hovold			bias-disable;
111632c23138SJohan Hovold		};
111732c23138SJohan Hovold	};
111832c23138SJohan Hovold
111932c23138SJohan Hovold	ts0_default: ts0-default-state {
112091c4431bSKrzysztof Kozlowski		int-n-pins {
112132c23138SJohan Hovold			pins = "gpio175";
112232c23138SJohan Hovold			function = "gpio";
1123e11978deSJohan Hovold			bias-disable;
112432c23138SJohan Hovold		};
112532c23138SJohan Hovold
112691c4431bSKrzysztof Kozlowski		reset-n-pins {
112732c23138SJohan Hovold			pins = "gpio99";
112832c23138SJohan Hovold			function = "gpio";
112932c23138SJohan Hovold			output-high;
113032c23138SJohan Hovold			drive-strength = <16>;
113132c23138SJohan Hovold		};
113232c23138SJohan Hovold	};
1133f29077d8SSrinivas Kandagatla
1134f29077d8SSrinivas Kandagatla	wcd_default: wcd-default-state {
1135f29077d8SSrinivas Kandagatla		reset-pins {
1136f29077d8SSrinivas Kandagatla			pins = "gpio106";
1137f29077d8SSrinivas Kandagatla			function = "gpio";
1138f29077d8SSrinivas Kandagatla			bias-disable;
1139f29077d8SSrinivas Kandagatla		};
1140f29077d8SSrinivas Kandagatla	};
114132c23138SJohan Hovold};
1142