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>
13*a607fe5eSBjorn Andersson#include <dt-bindings/input/gpio-keys.h>
14*a607fe5eSBjorn 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
3431863c52SManivannan Sadhasivam	thermal-zones {
3531863c52SManivannan Sadhasivam		skin-temp-thermal {
3631863c52SManivannan Sadhasivam			polling-delay-passive = <250>;
3731863c52SManivannan Sadhasivam			polling-delay = <0>;
3831863c52SManivannan Sadhasivam			thermal-sensors = <&pmk8280_adc_tm 5>;
3931863c52SManivannan Sadhasivam
4031863c52SManivannan Sadhasivam			trips {
4131863c52SManivannan Sadhasivam				skin_temp_alert0: trip-point0 {
4231863c52SManivannan Sadhasivam					temperature = <55000>;
4331863c52SManivannan Sadhasivam					hysteresis = <1000>;
4431863c52SManivannan Sadhasivam					type = "passive";
4531863c52SManivannan Sadhasivam				};
4631863c52SManivannan Sadhasivam
4731863c52SManivannan Sadhasivam				skin_temp_alert1: trip-point1 {
4831863c52SManivannan Sadhasivam					temperature = <58000>;
4931863c52SManivannan Sadhasivam					hysteresis = <1000>;
5031863c52SManivannan Sadhasivam					type = "passive";
5131863c52SManivannan Sadhasivam				};
5231863c52SManivannan Sadhasivam
5331863c52SManivannan Sadhasivam				skin-temp-crit {
5431863c52SManivannan Sadhasivam					temperature = <73000>;
5531863c52SManivannan Sadhasivam					hysteresis = <1000>;
5631863c52SManivannan Sadhasivam					type = "critical";
5731863c52SManivannan Sadhasivam				};
5831863c52SManivannan Sadhasivam			};
5931863c52SManivannan Sadhasivam
6031863c52SManivannan Sadhasivam			cooling-maps {
6131863c52SManivannan Sadhasivam				map0 {
6231863c52SManivannan Sadhasivam					trip = <&skin_temp_alert0>;
6331863c52SManivannan Sadhasivam					cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
6431863c52SManivannan Sadhasivam							 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
6531863c52SManivannan Sadhasivam							 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
6631863c52SManivannan Sadhasivam							 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
6731863c52SManivannan Sadhasivam				};
6831863c52SManivannan Sadhasivam
6931863c52SManivannan Sadhasivam				map1 {
7031863c52SManivannan Sadhasivam					trip = <&skin_temp_alert1>;
7131863c52SManivannan Sadhasivam					cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
7231863c52SManivannan Sadhasivam							 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
7331863c52SManivannan Sadhasivam							 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
7431863c52SManivannan Sadhasivam							 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
7531863c52SManivannan Sadhasivam				};
7631863c52SManivannan Sadhasivam			};
7731863c52SManivannan Sadhasivam		};
7831863c52SManivannan Sadhasivam	};
7931863c52SManivannan Sadhasivam
80*a607fe5eSBjorn Andersson	gpio-keys {
81*a607fe5eSBjorn Andersson		compatible = "gpio-keys";
82*a607fe5eSBjorn Andersson
83*a607fe5eSBjorn Andersson		pinctrl-names = "default";
84*a607fe5eSBjorn Andersson		pinctrl-0 = <&hall_int_n_default>;
85*a607fe5eSBjorn Andersson
86*a607fe5eSBjorn Andersson		switch-lid {
87*a607fe5eSBjorn Andersson			gpios = <&tlmm 107 GPIO_ACTIVE_LOW>;
88*a607fe5eSBjorn Andersson			linux,input-type = <EV_SW>;
89*a607fe5eSBjorn Andersson			linux,code = <SW_LID>;
90*a607fe5eSBjorn Andersson			wakeup-source;
91*a607fe5eSBjorn Andersson			wakeup-event-action = <EV_ACT_DEASSERTED>;
92*a607fe5eSBjorn Andersson		};
93*a607fe5eSBjorn Andersson	};
94*a607fe5eSBjorn Andersson
9532c23138SJohan Hovold	vreg_edp_bl: regulator-edp-bl {
9632c23138SJohan Hovold		compatible = "regulator-fixed";
9732c23138SJohan Hovold
9832c23138SJohan Hovold		regulator-name = "VBL9";
9932c23138SJohan Hovold		regulator-min-microvolt = <3600000>;
10032c23138SJohan Hovold		regulator-max-microvolt = <3600000>;
10132c23138SJohan Hovold
10232c23138SJohan Hovold		gpio = <&pmc8280_1_gpios 9 GPIO_ACTIVE_HIGH>;
10332c23138SJohan Hovold		enable-active-high;
10432c23138SJohan Hovold
10532c23138SJohan Hovold		pinctrl-names = "default";
10632c23138SJohan Hovold		pinctrl-0 = <&edp_bl_reg_en>;
10732c23138SJohan Hovold
10832c23138SJohan Hovold		regulator-boot-on;
10932c23138SJohan Hovold	};
11032c23138SJohan Hovold
11132c23138SJohan Hovold	vreg_misc_3p3: regulator-misc-3p3 {
11232c23138SJohan Hovold		compatible = "regulator-fixed";
11332c23138SJohan Hovold
11432c23138SJohan Hovold		regulator-name = "VCC3B";
11532c23138SJohan Hovold		regulator-min-microvolt = <3300000>;
11632c23138SJohan Hovold		regulator-max-microvolt = <3300000>;
11732c23138SJohan Hovold
11832c23138SJohan Hovold		gpio = <&pmc8280_1_gpios 1 GPIO_ACTIVE_HIGH>;
11932c23138SJohan Hovold		enable-active-high;
12032c23138SJohan Hovold
12132c23138SJohan Hovold		pinctrl-names = "default";
12232c23138SJohan Hovold		pinctrl-0 = <&misc_3p3_reg_en>;
12332c23138SJohan Hovold
12432c23138SJohan Hovold		regulator-boot-on;
12532c23138SJohan Hovold		regulator-always-on;
12632c23138SJohan Hovold	};
12732c23138SJohan Hovold};
12832c23138SJohan Hovold
12932c23138SJohan Hovold&apps_rsc {
13032c23138SJohan Hovold	pmc8280-1-rpmh-regulators {
13132c23138SJohan Hovold		compatible = "qcom,pm8350-rpmh-regulators";
13232c23138SJohan Hovold		qcom,pmic-id = "b";
13332c23138SJohan Hovold
13432c23138SJohan Hovold		vdd-l3-l5-supply = <&vreg_s11b>;
13532c23138SJohan Hovold
13632c23138SJohan Hovold		vreg_s11b: smps11 {
13732c23138SJohan Hovold			regulator-name = "vreg_s11b";
13832c23138SJohan Hovold			regulator-min-microvolt = <1272000>;
13932c23138SJohan Hovold			regulator-max-microvolt = <1272000>;
14032c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
14132c23138SJohan Hovold		};
14232c23138SJohan Hovold
14332c23138SJohan Hovold		vreg_l3b: ldo3 {
14432c23138SJohan Hovold			regulator-name = "vreg_l3b";
14532c23138SJohan Hovold			regulator-min-microvolt = <1200000>;
14632c23138SJohan Hovold			regulator-max-microvolt = <1200000>;
14732c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
14832c23138SJohan Hovold			regulator-boot-on;
14932c23138SJohan Hovold		};
15032c23138SJohan Hovold
15132c23138SJohan Hovold		vreg_l4b: ldo4 {
15232c23138SJohan Hovold			regulator-name = "vreg_l4b";
15332c23138SJohan Hovold			regulator-min-microvolt = <912000>;
15432c23138SJohan Hovold			regulator-max-microvolt = <912000>;
15532c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
15632c23138SJohan Hovold		};
15732c23138SJohan Hovold
15832c23138SJohan Hovold		vreg_l6b: ldo6 {
15932c23138SJohan Hovold			regulator-name = "vreg_l6b";
16032c23138SJohan Hovold			regulator-min-microvolt = <880000>;
16132c23138SJohan Hovold			regulator-max-microvolt = <880000>;
16232c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
16332c23138SJohan Hovold			regulator-boot-on;
164b47fac7aSKonrad Dybcio			regulator-always-on;	/* FIXME: VDD_A_EDP_0_0P9 */
16532c23138SJohan Hovold		};
16632c23138SJohan Hovold	};
16732c23138SJohan Hovold
16832c23138SJohan Hovold	pmc8280c-rpmh-regulators {
16932c23138SJohan Hovold		compatible = "qcom,pm8350c-rpmh-regulators";
17032c23138SJohan Hovold		qcom,pmic-id = "c";
17132c23138SJohan Hovold
17232c23138SJohan Hovold		vreg_l1c: ldo1 {
17332c23138SJohan Hovold			regulator-name = "vreg_l1c";
17432c23138SJohan Hovold			regulator-min-microvolt = <1800000>;
17532c23138SJohan Hovold			regulator-max-microvolt = <1800000>;
17632c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
17732c23138SJohan Hovold		};
17832c23138SJohan Hovold
17932c23138SJohan Hovold		vreg_l12c: ldo12 {
18032c23138SJohan Hovold			regulator-name = "vreg_l12c";
18132c23138SJohan Hovold			regulator-min-microvolt = <1800000>;
18232c23138SJohan Hovold			regulator-max-microvolt = <1800000>;
18332c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
18432c23138SJohan Hovold		};
18532c23138SJohan Hovold
18632c23138SJohan Hovold		vreg_l13c: ldo13 {
18732c23138SJohan Hovold			regulator-name = "vreg_l13c";
18832c23138SJohan Hovold			regulator-min-microvolt = <3072000>;
18932c23138SJohan Hovold			regulator-max-microvolt = <3072000>;
19032c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
19132c23138SJohan Hovold		};
19232c23138SJohan Hovold	};
19332c23138SJohan Hovold
19432c23138SJohan Hovold	pmc8280-2-rpmh-regulators {
19532c23138SJohan Hovold		compatible = "qcom,pm8350-rpmh-regulators";
19632c23138SJohan Hovold		qcom,pmic-id = "d";
19732c23138SJohan Hovold
19832c23138SJohan Hovold		vdd-l1-l4-supply = <&vreg_s11b>;
19932c23138SJohan Hovold
20032c23138SJohan Hovold		vreg_l3d: ldo3 {
20132c23138SJohan Hovold			regulator-name = "vreg_l3d";
20232c23138SJohan Hovold			regulator-min-microvolt = <1200000>;
20332c23138SJohan Hovold			regulator-max-microvolt = <1200000>;
20432c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
20532c23138SJohan Hovold		};
20632c23138SJohan Hovold
20732c23138SJohan Hovold		vreg_l4d: ldo4 {
20832c23138SJohan Hovold			regulator-name = "vreg_l4d";
20932c23138SJohan Hovold			regulator-min-microvolt = <1200000>;
21032c23138SJohan Hovold			regulator-max-microvolt = <1200000>;
21132c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
21232c23138SJohan Hovold		};
21332c23138SJohan Hovold
21432c23138SJohan Hovold		vreg_l7d: ldo7 {
21532c23138SJohan Hovold			regulator-name = "vreg_l7d";
21632c23138SJohan Hovold			regulator-min-microvolt = <3072000>;
21732c23138SJohan Hovold			regulator-max-microvolt = <3072000>;
21832c23138SJohan Hovold			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
21932c23138SJohan Hovold		};
22032c23138SJohan Hovold
22132c23138SJohan Hovold		vreg_l9d: ldo9 {
22232c23138SJohan Hovold			regulator-name = "vreg_l9d";
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};
22932c23138SJohan Hovold
23032c23138SJohan Hovold&pmc8280c_lpg {
23132c23138SJohan Hovold	status = "okay";
23232c23138SJohan Hovold};
23332c23138SJohan Hovold
2347c015134SManivannan Sadhasivam&pmk8280_adc_tm {
2357c015134SManivannan Sadhasivam	status = "okay";
2367c015134SManivannan Sadhasivam
2377c015134SManivannan Sadhasivam	sys-therm@0 {
2387c015134SManivannan Sadhasivam		reg = <0>;
2397c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM1_100K_PU(1)>;
2407c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
2417c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
2427c015134SManivannan Sadhasivam		qcom,ratiometric;
2437c015134SManivannan Sadhasivam	};
2447c015134SManivannan Sadhasivam
2457c015134SManivannan Sadhasivam	sys-therm@1 {
2467c015134SManivannan Sadhasivam		reg = <1>;
2477c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM2_100K_PU(1)>;
2487c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
2497c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
2507c015134SManivannan Sadhasivam		qcom,ratiometric;
2517c015134SManivannan Sadhasivam	};
2527c015134SManivannan Sadhasivam
2537c015134SManivannan Sadhasivam	sys-therm@2 {
2547c015134SManivannan Sadhasivam		reg = <2>;
2557c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM3_100K_PU(1)>;
2567c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
2577c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
2587c015134SManivannan Sadhasivam		qcom,ratiometric;
2597c015134SManivannan Sadhasivam	};
2607c015134SManivannan Sadhasivam
2617c015134SManivannan Sadhasivam	sys-therm@3 {
2627c015134SManivannan Sadhasivam		reg = <3>;
2637c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM4_100K_PU(1)>;
2647c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
2657c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
2667c015134SManivannan Sadhasivam		qcom,ratiometric;
2677c015134SManivannan Sadhasivam	};
2687c015134SManivannan Sadhasivam
2697c015134SManivannan Sadhasivam	sys-therm@4 {
2707c015134SManivannan Sadhasivam		reg = <4>;
2717c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM1_100K_PU(3)>;
2727c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
2737c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
2747c015134SManivannan Sadhasivam		qcom,ratiometric;
2757c015134SManivannan Sadhasivam	};
2767c015134SManivannan Sadhasivam
2777c015134SManivannan Sadhasivam	sys-therm@5 {
2787c015134SManivannan Sadhasivam		reg = <5>;
2797c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM2_100K_PU(3)>;
2807c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
2817c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
2827c015134SManivannan Sadhasivam		qcom,ratiometric;
2837c015134SManivannan Sadhasivam	};
2847c015134SManivannan Sadhasivam
2857c015134SManivannan Sadhasivam	sys-therm@6 {
2867c015134SManivannan Sadhasivam		reg = <6>;
2877c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM3_100K_PU(3)>;
2887c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
2897c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
2907c015134SManivannan Sadhasivam		qcom,ratiometric;
2917c015134SManivannan Sadhasivam	};
2927c015134SManivannan Sadhasivam
2937c015134SManivannan Sadhasivam	sys-therm@7 {
2947c015134SManivannan Sadhasivam		reg = <7>;
2957c015134SManivannan Sadhasivam		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM4_100K_PU(3)>;
2967c015134SManivannan Sadhasivam		qcom,hw-settle-time-us = <200>;
2977c015134SManivannan Sadhasivam		qcom,avg-samples = <2>;
2987c015134SManivannan Sadhasivam		qcom,ratiometric;
2997c015134SManivannan Sadhasivam	};
3007c015134SManivannan Sadhasivam};
3017c015134SManivannan Sadhasivam
30232c23138SJohan Hovold&pmk8280_pon_pwrkey {
30332c23138SJohan Hovold	status = "okay";
30432c23138SJohan Hovold};
30532c23138SJohan Hovold
3067858c676SManivannan Sadhasivam&pmk8280_pon_resin {
3077858c676SManivannan Sadhasivam	status = "okay";
3087858c676SManivannan Sadhasivam};
3097858c676SManivannan Sadhasivam
3109a6b3042SManivannan Sadhasivam&pmk8280_vadc {
3119a6b3042SManivannan Sadhasivam	status = "okay";
3129a6b3042SManivannan Sadhasivam
3139a6b3042SManivannan Sadhasivam	pmic-die-temp@3 {
3149a6b3042SManivannan Sadhasivam		reg = <PMK8350_ADC7_DIE_TEMP>;
3159a6b3042SManivannan Sadhasivam		qcom,pre-scaling = <1 1>;
3169a6b3042SManivannan Sadhasivam	};
3179a6b3042SManivannan Sadhasivam
3189a6b3042SManivannan Sadhasivam	xo-therm@44 {
3199a6b3042SManivannan Sadhasivam		reg = <PMK8350_ADC7_AMUX_THM1_100K_PU>;
3209a6b3042SManivannan Sadhasivam		qcom,hw-settle-time = <200>;
3219a6b3042SManivannan Sadhasivam		qcom,ratiometric;
3229a6b3042SManivannan Sadhasivam	};
3233375151aSManivannan Sadhasivam
3243375151aSManivannan Sadhasivam	pmic-die-temp@103 {
3253375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_DIE_TEMP(1)>;
3263375151aSManivannan Sadhasivam		qcom,pre-scaling = <1 1>;
3273375151aSManivannan Sadhasivam	};
3283375151aSManivannan Sadhasivam
3293375151aSManivannan Sadhasivam	sys-therm@144 {
3303375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM1_100K_PU(1)>;
3313375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
3323375151aSManivannan Sadhasivam		qcom,ratiometric;
3333375151aSManivannan Sadhasivam	};
3343375151aSManivannan Sadhasivam
3353375151aSManivannan Sadhasivam	sys-therm@145 {
3363375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM2_100K_PU(1)>;
3373375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
3383375151aSManivannan Sadhasivam		qcom,ratiometric;
3393375151aSManivannan Sadhasivam	};
3403375151aSManivannan Sadhasivam
3413375151aSManivannan Sadhasivam	sys-therm@146 {
3423375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM3_100K_PU(1)>;
3433375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
3443375151aSManivannan Sadhasivam		qcom,ratiometric;
3453375151aSManivannan Sadhasivam	};
3463375151aSManivannan Sadhasivam
3473375151aSManivannan Sadhasivam	sys-therm@147 {
3483375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM4_100K_PU(1)>;
3493375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
3503375151aSManivannan Sadhasivam		qcom,ratiometric;
3513375151aSManivannan Sadhasivam	};
3523375151aSManivannan Sadhasivam
3533375151aSManivannan Sadhasivam	pmic-die-temp@303 {
3543375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_DIE_TEMP(3)>;
3553375151aSManivannan Sadhasivam		qcom,pre-scaling = <1 1>;
3563375151aSManivannan Sadhasivam	};
3573375151aSManivannan Sadhasivam
3583375151aSManivannan Sadhasivam	sys-therm@344 {
3593375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM1_100K_PU(3)>;
3603375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
3613375151aSManivannan Sadhasivam		qcom,ratiometric;
3623375151aSManivannan Sadhasivam	};
3633375151aSManivannan Sadhasivam
3643375151aSManivannan Sadhasivam	sys-therm@345 {
3653375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM2_100K_PU(3)>;
3663375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
3673375151aSManivannan Sadhasivam		qcom,ratiometric;
3683375151aSManivannan Sadhasivam	};
3693375151aSManivannan Sadhasivam
3703375151aSManivannan Sadhasivam	sys-therm@346 {
3713375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM3_100K_PU(3)>;
3723375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
3733375151aSManivannan Sadhasivam		qcom,ratiometric;
3743375151aSManivannan Sadhasivam	};
3753375151aSManivannan Sadhasivam
3763375151aSManivannan Sadhasivam	sys-therm@347 {
3773375151aSManivannan Sadhasivam		reg = <PM8350_ADC7_AMUX_THM4_100K_PU(3)>;
3783375151aSManivannan Sadhasivam		qcom,hw-settle-time = <200>;
3793375151aSManivannan Sadhasivam		qcom,ratiometric;
3803375151aSManivannan Sadhasivam	};
3819d41cd17SManivannan Sadhasivam
3829d41cd17SManivannan Sadhasivam	pmic-die-temp@403 {
3839d41cd17SManivannan Sadhasivam		reg = <PMR735A_ADC7_DIE_TEMP>;
3849d41cd17SManivannan Sadhasivam		qcom,pre-scaling = <1 1>;
3859d41cd17SManivannan Sadhasivam	};
3869a6b3042SManivannan Sadhasivam};
3879a6b3042SManivannan Sadhasivam
38832c23138SJohan Hovold&qup0 {
38932c23138SJohan Hovold	status = "okay";
39032c23138SJohan Hovold};
39132c23138SJohan Hovold
39232c23138SJohan Hovold&qup0_i2c4 {
39332c23138SJohan Hovold	clock-frequency = <400000>;
39432c23138SJohan Hovold
39532c23138SJohan Hovold	pinctrl-names = "default";
39697cc7ab3SJohan Hovold	pinctrl-0 = <&qup0_i2c4_default>;
39732c23138SJohan Hovold
39832c23138SJohan Hovold	status = "okay";
39932c23138SJohan Hovold
40032c23138SJohan Hovold	/* FIXME: verify */
40132c23138SJohan Hovold	touchscreen@10 {
40232c23138SJohan Hovold		compatible = "hid-over-i2c";
40332c23138SJohan Hovold		reg = <0x10>;
40497cc7ab3SJohan Hovold
40532c23138SJohan Hovold		hid-descr-addr = <0x1>;
40632c23138SJohan Hovold		interrupts-extended = <&tlmm 175 IRQ_TYPE_LEVEL_LOW>;
40732c23138SJohan Hovold		vdd-supply = <&vreg_misc_3p3>;
40897cc7ab3SJohan Hovold
40997cc7ab3SJohan Hovold		pinctrl-names = "default";
41097cc7ab3SJohan Hovold		pinctrl-0 = <&ts0_default>;
41132c23138SJohan Hovold	};
41232c23138SJohan Hovold};
41332c23138SJohan Hovold
41432c23138SJohan Hovold&qup1 {
41532c23138SJohan Hovold	status = "okay";
41632c23138SJohan Hovold};
41732c23138SJohan Hovold
41832c23138SJohan Hovold&qup2 {
41932c23138SJohan Hovold	status = "okay";
42032c23138SJohan Hovold};
42132c23138SJohan Hovold
42232c23138SJohan Hovold&qup2_i2c5 {
42332c23138SJohan Hovold	clock-frequency = <400000>;
42432c23138SJohan Hovold
42532c23138SJohan Hovold	pinctrl-names = "default";
42697cc7ab3SJohan Hovold	pinctrl-0 = <&qup2_i2c5_default>;
42732c23138SJohan Hovold
42832c23138SJohan Hovold	status = "okay";
42932c23138SJohan Hovold
430ca1ce720SJohan Hovold	touchpad@15 {
431ca1ce720SJohan Hovold		compatible = "hid-over-i2c";
432ca1ce720SJohan Hovold		reg = <0x15>;
433ca1ce720SJohan Hovold
434ca1ce720SJohan Hovold		hid-descr-addr = <0x1>;
435ca1ce720SJohan Hovold		interrupts-extended = <&tlmm 182 IRQ_TYPE_LEVEL_LOW>;
436ca1ce720SJohan Hovold		vdd-supply = <&vreg_misc_3p3>;
437ca1ce720SJohan Hovold
438ca1ce720SJohan Hovold		pinctrl-names = "default";
439ca1ce720SJohan Hovold		pinctrl-0 = <&tpad_default>;
440ca1ce720SJohan Hovold
441ca1ce720SJohan Hovold		wakeup-source;
442ca1ce720SJohan Hovold
443ca1ce720SJohan Hovold		status = "disabled";
444ca1ce720SJohan Hovold	};
445ca1ce720SJohan Hovold
44632c23138SJohan Hovold	touchpad@2c {
44732c23138SJohan Hovold		compatible = "hid-over-i2c";
44832c23138SJohan Hovold		reg = <0x2c>;
44997cc7ab3SJohan Hovold
45032c23138SJohan Hovold		hid-descr-addr = <0x20>;
45132c23138SJohan Hovold		interrupts-extended = <&tlmm 182 IRQ_TYPE_LEVEL_LOW>;
45232c23138SJohan Hovold		vdd-supply = <&vreg_misc_3p3>;
45397cc7ab3SJohan Hovold
45497cc7ab3SJohan Hovold		pinctrl-names = "default";
45597cc7ab3SJohan Hovold		pinctrl-0 = <&tpad_default>;
45670934652SJohan Hovold
45770934652SJohan Hovold		wakeup-source;
45832c23138SJohan Hovold	};
45932c23138SJohan Hovold
46032c23138SJohan Hovold	keyboard@68 {
46132c23138SJohan Hovold		compatible = "hid-over-i2c";
46232c23138SJohan Hovold		reg = <0x68>;
46397cc7ab3SJohan Hovold
46432c23138SJohan Hovold		hid-descr-addr = <0x1>;
46532c23138SJohan Hovold		interrupts-extended = <&tlmm 104 IRQ_TYPE_LEVEL_LOW>;
46632c23138SJohan Hovold		vdd-supply = <&vreg_misc_3p3>;
46797cc7ab3SJohan Hovold
46897cc7ab3SJohan Hovold		pinctrl-names = "default";
46997cc7ab3SJohan Hovold		pinctrl-0 = <&kybd_default>;
47070934652SJohan Hovold
47170934652SJohan Hovold		wakeup-source;
47232c23138SJohan Hovold	};
47332c23138SJohan Hovold};
47432c23138SJohan Hovold
47532c23138SJohan Hovold&remoteproc_adsp {
47629f894ecSManivannan Sadhasivam	firmware-name = "qcom/sc8280xp/LENOVO/21BX/qcadsp8280.mbn";
47732c23138SJohan Hovold
47832c23138SJohan Hovold	status = "okay";
47932c23138SJohan Hovold};
48032c23138SJohan Hovold
48132c23138SJohan Hovold&remoteproc_nsp0 {
48229f894ecSManivannan Sadhasivam	firmware-name = "qcom/sc8280xp/LENOVO/21BX/qccdsp8280.mbn";
48332c23138SJohan Hovold
48432c23138SJohan Hovold	status = "okay";
48532c23138SJohan Hovold};
48632c23138SJohan Hovold
48732c23138SJohan Hovold&usb_0 {
48832c23138SJohan Hovold	status = "okay";
48932c23138SJohan Hovold};
49032c23138SJohan Hovold
49132c23138SJohan Hovold&usb_0_dwc3 {
49232c23138SJohan Hovold	/* TODO: Define USB-C connector properly */
49332c23138SJohan Hovold	dr_mode = "host";
49432c23138SJohan Hovold};
49532c23138SJohan Hovold
49632c23138SJohan Hovold&usb_0_hsphy {
49732c23138SJohan Hovold	vdda-pll-supply = <&vreg_l9d>;
49832c23138SJohan Hovold	vdda18-supply = <&vreg_l1c>;
49932c23138SJohan Hovold	vdda33-supply = <&vreg_l7d>;
50032c23138SJohan Hovold
50132c23138SJohan Hovold	status = "okay";
50232c23138SJohan Hovold};
50332c23138SJohan Hovold
50432c23138SJohan Hovold&usb_0_qmpphy {
50532c23138SJohan Hovold	vdda-phy-supply = <&vreg_l9d>;
50632c23138SJohan Hovold	vdda-pll-supply = <&vreg_l4d>;
50732c23138SJohan Hovold
50832c23138SJohan Hovold	status = "okay";
50932c23138SJohan Hovold};
51032c23138SJohan Hovold
51132c23138SJohan Hovold&usb_1 {
51232c23138SJohan Hovold	status = "okay";
51332c23138SJohan Hovold};
51432c23138SJohan Hovold
51532c23138SJohan Hovold&usb_1_dwc3 {
51632c23138SJohan Hovold	/* TODO: Define USB-C connector properly */
51732c23138SJohan Hovold	dr_mode = "host";
51832c23138SJohan Hovold};
51932c23138SJohan Hovold
52032c23138SJohan Hovold&usb_1_hsphy {
52132c23138SJohan Hovold	vdda-pll-supply = <&vreg_l4b>;
52232c23138SJohan Hovold	vdda18-supply = <&vreg_l1c>;
52332c23138SJohan Hovold	vdda33-supply = <&vreg_l13c>;
52432c23138SJohan Hovold
52532c23138SJohan Hovold	status = "okay";
52632c23138SJohan Hovold};
52732c23138SJohan Hovold
52832c23138SJohan Hovold&usb_1_qmpphy {
52932c23138SJohan Hovold	vdda-phy-supply = <&vreg_l4b>;
53032c23138SJohan Hovold	vdda-pll-supply = <&vreg_l3b>;
53132c23138SJohan Hovold
53232c23138SJohan Hovold	status = "okay";
53332c23138SJohan Hovold};
53432c23138SJohan Hovold
53532c23138SJohan Hovold&xo_board_clk {
53632c23138SJohan Hovold	clock-frequency = <38400000>;
53732c23138SJohan Hovold};
53832c23138SJohan Hovold
53932c23138SJohan Hovold/* PINCTRL */
54032c23138SJohan Hovold
54132c23138SJohan Hovold&pmc8280_1_gpios {
54232c23138SJohan Hovold	edp_bl_en: edp-bl-en-state {
54332c23138SJohan Hovold		pins = "gpio8";
54432c23138SJohan Hovold		function = "normal";
54532c23138SJohan Hovold	};
54632c23138SJohan Hovold
54732c23138SJohan Hovold	edp_bl_reg_en: edp-bl-reg-en-state {
54832c23138SJohan Hovold		pins = "gpio9";
54932c23138SJohan Hovold		function = "normal";
55032c23138SJohan Hovold	};
55132c23138SJohan Hovold
55232c23138SJohan Hovold	misc_3p3_reg_en: misc-3p3-reg-en-state {
55332c23138SJohan Hovold		pins = "gpio1";
55432c23138SJohan Hovold		function = "normal";
55532c23138SJohan Hovold	};
55632c23138SJohan Hovold};
55732c23138SJohan Hovold
55832c23138SJohan Hovold&pmc8280c_gpios {
55932c23138SJohan Hovold	edp_bl_pwm: edp-bl-pwm-state {
56032c23138SJohan Hovold		pins = "gpio8";
56132c23138SJohan Hovold		function = "func1";
56232c23138SJohan Hovold	};
56332c23138SJohan Hovold};
56432c23138SJohan Hovold
56532c23138SJohan Hovold&tlmm {
56632c23138SJohan Hovold	gpio-reserved-ranges = <70 2>, <74 6>, <83 4>, <125 2>, <128 2>, <154 7>;
56732c23138SJohan Hovold
568*a607fe5eSBjorn Andersson	hall_int_n_default: hall-int-n-state {
569*a607fe5eSBjorn Andersson		pins = "gpio107";
570*a607fe5eSBjorn Andersson		function = "gpio";
571*a607fe5eSBjorn Andersson		input-enable;
572*a607fe5eSBjorn Andersson		bias-disable;
573*a607fe5eSBjorn Andersson	};
574*a607fe5eSBjorn Andersson
57532c23138SJohan Hovold	kybd_default: kybd-default-state {
57691c4431bSKrzysztof Kozlowski		disable-pins {
57732c23138SJohan Hovold			pins = "gpio102";
57832c23138SJohan Hovold			function = "gpio";
57932c23138SJohan Hovold			output-low;
58032c23138SJohan Hovold		};
58132c23138SJohan Hovold
58291c4431bSKrzysztof Kozlowski		int-n-pins {
58332c23138SJohan Hovold			pins = "gpio104";
58432c23138SJohan Hovold			function = "gpio";
58532c23138SJohan Hovold			bias-disable;
58632c23138SJohan Hovold		};
58732c23138SJohan Hovold
58891c4431bSKrzysztof Kozlowski		reset-pins {
58932c23138SJohan Hovold			pins = "gpio105";
59032c23138SJohan Hovold			function = "gpio";
59132c23138SJohan Hovold			bias-disable;
59232c23138SJohan Hovold		};
59332c23138SJohan Hovold	};
59432c23138SJohan Hovold
59532c23138SJohan Hovold	qup0_i2c4_default: qup0-i2c4-default-state {
59632c23138SJohan Hovold		pins = "gpio171", "gpio172";
59732c23138SJohan Hovold		function = "qup4";
59832c23138SJohan Hovold		bias-disable;
59932c23138SJohan Hovold		drive-strength = <16>;
60032c23138SJohan Hovold	};
60132c23138SJohan Hovold
60232c23138SJohan Hovold	qup2_i2c5_default: qup2-i2c5-default-state {
60332c23138SJohan Hovold		pins = "gpio81", "gpio82";
60432c23138SJohan Hovold		function = "qup21";
60532c23138SJohan Hovold		bias-disable;
60632c23138SJohan Hovold		drive-strength = <16>;
60732c23138SJohan Hovold	};
60832c23138SJohan Hovold
60932c23138SJohan Hovold	tpad_default: tpad-default-state {
61091c4431bSKrzysztof Kozlowski		int-n-pins {
61132c23138SJohan Hovold			pins = "gpio182";
61232c23138SJohan Hovold			function = "gpio";
61332c23138SJohan Hovold			bias-disable;
61432c23138SJohan Hovold		};
61532c23138SJohan Hovold	};
61632c23138SJohan Hovold
61732c23138SJohan Hovold	ts0_default: ts0-default-state {
61891c4431bSKrzysztof Kozlowski		int-n-pins {
61932c23138SJohan Hovold			pins = "gpio175";
62032c23138SJohan Hovold			function = "gpio";
621e11978deSJohan Hovold			bias-disable;
62232c23138SJohan Hovold		};
62332c23138SJohan Hovold
62491c4431bSKrzysztof Kozlowski		reset-n-pins {
62532c23138SJohan Hovold			pins = "gpio99";
62632c23138SJohan Hovold			function = "gpio";
62732c23138SJohan Hovold			output-high;
62832c23138SJohan Hovold			drive-strength = <16>;
62932c23138SJohan Hovold		};
63032c23138SJohan Hovold	};
63132c23138SJohan Hovold};
632