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
2432c23138SJohan Hovold	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
4932c23138SJohan Hovold	vreg_edp_bl: regulator-edp-bl {
5032c23138SJohan Hovold		compatible = "regulator-fixed";
5132c23138SJohan Hovold
5232c23138SJohan Hovold		regulator-name = "VBL9";
5332c23138SJohan Hovold		regulator-min-microvolt = <3600000>;
5432c23138SJohan Hovold		regulator-max-microvolt = <3600000>;
5532c23138SJohan Hovold
5632c23138SJohan Hovold		gpio = <&pmc8280_1_gpios 9 GPIO_ACTIVE_HIGH>;
5732c23138SJohan Hovold		enable-active-high;
5832c23138SJohan Hovold
5932c23138SJohan Hovold		pinctrl-names = "default";
6032c23138SJohan Hovold		pinctrl-0 = <&edp_bl_reg_en>;
6132c23138SJohan Hovold
6232c23138SJohan Hovold		regulator-boot-on;
6332c23138SJohan Hovold	};
6432c23138SJohan Hovold
6532c23138SJohan Hovold	vreg_misc_3p3: regulator-misc-3p3 {
6632c23138SJohan Hovold		compatible = "regulator-fixed";
6732c23138SJohan Hovold
6832c23138SJohan Hovold		regulator-name = "VCC3B";
6932c23138SJohan Hovold		regulator-min-microvolt = <3300000>;
7032c23138SJohan Hovold		regulator-max-microvolt = <3300000>;
7132c23138SJohan Hovold
7232c23138SJohan Hovold		gpio = <&pmc8280_1_gpios 1 GPIO_ACTIVE_HIGH>;
7332c23138SJohan Hovold		enable-active-high;
7432c23138SJohan Hovold
7532c23138SJohan Hovold		pinctrl-names = "default";
7632c23138SJohan Hovold		pinctrl-0 = <&misc_3p3_reg_en>;
7732c23138SJohan Hovold
7832c23138SJohan Hovold		regulator-boot-on;
7932c23138SJohan Hovold		regulator-always-on;
8032c23138SJohan Hovold	};
81b4bb952eSJohan Hovold
82b4bb952eSJohan Hovold	vreg_nvme: regulator-nvme {
83b4bb952eSJohan Hovold		compatible = "regulator-fixed";
84b4bb952eSJohan Hovold
85b4bb952eSJohan Hovold		regulator-name = "VCC3_SSD";
86b4bb952eSJohan Hovold		regulator-min-microvolt = <3300000>;
87b4bb952eSJohan Hovold		regulator-max-microvolt = <3300000>;
88b4bb952eSJohan Hovold
89b4bb952eSJohan Hovold		gpio = <&tlmm 135 GPIO_ACTIVE_HIGH>;
90b4bb952eSJohan Hovold		enable-active-high;
91b4bb952eSJohan Hovold
92b4bb952eSJohan Hovold		pinctrl-names = "default";
93b4bb952eSJohan Hovold		pinctrl-0 = <&nvme_reg_en>;
94b4bb952eSJohan Hovold
95b4bb952eSJohan Hovold		regulator-boot-on;
96b4bb952eSJohan Hovold	};
97176d54acSJohan Hovold
98123b30a7SJohan Hovold	vreg_wlan: regulator-wlan {
99123b30a7SJohan Hovold		compatible = "regulator-fixed";
100123b30a7SJohan Hovold
101123b30a7SJohan Hovold		regulator-name = "VCC_WLAN_3R9";
102123b30a7SJohan Hovold		regulator-min-microvolt = <3900000>;
103123b30a7SJohan Hovold		regulator-max-microvolt = <3900000>;
104123b30a7SJohan Hovold
105123b30a7SJohan Hovold		gpio = <&pmr735a_gpios 1 GPIO_ACTIVE_HIGH>;
106123b30a7SJohan Hovold		enable-active-high;
107123b30a7SJohan Hovold
108123b30a7SJohan Hovold		pinctrl-names = "default";
109123b30a7SJohan Hovold		pinctrl-0 = <&hastings_reg_en>;
110123b30a7SJohan Hovold
111123b30a7SJohan Hovold		regulator-boot-on;
112123b30a7SJohan Hovold	};
113123b30a7SJohan Hovold
114176d54acSJohan Hovold	vreg_wwan: regulator-wwan {
115176d54acSJohan Hovold		compatible = "regulator-fixed";
116176d54acSJohan Hovold
117176d54acSJohan Hovold		regulator-name = "VCC3B_WAN";
118176d54acSJohan Hovold		regulator-min-microvolt = <3300000>;
119176d54acSJohan Hovold		regulator-max-microvolt = <3300000>;
120176d54acSJohan Hovold
121176d54acSJohan Hovold		gpio = <&pmc8280_2_gpios 1 GPIO_ACTIVE_HIGH>;
122176d54acSJohan Hovold		enable-active-high;
123176d54acSJohan Hovold
124176d54acSJohan Hovold		pinctrl-names = "default";
125176d54acSJohan Hovold		pinctrl-0 = <&wwan_sw_en>;
126176d54acSJohan Hovold
127176d54acSJohan Hovold		regulator-boot-on;
128176d54acSJohan Hovold	};
129f29077d8SSrinivas Kandagatla
130f29077d8SSrinivas Kandagatla	vreg_vph_pwr: regulator-vph-pwr {
131f29077d8SSrinivas Kandagatla		compatible = "regulator-fixed";
132f29077d8SSrinivas Kandagatla		regulator-name = "VPH_VCC3R9";
133f29077d8SSrinivas Kandagatla		regulator-min-microvolt = <3900000>;
134f29077d8SSrinivas Kandagatla		regulator-max-microvolt = <3900000>;
135f29077d8SSrinivas Kandagatla		regulator-always-on;
136f29077d8SSrinivas Kandagatla	};
137*5e4cab73SJohan Hovold
138*5e4cab73SJohan Hovold	thermal-zones {
139*5e4cab73SJohan Hovold		skin-temp-thermal {
140*5e4cab73SJohan Hovold			polling-delay-passive = <250>;
141*5e4cab73SJohan Hovold			polling-delay = <0>;
142*5e4cab73SJohan Hovold			thermal-sensors = <&pmk8280_adc_tm 5>;
143*5e4cab73SJohan Hovold
144*5e4cab73SJohan Hovold			trips {
145*5e4cab73SJohan Hovold				skin_temp_alert0: trip-point0 {
146*5e4cab73SJohan Hovold					temperature = <55000>;
147*5e4cab73SJohan Hovold					hysteresis = <1000>;
148*5e4cab73SJohan Hovold					type = "passive";
149*5e4cab73SJohan Hovold				};
150*5e4cab73SJohan Hovold
151*5e4cab73SJohan Hovold				skin_temp_alert1: trip-point1 {
152*5e4cab73SJohan Hovold					temperature = <58000>;
153*5e4cab73SJohan Hovold					hysteresis = <1000>;
154*5e4cab73SJohan Hovold					type = "passive";
155*5e4cab73SJohan Hovold				};
156*5e4cab73SJohan Hovold
157*5e4cab73SJohan Hovold				skin-temp-crit {
158*5e4cab73SJohan Hovold					temperature = <73000>;
159*5e4cab73SJohan Hovold					hysteresis = <1000>;
160*5e4cab73SJohan Hovold					type = "critical";
161*5e4cab73SJohan Hovold				};
162*5e4cab73SJohan Hovold			};
163*5e4cab73SJohan Hovold
164*5e4cab73SJohan Hovold			cooling-maps {
165*5e4cab73SJohan Hovold				map0 {
166*5e4cab73SJohan Hovold					trip = <&skin_temp_alert0>;
167*5e4cab73SJohan Hovold					cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
168*5e4cab73SJohan Hovold							 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
169*5e4cab73SJohan Hovold							 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
170*5e4cab73SJohan Hovold							 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
171*5e4cab73SJohan Hovold				};
172*5e4cab73SJohan Hovold
173*5e4cab73SJohan Hovold				map1 {
174*5e4cab73SJohan Hovold					trip = <&skin_temp_alert1>;
175*5e4cab73SJohan Hovold					cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
176*5e4cab73SJohan Hovold							 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
177*5e4cab73SJohan Hovold							 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
178*5e4cab73SJohan Hovold							 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
179*5e4cab73SJohan Hovold				};
180*5e4cab73SJohan Hovold			};
181*5e4cab73SJohan Hovold		};
182*5e4cab73SJohan Hovold	};
18332c23138SJohan Hovold};
18432c23138SJohan Hovold
18532c23138SJohan Hovold&apps_rsc {
18632c23138SJohan Hovold	pmc8280-1-rpmh-regulators {
18732c23138SJohan Hovold		compatible = "qcom,pm8350-rpmh-regulators";
18832c23138SJohan Hovold		qcom,pmic-id = "b";
18932c23138SJohan Hovold
19032c23138SJohan Hovold		vdd-l3-l5-supply = <&vreg_s11b>;
19132c23138SJohan Hovold
192f29077d8SSrinivas Kandagatla		vreg_s10b: smps10 {
193f29077d8SSrinivas Kandagatla			regulator-name = "vreg_s10b";
194f29077d8SSrinivas Kandagatla			regulator-min-microvolt = <1800000>;
195f29077d8SSrinivas Kandagatla			regulator-max-microvolt = <1800000>;
196f29077d8SSrinivas Kandagatla			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
197f29077d8SSrinivas Kandagatla		};
198f29077d8SSrinivas Kandagatla
19932c23138SJohan Hovold		vreg_s11b: smps11 {
20032c23138SJohan Hovold			regulator-name = "vreg_s11b";
20132c23138SJohan Hovold			regulator-min-microvolt = <1272000>;
20232c23138SJohan Hovold			regulator-max-microvolt = <1272000>;
20332c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
20432c23138SJohan Hovold		};
20532c23138SJohan Hovold
206f29077d8SSrinivas Kandagatla		vreg_s12b: smps12 {
207f29077d8SSrinivas Kandagatla			regulator-name = "vreg_s12b";
208f29077d8SSrinivas Kandagatla			regulator-min-microvolt = <984000>;
209f29077d8SSrinivas Kandagatla			regulator-max-microvolt = <984000>;
210f29077d8SSrinivas Kandagatla			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
211f29077d8SSrinivas Kandagatla		};
212f29077d8SSrinivas Kandagatla
21332c23138SJohan Hovold		vreg_l3b: ldo3 {
21432c23138SJohan Hovold			regulator-name = "vreg_l3b";
21532c23138SJohan Hovold			regulator-min-microvolt = <1200000>;
21632c23138SJohan Hovold			regulator-max-microvolt = <1200000>;
21732c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
21832c23138SJohan Hovold			regulator-boot-on;
21932c23138SJohan Hovold		};
22032c23138SJohan Hovold
22132c23138SJohan Hovold		vreg_l4b: ldo4 {
22232c23138SJohan Hovold			regulator-name = "vreg_l4b";
22332c23138SJohan Hovold			regulator-min-microvolt = <912000>;
22432c23138SJohan Hovold			regulator-max-microvolt = <912000>;
22532c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
22632c23138SJohan Hovold		};
22732c23138SJohan Hovold
22832c23138SJohan Hovold		vreg_l6b: ldo6 {
22932c23138SJohan Hovold			regulator-name = "vreg_l6b";
23032c23138SJohan Hovold			regulator-min-microvolt = <880000>;
23132c23138SJohan Hovold			regulator-max-microvolt = <880000>;
23232c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
23332c23138SJohan Hovold			regulator-boot-on;
234b47fac7aSKonrad Dybcio			regulator-always-on;	/* FIXME: VDD_A_EDP_0_0P9 */
23532c23138SJohan Hovold		};
23632c23138SJohan Hovold	};
23732c23138SJohan Hovold
23832c23138SJohan Hovold	pmc8280c-rpmh-regulators {
23932c23138SJohan Hovold		compatible = "qcom,pm8350c-rpmh-regulators";
24032c23138SJohan Hovold		qcom,pmic-id = "c";
241f29077d8SSrinivas Kandagatla		vdd-bob-supply = <&vreg_vph_pwr>;
24232c23138SJohan Hovold
24332c23138SJohan Hovold		vreg_l1c: ldo1 {
24432c23138SJohan Hovold			regulator-name = "vreg_l1c";
24532c23138SJohan Hovold			regulator-min-microvolt = <1800000>;
24632c23138SJohan Hovold			regulator-max-microvolt = <1800000>;
24732c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
24832c23138SJohan Hovold		};
24932c23138SJohan Hovold
25032c23138SJohan Hovold		vreg_l12c: ldo12 {
25132c23138SJohan Hovold			regulator-name = "vreg_l12c";
25232c23138SJohan Hovold			regulator-min-microvolt = <1800000>;
25332c23138SJohan Hovold			regulator-max-microvolt = <1800000>;
25432c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
25532c23138SJohan Hovold		};
25632c23138SJohan Hovold
25732c23138SJohan Hovold		vreg_l13c: ldo13 {
25832c23138SJohan Hovold			regulator-name = "vreg_l13c";
25932c23138SJohan Hovold			regulator-min-microvolt = <3072000>;
26032c23138SJohan Hovold			regulator-max-microvolt = <3072000>;
26132c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
26232c23138SJohan Hovold		};
263f29077d8SSrinivas Kandagatla
264f29077d8SSrinivas Kandagatla		vreg_bob: bob {
265f29077d8SSrinivas Kandagatla			regulator-name = "vreg_bob";
266f29077d8SSrinivas Kandagatla			regulator-min-microvolt = <3008000>;
267f29077d8SSrinivas Kandagatla			regulator-max-microvolt = <3960000>;
268f29077d8SSrinivas Kandagatla			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
269f29077d8SSrinivas Kandagatla		};
27032c23138SJohan Hovold	};
27132c23138SJohan Hovold
27232c23138SJohan Hovold	pmc8280-2-rpmh-regulators {
27332c23138SJohan Hovold		compatible = "qcom,pm8350-rpmh-regulators";
27432c23138SJohan Hovold		qcom,pmic-id = "d";
27532c23138SJohan Hovold
27632c23138SJohan Hovold		vdd-l1-l4-supply = <&vreg_s11b>;
27732c23138SJohan Hovold
27832c23138SJohan Hovold		vreg_l3d: ldo3 {
27932c23138SJohan Hovold			regulator-name = "vreg_l3d";
28032c23138SJohan Hovold			regulator-min-microvolt = <1200000>;
28132c23138SJohan Hovold			regulator-max-microvolt = <1200000>;
28232c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
28332c23138SJohan Hovold		};
28432c23138SJohan Hovold
28532c23138SJohan Hovold		vreg_l4d: ldo4 {
28632c23138SJohan Hovold			regulator-name = "vreg_l4d";
28732c23138SJohan Hovold			regulator-min-microvolt = <1200000>;
28832c23138SJohan Hovold			regulator-max-microvolt = <1200000>;
28932c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
29032c23138SJohan Hovold		};
29132c23138SJohan Hovold
292b4bb952eSJohan Hovold		vreg_l6d: ldo6 {
293b4bb952eSJohan Hovold			regulator-name = "vreg_l6d";
294b4bb952eSJohan Hovold			regulator-min-microvolt = <880000>;
295b4bb952eSJohan Hovold			regulator-max-microvolt = <880000>;
296b4bb952eSJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
297b4bb952eSJohan Hovold		};
298b4bb952eSJohan Hovold
29932c23138SJohan Hovold		vreg_l7d: ldo7 {
30032c23138SJohan Hovold			regulator-name = "vreg_l7d";
30132c23138SJohan Hovold			regulator-min-microvolt = <3072000>;
30232c23138SJohan Hovold			regulator-max-microvolt = <3072000>;
30332c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
30432c23138SJohan Hovold		};
30532c23138SJohan Hovold
30632c23138SJohan Hovold		vreg_l9d: ldo9 {
30732c23138SJohan Hovold			regulator-name = "vreg_l9d";
30832c23138SJohan Hovold			regulator-min-microvolt = <912000>;
30932c23138SJohan Hovold			regulator-max-microvolt = <912000>;
31032c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
31132c23138SJohan Hovold		};
31232c23138SJohan Hovold	};
31332c23138SJohan Hovold};
31432c23138SJohan Hovold
315b4bb952eSJohan Hovold&pcie2a {
316b4bb952eSJohan Hovold	perst-gpios = <&tlmm 143 GPIO_ACTIVE_LOW>;
317b4bb952eSJohan Hovold	wake-gpios = <&tlmm 145 GPIO_ACTIVE_LOW>;
318b4bb952eSJohan Hovold
319b4bb952eSJohan Hovold	vddpe-3v3-supply = <&vreg_nvme>;
320b4bb952eSJohan Hovold
321b4bb952eSJohan Hovold	pinctrl-names = "default";
322b4bb952eSJohan Hovold	pinctrl-0 = <&pcie2a_default>;
323b4bb952eSJohan Hovold
324b4bb952eSJohan Hovold	status = "okay";
325b4bb952eSJohan Hovold};
326b4bb952eSJohan Hovold
327b4bb952eSJohan Hovold&pcie2a_phy {
328b4bb952eSJohan Hovold	vdda-phy-supply = <&vreg_l6d>;
329b4bb952eSJohan Hovold	vdda-pll-supply = <&vreg_l4d>;
330b4bb952eSJohan Hovold
331b4bb952eSJohan Hovold	status = "okay";
332b4bb952eSJohan Hovold};
333b4bb952eSJohan Hovold
334176d54acSJohan Hovold&pcie3a {
335176d54acSJohan Hovold	perst-gpios = <&tlmm 151 GPIO_ACTIVE_LOW>;
336176d54acSJohan Hovold	wake-gpios = <&tlmm 148 GPIO_ACTIVE_LOW>;
337176d54acSJohan Hovold
338176d54acSJohan Hovold	vddpe-3v3-supply = <&vreg_wwan>;
339176d54acSJohan Hovold
340176d54acSJohan Hovold	pinctrl-names = "default";
341176d54acSJohan Hovold	pinctrl-0 = <&pcie3a_default>;
342176d54acSJohan Hovold
343176d54acSJohan Hovold	status = "okay";
344176d54acSJohan Hovold};
345176d54acSJohan Hovold
346176d54acSJohan Hovold&pcie3a_phy {
347176d54acSJohan Hovold	vdda-phy-supply = <&vreg_l6d>;
348176d54acSJohan Hovold	vdda-pll-supply = <&vreg_l4d>;
349176d54acSJohan Hovold
350176d54acSJohan Hovold	status = "okay";
351176d54acSJohan Hovold};
352176d54acSJohan Hovold
353123b30a7SJohan Hovold&pcie4 {
354123b30a7SJohan Hovold	perst-gpios = <&tlmm 141 GPIO_ACTIVE_LOW>;
355123b30a7SJohan Hovold	wake-gpios = <&tlmm 139 GPIO_ACTIVE_LOW>;
356123b30a7SJohan Hovold
357123b30a7SJohan Hovold	vddpe-3v3-supply = <&vreg_wlan>;
358123b30a7SJohan Hovold
359123b30a7SJohan Hovold	pinctrl-names = "default";
360123b30a7SJohan Hovold	pinctrl-0 = <&pcie4_default>;
361123b30a7SJohan Hovold
362123b30a7SJohan Hovold	status = "okay";
363123b30a7SJohan Hovold};
364123b30a7SJohan Hovold
365123b30a7SJohan Hovold&pcie4_phy {
366123b30a7SJohan Hovold	vdda-phy-supply = <&vreg_l6d>;
367123b30a7SJohan Hovold	vdda-pll-supply = <&vreg_l4d>;
368123b30a7SJohan Hovold
369123b30a7SJohan Hovold	status = "okay";
370123b30a7SJohan Hovold};
371123b30a7SJohan Hovold
37232c23138SJohan Hovold&pmc8280c_lpg {
37332c23138SJohan Hovold	status = "okay";
37432c23138SJohan Hovold};
37532c23138SJohan Hovold
3767c015134SManivannan Sadhasivam&pmk8280_adc_tm {
3777c015134SManivannan Sadhasivam	status = "okay";
3787c015134SManivannan Sadhasivam
3797c015134SManivannan Sadhasivam	sys-therm@0 {
3807c015134SManivannan Sadhasivam		reg = <0>;
3817c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM1_100K_PU(1)>;
3827c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
3837c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
3847c015134SManivannan Sadhasivam		qcom,ratiometric;
3857c015134SManivannan Sadhasivam	};
3867c015134SManivannan Sadhasivam
3877c015134SManivannan Sadhasivam	sys-therm@1 {
3887c015134SManivannan Sadhasivam		reg = <1>;
3897c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM2_100K_PU(1)>;
3907c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
3917c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
3927c015134SManivannan Sadhasivam		qcom,ratiometric;
3937c015134SManivannan Sadhasivam	};
3947c015134SManivannan Sadhasivam
3957c015134SManivannan Sadhasivam	sys-therm@2 {
3967c015134SManivannan Sadhasivam		reg = <2>;
3977c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM3_100K_PU(1)>;
3987c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
3997c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
4007c015134SManivannan Sadhasivam		qcom,ratiometric;
4017c015134SManivannan Sadhasivam	};
4027c015134SManivannan Sadhasivam
4037c015134SManivannan Sadhasivam	sys-therm@3 {
4047c015134SManivannan Sadhasivam		reg = <3>;
4057c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM4_100K_PU(1)>;
4067c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
4077c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
4087c015134SManivannan Sadhasivam		qcom,ratiometric;
4097c015134SManivannan Sadhasivam	};
4107c015134SManivannan Sadhasivam
4117c015134SManivannan Sadhasivam	sys-therm@4 {
4127c015134SManivannan Sadhasivam		reg = <4>;
4137c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM1_100K_PU(3)>;
4147c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
4157c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
4167c015134SManivannan Sadhasivam		qcom,ratiometric;
4177c015134SManivannan Sadhasivam	};
4187c015134SManivannan Sadhasivam
4197c015134SManivannan Sadhasivam	sys-therm@5 {
4207c015134SManivannan Sadhasivam		reg = <5>;
4217c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM2_100K_PU(3)>;
4227c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
4237c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
4247c015134SManivannan Sadhasivam		qcom,ratiometric;
4257c015134SManivannan Sadhasivam	};
4267c015134SManivannan Sadhasivam
4277c015134SManivannan Sadhasivam	sys-therm@6 {
4287c015134SManivannan Sadhasivam		reg = <6>;
4297c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM3_100K_PU(3)>;
4307c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
4317c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
4327c015134SManivannan Sadhasivam		qcom,ratiometric;
4337c015134SManivannan Sadhasivam	};
4347c015134SManivannan Sadhasivam
4357c015134SManivannan Sadhasivam	sys-therm@7 {
4367c015134SManivannan Sadhasivam		reg = <7>;
4377c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM4_100K_PU(3)>;
4387c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
4397c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
4407c015134SManivannan Sadhasivam		qcom,ratiometric;
4417c015134SManivannan Sadhasivam	};
4427c015134SManivannan Sadhasivam};
4437c015134SManivannan Sadhasivam
44432c23138SJohan Hovold&pmk8280_pon_pwrkey {
44532c23138SJohan Hovold	status = "okay";
44632c23138SJohan Hovold};
44732c23138SJohan Hovold
4487858c676SManivannan Sadhasivam&pmk8280_pon_resin {
4497858c676SManivannan Sadhasivam	status = "okay";
4507858c676SManivannan Sadhasivam};
4517858c676SManivannan Sadhasivam
4529a6b3042SManivannan Sadhasivam&pmk8280_vadc {
4539a6b3042SManivannan Sadhasivam	status = "okay";
4549a6b3042SManivannan Sadhasivam
4559a6b3042SManivannan Sadhasivam	pmic-die-temp@3 {
4569a6b3042SManivannan Sadhasivam		reg = <PMK8350_ADC7_DIE_TEMP>;
4579a6b3042SManivannan Sadhasivam		qcom,pre-scaling = <1 1>;
4589a6b3042SManivannan Sadhasivam	};
4599a6b3042SManivannan Sadhasivam
4609a6b3042SManivannan Sadhasivam	xo-therm@44 {
4619a6b3042SManivannan Sadhasivam		reg = <PMK8350_ADC7_AMUX_THM1_100K_PU>;
4629a6b3042SManivannan Sadhasivam		qcom,hw-settle-time = <200>;
4639a6b3042SManivannan Sadhasivam		qcom,ratiometric;
4649a6b3042SManivannan Sadhasivam	};
4653375151aSManivannan Sadhasivam
4663375151aSManivannan Sadhasivam	pmic-die-temp@103 {
4673375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_DIE_TEMP(1)>;
4683375151aSManivannan Sadhasivam		qcom,pre-scaling = <1 1>;
4693375151aSManivannan Sadhasivam	};
4703375151aSManivannan Sadhasivam
4713375151aSManivannan Sadhasivam	sys-therm@144 {
4723375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM1_100K_PU(1)>;
4733375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
4743375151aSManivannan Sadhasivam		qcom,ratiometric;
4753375151aSManivannan Sadhasivam	};
4763375151aSManivannan Sadhasivam
4773375151aSManivannan Sadhasivam	sys-therm@145 {
4783375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM2_100K_PU(1)>;
4793375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
4803375151aSManivannan Sadhasivam		qcom,ratiometric;
4813375151aSManivannan Sadhasivam	};
4823375151aSManivannan Sadhasivam
4833375151aSManivannan Sadhasivam	sys-therm@146 {
4843375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM3_100K_PU(1)>;
4853375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
4863375151aSManivannan Sadhasivam		qcom,ratiometric;
4873375151aSManivannan Sadhasivam	};
4883375151aSManivannan Sadhasivam
4893375151aSManivannan Sadhasivam	sys-therm@147 {
4903375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM4_100K_PU(1)>;
4913375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
4923375151aSManivannan Sadhasivam		qcom,ratiometric;
4933375151aSManivannan Sadhasivam	};
4943375151aSManivannan Sadhasivam
4953375151aSManivannan Sadhasivam	pmic-die-temp@303 {
4963375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_DIE_TEMP(3)>;
4973375151aSManivannan Sadhasivam		qcom,pre-scaling = <1 1>;
4983375151aSManivannan Sadhasivam	};
4993375151aSManivannan Sadhasivam
5003375151aSManivannan Sadhasivam	sys-therm@344 {
5013375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM1_100K_PU(3)>;
5023375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5033375151aSManivannan Sadhasivam		qcom,ratiometric;
5043375151aSManivannan Sadhasivam	};
5053375151aSManivannan Sadhasivam
5063375151aSManivannan Sadhasivam	sys-therm@345 {
5073375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM2_100K_PU(3)>;
5083375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5093375151aSManivannan Sadhasivam		qcom,ratiometric;
5103375151aSManivannan Sadhasivam	};
5113375151aSManivannan Sadhasivam
5123375151aSManivannan Sadhasivam	sys-therm@346 {
5133375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM3_100K_PU(3)>;
5143375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5153375151aSManivannan Sadhasivam		qcom,ratiometric;
5163375151aSManivannan Sadhasivam	};
5173375151aSManivannan Sadhasivam
5183375151aSManivannan Sadhasivam	sys-therm@347 {
5193375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM4_100K_PU(3)>;
5203375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
5213375151aSManivannan Sadhasivam		qcom,ratiometric;
5223375151aSManivannan Sadhasivam	};
5239d41cd17SManivannan Sadhasivam
5249d41cd17SManivannan Sadhasivam	pmic-die-temp@403 {
5259d41cd17SManivannan Sadhasivam		reg = <PMR735A_ADC7_DIE_TEMP>;
5269d41cd17SManivannan Sadhasivam		qcom,pre-scaling = <1 1>;
5279d41cd17SManivannan Sadhasivam	};
5289a6b3042SManivannan Sadhasivam};
5299a6b3042SManivannan Sadhasivam
53032c23138SJohan Hovold&qup0 {
53132c23138SJohan Hovold	status = "okay";
53232c23138SJohan Hovold};
53332c23138SJohan Hovold
53432c23138SJohan Hovold&qup0_i2c4 {
53532c23138SJohan Hovold	clock-frequency = <400000>;
53632c23138SJohan Hovold
53732c23138SJohan Hovold	pinctrl-names = "default";
53897cc7ab3SJohan Hovold	pinctrl-0 = <&qup0_i2c4_default>;
53932c23138SJohan Hovold
54032c23138SJohan Hovold	status = "okay";
54132c23138SJohan Hovold
54232c23138SJohan Hovold	/* FIXME: verify */
54332c23138SJohan Hovold	touchscreen@10 {
54432c23138SJohan Hovold		compatible = "hid-over-i2c";
54532c23138SJohan Hovold		reg = <0x10>;
54697cc7ab3SJohan Hovold
54732c23138SJohan Hovold		hid-descr-addr = <0x1>;
54832c23138SJohan Hovold		interrupts-extended = <&tlmm 175 IRQ_TYPE_LEVEL_LOW>;
54932c23138SJohan Hovold		vdd-supply = <&vreg_misc_3p3>;
55097cc7ab3SJohan Hovold
55197cc7ab3SJohan Hovold		pinctrl-names = "default";
55297cc7ab3SJohan Hovold		pinctrl-0 = <&ts0_default>;
55332c23138SJohan Hovold	};
55432c23138SJohan Hovold};
55532c23138SJohan Hovold
55632c23138SJohan Hovold&qup1 {
55732c23138SJohan Hovold	status = "okay";
55832c23138SJohan Hovold};
55932c23138SJohan Hovold
56032c23138SJohan Hovold&qup2 {
56132c23138SJohan Hovold	status = "okay";
56232c23138SJohan Hovold};
56332c23138SJohan Hovold
56432c23138SJohan Hovold&qup2_i2c5 {
56532c23138SJohan Hovold	clock-frequency = <400000>;
56632c23138SJohan Hovold
56732c23138SJohan Hovold	pinctrl-names = "default";
56897cc7ab3SJohan Hovold	pinctrl-0 = <&qup2_i2c5_default>;
56932c23138SJohan Hovold
57032c23138SJohan Hovold	status = "okay";
57132c23138SJohan Hovold
572ca1ce720SJohan Hovold	touchpad@15 {
573ca1ce720SJohan Hovold		compatible = "hid-over-i2c";
574ca1ce720SJohan Hovold		reg = <0x15>;
575ca1ce720SJohan Hovold
576ca1ce720SJohan Hovold		hid-descr-addr = <0x1>;
577ca1ce720SJohan Hovold		interrupts-extended = <&tlmm 182 IRQ_TYPE_LEVEL_LOW>;
578ca1ce720SJohan Hovold		vdd-supply = <&vreg_misc_3p3>;
579ca1ce720SJohan Hovold
580ca1ce720SJohan Hovold		pinctrl-names = "default";
581ca1ce720SJohan Hovold		pinctrl-0 = <&tpad_default>;
582ca1ce720SJohan Hovold
583ca1ce720SJohan Hovold		wakeup-source;
584ca1ce720SJohan Hovold
585ca1ce720SJohan Hovold		status = "disabled";
586ca1ce720SJohan Hovold	};
587ca1ce720SJohan Hovold
58832c23138SJohan Hovold	touchpad@2c {
58932c23138SJohan Hovold		compatible = "hid-over-i2c";
59032c23138SJohan Hovold		reg = <0x2c>;
59197cc7ab3SJohan Hovold
59232c23138SJohan Hovold		hid-descr-addr = <0x20>;
59332c23138SJohan Hovold		interrupts-extended = <&tlmm 182 IRQ_TYPE_LEVEL_LOW>;
59432c23138SJohan Hovold		vdd-supply = <&vreg_misc_3p3>;
59597cc7ab3SJohan Hovold
59697cc7ab3SJohan Hovold		pinctrl-names = "default";
59797cc7ab3SJohan Hovold		pinctrl-0 = <&tpad_default>;
59870934652SJohan Hovold
59970934652SJohan Hovold		wakeup-source;
60032c23138SJohan Hovold	};
60132c23138SJohan Hovold
60232c23138SJohan Hovold	keyboard@68 {
60332c23138SJohan Hovold		compatible = "hid-over-i2c";
60432c23138SJohan Hovold		reg = <0x68>;
60597cc7ab3SJohan Hovold
60632c23138SJohan Hovold		hid-descr-addr = <0x1>;
60732c23138SJohan Hovold		interrupts-extended = <&tlmm 104 IRQ_TYPE_LEVEL_LOW>;
60832c23138SJohan Hovold		vdd-supply = <&vreg_misc_3p3>;
60997cc7ab3SJohan Hovold
61097cc7ab3SJohan Hovold		pinctrl-names = "default";
61197cc7ab3SJohan Hovold		pinctrl-0 = <&kybd_default>;
61270934652SJohan Hovold
61370934652SJohan Hovold		wakeup-source;
61432c23138SJohan Hovold	};
61532c23138SJohan Hovold};
61632c23138SJohan Hovold
61732c23138SJohan Hovold&remoteproc_adsp {
61829f894ecSManivannan Sadhasivam	firmware-name = "qcom/sc8280xp/LENOVO/21BX/qcadsp8280.mbn";
61932c23138SJohan Hovold
62032c23138SJohan Hovold	status = "okay";
62132c23138SJohan Hovold};
62232c23138SJohan Hovold
62332c23138SJohan Hovold&remoteproc_nsp0 {
62429f894ecSManivannan Sadhasivam	firmware-name = "qcom/sc8280xp/LENOVO/21BX/qccdsp8280.mbn";
62532c23138SJohan Hovold
62632c23138SJohan Hovold	status = "okay";
62732c23138SJohan Hovold};
62832c23138SJohan Hovold
629f29077d8SSrinivas Kandagatla&soc {
630f29077d8SSrinivas Kandagatla	wcd938x: codec {
631f29077d8SSrinivas Kandagatla		compatible = "qcom,wcd9380-codec";
632f29077d8SSrinivas Kandagatla		pinctrl-names = "default";
633f29077d8SSrinivas Kandagatla		pinctrl-0 = <&wcd_default>;
634f29077d8SSrinivas Kandagatla		reset-gpios = <&tlmm 106 GPIO_ACTIVE_LOW>;
635f29077d8SSrinivas Kandagatla		#sound-dai-cells = <1>;
636f29077d8SSrinivas Kandagatla
637f29077d8SSrinivas Kandagatla		vdd-buck-supply = <&vreg_s10b>;
638f29077d8SSrinivas Kandagatla		vdd-rxtx-supply = <&vreg_s10b>;
639f29077d8SSrinivas Kandagatla		vdd-io-supply = <&vreg_s10b>;
640f29077d8SSrinivas Kandagatla		vdd-mic-bias-supply = <&vreg_bob>;
641f29077d8SSrinivas Kandagatla		qcom,micbias1-microvolt = <1800000>;
642f29077d8SSrinivas Kandagatla		qcom,micbias2-microvolt = <1800000>;
643f29077d8SSrinivas Kandagatla		qcom,micbias3-microvolt = <1800000>;
644f29077d8SSrinivas Kandagatla		qcom,micbias4-microvolt = <1800000>;
645f29077d8SSrinivas Kandagatla		qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>;
646f29077d8SSrinivas Kandagatla		qcom,mbhc-headset-vthreshold-microvolt = <1700000>;
647f29077d8SSrinivas Kandagatla		qcom,mbhc-headphone-vthreshold-microvolt = <50000>;
648f29077d8SSrinivas Kandagatla		qcom,rx-device = <&wcd_rx>;
649f29077d8SSrinivas Kandagatla		qcom,tx-device = <&wcd_tx>;
650f29077d8SSrinivas Kandagatla	};
651f29077d8SSrinivas Kandagatla};
652f29077d8SSrinivas Kandagatla
653f29077d8SSrinivas Kandagatla&sound {
654f29077d8SSrinivas Kandagatla	compatible = "qcom,sc8280xp-sndcard";
655f29077d8SSrinivas Kandagatla	model = "SC8280XP-LENOVO-X13S";
656f29077d8SSrinivas Kandagatla	audio-routing =
657f29077d8SSrinivas Kandagatla		"SpkrLeft IN", "WSA_SPK1 OUT",
658f29077d8SSrinivas Kandagatla		"SpkrRight IN", "WSA_SPK2 OUT",
659f29077d8SSrinivas Kandagatla		"IN1_HPHL", "HPHL_OUT",
660f29077d8SSrinivas Kandagatla		"IN2_HPHR", "HPHR_OUT",
661f29077d8SSrinivas Kandagatla		"AMIC2", "MIC BIAS2",
662f29077d8SSrinivas Kandagatla		"VA DMIC0", "MIC BIAS1",
663f29077d8SSrinivas Kandagatla		"VA DMIC1", "MIC BIAS1",
664f29077d8SSrinivas Kandagatla		"VA DMIC2", "MIC BIAS3",
665f29077d8SSrinivas Kandagatla		"TX DMIC0", "MIC BIAS1",
666f29077d8SSrinivas Kandagatla		"TX DMIC1", "MIC BIAS2",
667f29077d8SSrinivas Kandagatla		"TX DMIC2", "MIC BIAS3",
668f29077d8SSrinivas Kandagatla		"TX SWR_ADC1", "ADC2_OUTPUT";
669f29077d8SSrinivas Kandagatla
670f29077d8SSrinivas Kandagatla	wcd-playback-dai-link {
671f29077d8SSrinivas Kandagatla		link-name = "WCD Playback";
672f29077d8SSrinivas Kandagatla		cpu {
673f29077d8SSrinivas Kandagatla			sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
674f29077d8SSrinivas Kandagatla		};
675f29077d8SSrinivas Kandagatla
676f29077d8SSrinivas Kandagatla		codec {
677f29077d8SSrinivas Kandagatla			sound-dai = <&wcd938x 0>, <&swr1 0>, <&rxmacro 0>;
678f29077d8SSrinivas Kandagatla		};
679f29077d8SSrinivas Kandagatla
680f29077d8SSrinivas Kandagatla		platform {
681f29077d8SSrinivas Kandagatla			sound-dai = <&q6apm>;
682f29077d8SSrinivas Kandagatla		};
683f29077d8SSrinivas Kandagatla	};
684f29077d8SSrinivas Kandagatla
685f29077d8SSrinivas Kandagatla	wcd-capture-dai-link {
686f29077d8SSrinivas Kandagatla		link-name = "WCD Capture";
687f29077d8SSrinivas Kandagatla		cpu {
688f29077d8SSrinivas Kandagatla			sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
689f29077d8SSrinivas Kandagatla		};
690f29077d8SSrinivas Kandagatla
691f29077d8SSrinivas Kandagatla		codec {
692f29077d8SSrinivas Kandagatla			sound-dai = <&wcd938x 1>, <&swr2 0>, <&txmacro 0>;
693f29077d8SSrinivas Kandagatla		};
694f29077d8SSrinivas Kandagatla
695f29077d8SSrinivas Kandagatla		platform {
696f29077d8SSrinivas Kandagatla			sound-dai = <&q6apm>;
697f29077d8SSrinivas Kandagatla		};
698f29077d8SSrinivas Kandagatla	};
699f29077d8SSrinivas Kandagatla
700f29077d8SSrinivas Kandagatla	wsa-dai-link {
701f29077d8SSrinivas Kandagatla		link-name = "WSA Playback";
702f29077d8SSrinivas Kandagatla		cpu {
703f29077d8SSrinivas Kandagatla			sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>;
704f29077d8SSrinivas Kandagatla		};
705f29077d8SSrinivas Kandagatla
706f29077d8SSrinivas Kandagatla		codec {
707f29077d8SSrinivas Kandagatla			sound-dai = <&left_spkr>, <&right_spkr>, <&swr0 0>, <&wsamacro 0>;
708f29077d8SSrinivas Kandagatla		};
709f29077d8SSrinivas Kandagatla
710f29077d8SSrinivas Kandagatla		platform {
711f29077d8SSrinivas Kandagatla			sound-dai = <&q6apm>;
712f29077d8SSrinivas Kandagatla		};
713f29077d8SSrinivas Kandagatla	};
714f29077d8SSrinivas Kandagatla
715f29077d8SSrinivas Kandagatla	va-dai-link {
716f29077d8SSrinivas Kandagatla		link-name = "VA Capture";
717f29077d8SSrinivas Kandagatla		cpu {
718f29077d8SSrinivas Kandagatla			sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
719f29077d8SSrinivas Kandagatla		};
720f29077d8SSrinivas Kandagatla
721f29077d8SSrinivas Kandagatla		platform {
722f29077d8SSrinivas Kandagatla			sound-dai = <&q6apm>;
723f29077d8SSrinivas Kandagatla		};
724f29077d8SSrinivas Kandagatla
725f29077d8SSrinivas Kandagatla		codec {
726f29077d8SSrinivas Kandagatla			sound-dai = <&vamacro 0>;
727f29077d8SSrinivas Kandagatla		};
728f29077d8SSrinivas Kandagatla	};
729f29077d8SSrinivas Kandagatla};
730f29077d8SSrinivas Kandagatla
731f29077d8SSrinivas Kandagatla&swr0 {
732f29077d8SSrinivas Kandagatla	left_spkr: wsa8830-left@0,1 {
733f29077d8SSrinivas Kandagatla		compatible = "sdw10217020200";
734f29077d8SSrinivas Kandagatla		reg = <0 1>;
735f29077d8SSrinivas Kandagatla		pinctrl-names = "default";
736f29077d8SSrinivas Kandagatla		pinctrl-0 = <&spkr_1_sd_n_default>;
737f29077d8SSrinivas Kandagatla		powerdown-gpios = <&tlmm 178 GPIO_ACTIVE_LOW>;
738f29077d8SSrinivas Kandagatla		#thermal-sensor-cells = <0>;
739f29077d8SSrinivas Kandagatla		sound-name-prefix = "SpkrLeft";
740f29077d8SSrinivas Kandagatla		#sound-dai-cells = <0>;
741f29077d8SSrinivas Kandagatla		vdd-supply = <&vreg_s10b>;
742f29077d8SSrinivas Kandagatla	};
743f29077d8SSrinivas Kandagatla
744f29077d8SSrinivas Kandagatla	right_spkr: wsa8830-right@0,2{
745f29077d8SSrinivas Kandagatla		compatible = "sdw10217020200";
746f29077d8SSrinivas Kandagatla		reg = <0 2>;
747f29077d8SSrinivas Kandagatla		pinctrl-names = "default";
748f29077d8SSrinivas Kandagatla		pinctrl-0 = <&spkr_2_sd_n_default>;
749f29077d8SSrinivas Kandagatla		powerdown-gpios = <&tlmm 179 GPIO_ACTIVE_LOW>;
750f29077d8SSrinivas Kandagatla		#thermal-sensor-cells = <0>;
751f29077d8SSrinivas Kandagatla		sound-name-prefix = "SpkrRight";
752f29077d8SSrinivas Kandagatla		#sound-dai-cells = <0>;
753f29077d8SSrinivas Kandagatla		vdd-supply = <&vreg_s10b>;
754f29077d8SSrinivas Kandagatla	};
755f29077d8SSrinivas Kandagatla};
756f29077d8SSrinivas Kandagatla
757f29077d8SSrinivas Kandagatla&swr1 {
758f29077d8SSrinivas Kandagatla	status = "okay";
759f29077d8SSrinivas Kandagatla
760f29077d8SSrinivas Kandagatla	wcd_rx: wcd9380-rx@0,4 {
761f29077d8SSrinivas Kandagatla		compatible = "sdw20217010d00";
762f29077d8SSrinivas Kandagatla		reg = <0 4>;
763f29077d8SSrinivas Kandagatla		qcom,rx-port-mapping = <1 2 3 4 5>;
764f29077d8SSrinivas Kandagatla	};
765f29077d8SSrinivas Kandagatla};
766f29077d8SSrinivas Kandagatla
767f29077d8SSrinivas Kandagatla&swr2 {
768f29077d8SSrinivas Kandagatla	status = "okay";
769f29077d8SSrinivas Kandagatla
770f29077d8SSrinivas Kandagatla	wcd_tx: wcd9380-tx@0,3 {
771f29077d8SSrinivas Kandagatla		compatible = "sdw20217010d00";
772f29077d8SSrinivas Kandagatla		reg = <0 3>;
773f29077d8SSrinivas Kandagatla		qcom,tx-port-mapping = <1 1 2 3>;
774f29077d8SSrinivas Kandagatla	};
775f29077d8SSrinivas Kandagatla};
776f29077d8SSrinivas Kandagatla
777f29077d8SSrinivas Kandagatla&vamacro {
778f29077d8SSrinivas Kandagatla	pinctrl-0 = <&dmic01_default>, <&dmic02_default>;
779f29077d8SSrinivas Kandagatla	pinctrl-names = "default";
780f29077d8SSrinivas Kandagatla	vdd-micb-supply = <&vreg_s10b>;
781f29077d8SSrinivas Kandagatla	qcom,dmic-sample-rate = <600000>;
782f29077d8SSrinivas Kandagatla};
783f29077d8SSrinivas Kandagatla
78432c23138SJohan Hovold&usb_0 {
78532c23138SJohan Hovold	status = "okay";
78632c23138SJohan Hovold};
78732c23138SJohan Hovold
78832c23138SJohan Hovold&usb_0_dwc3 {
78932c23138SJohan Hovold	/* TODO: Define USB-C connector properly */
79032c23138SJohan Hovold	dr_mode = "host";
79132c23138SJohan Hovold};
79232c23138SJohan Hovold
79332c23138SJohan Hovold&usb_0_hsphy {
79432c23138SJohan Hovold	vdda-pll-supply = <&vreg_l9d>;
79532c23138SJohan Hovold	vdda18-supply = <&vreg_l1c>;
79632c23138SJohan Hovold	vdda33-supply = <&vreg_l7d>;
79732c23138SJohan Hovold
79832c23138SJohan Hovold	status = "okay";
79932c23138SJohan Hovold};
80032c23138SJohan Hovold
80132c23138SJohan Hovold&usb_0_qmpphy {
80232c23138SJohan Hovold	vdda-phy-supply = <&vreg_l9d>;
80332c23138SJohan Hovold	vdda-pll-supply = <&vreg_l4d>;
80432c23138SJohan Hovold
80532c23138SJohan Hovold	status = "okay";
80632c23138SJohan Hovold};
80732c23138SJohan Hovold
80832c23138SJohan Hovold&usb_1 {
80932c23138SJohan Hovold	status = "okay";
81032c23138SJohan Hovold};
81132c23138SJohan Hovold
81232c23138SJohan Hovold&usb_1_dwc3 {
81332c23138SJohan Hovold	/* TODO: Define USB-C connector properly */
81432c23138SJohan Hovold	dr_mode = "host";
81532c23138SJohan Hovold};
81632c23138SJohan Hovold
81732c23138SJohan Hovold&usb_1_hsphy {
81832c23138SJohan Hovold	vdda-pll-supply = <&vreg_l4b>;
81932c23138SJohan Hovold	vdda18-supply = <&vreg_l1c>;
82032c23138SJohan Hovold	vdda33-supply = <&vreg_l13c>;
82132c23138SJohan Hovold
82232c23138SJohan Hovold	status = "okay";
82332c23138SJohan Hovold};
82432c23138SJohan Hovold
82532c23138SJohan Hovold&usb_1_qmpphy {
82632c23138SJohan Hovold	vdda-phy-supply = <&vreg_l4b>;
82732c23138SJohan Hovold	vdda-pll-supply = <&vreg_l3b>;
82832c23138SJohan Hovold
82932c23138SJohan Hovold	status = "okay";
83032c23138SJohan Hovold};
83132c23138SJohan Hovold
83232c23138SJohan Hovold&xo_board_clk {
83332c23138SJohan Hovold	clock-frequency = <38400000>;
83432c23138SJohan Hovold};
83532c23138SJohan Hovold
83632c23138SJohan Hovold/* PINCTRL */
83732c23138SJohan Hovold
83832c23138SJohan Hovold&pmc8280_1_gpios {
83932c23138SJohan Hovold	edp_bl_en: edp-bl-en-state {
84032c23138SJohan Hovold		pins = "gpio8";
84132c23138SJohan Hovold		function = "normal";
84232c23138SJohan Hovold	};
84332c23138SJohan Hovold
84432c23138SJohan Hovold	edp_bl_reg_en: edp-bl-reg-en-state {
84532c23138SJohan Hovold		pins = "gpio9";
84632c23138SJohan Hovold		function = "normal";
84732c23138SJohan Hovold	};
84832c23138SJohan Hovold
84932c23138SJohan Hovold	misc_3p3_reg_en: misc-3p3-reg-en-state {
85032c23138SJohan Hovold		pins = "gpio1";
85132c23138SJohan Hovold		function = "normal";
85232c23138SJohan Hovold	};
85332c23138SJohan Hovold};
85432c23138SJohan Hovold
855176d54acSJohan Hovold&pmc8280_2_gpios {
856176d54acSJohan Hovold	wwan_sw_en: wwan-sw-en-state {
857176d54acSJohan Hovold		pins = "gpio1";
858176d54acSJohan Hovold		function = "normal";
859176d54acSJohan Hovold	};
860176d54acSJohan Hovold};
861176d54acSJohan Hovold
86232c23138SJohan Hovold&pmc8280c_gpios {
86332c23138SJohan Hovold	edp_bl_pwm: edp-bl-pwm-state {
86432c23138SJohan Hovold		pins = "gpio8";
86532c23138SJohan Hovold		function = "func1";
86632c23138SJohan Hovold	};
86732c23138SJohan Hovold};
86832c23138SJohan Hovold
869123b30a7SJohan Hovold&pmr735a_gpios {
870123b30a7SJohan Hovold	hastings_reg_en: hastings-reg-en-state {
871123b30a7SJohan Hovold		pins = "gpio1";
872123b30a7SJohan Hovold		function = "normal";
873123b30a7SJohan Hovold	};
874123b30a7SJohan Hovold};
875123b30a7SJohan Hovold
87632c23138SJohan Hovold&tlmm {
87732c23138SJohan Hovold	gpio-reserved-ranges = <70 2>, <74 6>, <83 4>, <125 2>, <128 2>, <154 7>;
87832c23138SJohan Hovold
879a607fe5eSBjorn Andersson	hall_int_n_default: hall-int-n-state {
880a607fe5eSBjorn Andersson		pins = "gpio107";
881a607fe5eSBjorn Andersson		function = "gpio";
882a607fe5eSBjorn Andersson		input-enable;
883a607fe5eSBjorn Andersson		bias-disable;
884a607fe5eSBjorn Andersson	};
885a607fe5eSBjorn Andersson
88632c23138SJohan Hovold	kybd_default: kybd-default-state {
88791c4431bSKrzysztof Kozlowski		disable-pins {
88832c23138SJohan Hovold			pins = "gpio102";
88932c23138SJohan Hovold			function = "gpio";
89032c23138SJohan Hovold			output-low;
89132c23138SJohan Hovold		};
89232c23138SJohan Hovold
89391c4431bSKrzysztof Kozlowski		int-n-pins {
89432c23138SJohan Hovold			pins = "gpio104";
89532c23138SJohan Hovold			function = "gpio";
89632c23138SJohan Hovold			bias-disable;
89732c23138SJohan Hovold		};
89832c23138SJohan Hovold
89991c4431bSKrzysztof Kozlowski		reset-pins {
90032c23138SJohan Hovold			pins = "gpio105";
90132c23138SJohan Hovold			function = "gpio";
90232c23138SJohan Hovold			bias-disable;
90332c23138SJohan Hovold		};
90432c23138SJohan Hovold	};
90532c23138SJohan Hovold
906b4bb952eSJohan Hovold	nvme_reg_en: nvme-reg-en-state {
907b4bb952eSJohan Hovold		pins = "gpio135";
908b4bb952eSJohan Hovold		function = "gpio";
909b4bb952eSJohan Hovold		drive-strength = <2>;
910b4bb952eSJohan Hovold		bias-disable;
911b4bb952eSJohan Hovold	};
912b4bb952eSJohan Hovold
913b4bb952eSJohan Hovold	pcie2a_default: pcie2a-default-state {
914b4bb952eSJohan Hovold		clkreq-n-pins {
915b4bb952eSJohan Hovold			pins = "gpio142";
916b4bb952eSJohan Hovold			function = "pcie2a_clkreq";
917b4bb952eSJohan Hovold			drive-strength = <2>;
918b4bb952eSJohan Hovold			bias-pull-up;
919b4bb952eSJohan Hovold		};
920b4bb952eSJohan Hovold
921b4bb952eSJohan Hovold		perst-n-pins {
922b4bb952eSJohan Hovold			pins = "gpio143";
923b4bb952eSJohan Hovold			function = "gpio";
924b4bb952eSJohan Hovold			drive-strength = <2>;
925b4bb952eSJohan Hovold			bias-pull-down;
926b4bb952eSJohan Hovold		};
927b4bb952eSJohan Hovold
928b4bb952eSJohan Hovold		wake-n-pins {
929b4bb952eSJohan Hovold		       pins = "gpio145";
930b4bb952eSJohan Hovold		       function = "gpio";
931b4bb952eSJohan Hovold		       drive-strength = <2>;
932b4bb952eSJohan Hovold		       bias-pull-up;
933b4bb952eSJohan Hovold	       };
934b4bb952eSJohan Hovold	};
935b4bb952eSJohan Hovold
936176d54acSJohan Hovold	pcie3a_default: pcie3a-default-state {
937176d54acSJohan Hovold		clkreq-n-pins {
938176d54acSJohan Hovold			pins = "gpio150";
939176d54acSJohan Hovold			function = "pcie3a_clkreq";
940176d54acSJohan Hovold			drive-strength = <2>;
941176d54acSJohan Hovold			bias-pull-up;
942176d54acSJohan Hovold		};
943176d54acSJohan Hovold
944176d54acSJohan Hovold		perst-n-pins {
945176d54acSJohan Hovold			pins = "gpio151";
946176d54acSJohan Hovold			function = "gpio";
947176d54acSJohan Hovold			drive-strength = <2>;
948176d54acSJohan Hovold			bias-pull-down;
949176d54acSJohan Hovold		};
950176d54acSJohan Hovold
951176d54acSJohan Hovold		wake-n-pins {
952176d54acSJohan Hovold			pins = "gpio148";
953176d54acSJohan Hovold			function = "gpio";
954176d54acSJohan Hovold			drive-strength = <2>;
955176d54acSJohan Hovold			bias-pull-up;
956176d54acSJohan Hovold		};
957176d54acSJohan Hovold	};
958176d54acSJohan Hovold
959123b30a7SJohan Hovold	pcie4_default: pcie4-default-state {
960123b30a7SJohan Hovold		clkreq-n-pins {
961123b30a7SJohan Hovold			pins = "gpio140";
962123b30a7SJohan Hovold			function = "pcie4_clkreq";
963123b30a7SJohan Hovold			drive-strength = <2>;
964123b30a7SJohan Hovold			bias-pull-up;
965123b30a7SJohan Hovold		};
966123b30a7SJohan Hovold
967123b30a7SJohan Hovold		perst-n-pins {
968123b30a7SJohan Hovold			pins = "gpio141";
969123b30a7SJohan Hovold			function = "gpio";
970123b30a7SJohan Hovold			drive-strength = <2>;
971123b30a7SJohan Hovold			bias-pull-down;
972123b30a7SJohan Hovold		};
973123b30a7SJohan Hovold
974123b30a7SJohan Hovold		wake-n-pins {
975123b30a7SJohan Hovold			pins = "gpio139";
976123b30a7SJohan Hovold			function = "gpio";
977123b30a7SJohan Hovold			drive-strength = <2>;
978123b30a7SJohan Hovold			bias-pull-up;
979123b30a7SJohan Hovold		};
980123b30a7SJohan Hovold	};
981123b30a7SJohan Hovold
98232c23138SJohan Hovold	qup0_i2c4_default: qup0-i2c4-default-state {
98332c23138SJohan Hovold		pins = "gpio171", "gpio172";
98432c23138SJohan Hovold		function = "qup4";
98532c23138SJohan Hovold		bias-disable;
98632c23138SJohan Hovold		drive-strength = <16>;
98732c23138SJohan Hovold	};
98832c23138SJohan Hovold
98932c23138SJohan Hovold	qup2_i2c5_default: qup2-i2c5-default-state {
99032c23138SJohan Hovold		pins = "gpio81", "gpio82";
99132c23138SJohan Hovold		function = "qup21";
99232c23138SJohan Hovold		bias-disable;
99332c23138SJohan Hovold		drive-strength = <16>;
99432c23138SJohan Hovold	};
99532c23138SJohan Hovold
996f29077d8SSrinivas Kandagatla	spkr_1_sd_n_default: spkr-1-sd-n-default-state {
997f29077d8SSrinivas Kandagatla		perst-n-pins {
998f29077d8SSrinivas Kandagatla			pins = "gpio178";
999f29077d8SSrinivas Kandagatla			function = "gpio";
1000f29077d8SSrinivas Kandagatla			drive-strength = <16>;
1001f29077d8SSrinivas Kandagatla			bias-disable;
1002f29077d8SSrinivas Kandagatla			output-high;
1003f29077d8SSrinivas Kandagatla		};
1004f29077d8SSrinivas Kandagatla	};
1005f29077d8SSrinivas Kandagatla
1006f29077d8SSrinivas Kandagatla	spkr_2_sd_n_default: spkr-2-sd-n-default-state {
1007f29077d8SSrinivas Kandagatla		perst-n-pins {
1008f29077d8SSrinivas Kandagatla			pins = "gpio179";
1009f29077d8SSrinivas Kandagatla			function = "gpio";
1010f29077d8SSrinivas Kandagatla			drive-strength = <16>;
1011f29077d8SSrinivas Kandagatla			bias-disable;
1012f29077d8SSrinivas Kandagatla			output-high;
1013f29077d8SSrinivas Kandagatla		};
1014f29077d8SSrinivas Kandagatla	};
1015f29077d8SSrinivas Kandagatla
101632c23138SJohan Hovold	tpad_default: tpad-default-state {
101791c4431bSKrzysztof Kozlowski		int-n-pins {
101832c23138SJohan Hovold			pins = "gpio182";
101932c23138SJohan Hovold			function = "gpio";
102032c23138SJohan Hovold			bias-disable;
102132c23138SJohan Hovold		};
102232c23138SJohan Hovold	};
102332c23138SJohan Hovold
102432c23138SJohan Hovold	ts0_default: ts0-default-state {
102591c4431bSKrzysztof Kozlowski		int-n-pins {
102632c23138SJohan Hovold			pins = "gpio175";
102732c23138SJohan Hovold			function = "gpio";
1028e11978deSJohan Hovold			bias-disable;
102932c23138SJohan Hovold		};
103032c23138SJohan Hovold
103191c4431bSKrzysztof Kozlowski		reset-n-pins {
103232c23138SJohan Hovold			pins = "gpio99";
103332c23138SJohan Hovold			function = "gpio";
103432c23138SJohan Hovold			output-high;
103532c23138SJohan Hovold			drive-strength = <16>;
103632c23138SJohan Hovold		};
103732c23138SJohan Hovold	};
1038f29077d8SSrinivas Kandagatla
1039f29077d8SSrinivas Kandagatla	wcd_default: wcd-default-state {
1040f29077d8SSrinivas Kandagatla		reset-pins {
1041f29077d8SSrinivas Kandagatla			pins = "gpio106";
1042f29077d8SSrinivas Kandagatla			function = "gpio";
1043f29077d8SSrinivas Kandagatla			bias-disable;
1044f29077d8SSrinivas Kandagatla		};
1045f29077d8SSrinivas Kandagatla	};
104632c23138SJohan Hovold};
1047