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*f48c70b1SJohan 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
49*f48c70b1SJohan Hovold	vreg_edp_3p3: regulator-edp-3p3 {
50*f48c70b1SJohan Hovold		compatible = "regulator-fixed";
51*f48c70b1SJohan Hovold
52*f48c70b1SJohan Hovold		regulator-name = "VCC3LCD";
53*f48c70b1SJohan Hovold		regulator-min-microvolt = <3300000>;
54*f48c70b1SJohan Hovold		regulator-max-microvolt = <3300000>;
55*f48c70b1SJohan Hovold
56*f48c70b1SJohan Hovold		gpio = <&tlmm 25 GPIO_ACTIVE_HIGH>;
57*f48c70b1SJohan Hovold		enable-active-high;
58*f48c70b1SJohan Hovold
59*f48c70b1SJohan Hovold		pinctrl-names = "default";
60*f48c70b1SJohan Hovold		pinctrl-0 = <&edp_reg_en>;
61*f48c70b1SJohan Hovold
62*f48c70b1SJohan Hovold		regulator-boot-on;
63*f48c70b1SJohan Hovold	};
64*f48c70b1SJohan 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
332*f48c70b1SJohan Hovold&dispcc0 {
333*f48c70b1SJohan Hovold	status = "okay";
334*f48c70b1SJohan Hovold};
335*f48c70b1SJohan Hovold
336*f48c70b1SJohan Hovold&mdss0 {
337*f48c70b1SJohan Hovold	status = "okay";
338*f48c70b1SJohan Hovold};
339*f48c70b1SJohan Hovold
340*f48c70b1SJohan Hovold&mdss0_dp3 {
341*f48c70b1SJohan Hovold	compatible = "qcom,sc8280xp-edp";
342*f48c70b1SJohan Hovold
343*f48c70b1SJohan Hovold	data-lanes = <0 1 2 3>;
344*f48c70b1SJohan Hovold
345*f48c70b1SJohan Hovold	status = "okay";
346*f48c70b1SJohan Hovold
347*f48c70b1SJohan Hovold	aux-bus {
348*f48c70b1SJohan Hovold		panel {
349*f48c70b1SJohan Hovold			compatible = "edp-panel";
350*f48c70b1SJohan Hovold
351*f48c70b1SJohan Hovold			backlight = <&backlight>;
352*f48c70b1SJohan Hovold			power-supply = <&vreg_edp_3p3>;
353*f48c70b1SJohan Hovold
354*f48c70b1SJohan Hovold			ports {
355*f48c70b1SJohan Hovold				port {
356*f48c70b1SJohan Hovold					edp_panel_in: endpoint {
357*f48c70b1SJohan Hovold						remote-endpoint = <&mdss0_dp3_out>;
358*f48c70b1SJohan Hovold					};
359*f48c70b1SJohan Hovold				};
360*f48c70b1SJohan Hovold			};
361*f48c70b1SJohan Hovold		};
362*f48c70b1SJohan Hovold	};
363*f48c70b1SJohan Hovold
364*f48c70b1SJohan Hovold	ports {
365*f48c70b1SJohan Hovold		port@1 {
366*f48c70b1SJohan Hovold			reg = <1>;
367*f48c70b1SJohan Hovold			mdss0_dp3_out: endpoint {
368*f48c70b1SJohan Hovold				remote-endpoint = <&edp_panel_in>;
369*f48c70b1SJohan Hovold			};
370*f48c70b1SJohan Hovold		};
371*f48c70b1SJohan Hovold	};
372*f48c70b1SJohan Hovold};
373*f48c70b1SJohan Hovold
374*f48c70b1SJohan Hovold&mdss0_dp3_phy {
375*f48c70b1SJohan Hovold	vdda-phy-supply = <&vreg_l6b>;
376*f48c70b1SJohan Hovold	vdda-pll-supply = <&vreg_l3b>;
377*f48c70b1SJohan Hovold
378*f48c70b1SJohan Hovold	status = "okay";
379*f48c70b1SJohan Hovold};
380*f48c70b1SJohan 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
695f29077d8SSrinivas Kandagatla&soc {
696f29077d8SSrinivas Kandagatla	wcd938x: codec {
697f29077d8SSrinivas Kandagatla		compatible = "qcom,wcd9380-codec";
698f29077d8SSrinivas Kandagatla		pinctrl-names = "default";
699f29077d8SSrinivas Kandagatla		pinctrl-0 = <&wcd_default>;
700f29077d8SSrinivas Kandagatla		reset-gpios = <&tlmm 106 GPIO_ACTIVE_LOW>;
701f29077d8SSrinivas Kandagatla		#sound-dai-cells = <1>;
702f29077d8SSrinivas Kandagatla
703f29077d8SSrinivas Kandagatla		vdd-buck-supply = <&vreg_s10b>;
704f29077d8SSrinivas Kandagatla		vdd-rxtx-supply = <&vreg_s10b>;
705f29077d8SSrinivas Kandagatla		vdd-io-supply = <&vreg_s10b>;
706f29077d8SSrinivas Kandagatla		vdd-mic-bias-supply = <&vreg_bob>;
707f29077d8SSrinivas Kandagatla		qcom,micbias1-microvolt = <1800000>;
708f29077d8SSrinivas Kandagatla		qcom,micbias2-microvolt = <1800000>;
709f29077d8SSrinivas Kandagatla		qcom,micbias3-microvolt = <1800000>;
710f29077d8SSrinivas Kandagatla		qcom,micbias4-microvolt = <1800000>;
711f29077d8SSrinivas Kandagatla		qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>;
712f29077d8SSrinivas Kandagatla		qcom,mbhc-headset-vthreshold-microvolt = <1700000>;
713f29077d8SSrinivas Kandagatla		qcom,mbhc-headphone-vthreshold-microvolt = <50000>;
714f29077d8SSrinivas Kandagatla		qcom,rx-device = <&wcd_rx>;
715f29077d8SSrinivas Kandagatla		qcom,tx-device = <&wcd_tx>;
716f29077d8SSrinivas Kandagatla	};
717f29077d8SSrinivas Kandagatla};
718f29077d8SSrinivas Kandagatla
719f29077d8SSrinivas Kandagatla&sound {
720f29077d8SSrinivas Kandagatla	compatible = "qcom,sc8280xp-sndcard";
721f29077d8SSrinivas Kandagatla	model = "SC8280XP-LENOVO-X13S";
722f29077d8SSrinivas Kandagatla	audio-routing =
723f29077d8SSrinivas Kandagatla		"SpkrLeft IN", "WSA_SPK1 OUT",
724f29077d8SSrinivas Kandagatla		"SpkrRight IN", "WSA_SPK2 OUT",
725f29077d8SSrinivas Kandagatla		"IN1_HPHL", "HPHL_OUT",
726f29077d8SSrinivas Kandagatla		"IN2_HPHR", "HPHR_OUT",
727f29077d8SSrinivas Kandagatla		"AMIC2", "MIC BIAS2",
728f29077d8SSrinivas Kandagatla		"VA DMIC0", "MIC BIAS1",
729f29077d8SSrinivas Kandagatla		"VA DMIC1", "MIC BIAS1",
730f29077d8SSrinivas Kandagatla		"VA DMIC2", "MIC BIAS3",
731f29077d8SSrinivas Kandagatla		"TX DMIC0", "MIC BIAS1",
732f29077d8SSrinivas Kandagatla		"TX DMIC1", "MIC BIAS2",
733f29077d8SSrinivas Kandagatla		"TX DMIC2", "MIC BIAS3",
734f29077d8SSrinivas Kandagatla		"TX SWR_ADC1", "ADC2_OUTPUT";
735f29077d8SSrinivas Kandagatla
736f29077d8SSrinivas Kandagatla	wcd-playback-dai-link {
737f29077d8SSrinivas Kandagatla		link-name = "WCD Playback";
738f29077d8SSrinivas Kandagatla		cpu {
739f29077d8SSrinivas Kandagatla			sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
740f29077d8SSrinivas Kandagatla		};
741f29077d8SSrinivas Kandagatla
742f29077d8SSrinivas Kandagatla		codec {
743f29077d8SSrinivas Kandagatla			sound-dai = <&wcd938x 0>, <&swr1 0>, <&rxmacro 0>;
744f29077d8SSrinivas Kandagatla		};
745f29077d8SSrinivas Kandagatla
746f29077d8SSrinivas Kandagatla		platform {
747f29077d8SSrinivas Kandagatla			sound-dai = <&q6apm>;
748f29077d8SSrinivas Kandagatla		};
749f29077d8SSrinivas Kandagatla	};
750f29077d8SSrinivas Kandagatla
751f29077d8SSrinivas Kandagatla	wcd-capture-dai-link {
752f29077d8SSrinivas Kandagatla		link-name = "WCD Capture";
753f29077d8SSrinivas Kandagatla		cpu {
754f29077d8SSrinivas Kandagatla			sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
755f29077d8SSrinivas Kandagatla		};
756f29077d8SSrinivas Kandagatla
757f29077d8SSrinivas Kandagatla		codec {
758f29077d8SSrinivas Kandagatla			sound-dai = <&wcd938x 1>, <&swr2 0>, <&txmacro 0>;
759f29077d8SSrinivas Kandagatla		};
760f29077d8SSrinivas Kandagatla
761f29077d8SSrinivas Kandagatla		platform {
762f29077d8SSrinivas Kandagatla			sound-dai = <&q6apm>;
763f29077d8SSrinivas Kandagatla		};
764f29077d8SSrinivas Kandagatla	};
765f29077d8SSrinivas Kandagatla
766f29077d8SSrinivas Kandagatla	wsa-dai-link {
767f29077d8SSrinivas Kandagatla		link-name = "WSA Playback";
768f29077d8SSrinivas Kandagatla		cpu {
769f29077d8SSrinivas Kandagatla			sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>;
770f29077d8SSrinivas Kandagatla		};
771f29077d8SSrinivas Kandagatla
772f29077d8SSrinivas Kandagatla		codec {
773f29077d8SSrinivas Kandagatla			sound-dai = <&left_spkr>, <&right_spkr>, <&swr0 0>, <&wsamacro 0>;
774f29077d8SSrinivas Kandagatla		};
775f29077d8SSrinivas Kandagatla
776f29077d8SSrinivas Kandagatla		platform {
777f29077d8SSrinivas Kandagatla			sound-dai = <&q6apm>;
778f29077d8SSrinivas Kandagatla		};
779f29077d8SSrinivas Kandagatla	};
780f29077d8SSrinivas Kandagatla
781f29077d8SSrinivas Kandagatla	va-dai-link {
782f29077d8SSrinivas Kandagatla		link-name = "VA Capture";
783f29077d8SSrinivas Kandagatla		cpu {
784f29077d8SSrinivas Kandagatla			sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
785f29077d8SSrinivas Kandagatla		};
786f29077d8SSrinivas Kandagatla
787f29077d8SSrinivas Kandagatla		platform {
788f29077d8SSrinivas Kandagatla			sound-dai = <&q6apm>;
789f29077d8SSrinivas Kandagatla		};
790f29077d8SSrinivas Kandagatla
791f29077d8SSrinivas Kandagatla		codec {
792f29077d8SSrinivas Kandagatla			sound-dai = <&vamacro 0>;
793f29077d8SSrinivas Kandagatla		};
794f29077d8SSrinivas Kandagatla	};
795f29077d8SSrinivas Kandagatla};
796f29077d8SSrinivas Kandagatla
797f29077d8SSrinivas Kandagatla&swr0 {
798f29077d8SSrinivas Kandagatla	left_spkr: wsa8830-left@0,1 {
799f29077d8SSrinivas Kandagatla		compatible = "sdw10217020200";
800f29077d8SSrinivas Kandagatla		reg = <0 1>;
801f29077d8SSrinivas Kandagatla		pinctrl-names = "default";
802f29077d8SSrinivas Kandagatla		pinctrl-0 = <&spkr_1_sd_n_default>;
803f29077d8SSrinivas Kandagatla		powerdown-gpios = <&tlmm 178 GPIO_ACTIVE_LOW>;
804f29077d8SSrinivas Kandagatla		#thermal-sensor-cells = <0>;
805f29077d8SSrinivas Kandagatla		sound-name-prefix = "SpkrLeft";
806f29077d8SSrinivas Kandagatla		#sound-dai-cells = <0>;
807f29077d8SSrinivas Kandagatla		vdd-supply = <&vreg_s10b>;
808f29077d8SSrinivas Kandagatla	};
809f29077d8SSrinivas Kandagatla
810f29077d8SSrinivas Kandagatla	right_spkr: wsa8830-right@0,2 {
811f29077d8SSrinivas Kandagatla		compatible = "sdw10217020200";
812f29077d8SSrinivas Kandagatla		reg = <0 2>;
813f29077d8SSrinivas Kandagatla		pinctrl-names = "default";
814f29077d8SSrinivas Kandagatla		pinctrl-0 = <&spkr_2_sd_n_default>;
815f29077d8SSrinivas Kandagatla		powerdown-gpios = <&tlmm 179 GPIO_ACTIVE_LOW>;
816f29077d8SSrinivas Kandagatla		#thermal-sensor-cells = <0>;
817f29077d8SSrinivas Kandagatla		sound-name-prefix = "SpkrRight";
818f29077d8SSrinivas Kandagatla		#sound-dai-cells = <0>;
819f29077d8SSrinivas Kandagatla		vdd-supply = <&vreg_s10b>;
820f29077d8SSrinivas Kandagatla	};
821f29077d8SSrinivas Kandagatla};
822f29077d8SSrinivas Kandagatla
823f29077d8SSrinivas Kandagatla&swr1 {
824f29077d8SSrinivas Kandagatla	status = "okay";
825f29077d8SSrinivas Kandagatla
826f29077d8SSrinivas Kandagatla	wcd_rx: wcd9380-rx@0,4 {
827f29077d8SSrinivas Kandagatla		compatible = "sdw20217010d00";
828f29077d8SSrinivas Kandagatla		reg = <0 4>;
829f29077d8SSrinivas Kandagatla		qcom,rx-port-mapping = <1 2 3 4 5>;
830f29077d8SSrinivas Kandagatla	};
831f29077d8SSrinivas Kandagatla};
832f29077d8SSrinivas Kandagatla
833f29077d8SSrinivas Kandagatla&swr2 {
834f29077d8SSrinivas Kandagatla	status = "okay";
835f29077d8SSrinivas Kandagatla
836f29077d8SSrinivas Kandagatla	wcd_tx: wcd9380-tx@0,3 {
837f29077d8SSrinivas Kandagatla		compatible = "sdw20217010d00";
838f29077d8SSrinivas Kandagatla		reg = <0 3>;
839f29077d8SSrinivas Kandagatla		qcom,tx-port-mapping = <1 1 2 3>;
840f29077d8SSrinivas Kandagatla	};
841f29077d8SSrinivas Kandagatla};
842f29077d8SSrinivas Kandagatla
843f29077d8SSrinivas Kandagatla&vamacro {
844f29077d8SSrinivas Kandagatla	pinctrl-0 = <&dmic01_default>, <&dmic02_default>;
845f29077d8SSrinivas Kandagatla	pinctrl-names = "default";
846f29077d8SSrinivas Kandagatla	vdd-micb-supply = <&vreg_s10b>;
847f29077d8SSrinivas Kandagatla	qcom,dmic-sample-rate = <600000>;
848f29077d8SSrinivas Kandagatla};
849f29077d8SSrinivas Kandagatla
85032c23138SJohan Hovold&usb_0 {
85132c23138SJohan Hovold	status = "okay";
85232c23138SJohan Hovold};
85332c23138SJohan Hovold
85432c23138SJohan Hovold&usb_0_dwc3 {
85532c23138SJohan Hovold	/* TODO: Define USB-C connector properly */
85632c23138SJohan Hovold	dr_mode = "host";
85732c23138SJohan Hovold};
85832c23138SJohan Hovold
85932c23138SJohan Hovold&usb_0_hsphy {
86032c23138SJohan Hovold	vdda-pll-supply = <&vreg_l9d>;
86132c23138SJohan Hovold	vdda18-supply = <&vreg_l1c>;
86232c23138SJohan Hovold	vdda33-supply = <&vreg_l7d>;
86332c23138SJohan Hovold
86432c23138SJohan Hovold	status = "okay";
86532c23138SJohan Hovold};
86632c23138SJohan Hovold
86732c23138SJohan Hovold&usb_0_qmpphy {
86832c23138SJohan Hovold	vdda-phy-supply = <&vreg_l9d>;
86932c23138SJohan Hovold	vdda-pll-supply = <&vreg_l4d>;
87032c23138SJohan Hovold
87132c23138SJohan Hovold	status = "okay";
87232c23138SJohan Hovold};
87332c23138SJohan Hovold
87432c23138SJohan Hovold&usb_1 {
87532c23138SJohan Hovold	status = "okay";
87632c23138SJohan Hovold};
87732c23138SJohan Hovold
87832c23138SJohan Hovold&usb_1_dwc3 {
87932c23138SJohan Hovold	/* TODO: Define USB-C connector properly */
88032c23138SJohan Hovold	dr_mode = "host";
88132c23138SJohan Hovold};
88232c23138SJohan Hovold
88332c23138SJohan Hovold&usb_1_hsphy {
88432c23138SJohan Hovold	vdda-pll-supply = <&vreg_l4b>;
88532c23138SJohan Hovold	vdda18-supply = <&vreg_l1c>;
88632c23138SJohan Hovold	vdda33-supply = <&vreg_l13c>;
88732c23138SJohan Hovold
88832c23138SJohan Hovold	status = "okay";
88932c23138SJohan Hovold};
89032c23138SJohan Hovold
89132c23138SJohan Hovold&usb_1_qmpphy {
89232c23138SJohan Hovold	vdda-phy-supply = <&vreg_l4b>;
89332c23138SJohan Hovold	vdda-pll-supply = <&vreg_l3b>;
89432c23138SJohan Hovold
89532c23138SJohan Hovold	status = "okay";
89632c23138SJohan Hovold};
89732c23138SJohan Hovold
89832c23138SJohan Hovold&xo_board_clk {
89932c23138SJohan Hovold	clock-frequency = <38400000>;
90032c23138SJohan Hovold};
90132c23138SJohan Hovold
90232c23138SJohan Hovold/* PINCTRL */
90332c23138SJohan Hovold
90432c23138SJohan Hovold&pmc8280_1_gpios {
90532c23138SJohan Hovold	edp_bl_en: edp-bl-en-state {
90632c23138SJohan Hovold		pins = "gpio8";
90732c23138SJohan Hovold		function = "normal";
90832c23138SJohan Hovold	};
90932c23138SJohan Hovold
91032c23138SJohan Hovold	edp_bl_reg_en: edp-bl-reg-en-state {
91132c23138SJohan Hovold		pins = "gpio9";
91232c23138SJohan Hovold		function = "normal";
91332c23138SJohan Hovold	};
91432c23138SJohan Hovold
91532c23138SJohan Hovold	misc_3p3_reg_en: misc-3p3-reg-en-state {
91632c23138SJohan Hovold		pins = "gpio1";
91732c23138SJohan Hovold		function = "normal";
91832c23138SJohan Hovold	};
91932c23138SJohan Hovold};
92032c23138SJohan Hovold
921176d54acSJohan Hovold&pmc8280_2_gpios {
922176d54acSJohan Hovold	wwan_sw_en: wwan-sw-en-state {
923176d54acSJohan Hovold		pins = "gpio1";
924176d54acSJohan Hovold		function = "normal";
925176d54acSJohan Hovold	};
926176d54acSJohan Hovold};
927176d54acSJohan Hovold
92832c23138SJohan Hovold&pmc8280c_gpios {
92932c23138SJohan Hovold	edp_bl_pwm: edp-bl-pwm-state {
93032c23138SJohan Hovold		pins = "gpio8";
93132c23138SJohan Hovold		function = "func1";
93232c23138SJohan Hovold	};
93332c23138SJohan Hovold};
93432c23138SJohan Hovold
935123b30a7SJohan Hovold&pmr735a_gpios {
936123b30a7SJohan Hovold	hastings_reg_en: hastings-reg-en-state {
937123b30a7SJohan Hovold		pins = "gpio1";
938123b30a7SJohan Hovold		function = "normal";
939123b30a7SJohan Hovold	};
940123b30a7SJohan Hovold};
941123b30a7SJohan Hovold
94232c23138SJohan Hovold&tlmm {
94332c23138SJohan Hovold	gpio-reserved-ranges = <70 2>, <74 6>, <83 4>, <125 2>, <128 2>, <154 7>;
94432c23138SJohan Hovold
945*f48c70b1SJohan Hovold	edp_reg_en: edp-reg-en-state {
946*f48c70b1SJohan Hovold		pins = "gpio25";
947*f48c70b1SJohan Hovold		function = "gpio";
948*f48c70b1SJohan Hovold		drive-strength = <16>;
949*f48c70b1SJohan Hovold		bias-disable;
950*f48c70b1SJohan Hovold	};
951*f48c70b1SJohan Hovold
952a607fe5eSBjorn Andersson	hall_int_n_default: hall-int-n-state {
953a607fe5eSBjorn Andersson		pins = "gpio107";
954a607fe5eSBjorn Andersson		function = "gpio";
955a607fe5eSBjorn Andersson		input-enable;
956a607fe5eSBjorn Andersson		bias-disable;
957a607fe5eSBjorn Andersson	};
958a607fe5eSBjorn Andersson
95932c23138SJohan Hovold	kybd_default: kybd-default-state {
96091c4431bSKrzysztof Kozlowski		disable-pins {
96132c23138SJohan Hovold			pins = "gpio102";
96232c23138SJohan Hovold			function = "gpio";
96332c23138SJohan Hovold			output-low;
96432c23138SJohan Hovold		};
96532c23138SJohan Hovold
96691c4431bSKrzysztof Kozlowski		int-n-pins {
96732c23138SJohan Hovold			pins = "gpio104";
96832c23138SJohan Hovold			function = "gpio";
96932c23138SJohan Hovold			bias-disable;
97032c23138SJohan Hovold		};
97132c23138SJohan Hovold
97291c4431bSKrzysztof Kozlowski		reset-pins {
97332c23138SJohan Hovold			pins = "gpio105";
97432c23138SJohan Hovold			function = "gpio";
97532c23138SJohan Hovold			bias-disable;
97632c23138SJohan Hovold		};
97732c23138SJohan Hovold	};
97832c23138SJohan Hovold
979b4bb952eSJohan Hovold	nvme_reg_en: nvme-reg-en-state {
980b4bb952eSJohan Hovold		pins = "gpio135";
981b4bb952eSJohan Hovold		function = "gpio";
982b4bb952eSJohan Hovold		drive-strength = <2>;
983b4bb952eSJohan Hovold		bias-disable;
984b4bb952eSJohan Hovold	};
985b4bb952eSJohan Hovold
986b4bb952eSJohan Hovold	pcie2a_default: pcie2a-default-state {
987b4bb952eSJohan Hovold		clkreq-n-pins {
988b4bb952eSJohan Hovold			pins = "gpio142";
989b4bb952eSJohan Hovold			function = "pcie2a_clkreq";
990b4bb952eSJohan Hovold			drive-strength = <2>;
991b4bb952eSJohan Hovold			bias-pull-up;
992b4bb952eSJohan Hovold		};
993b4bb952eSJohan Hovold
994b4bb952eSJohan Hovold		perst-n-pins {
995b4bb952eSJohan Hovold			pins = "gpio143";
996b4bb952eSJohan Hovold			function = "gpio";
997b4bb952eSJohan Hovold			drive-strength = <2>;
998b4bb952eSJohan Hovold			bias-pull-down;
999b4bb952eSJohan Hovold		};
1000b4bb952eSJohan Hovold
1001b4bb952eSJohan Hovold		wake-n-pins {
1002b4bb952eSJohan Hovold		       pins = "gpio145";
1003b4bb952eSJohan Hovold		       function = "gpio";
1004b4bb952eSJohan Hovold		       drive-strength = <2>;
1005b4bb952eSJohan Hovold		       bias-pull-up;
1006b4bb952eSJohan Hovold	       };
1007b4bb952eSJohan Hovold	};
1008b4bb952eSJohan Hovold
1009176d54acSJohan Hovold	pcie3a_default: pcie3a-default-state {
1010176d54acSJohan Hovold		clkreq-n-pins {
1011176d54acSJohan Hovold			pins = "gpio150";
1012176d54acSJohan Hovold			function = "pcie3a_clkreq";
1013176d54acSJohan Hovold			drive-strength = <2>;
1014176d54acSJohan Hovold			bias-pull-up;
1015176d54acSJohan Hovold		};
1016176d54acSJohan Hovold
1017176d54acSJohan Hovold		perst-n-pins {
1018176d54acSJohan Hovold			pins = "gpio151";
1019176d54acSJohan Hovold			function = "gpio";
1020176d54acSJohan Hovold			drive-strength = <2>;
1021176d54acSJohan Hovold			bias-pull-down;
1022176d54acSJohan Hovold		};
1023176d54acSJohan Hovold
1024176d54acSJohan Hovold		wake-n-pins {
1025176d54acSJohan Hovold			pins = "gpio148";
1026176d54acSJohan Hovold			function = "gpio";
1027176d54acSJohan Hovold			drive-strength = <2>;
1028176d54acSJohan Hovold			bias-pull-up;
1029176d54acSJohan Hovold		};
1030176d54acSJohan Hovold	};
1031176d54acSJohan Hovold
1032123b30a7SJohan Hovold	pcie4_default: pcie4-default-state {
1033123b30a7SJohan Hovold		clkreq-n-pins {
1034123b30a7SJohan Hovold			pins = "gpio140";
1035123b30a7SJohan Hovold			function = "pcie4_clkreq";
1036123b30a7SJohan Hovold			drive-strength = <2>;
1037123b30a7SJohan Hovold			bias-pull-up;
1038123b30a7SJohan Hovold		};
1039123b30a7SJohan Hovold
1040123b30a7SJohan Hovold		perst-n-pins {
1041123b30a7SJohan Hovold			pins = "gpio141";
1042123b30a7SJohan Hovold			function = "gpio";
1043123b30a7SJohan Hovold			drive-strength = <2>;
1044123b30a7SJohan Hovold			bias-pull-down;
1045123b30a7SJohan Hovold		};
1046123b30a7SJohan Hovold
1047123b30a7SJohan Hovold		wake-n-pins {
1048123b30a7SJohan Hovold			pins = "gpio139";
1049123b30a7SJohan Hovold			function = "gpio";
1050123b30a7SJohan Hovold			drive-strength = <2>;
1051123b30a7SJohan Hovold			bias-pull-up;
1052123b30a7SJohan Hovold		};
1053123b30a7SJohan Hovold	};
1054123b30a7SJohan Hovold
105532c23138SJohan Hovold	qup0_i2c4_default: qup0-i2c4-default-state {
105632c23138SJohan Hovold		pins = "gpio171", "gpio172";
105732c23138SJohan Hovold		function = "qup4";
105832c23138SJohan Hovold		bias-disable;
105932c23138SJohan Hovold		drive-strength = <16>;
106032c23138SJohan Hovold	};
106132c23138SJohan Hovold
106232c23138SJohan Hovold	qup2_i2c5_default: qup2-i2c5-default-state {
106332c23138SJohan Hovold		pins = "gpio81", "gpio82";
106432c23138SJohan Hovold		function = "qup21";
106532c23138SJohan Hovold		bias-disable;
106632c23138SJohan Hovold		drive-strength = <16>;
106732c23138SJohan Hovold	};
106832c23138SJohan Hovold
1069f29077d8SSrinivas Kandagatla	spkr_1_sd_n_default: spkr-1-sd-n-default-state {
1070f29077d8SSrinivas Kandagatla		perst-n-pins {
1071f29077d8SSrinivas Kandagatla			pins = "gpio178";
1072f29077d8SSrinivas Kandagatla			function = "gpio";
1073f29077d8SSrinivas Kandagatla			drive-strength = <16>;
1074f29077d8SSrinivas Kandagatla			bias-disable;
1075f29077d8SSrinivas Kandagatla			output-high;
1076f29077d8SSrinivas Kandagatla		};
1077f29077d8SSrinivas Kandagatla	};
1078f29077d8SSrinivas Kandagatla
1079f29077d8SSrinivas Kandagatla	spkr_2_sd_n_default: spkr-2-sd-n-default-state {
1080f29077d8SSrinivas Kandagatla		perst-n-pins {
1081f29077d8SSrinivas Kandagatla			pins = "gpio179";
1082f29077d8SSrinivas Kandagatla			function = "gpio";
1083f29077d8SSrinivas Kandagatla			drive-strength = <16>;
1084f29077d8SSrinivas Kandagatla			bias-disable;
1085f29077d8SSrinivas Kandagatla			output-high;
1086f29077d8SSrinivas Kandagatla		};
1087f29077d8SSrinivas Kandagatla	};
1088f29077d8SSrinivas Kandagatla
108932c23138SJohan Hovold	tpad_default: tpad-default-state {
109091c4431bSKrzysztof Kozlowski		int-n-pins {
109132c23138SJohan Hovold			pins = "gpio182";
109232c23138SJohan Hovold			function = "gpio";
109332c23138SJohan Hovold			bias-disable;
109432c23138SJohan Hovold		};
109532c23138SJohan Hovold	};
109632c23138SJohan Hovold
109732c23138SJohan Hovold	ts0_default: ts0-default-state {
109891c4431bSKrzysztof Kozlowski		int-n-pins {
109932c23138SJohan Hovold			pins = "gpio175";
110032c23138SJohan Hovold			function = "gpio";
1101e11978deSJohan Hovold			bias-disable;
110232c23138SJohan Hovold		};
110332c23138SJohan Hovold
110491c4431bSKrzysztof Kozlowski		reset-n-pins {
110532c23138SJohan Hovold			pins = "gpio99";
110632c23138SJohan Hovold			function = "gpio";
110732c23138SJohan Hovold			output-high;
110832c23138SJohan Hovold			drive-strength = <16>;
110932c23138SJohan Hovold		};
111032c23138SJohan Hovold	};
1111f29077d8SSrinivas Kandagatla
1112f29077d8SSrinivas Kandagatla	wcd_default: wcd-default-state {
1113f29077d8SSrinivas Kandagatla		reset-pins {
1114f29077d8SSrinivas Kandagatla			pins = "gpio106";
1115f29077d8SSrinivas Kandagatla			function = "gpio";
1116f29077d8SSrinivas Kandagatla			bias-disable;
1117f29077d8SSrinivas Kandagatla		};
1118f29077d8SSrinivas Kandagatla	};
111932c23138SJohan Hovold};
1120