xref: /linux/scripts/dtc/include-prefixes/arm64/qcom/sc8280xp-huawei-gaokun3.dts (revision bbfd5594756011167b8f8de9a00e0c946afda1e6)
11401ae5cSPengyu Luo// SPDX-License-Identifier: BSD-3-Clause
21401ae5cSPengyu Luo/*
31401ae5cSPengyu Luo * Copyright (c) 2021, The Linux Foundation. All rights reserved.
41401ae5cSPengyu Luo * Copyright (c) 2022, Linaro Limited
51401ae5cSPengyu Luo *
61401ae5cSPengyu Luo * Copyright (c) 2024, Tianyu Gao <gty0622@gmail.com>
71401ae5cSPengyu Luo * Copyright (c) 2024, Xuecong Chen <chenxuecong2009@outlook.com>
81401ae5cSPengyu Luo *
91401ae5cSPengyu Luo * Copyright (c) 2024, Pengyu Luo <mitltlatltl@gmail.com>
101401ae5cSPengyu Luo */
111401ae5cSPengyu Luo
121401ae5cSPengyu Luo/dts-v1/;
131401ae5cSPengyu Luo
141401ae5cSPengyu Luo#include <dt-bindings/iio/qcom,spmi-adc7-pm8350.h>
151401ae5cSPengyu Luo#include <dt-bindings/gpio/gpio.h>
161401ae5cSPengyu Luo#include <dt-bindings/input/gpio-keys.h>
171401ae5cSPengyu Luo#include <dt-bindings/input/input.h>
181401ae5cSPengyu Luo#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
191401ae5cSPengyu Luo#include <dt-bindings/phy/phy.h>
201401ae5cSPengyu Luo
211401ae5cSPengyu Luo#include "sc8280xp.dtsi"
221401ae5cSPengyu Luo#include "sc8280xp-pmics.dtsi"
231401ae5cSPengyu Luo
241401ae5cSPengyu Luo/ {
251401ae5cSPengyu Luo	chassis-type = "tablet";
261401ae5cSPengyu Luo	model = "Matebook E Go";
271401ae5cSPengyu Luo	compatible = "huawei,gaokun3", "qcom,sc8280xp";
281401ae5cSPengyu Luo
291401ae5cSPengyu Luo	aliases {
301401ae5cSPengyu Luo		i2c4 = &i2c4;
31*0b6d8f9dSPengyu Luo		i2c15 = &i2c15;
321401ae5cSPengyu Luo		serial1 = &uart2;
331401ae5cSPengyu Luo	};
341401ae5cSPengyu Luo
351401ae5cSPengyu Luo	chosen {
361401ae5cSPengyu Luo		#address-cells = <2>;
371401ae5cSPengyu Luo		#size-cells = <2>;
381401ae5cSPengyu Luo		ranges;
391401ae5cSPengyu Luo
401401ae5cSPengyu Luo		framebuffer0: framebuffer@c6200000 {
411401ae5cSPengyu Luo			compatible = "simple-framebuffer";
421401ae5cSPengyu Luo			reg = <0x0 0xc6200000 0x0 0x02400000>;
431401ae5cSPengyu Luo			width = <1600>;
441401ae5cSPengyu Luo			height = <2560>;
451401ae5cSPengyu Luo			stride = <(1600 * 4)>;
461401ae5cSPengyu Luo			format = "a8r8g8b8";
471401ae5cSPengyu Luo		};
481401ae5cSPengyu Luo	};
491401ae5cSPengyu Luo
501401ae5cSPengyu Luo	wcd938x: audio-codec {
511401ae5cSPengyu Luo		compatible = "qcom,wcd9380-codec";
521401ae5cSPengyu Luo
531401ae5cSPengyu Luo		pinctrl-0 = <&wcd_default>;
541401ae5cSPengyu Luo		pinctrl-names = "default";
551401ae5cSPengyu Luo
561401ae5cSPengyu Luo		reset-gpios = <&tlmm 106 GPIO_ACTIVE_LOW>;
571401ae5cSPengyu Luo
581401ae5cSPengyu Luo		vdd-buck-supply = <&vreg_s10b>;
591401ae5cSPengyu Luo		vdd-rxtx-supply = <&vreg_s10b>;
601401ae5cSPengyu Luo		vdd-io-supply = <&vreg_s10b>;
611401ae5cSPengyu Luo		vdd-mic-bias-supply = <&vreg_bob>;
621401ae5cSPengyu Luo
631401ae5cSPengyu Luo		qcom,micbias1-microvolt = <1800000>;
641401ae5cSPengyu Luo		qcom,micbias2-microvolt = <1800000>;
651401ae5cSPengyu Luo		qcom,micbias3-microvolt = <1800000>;
661401ae5cSPengyu Luo		qcom,micbias4-microvolt = <1800000>;
671401ae5cSPengyu Luo		qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>;
681401ae5cSPengyu Luo		qcom,mbhc-headset-vthreshold-microvolt = <1700000>;
691401ae5cSPengyu Luo		qcom,mbhc-headphone-vthreshold-microvolt = <50000>;
701401ae5cSPengyu Luo		qcom,rx-device = <&wcd_rx>;
711401ae5cSPengyu Luo		qcom,tx-device = <&wcd_tx>;
721401ae5cSPengyu Luo
731401ae5cSPengyu Luo		#sound-dai-cells = <1>;
741401ae5cSPengyu Luo	};
751401ae5cSPengyu Luo
761401ae5cSPengyu Luo	gpio-keys {
771401ae5cSPengyu Luo		compatible = "gpio-keys";
781401ae5cSPengyu Luo
791401ae5cSPengyu Luo		pinctrl-0 = <&mode_pin_active>, <&vol_up_n>;
801401ae5cSPengyu Luo		pinctrl-names = "default";
811401ae5cSPengyu Luo
821401ae5cSPengyu Luo		key-vol-up {
831401ae5cSPengyu Luo			label = "Volume Up";
841401ae5cSPengyu Luo			gpios = <&pmc8280_1_gpios 6 GPIO_ACTIVE_LOW>;
851401ae5cSPengyu Luo			linux,code = <KEY_VOLUMEUP>;
861401ae5cSPengyu Luo			debounce-interval = <15>;
871401ae5cSPengyu Luo			linux,can-disable;
881401ae5cSPengyu Luo			wakeup-source;
891401ae5cSPengyu Luo		};
901401ae5cSPengyu Luo
911401ae5cSPengyu Luo		switch-mode {
921401ae5cSPengyu Luo			label = "Tablet Mode Switch";
931401ae5cSPengyu Luo			gpios = <&tlmm 26 GPIO_ACTIVE_HIGH>;
941401ae5cSPengyu Luo			linux,input-type = <EV_SW>;
951401ae5cSPengyu Luo			linux,code = <SW_TABLET_MODE>;
961401ae5cSPengyu Luo			debounce-interval = <10>;
971401ae5cSPengyu Luo			wakeup-source;
981401ae5cSPengyu Luo		};
991401ae5cSPengyu Luo	};
1001401ae5cSPengyu Luo
1011401ae5cSPengyu Luo	vreg_misc_3p3: regulator-misc-3p3 {
1021401ae5cSPengyu Luo		compatible = "regulator-fixed";
1031401ae5cSPengyu Luo
1041401ae5cSPengyu Luo		regulator-name = "VCC3B";
1051401ae5cSPengyu Luo		regulator-min-microvolt = <3300000>;
1061401ae5cSPengyu Luo		regulator-max-microvolt = <3300000>;
1071401ae5cSPengyu Luo
1081401ae5cSPengyu Luo		gpio = <&pmc8280_1_gpios 1 GPIO_ACTIVE_HIGH>;
1091401ae5cSPengyu Luo		enable-active-high;
1101401ae5cSPengyu Luo
1111401ae5cSPengyu Luo		pinctrl-0 = <&misc_3p3_reg_en>;
1121401ae5cSPengyu Luo		pinctrl-names = "default";
1131401ae5cSPengyu Luo
1141401ae5cSPengyu Luo		regulator-boot-on;
1151401ae5cSPengyu Luo		regulator-always-on;
1161401ae5cSPengyu Luo	};
1171401ae5cSPengyu Luo
1181401ae5cSPengyu Luo	vreg_nvme: regulator-nvme {
1191401ae5cSPengyu Luo		compatible = "regulator-fixed";
1201401ae5cSPengyu Luo
1211401ae5cSPengyu Luo		regulator-name = "VCC3_SSD";
1221401ae5cSPengyu Luo		regulator-min-microvolt = <3300000>;
1231401ae5cSPengyu Luo		regulator-max-microvolt = <3300000>;
1241401ae5cSPengyu Luo
1251401ae5cSPengyu Luo		gpio = <&tlmm 135 GPIO_ACTIVE_HIGH>;
1261401ae5cSPengyu Luo		enable-active-high;
1271401ae5cSPengyu Luo
1281401ae5cSPengyu Luo		pinctrl-0 = <&nvme_reg_en>;
1291401ae5cSPengyu Luo		pinctrl-names = "default";
1301401ae5cSPengyu Luo
1311401ae5cSPengyu Luo		regulator-boot-on;
1321401ae5cSPengyu Luo	};
1331401ae5cSPengyu Luo
1341401ae5cSPengyu Luo	vreg_vph_pwr: regulator-vph-pwr {
1351401ae5cSPengyu Luo		compatible = "regulator-fixed";
1361401ae5cSPengyu Luo
1371401ae5cSPengyu Luo		regulator-name = "VPH_VCC3R9";
1381401ae5cSPengyu Luo		regulator-min-microvolt = <3900000>;
1391401ae5cSPengyu Luo		regulator-max-microvolt = <3900000>;
1401401ae5cSPengyu Luo
1411401ae5cSPengyu Luo		regulator-always-on;
1421401ae5cSPengyu Luo	};
1431401ae5cSPengyu Luo
1441401ae5cSPengyu Luo	vreg_wlan: regulator-wlan {
1451401ae5cSPengyu Luo		compatible = "regulator-fixed";
1461401ae5cSPengyu Luo
1471401ae5cSPengyu Luo		regulator-name = "VCC_WLAN_3R9";
1481401ae5cSPengyu Luo		regulator-min-microvolt = <3900000>;
1491401ae5cSPengyu Luo		regulator-max-microvolt = <3900000>;
1501401ae5cSPengyu Luo
1511401ae5cSPengyu Luo		gpio = <&pmr735a_gpios 1 GPIO_ACTIVE_HIGH>;
1521401ae5cSPengyu Luo		enable-active-high;
1531401ae5cSPengyu Luo
1541401ae5cSPengyu Luo		pinctrl-0 = <&hastings_reg_en>;
1551401ae5cSPengyu Luo		pinctrl-names = "default";
1561401ae5cSPengyu Luo
1571401ae5cSPengyu Luo		regulator-boot-on;
1581401ae5cSPengyu Luo	};
1591401ae5cSPengyu Luo
1601401ae5cSPengyu Luo	reserved-memory {
1611401ae5cSPengyu Luo		gpu_mem: gpu-mem@8bf00000 {
1621401ae5cSPengyu Luo			reg = <0 0x8bf00000 0 0x2000>;
1631401ae5cSPengyu Luo			no-map;
1641401ae5cSPengyu Luo		};
1651401ae5cSPengyu Luo
1661401ae5cSPengyu Luo		linux,cma {
1671401ae5cSPengyu Luo			compatible = "shared-dma-pool";
1681401ae5cSPengyu Luo			size = <0x0 0x8000000>;
1691401ae5cSPengyu Luo			reusable;
1701401ae5cSPengyu Luo			linux,cma-default;
1711401ae5cSPengyu Luo		};
1721401ae5cSPengyu Luo	};
1731401ae5cSPengyu Luo
1741401ae5cSPengyu Luo	thermal-zones {
1751401ae5cSPengyu Luo		skin-temp-thermal {
1761401ae5cSPengyu Luo			polling-delay-passive = <250>;
1771401ae5cSPengyu Luo
1781401ae5cSPengyu Luo			thermal-sensors = <&pmk8280_adc_tm 5>;
1791401ae5cSPengyu Luo
1801401ae5cSPengyu Luo			trips {
1811401ae5cSPengyu Luo				skin_temp_alert0: trip-point0 {
1821401ae5cSPengyu Luo					temperature = <55000>;
1831401ae5cSPengyu Luo					hysteresis = <1000>;
1841401ae5cSPengyu Luo					type = "passive";
1851401ae5cSPengyu Luo				};
1861401ae5cSPengyu Luo
1871401ae5cSPengyu Luo				skin_temp_alert1: trip-point1 {
1881401ae5cSPengyu Luo					temperature = <58000>;
1891401ae5cSPengyu Luo					hysteresis = <1000>;
1901401ae5cSPengyu Luo					type = "passive";
1911401ae5cSPengyu Luo				};
1921401ae5cSPengyu Luo
1931401ae5cSPengyu Luo				skin-temp-crit {
1941401ae5cSPengyu Luo					temperature = <73000>;
1951401ae5cSPengyu Luo					hysteresis = <1000>;
1961401ae5cSPengyu Luo					type = "critical";
1971401ae5cSPengyu Luo				};
1981401ae5cSPengyu Luo			};
1991401ae5cSPengyu Luo
2001401ae5cSPengyu Luo			cooling-maps {
2011401ae5cSPengyu Luo				map0 {
2021401ae5cSPengyu Luo					trip = <&skin_temp_alert0>;
2031401ae5cSPengyu Luo					cooling-device = <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2041401ae5cSPengyu Luo							 <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2051401ae5cSPengyu Luo							 <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2061401ae5cSPengyu Luo							 <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
2071401ae5cSPengyu Luo				};
2081401ae5cSPengyu Luo
2091401ae5cSPengyu Luo				map1 {
2101401ae5cSPengyu Luo					trip = <&skin_temp_alert1>;
2111401ae5cSPengyu Luo					cooling-device = <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2121401ae5cSPengyu Luo							 <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2131401ae5cSPengyu Luo							 <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2141401ae5cSPengyu Luo							 <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
2151401ae5cSPengyu Luo				};
2161401ae5cSPengyu Luo			};
2171401ae5cSPengyu Luo		};
2181401ae5cSPengyu Luo	};
2191401ae5cSPengyu Luo
220*0b6d8f9dSPengyu Luo	usb0-sbu-mux {
221*0b6d8f9dSPengyu Luo		compatible = "pericom,pi3usb102", "gpio-sbu-mux";
222*0b6d8f9dSPengyu Luo
223*0b6d8f9dSPengyu Luo		select-gpios = <&tlmm 164 GPIO_ACTIVE_HIGH>;
224*0b6d8f9dSPengyu Luo
225*0b6d8f9dSPengyu Luo		pinctrl-0 = <&usb0_sbu_default>;
226*0b6d8f9dSPengyu Luo		pinctrl-names = "default";
227*0b6d8f9dSPengyu Luo
228*0b6d8f9dSPengyu Luo		orientation-switch;
229*0b6d8f9dSPengyu Luo
230*0b6d8f9dSPengyu Luo		port {
231*0b6d8f9dSPengyu Luo			usb0_sbu_mux: endpoint {
232*0b6d8f9dSPengyu Luo				remote-endpoint = <&ucsi0_sbu>;
233*0b6d8f9dSPengyu Luo			};
234*0b6d8f9dSPengyu Luo		};
235*0b6d8f9dSPengyu Luo	};
236*0b6d8f9dSPengyu Luo
237*0b6d8f9dSPengyu Luo	usb1-sbu-mux {
238*0b6d8f9dSPengyu Luo		compatible = "pericom,pi3usb102", "gpio-sbu-mux";
239*0b6d8f9dSPengyu Luo
240*0b6d8f9dSPengyu Luo		select-gpios = <&tlmm 47 GPIO_ACTIVE_HIGH>;
241*0b6d8f9dSPengyu Luo
242*0b6d8f9dSPengyu Luo		pinctrl-0 = <&usb1_sbu_default>;
243*0b6d8f9dSPengyu Luo		pinctrl-names = "default";
244*0b6d8f9dSPengyu Luo
245*0b6d8f9dSPengyu Luo		orientation-switch;
246*0b6d8f9dSPengyu Luo
247*0b6d8f9dSPengyu Luo		port {
248*0b6d8f9dSPengyu Luo			usb1_sbu_mux: endpoint {
249*0b6d8f9dSPengyu Luo				remote-endpoint = <&ucsi1_sbu>;
250*0b6d8f9dSPengyu Luo			};
251*0b6d8f9dSPengyu Luo		};
252*0b6d8f9dSPengyu Luo	};
253*0b6d8f9dSPengyu Luo
2541401ae5cSPengyu Luo	wcn6855-pmu {
2551401ae5cSPengyu Luo		compatible = "qcom,wcn6855-pmu";
2561401ae5cSPengyu Luo
2571401ae5cSPengyu Luo		pinctrl-names = "default";
2581401ae5cSPengyu Luo		pinctrl-0 = <&bt_default>, <&wlan_en>;
2591401ae5cSPengyu Luo
2601401ae5cSPengyu Luo		wlan-enable-gpios = <&tlmm 134 GPIO_ACTIVE_HIGH>;
2611401ae5cSPengyu Luo		bt-enable-gpios = <&tlmm 133 GPIO_ACTIVE_HIGH>;
2621401ae5cSPengyu Luo		swctrl-gpios = <&tlmm 132 GPIO_ACTIVE_HIGH>;
2631401ae5cSPengyu Luo
2641401ae5cSPengyu Luo		vddio-supply = <&vreg_s10b>;
2651401ae5cSPengyu Luo		vddaon-supply = <&vreg_s12b>;
2661401ae5cSPengyu Luo		vddpmu-supply = <&vreg_s12b>;
2671401ae5cSPengyu Luo		vddpmumx-supply = <&vreg_s12b>;
2681401ae5cSPengyu Luo		vddpmucx-supply = <&vreg_s12b>;
2691401ae5cSPengyu Luo		vddrfa0p95-supply = <&vreg_s12b>;
2701401ae5cSPengyu Luo		vddrfa1p3-supply = <&vreg_s11b>;
2711401ae5cSPengyu Luo		vddrfa1p9-supply = <&vreg_s1c>;
2721401ae5cSPengyu Luo		vddpcie1p3-supply = <&vreg_s11b>;
2731401ae5cSPengyu Luo		vddpcie1p9-supply = <&vreg_s1c>;
2741401ae5cSPengyu Luo
2751401ae5cSPengyu Luo		regulators {
2761401ae5cSPengyu Luo			vreg_pmu_rfa_cmn_0p8: ldo0 {
2771401ae5cSPengyu Luo				regulator-name = "vreg_pmu_rfa_cmn_0p8";
2781401ae5cSPengyu Luo			};
2791401ae5cSPengyu Luo
2801401ae5cSPengyu Luo			vreg_pmu_aon_0p8: ldo1 {
2811401ae5cSPengyu Luo				regulator-name = "vreg_pmu_aon_0p8";
2821401ae5cSPengyu Luo			};
2831401ae5cSPengyu Luo
2841401ae5cSPengyu Luo			vreg_pmu_wlcx_0p8: ldo2 {
2851401ae5cSPengyu Luo				regulator-name = "vreg_pmu_wlcx_0p8";
2861401ae5cSPengyu Luo			};
2871401ae5cSPengyu Luo
2881401ae5cSPengyu Luo			vreg_pmu_wlmx_0p8: ldo3 {
2891401ae5cSPengyu Luo				regulator-name = "vreg_pmu_wlmx_0p8";
2901401ae5cSPengyu Luo			};
2911401ae5cSPengyu Luo
2921401ae5cSPengyu Luo			vreg_pmu_btcmx_0p8: ldo4 {
2931401ae5cSPengyu Luo				regulator-name = "vreg_pmu_btcmx_0p8";
2941401ae5cSPengyu Luo			};
2951401ae5cSPengyu Luo
2961401ae5cSPengyu Luo			vreg_pmu_pcie_1p8: ldo5 {
2971401ae5cSPengyu Luo				regulator-name = "vreg_pmu_pcie_1p8";
2981401ae5cSPengyu Luo			};
2991401ae5cSPengyu Luo
3001401ae5cSPengyu Luo			vreg_pmu_pcie_0p9: ldo6 {
3011401ae5cSPengyu Luo				regulator-name = "vreg_pmu_pcie_0p9";
3021401ae5cSPengyu Luo			};
3031401ae5cSPengyu Luo
3041401ae5cSPengyu Luo			vreg_pmu_rfa_0p8: ldo7 {
3051401ae5cSPengyu Luo				regulator-name = "vreg_pmu_rfa_0p8";
3061401ae5cSPengyu Luo			};
3071401ae5cSPengyu Luo
3081401ae5cSPengyu Luo			vreg_pmu_rfa_1p2: ldo8 {
3091401ae5cSPengyu Luo				regulator-name = "vreg_pmu_rfa_1p2";
3101401ae5cSPengyu Luo			};
3111401ae5cSPengyu Luo
3121401ae5cSPengyu Luo			vreg_pmu_rfa_1p7: ldo9 {
3131401ae5cSPengyu Luo				regulator-name = "vreg_pmu_rfa_1p7";
3141401ae5cSPengyu Luo			};
3151401ae5cSPengyu Luo		};
3161401ae5cSPengyu Luo	};
3171401ae5cSPengyu Luo};
3181401ae5cSPengyu Luo
3191401ae5cSPengyu Luo&apps_rsc {
3201401ae5cSPengyu Luo	regulators-0 {
3211401ae5cSPengyu Luo		compatible = "qcom,pm8350-rpmh-regulators";
3221401ae5cSPengyu Luo		qcom,pmic-id = "b";
3231401ae5cSPengyu Luo
3241401ae5cSPengyu Luo		vdd-l1-l4-supply = <&vreg_s12b>;
3251401ae5cSPengyu Luo		vdd-l2-l7-supply = <&vreg_bob>;
3261401ae5cSPengyu Luo		vdd-l3-l5-supply = <&vreg_s11b>;
3271401ae5cSPengyu Luo		vdd-l6-l9-l10-supply = <&vreg_s12b>;
3281401ae5cSPengyu Luo		vdd-l8-supply = <&vreg_s12b>;
3291401ae5cSPengyu Luo
3301401ae5cSPengyu Luo		vreg_s10b: smps10 {
3311401ae5cSPengyu Luo			regulator-name = "vreg_s10b";
3321401ae5cSPengyu Luo			regulator-min-microvolt = <1800000>;
3331401ae5cSPengyu Luo			regulator-max-microvolt = <1800000>;
3341401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3351401ae5cSPengyu Luo			regulator-always-on;
3361401ae5cSPengyu Luo		};
3371401ae5cSPengyu Luo
3381401ae5cSPengyu Luo		vreg_s11b: smps11 {
3391401ae5cSPengyu Luo			regulator-name = "vreg_s11b";
3401401ae5cSPengyu Luo			regulator-min-microvolt = <1272000>;
3411401ae5cSPengyu Luo			regulator-max-microvolt = <1272000>;
3421401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3431401ae5cSPengyu Luo		};
3441401ae5cSPengyu Luo
3451401ae5cSPengyu Luo		vreg_s12b: smps12 {
3461401ae5cSPengyu Luo			regulator-name = "vreg_s12b";
3471401ae5cSPengyu Luo			regulator-min-microvolt = <984000>;
3481401ae5cSPengyu Luo			regulator-max-microvolt = <984000>;
3491401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3501401ae5cSPengyu Luo		};
3511401ae5cSPengyu Luo
3521401ae5cSPengyu Luo		vreg_l1b: ldo1 {
3531401ae5cSPengyu Luo			regulator-name = "vreg_l1b";
3541401ae5cSPengyu Luo			regulator-min-microvolt = <912000>;
3551401ae5cSPengyu Luo			regulator-max-microvolt = <912000>;
3561401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3571401ae5cSPengyu Luo			regulator-allow-set-load;
3581401ae5cSPengyu Luo			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
3591401ae5cSPengyu Luo						   RPMH_REGULATOR_MODE_HPM>;
3601401ae5cSPengyu Luo		};
3611401ae5cSPengyu Luo
3621401ae5cSPengyu Luo		vreg_l2b: ldo2 {
3631401ae5cSPengyu Luo			regulator-name = "vreg_l2b";
3641401ae5cSPengyu Luo			regulator-min-microvolt = <1904000>;
3651401ae5cSPengyu Luo			regulator-max-microvolt = <1904000>;
3661401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3671401ae5cSPengyu Luo		};
3681401ae5cSPengyu Luo
3691401ae5cSPengyu Luo		vreg_l3b: ldo3 {
3701401ae5cSPengyu Luo			regulator-name = "vreg_l3b";
3711401ae5cSPengyu Luo			regulator-min-microvolt = <1200000>;
3721401ae5cSPengyu Luo			regulator-max-microvolt = <1200000>;
3731401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3741401ae5cSPengyu Luo			regulator-boot-on;
3751401ae5cSPengyu Luo			regulator-allow-set-load;
3761401ae5cSPengyu Luo			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
3771401ae5cSPengyu Luo						   RPMH_REGULATOR_MODE_HPM>;
3781401ae5cSPengyu Luo		};
3791401ae5cSPengyu Luo
3801401ae5cSPengyu Luo		vreg_l4b: ldo4 {
3811401ae5cSPengyu Luo			regulator-name = "vreg_l4b";
3821401ae5cSPengyu Luo			regulator-min-microvolt = <912000>;
3831401ae5cSPengyu Luo			regulator-max-microvolt = <912000>;
3841401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3851401ae5cSPengyu Luo			regulator-allow-set-load;
3861401ae5cSPengyu Luo			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
3871401ae5cSPengyu Luo						   RPMH_REGULATOR_MODE_HPM>;
3881401ae5cSPengyu Luo		};
3891401ae5cSPengyu Luo
3901401ae5cSPengyu Luo		vreg_l5b: ldo5 {
3911401ae5cSPengyu Luo			regulator-name = "vreg_l5b";
3921401ae5cSPengyu Luo			regulator-min-microvolt = <1200000>;
3931401ae5cSPengyu Luo			regulator-max-microvolt = <1200000>;
3941401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3951401ae5cSPengyu Luo		};
3961401ae5cSPengyu Luo
3971401ae5cSPengyu Luo		vreg_l6b: ldo6 {
3981401ae5cSPengyu Luo			regulator-name = "vreg_l6b";
3991401ae5cSPengyu Luo			regulator-min-microvolt = <880000>;
4001401ae5cSPengyu Luo			regulator-max-microvolt = <880000>;
4011401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4021401ae5cSPengyu Luo			regulator-boot-on;
4031401ae5cSPengyu Luo			regulator-allow-set-load;
4041401ae5cSPengyu Luo			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
4051401ae5cSPengyu Luo						   RPMH_REGULATOR_MODE_HPM>;
4061401ae5cSPengyu Luo		};
4071401ae5cSPengyu Luo
4081401ae5cSPengyu Luo		vreg_l7b: ldo7 {
4091401ae5cSPengyu Luo			regulator-name = "vreg_l7b";
4101401ae5cSPengyu Luo			regulator-min-microvolt = <1800000>;
4111401ae5cSPengyu Luo			regulator-max-microvolt = <1800000>;
4121401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4131401ae5cSPengyu Luo			regulator-boot-on;
4141401ae5cSPengyu Luo		};
4151401ae5cSPengyu Luo
4161401ae5cSPengyu Luo		vreg_l9b: ldo9 {
4171401ae5cSPengyu Luo			regulator-name = "vreg_l9b";
4181401ae5cSPengyu Luo			regulator-min-microvolt = <912000>;
4191401ae5cSPengyu Luo			regulator-max-microvolt = <912000>;
4201401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4211401ae5cSPengyu Luo		};
4221401ae5cSPengyu Luo	};
4231401ae5cSPengyu Luo
4241401ae5cSPengyu Luo	regulators-1 {
4251401ae5cSPengyu Luo		compatible = "qcom,pm8350c-rpmh-regulators";
4261401ae5cSPengyu Luo		qcom,pmic-id = "c";
4271401ae5cSPengyu Luo
4281401ae5cSPengyu Luo		vdd-bob-supply = <&vreg_vph_pwr>;
4291401ae5cSPengyu Luo		vdd-l1-l12-supply = <&vreg_s1c>;
4301401ae5cSPengyu Luo		vdd-l2-l8-supply = <&vreg_s1c>;
4311401ae5cSPengyu Luo		vdd-l3-l4-l5-l7-l13-supply = <&vreg_bob>;
4321401ae5cSPengyu Luo		vdd-l6-l9-l11-supply = <&vreg_bob>;
4331401ae5cSPengyu Luo		vdd-l10-supply = <&vreg_s11b>;
4341401ae5cSPengyu Luo
4351401ae5cSPengyu Luo		vreg_s1c: smps1 {
4361401ae5cSPengyu Luo			regulator-name = "vreg_s1c";
4371401ae5cSPengyu Luo			regulator-min-microvolt = <1880000>;
4381401ae5cSPengyu Luo			regulator-max-microvolt = <1900000>;
4391401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4401401ae5cSPengyu Luo			regulator-always-on;
4411401ae5cSPengyu Luo		};
4421401ae5cSPengyu Luo
4431401ae5cSPengyu Luo		vreg_l1c: ldo1 {
4441401ae5cSPengyu Luo			regulator-name = "vreg_l1c";
4451401ae5cSPengyu Luo			regulator-min-microvolt = <1800000>;
4461401ae5cSPengyu Luo			regulator-max-microvolt = <1800000>;
4471401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4481401ae5cSPengyu Luo			regulator-allow-set-load;
4491401ae5cSPengyu Luo			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
4501401ae5cSPengyu Luo						   RPMH_REGULATOR_MODE_HPM>;
4511401ae5cSPengyu Luo		};
4521401ae5cSPengyu Luo
4531401ae5cSPengyu Luo		vreg_l2c: ldo2 {
4541401ae5cSPengyu Luo			regulator-name = "vreg_l2c";
4551401ae5cSPengyu Luo			regulator-min-microvolt = <1800000>;
4561401ae5cSPengyu Luo			regulator-max-microvolt = <1800000>;
4571401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4581401ae5cSPengyu Luo		};
4591401ae5cSPengyu Luo
4601401ae5cSPengyu Luo		vreg_l8c: ldo8 {
4611401ae5cSPengyu Luo			regulator-name = "vreg_l8c";
4621401ae5cSPengyu Luo			regulator-min-microvolt = <1800000>;
4631401ae5cSPengyu Luo			regulator-max-microvolt = <1800000>;
4641401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4651401ae5cSPengyu Luo			regulator-allow-set-load;
4661401ae5cSPengyu Luo			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
4671401ae5cSPengyu Luo						   RPMH_REGULATOR_MODE_HPM>;
4681401ae5cSPengyu Luo		};
4691401ae5cSPengyu Luo
4701401ae5cSPengyu Luo		vreg_l12c: ldo12 {
4711401ae5cSPengyu Luo			regulator-name = "vreg_l12c";
4721401ae5cSPengyu Luo			regulator-min-microvolt = <1800000>;
4731401ae5cSPengyu Luo			regulator-max-microvolt = <1800000>;
4741401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4751401ae5cSPengyu Luo		};
4761401ae5cSPengyu Luo
4771401ae5cSPengyu Luo		vreg_l13c: ldo13 {
4781401ae5cSPengyu Luo			regulator-name = "vreg_l13c";
4791401ae5cSPengyu Luo			regulator-min-microvolt = <3072000>;
4801401ae5cSPengyu Luo			regulator-max-microvolt = <3072000>;
4811401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4821401ae5cSPengyu Luo			regulator-allow-set-load;
4831401ae5cSPengyu Luo			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
4841401ae5cSPengyu Luo						   RPMH_REGULATOR_MODE_HPM>;
4851401ae5cSPengyu Luo		};
4861401ae5cSPengyu Luo
4871401ae5cSPengyu Luo		vreg_bob: bob {
4881401ae5cSPengyu Luo			regulator-name = "vreg_bob";
4891401ae5cSPengyu Luo			regulator-min-microvolt = <3008000>;
4901401ae5cSPengyu Luo			regulator-max-microvolt = <3960000>;
4911401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
4921401ae5cSPengyu Luo			regulator-always-on;
4931401ae5cSPengyu Luo		};
4941401ae5cSPengyu Luo	};
4951401ae5cSPengyu Luo
4961401ae5cSPengyu Luo	regulators-2 {
4971401ae5cSPengyu Luo		compatible = "qcom,pm8350-rpmh-regulators";
4981401ae5cSPengyu Luo		qcom,pmic-id = "d";
4991401ae5cSPengyu Luo
5001401ae5cSPengyu Luo		vdd-l1-l4-supply = <&vreg_s11b>;
5011401ae5cSPengyu Luo		vdd-l2-l7-supply = <&vreg_bob>;
5021401ae5cSPengyu Luo		vdd-l3-l5-supply = <&vreg_s11b>;
5031401ae5cSPengyu Luo		vdd-l6-l9-l10-supply = <&vreg_s12b>;
5041401ae5cSPengyu Luo		vdd-l8-supply = <&vreg_s12b>;
5051401ae5cSPengyu Luo
5061401ae5cSPengyu Luo		vreg_l2d: ldo2 {
5071401ae5cSPengyu Luo			regulator-name = "vreg_l2d";
5081401ae5cSPengyu Luo			regulator-min-microvolt = <3072000>;
5091401ae5cSPengyu Luo			regulator-max-microvolt = <3072000>;
5101401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
5111401ae5cSPengyu Luo			regulator-allow-set-load;
5121401ae5cSPengyu Luo			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
5131401ae5cSPengyu Luo						   RPMH_REGULATOR_MODE_HPM>;
5141401ae5cSPengyu Luo		};
5151401ae5cSPengyu Luo
5161401ae5cSPengyu Luo		vreg_l3d: ldo3 {
5171401ae5cSPengyu Luo			regulator-name = "vreg_l3d";
5181401ae5cSPengyu Luo			regulator-min-microvolt = <1200000>;
5191401ae5cSPengyu Luo			regulator-max-microvolt = <1200000>;
5201401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
5211401ae5cSPengyu Luo		};
5221401ae5cSPengyu Luo
5231401ae5cSPengyu Luo		vreg_l4d: ldo4 {
5241401ae5cSPengyu Luo			regulator-name = "vreg_l4d";
5251401ae5cSPengyu Luo			regulator-min-microvolt = <1200000>;
5261401ae5cSPengyu Luo			regulator-max-microvolt = <1200000>;
5271401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
5281401ae5cSPengyu Luo			regulator-allow-set-load;
5291401ae5cSPengyu Luo			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
5301401ae5cSPengyu Luo						   RPMH_REGULATOR_MODE_HPM>;
5311401ae5cSPengyu Luo		};
5321401ae5cSPengyu Luo
5331401ae5cSPengyu Luo		vreg_l6d: ldo6 {
5341401ae5cSPengyu Luo			regulator-name = "vreg_l6d";
5351401ae5cSPengyu Luo			regulator-min-microvolt = <880000>;
5361401ae5cSPengyu Luo			regulator-max-microvolt = <880000>;
5371401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
5381401ae5cSPengyu Luo			regulator-allow-set-load;
5391401ae5cSPengyu Luo			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
5401401ae5cSPengyu Luo						   RPMH_REGULATOR_MODE_HPM>;
5411401ae5cSPengyu Luo		};
5421401ae5cSPengyu Luo
5431401ae5cSPengyu Luo		vreg_l7d: ldo7 {
5441401ae5cSPengyu Luo			regulator-name = "vreg_l7d";
5451401ae5cSPengyu Luo			regulator-min-microvolt = <3072000>;
5461401ae5cSPengyu Luo			regulator-max-microvolt = <3072000>;
5471401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
5481401ae5cSPengyu Luo			regulator-allow-set-load;
5491401ae5cSPengyu Luo			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
5501401ae5cSPengyu Luo						   RPMH_REGULATOR_MODE_HPM>;
5511401ae5cSPengyu Luo		};
5521401ae5cSPengyu Luo
5531401ae5cSPengyu Luo		vreg_l8d: ldo8 {
5541401ae5cSPengyu Luo			regulator-name = "vreg_l8d";
5551401ae5cSPengyu Luo			regulator-min-microvolt = <912000>;
5561401ae5cSPengyu Luo			regulator-max-microvolt = <912000>;
5571401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
5581401ae5cSPengyu Luo			regulator-allow-set-load;
5591401ae5cSPengyu Luo			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
5601401ae5cSPengyu Luo						   RPMH_REGULATOR_MODE_HPM>;
5611401ae5cSPengyu Luo		};
5621401ae5cSPengyu Luo
5631401ae5cSPengyu Luo		vreg_l9d: ldo9 {
5641401ae5cSPengyu Luo			regulator-name = "vreg_l9d";
5651401ae5cSPengyu Luo			regulator-min-microvolt = <912000>;
5661401ae5cSPengyu Luo			regulator-max-microvolt = <912000>;
5671401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
5681401ae5cSPengyu Luo			regulator-allow-set-load;
5691401ae5cSPengyu Luo			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
5701401ae5cSPengyu Luo						   RPMH_REGULATOR_MODE_HPM>;
5711401ae5cSPengyu Luo		};
5721401ae5cSPengyu Luo
5731401ae5cSPengyu Luo		vreg_l10d: ldo10 {
5741401ae5cSPengyu Luo			regulator-name = "vreg_l10d";
5751401ae5cSPengyu Luo			regulator-min-microvolt = <912000>;
5761401ae5cSPengyu Luo			regulator-max-microvolt = <912000>;
5771401ae5cSPengyu Luo			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
5781401ae5cSPengyu Luo			regulator-allow-set-load;
5791401ae5cSPengyu Luo			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
5801401ae5cSPengyu Luo						   RPMH_REGULATOR_MODE_HPM>;
5811401ae5cSPengyu Luo		};
5821401ae5cSPengyu Luo	};
5831401ae5cSPengyu Luo};
5841401ae5cSPengyu Luo
5851401ae5cSPengyu Luo&dispcc0 {
5861401ae5cSPengyu Luo	status = "okay";
5871401ae5cSPengyu Luo};
5881401ae5cSPengyu Luo
5891401ae5cSPengyu Luo&gpu {
5901401ae5cSPengyu Luo	status = "okay";
5911401ae5cSPengyu Luo
5921401ae5cSPengyu Luo	zap-shader {
5931401ae5cSPengyu Luo		memory-region = <&gpu_mem>;
5941401ae5cSPengyu Luo		firmware-name = "qcom/sc8280xp/HUAWEI/gaokun3/qcdxkmsuc8280.mbn";
5951401ae5cSPengyu Luo	};
5961401ae5cSPengyu Luo};
5971401ae5cSPengyu Luo
5981401ae5cSPengyu Luo&i2c4 {
5991401ae5cSPengyu Luo	clock-frequency = <400000>;
6001401ae5cSPengyu Luo
6011401ae5cSPengyu Luo	pinctrl-0 = <&i2c4_default>;
6021401ae5cSPengyu Luo	pinctrl-names = "default";
6031401ae5cSPengyu Luo
6041401ae5cSPengyu Luo	status = "okay";
6051401ae5cSPengyu Luo
6061401ae5cSPengyu Luo	touchscreen@4f {
6071401ae5cSPengyu Luo		compatible = "hid-over-i2c";
6081401ae5cSPengyu Luo		reg = <0x4f>;
6091401ae5cSPengyu Luo
6101401ae5cSPengyu Luo		hid-descr-addr = <0x1>;
6111401ae5cSPengyu Luo		interrupts-extended = <&tlmm 175 IRQ_TYPE_LEVEL_LOW>;
6121401ae5cSPengyu Luo
6131401ae5cSPengyu Luo		vdd-supply = <&vreg_misc_3p3>;
6141401ae5cSPengyu Luo		vddl-supply = <&vreg_s10b>;
6151401ae5cSPengyu Luo
6161401ae5cSPengyu Luo		pinctrl-0 = <&ts0_default>;
6171401ae5cSPengyu Luo		pinctrl-names = "default";
6181401ae5cSPengyu Luo	};
6191401ae5cSPengyu Luo
6201401ae5cSPengyu Luo};
6211401ae5cSPengyu Luo
622*0b6d8f9dSPengyu Luo&i2c15 {
623*0b6d8f9dSPengyu Luo	clock-frequency = <400000>;
624*0b6d8f9dSPengyu Luo
625*0b6d8f9dSPengyu Luo	pinctrl-0 = <&i2c15_default>;
626*0b6d8f9dSPengyu Luo	pinctrl-names = "default";
627*0b6d8f9dSPengyu Luo
628*0b6d8f9dSPengyu Luo	status = "okay";
629*0b6d8f9dSPengyu Luo
630*0b6d8f9dSPengyu Luo	embedded-controller@38 {
631*0b6d8f9dSPengyu Luo		compatible = "huawei,gaokun3-ec";
632*0b6d8f9dSPengyu Luo		reg = <0x38>;
633*0b6d8f9dSPengyu Luo
634*0b6d8f9dSPengyu Luo		interrupts-extended = <&tlmm 107 IRQ_TYPE_LEVEL_LOW>;
635*0b6d8f9dSPengyu Luo
636*0b6d8f9dSPengyu Luo		#address-cells = <1>;
637*0b6d8f9dSPengyu Luo		#size-cells = <0>;
638*0b6d8f9dSPengyu Luo
639*0b6d8f9dSPengyu Luo		connector@0 {
640*0b6d8f9dSPengyu Luo			compatible = "usb-c-connector";
641*0b6d8f9dSPengyu Luo			reg = <0>;
642*0b6d8f9dSPengyu Luo			power-role = "dual";
643*0b6d8f9dSPengyu Luo			data-role = "dual";
644*0b6d8f9dSPengyu Luo
645*0b6d8f9dSPengyu Luo			ports {
646*0b6d8f9dSPengyu Luo				#address-cells = <1>;
647*0b6d8f9dSPengyu Luo				#size-cells = <0>;
648*0b6d8f9dSPengyu Luo
649*0b6d8f9dSPengyu Luo				port@0 {
650*0b6d8f9dSPengyu Luo					reg = <0>;
651*0b6d8f9dSPengyu Luo
652*0b6d8f9dSPengyu Luo					ucsi0_hs_in: endpoint {
653*0b6d8f9dSPengyu Luo						remote-endpoint = <&usb_0_dwc3_hs>;
654*0b6d8f9dSPengyu Luo					};
655*0b6d8f9dSPengyu Luo				};
656*0b6d8f9dSPengyu Luo
657*0b6d8f9dSPengyu Luo				port@1 {
658*0b6d8f9dSPengyu Luo					reg = <1>;
659*0b6d8f9dSPengyu Luo
660*0b6d8f9dSPengyu Luo					ucsi0_ss_in: endpoint {
661*0b6d8f9dSPengyu Luo						remote-endpoint = <&usb_0_qmpphy_out>;
662*0b6d8f9dSPengyu Luo					};
663*0b6d8f9dSPengyu Luo				};
664*0b6d8f9dSPengyu Luo
665*0b6d8f9dSPengyu Luo				port@2 {
666*0b6d8f9dSPengyu Luo					reg = <2>;
667*0b6d8f9dSPengyu Luo
668*0b6d8f9dSPengyu Luo					ucsi0_sbu: endpoint {
669*0b6d8f9dSPengyu Luo						remote-endpoint = <&usb0_sbu_mux>;
670*0b6d8f9dSPengyu Luo					};
671*0b6d8f9dSPengyu Luo				};
672*0b6d8f9dSPengyu Luo			};
673*0b6d8f9dSPengyu Luo		};
674*0b6d8f9dSPengyu Luo
675*0b6d8f9dSPengyu Luo		connector@1 {
676*0b6d8f9dSPengyu Luo			compatible = "usb-c-connector";
677*0b6d8f9dSPengyu Luo			reg = <1>;
678*0b6d8f9dSPengyu Luo			power-role = "dual";
679*0b6d8f9dSPengyu Luo			data-role = "dual";
680*0b6d8f9dSPengyu Luo
681*0b6d8f9dSPengyu Luo			ports {
682*0b6d8f9dSPengyu Luo				#address-cells = <1>;
683*0b6d8f9dSPengyu Luo				#size-cells = <0>;
684*0b6d8f9dSPengyu Luo
685*0b6d8f9dSPengyu Luo				port@0 {
686*0b6d8f9dSPengyu Luo					reg = <0>;
687*0b6d8f9dSPengyu Luo
688*0b6d8f9dSPengyu Luo					ucsi1_hs_in: endpoint {
689*0b6d8f9dSPengyu Luo						remote-endpoint = <&usb_1_dwc3_hs>;
690*0b6d8f9dSPengyu Luo					};
691*0b6d8f9dSPengyu Luo				};
692*0b6d8f9dSPengyu Luo
693*0b6d8f9dSPengyu Luo				port@1 {
694*0b6d8f9dSPengyu Luo					reg = <1>;
695*0b6d8f9dSPengyu Luo
696*0b6d8f9dSPengyu Luo					ucsi1_ss_in: endpoint {
697*0b6d8f9dSPengyu Luo						remote-endpoint = <&usb_1_qmpphy_out>;
698*0b6d8f9dSPengyu Luo					};
699*0b6d8f9dSPengyu Luo				};
700*0b6d8f9dSPengyu Luo
701*0b6d8f9dSPengyu Luo				port@2 {
702*0b6d8f9dSPengyu Luo					reg = <2>;
703*0b6d8f9dSPengyu Luo
704*0b6d8f9dSPengyu Luo					ucsi1_sbu: endpoint {
705*0b6d8f9dSPengyu Luo						remote-endpoint = <&usb1_sbu_mux>;
706*0b6d8f9dSPengyu Luo					};
707*0b6d8f9dSPengyu Luo				};
708*0b6d8f9dSPengyu Luo			};
709*0b6d8f9dSPengyu Luo		};
710*0b6d8f9dSPengyu Luo	};
711*0b6d8f9dSPengyu Luo};
712*0b6d8f9dSPengyu Luo
7131401ae5cSPengyu Luo&mdss0 {
7141401ae5cSPengyu Luo	status = "okay";
7151401ae5cSPengyu Luo};
7161401ae5cSPengyu Luo
7171401ae5cSPengyu Luo&mdss0_dp0 {
7181401ae5cSPengyu Luo	status = "okay";
7191401ae5cSPengyu Luo};
7201401ae5cSPengyu Luo
7211401ae5cSPengyu Luo&mdss0_dp0_out {
7221401ae5cSPengyu Luo	data-lanes = <0 1>;
7231401ae5cSPengyu Luo	remote-endpoint = <&usb_0_qmpphy_dp_in>;
7241401ae5cSPengyu Luo};
7251401ae5cSPengyu Luo
7261401ae5cSPengyu Luo&mdss0_dp1 {
7271401ae5cSPengyu Luo	status = "okay";
7281401ae5cSPengyu Luo};
7291401ae5cSPengyu Luo
7301401ae5cSPengyu Luo&mdss0_dp1_out {
7311401ae5cSPengyu Luo	data-lanes = <0 1>;
7321401ae5cSPengyu Luo	remote-endpoint = <&usb_1_qmpphy_dp_in>;
7331401ae5cSPengyu Luo};
7341401ae5cSPengyu Luo
7351401ae5cSPengyu Luo&pcie2a {
7361401ae5cSPengyu Luo	perst-gpios = <&tlmm 143 GPIO_ACTIVE_LOW>;
7371401ae5cSPengyu Luo	wake-gpios = <&tlmm 145 GPIO_ACTIVE_LOW>;
7381401ae5cSPengyu Luo
7391401ae5cSPengyu Luo	vddpe-3v3-supply = <&vreg_nvme>;
7401401ae5cSPengyu Luo
7411401ae5cSPengyu Luo	pinctrl-0 = <&pcie2a_default>;
7421401ae5cSPengyu Luo	pinctrl-names = "default";
7431401ae5cSPengyu Luo
7441401ae5cSPengyu Luo	status = "okay";
7451401ae5cSPengyu Luo};
7461401ae5cSPengyu Luo
7471401ae5cSPengyu Luo&pcie2a_phy {
7481401ae5cSPengyu Luo	vdda-phy-supply = <&vreg_l6d>;
7491401ae5cSPengyu Luo	vdda-pll-supply = <&vreg_l4d>;
7501401ae5cSPengyu Luo
7511401ae5cSPengyu Luo	status = "okay";
7521401ae5cSPengyu Luo};
7531401ae5cSPengyu Luo
7541401ae5cSPengyu Luo&pcie4 {
7551401ae5cSPengyu Luo	max-link-speed = <2>;
7561401ae5cSPengyu Luo
7571401ae5cSPengyu Luo	perst-gpios = <&tlmm 141 GPIO_ACTIVE_LOW>;
7581401ae5cSPengyu Luo	wake-gpios = <&tlmm 139 GPIO_ACTIVE_LOW>;
7591401ae5cSPengyu Luo
7601401ae5cSPengyu Luo	vddpe-3v3-supply = <&vreg_wlan>;
7611401ae5cSPengyu Luo
7621401ae5cSPengyu Luo	pinctrl-0 = <&pcie4_default>;
7631401ae5cSPengyu Luo	pinctrl-names = "default";
7641401ae5cSPengyu Luo
7651401ae5cSPengyu Luo	status = "okay";
7661401ae5cSPengyu Luo};
7671401ae5cSPengyu Luo
7681401ae5cSPengyu Luo&pcie4_port0 {
7691401ae5cSPengyu Luo	wifi@0 {
7701401ae5cSPengyu Luo		compatible = "pci17cb,1103";
7711401ae5cSPengyu Luo		reg = <0x10000 0x0 0x0 0x0 0x0>;
7721401ae5cSPengyu Luo
7731401ae5cSPengyu Luo		vddrfacmn-supply = <&vreg_pmu_rfa_cmn_0p8>;
7741401ae5cSPengyu Luo		vddaon-supply = <&vreg_pmu_aon_0p8>;
7751401ae5cSPengyu Luo		vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
7761401ae5cSPengyu Luo		vddwlmx-supply = <&vreg_pmu_wlmx_0p8>;
7771401ae5cSPengyu Luo		vddpcie1p8-supply = <&vreg_pmu_pcie_1p8>;
7781401ae5cSPengyu Luo		vddpcie0p9-supply = <&vreg_pmu_pcie_0p9>;
7791401ae5cSPengyu Luo		vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
7801401ae5cSPengyu Luo		vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
7811401ae5cSPengyu Luo		vddrfa1p8-supply = <&vreg_pmu_rfa_1p7>;
7821401ae5cSPengyu Luo	};
7831401ae5cSPengyu Luo};
7841401ae5cSPengyu Luo
7851401ae5cSPengyu Luo&pcie4_phy {
7861401ae5cSPengyu Luo	vdda-phy-supply = <&vreg_l6d>;
7871401ae5cSPengyu Luo	vdda-pll-supply = <&vreg_l4d>;
7881401ae5cSPengyu Luo
7891401ae5cSPengyu Luo	status = "okay";
7901401ae5cSPengyu Luo};
7911401ae5cSPengyu Luo
7921401ae5cSPengyu Luo&pmk8280_adc_tm {
7931401ae5cSPengyu Luo	status = "okay";
7941401ae5cSPengyu Luo
7951401ae5cSPengyu Luo	sys-therm@0 {
7961401ae5cSPengyu Luo		reg = <0>;
7971401ae5cSPengyu Luo		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM1_100K_PU(1)>;
7981401ae5cSPengyu Luo		qcom,hw-settle-time-us = <200>;
7991401ae5cSPengyu Luo		qcom,avg-samples = <2>;
8001401ae5cSPengyu Luo		qcom,ratiometric;
8011401ae5cSPengyu Luo	};
8021401ae5cSPengyu Luo
8031401ae5cSPengyu Luo	sys-therm@1 {
8041401ae5cSPengyu Luo		reg = <1>;
8051401ae5cSPengyu Luo		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM2_100K_PU(1)>;
8061401ae5cSPengyu Luo		qcom,hw-settle-time-us = <200>;
8071401ae5cSPengyu Luo		qcom,avg-samples = <2>;
8081401ae5cSPengyu Luo		qcom,ratiometric;
8091401ae5cSPengyu Luo	};
8101401ae5cSPengyu Luo
8111401ae5cSPengyu Luo	sys-therm@2 {
8121401ae5cSPengyu Luo		reg = <2>;
8131401ae5cSPengyu Luo		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM3_100K_PU(1)>;
8141401ae5cSPengyu Luo		qcom,hw-settle-time-us = <200>;
8151401ae5cSPengyu Luo		qcom,avg-samples = <2>;
8161401ae5cSPengyu Luo		qcom,ratiometric;
8171401ae5cSPengyu Luo	};
8181401ae5cSPengyu Luo
8191401ae5cSPengyu Luo	sys-therm@3 {
8201401ae5cSPengyu Luo		reg = <3>;
8211401ae5cSPengyu Luo		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM4_100K_PU(1)>;
8221401ae5cSPengyu Luo		qcom,hw-settle-time-us = <200>;
8231401ae5cSPengyu Luo		qcom,avg-samples = <2>;
8241401ae5cSPengyu Luo		qcom,ratiometric;
8251401ae5cSPengyu Luo	};
8261401ae5cSPengyu Luo
8271401ae5cSPengyu Luo	sys-therm@4 {
8281401ae5cSPengyu Luo		reg = <4>;
8291401ae5cSPengyu Luo		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM1_100K_PU(3)>;
8301401ae5cSPengyu Luo		qcom,hw-settle-time-us = <200>;
8311401ae5cSPengyu Luo		qcom,avg-samples = <2>;
8321401ae5cSPengyu Luo		qcom,ratiometric;
8331401ae5cSPengyu Luo	};
8341401ae5cSPengyu Luo
8351401ae5cSPengyu Luo	sys-therm@5 {
8361401ae5cSPengyu Luo		reg = <5>;
8371401ae5cSPengyu Luo		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM2_100K_PU(3)>;
8381401ae5cSPengyu Luo		qcom,hw-settle-time-us = <200>;
8391401ae5cSPengyu Luo		qcom,avg-samples = <2>;
8401401ae5cSPengyu Luo		qcom,ratiometric;
8411401ae5cSPengyu Luo	};
8421401ae5cSPengyu Luo
8431401ae5cSPengyu Luo	sys-therm@6 {
8441401ae5cSPengyu Luo		reg = <6>;
8451401ae5cSPengyu Luo		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM3_100K_PU(3)>;
8461401ae5cSPengyu Luo		qcom,hw-settle-time-us = <200>;
8471401ae5cSPengyu Luo		qcom,avg-samples = <2>;
8481401ae5cSPengyu Luo		qcom,ratiometric;
8491401ae5cSPengyu Luo	};
8501401ae5cSPengyu Luo
8511401ae5cSPengyu Luo	sys-therm@7 {
8521401ae5cSPengyu Luo		reg = <7>;
8531401ae5cSPengyu Luo		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM4_100K_PU(3)>;
8541401ae5cSPengyu Luo		qcom,hw-settle-time-us = <200>;
8551401ae5cSPengyu Luo		qcom,avg-samples = <2>;
8561401ae5cSPengyu Luo		qcom,ratiometric;
8571401ae5cSPengyu Luo	};
8581401ae5cSPengyu Luo};
8591401ae5cSPengyu Luo
8601401ae5cSPengyu Luo&pmk8280_pon_pwrkey {
8611401ae5cSPengyu Luo	status = "okay";
8621401ae5cSPengyu Luo};
8631401ae5cSPengyu Luo
8641401ae5cSPengyu Luo&pmk8280_pon_resin {
8651401ae5cSPengyu Luo	status = "okay";
8661401ae5cSPengyu Luo	linux,code = <KEY_VOLUMEDOWN>;
8671401ae5cSPengyu Luo};
8681401ae5cSPengyu Luo
8691401ae5cSPengyu Luo&pmk8280_rtc {
8701401ae5cSPengyu Luo	nvmem-cells = <&rtc_offset>;
8711401ae5cSPengyu Luo	nvmem-cell-names = "offset";
8721401ae5cSPengyu Luo
8731401ae5cSPengyu Luo	status = "okay";
8741401ae5cSPengyu Luo};
8751401ae5cSPengyu Luo
8761401ae5cSPengyu Luo&pmk8280_sdam_6 {
8771401ae5cSPengyu Luo	status = "okay";
8781401ae5cSPengyu Luo
8791401ae5cSPengyu Luo	rtc_offset: rtc-offset@bc {
8801401ae5cSPengyu Luo		reg = <0xbc 0x4>;
8811401ae5cSPengyu Luo	};
8821401ae5cSPengyu Luo};
8831401ae5cSPengyu Luo
8841401ae5cSPengyu Luo&pmk8280_vadc {
8851401ae5cSPengyu Luo	channel@144 {
8861401ae5cSPengyu Luo		reg = <PM8350_ADC7_AMUX_THM1_100K_PU(1)>;
8871401ae5cSPengyu Luo		qcom,hw-settle-time = <200>;
8881401ae5cSPengyu Luo		qcom,ratiometric;
8891401ae5cSPengyu Luo		label = "sys_therm1";
8901401ae5cSPengyu Luo	};
8911401ae5cSPengyu Luo
8921401ae5cSPengyu Luo	channel@145 {
8931401ae5cSPengyu Luo		reg = <PM8350_ADC7_AMUX_THM2_100K_PU(1)>;
8941401ae5cSPengyu Luo		qcom,hw-settle-time = <200>;
8951401ae5cSPengyu Luo		qcom,ratiometric;
8961401ae5cSPengyu Luo		label = "sys_therm2";
8971401ae5cSPengyu Luo	};
8981401ae5cSPengyu Luo
8991401ae5cSPengyu Luo	channel@146 {
9001401ae5cSPengyu Luo		reg = <PM8350_ADC7_AMUX_THM3_100K_PU(1)>;
9011401ae5cSPengyu Luo		qcom,hw-settle-time = <200>;
9021401ae5cSPengyu Luo		qcom,ratiometric;
9031401ae5cSPengyu Luo		label = "sys_therm3";
9041401ae5cSPengyu Luo	};
9051401ae5cSPengyu Luo
9061401ae5cSPengyu Luo	channel@147 {
9071401ae5cSPengyu Luo		reg = <PM8350_ADC7_AMUX_THM4_100K_PU(1)>;
9081401ae5cSPengyu Luo		qcom,hw-settle-time = <200>;
9091401ae5cSPengyu Luo		qcom,ratiometric;
9101401ae5cSPengyu Luo		label = "sys_therm4";
9111401ae5cSPengyu Luo	};
9121401ae5cSPengyu Luo
9131401ae5cSPengyu Luo	channel@344 {
9141401ae5cSPengyu Luo		reg = <PM8350_ADC7_AMUX_THM1_100K_PU(3)>;
9151401ae5cSPengyu Luo		qcom,hw-settle-time = <200>;
9161401ae5cSPengyu Luo		qcom,ratiometric;
9171401ae5cSPengyu Luo		label = "sys_therm5";
9181401ae5cSPengyu Luo	};
9191401ae5cSPengyu Luo
9201401ae5cSPengyu Luo	channel@345 {
9211401ae5cSPengyu Luo		reg = <PM8350_ADC7_AMUX_THM2_100K_PU(3)>;
9221401ae5cSPengyu Luo		qcom,hw-settle-time = <200>;
9231401ae5cSPengyu Luo		qcom,ratiometric;
9241401ae5cSPengyu Luo		label = "sys_therm6";
9251401ae5cSPengyu Luo	};
9261401ae5cSPengyu Luo
9271401ae5cSPengyu Luo	channel@346 {
9281401ae5cSPengyu Luo		reg = <PM8350_ADC7_AMUX_THM3_100K_PU(3)>;
9291401ae5cSPengyu Luo		qcom,hw-settle-time = <200>;
9301401ae5cSPengyu Luo		qcom,ratiometric;
9311401ae5cSPengyu Luo		label = "sys_therm7";
9321401ae5cSPengyu Luo	};
9331401ae5cSPengyu Luo
9341401ae5cSPengyu Luo	channel@347 {
9351401ae5cSPengyu Luo		reg = <PM8350_ADC7_AMUX_THM4_100K_PU(3)>;
9361401ae5cSPengyu Luo		qcom,hw-settle-time = <200>;
9371401ae5cSPengyu Luo		qcom,ratiometric;
9381401ae5cSPengyu Luo		label = "sys_therm8";
9391401ae5cSPengyu Luo	};
9401401ae5cSPengyu Luo};
9411401ae5cSPengyu Luo
9421401ae5cSPengyu Luo&qup0 {
9431401ae5cSPengyu Luo	status = "okay";
9441401ae5cSPengyu Luo};
9451401ae5cSPengyu Luo
9461401ae5cSPengyu Luo&qup1 {
9471401ae5cSPengyu Luo	status = "okay";
9481401ae5cSPengyu Luo};
9491401ae5cSPengyu Luo
9501401ae5cSPengyu Luo&qup2 {
9511401ae5cSPengyu Luo	status = "okay";
9521401ae5cSPengyu Luo};
9531401ae5cSPengyu Luo
9541401ae5cSPengyu Luo&remoteproc_adsp {
9551401ae5cSPengyu Luo	firmware-name = "qcom/sc8280xp/HUAWEI/gaokun3/qcadsp8280.mbn";
9561401ae5cSPengyu Luo
9571401ae5cSPengyu Luo	status = "okay";
9581401ae5cSPengyu Luo};
9591401ae5cSPengyu Luo
9601401ae5cSPengyu Luo&remoteproc_nsp0 {
9611401ae5cSPengyu Luo	firmware-name = "qcom/sc8280xp/HUAWEI/gaokun3/qccdsp8280.mbn";
9621401ae5cSPengyu Luo
9631401ae5cSPengyu Luo	status = "okay";
9641401ae5cSPengyu Luo};
9651401ae5cSPengyu Luo
9661401ae5cSPengyu Luo&rxmacro {
9671401ae5cSPengyu Luo	status = "okay";
9681401ae5cSPengyu Luo};
9691401ae5cSPengyu Luo
9701401ae5cSPengyu Luo&sound {
9711401ae5cSPengyu Luo	compatible = "qcom,sc8280xp-sndcard";
9721401ae5cSPengyu Luo	model = "SC8280XP-HUAWEI-MATEBOOKEGO";
9731401ae5cSPengyu Luo	audio-routing = "SpkrLeft IN", "WSA_SPK1 OUT",
9741401ae5cSPengyu Luo			"SpkrRight IN", "WSA_SPK2 OUT",
9751401ae5cSPengyu Luo			"IN1_HPHL", "HPHL_OUT",
9761401ae5cSPengyu Luo			"IN2_HPHR", "HPHR_OUT",
9771401ae5cSPengyu Luo			"AMIC2", "MIC BIAS2",
9781401ae5cSPengyu Luo			"VA DMIC0", "MIC BIAS1",
9791401ae5cSPengyu Luo			"VA DMIC1", "MIC BIAS1",
9801401ae5cSPengyu Luo			"VA DMIC2", "MIC BIAS3",
9811401ae5cSPengyu Luo			"VA DMIC0", "VA MIC BIAS1",
9821401ae5cSPengyu Luo			"VA DMIC1", "VA MIC BIAS1",
9831401ae5cSPengyu Luo			"VA DMIC2", "VA MIC BIAS3",
9841401ae5cSPengyu Luo			"TX SWR_ADC1", "ADC2_OUTPUT";
9851401ae5cSPengyu Luo
9861401ae5cSPengyu Luo	wcd-playback-dai-link {
9871401ae5cSPengyu Luo		link-name = "WCD Playback";
9881401ae5cSPengyu Luo
9891401ae5cSPengyu Luo		cpu {
9901401ae5cSPengyu Luo			sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
9911401ae5cSPengyu Luo		};
9921401ae5cSPengyu Luo
9931401ae5cSPengyu Luo		codec {
9941401ae5cSPengyu Luo			sound-dai = <&wcd938x 0>, <&swr1 0>, <&rxmacro 0>;
9951401ae5cSPengyu Luo		};
9961401ae5cSPengyu Luo
9971401ae5cSPengyu Luo		platform {
9981401ae5cSPengyu Luo			sound-dai = <&q6apm>;
9991401ae5cSPengyu Luo		};
10001401ae5cSPengyu Luo	};
10011401ae5cSPengyu Luo
10021401ae5cSPengyu Luo	wcd-capture-dai-link {
10031401ae5cSPengyu Luo		link-name = "WCD Capture";
10041401ae5cSPengyu Luo
10051401ae5cSPengyu Luo		cpu {
10061401ae5cSPengyu Luo			sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
10071401ae5cSPengyu Luo		};
10081401ae5cSPengyu Luo
10091401ae5cSPengyu Luo		codec {
10101401ae5cSPengyu Luo			sound-dai = <&wcd938x 1>, <&swr2 0>, <&txmacro 0>;
10111401ae5cSPengyu Luo		};
10121401ae5cSPengyu Luo
10131401ae5cSPengyu Luo		platform {
10141401ae5cSPengyu Luo			sound-dai = <&q6apm>;
10151401ae5cSPengyu Luo		};
10161401ae5cSPengyu Luo	};
10171401ae5cSPengyu Luo
10181401ae5cSPengyu Luo	wsa-dai-link {
10191401ae5cSPengyu Luo		link-name = "WSA Playback";
10201401ae5cSPengyu Luo
10211401ae5cSPengyu Luo		cpu {
10221401ae5cSPengyu Luo			sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>;
10231401ae5cSPengyu Luo		};
10241401ae5cSPengyu Luo
10251401ae5cSPengyu Luo		codec {
10261401ae5cSPengyu Luo			sound-dai = <&left_spkr>, <&right_spkr>, <&swr0 0>, <&wsamacro 0>;
10271401ae5cSPengyu Luo		};
10281401ae5cSPengyu Luo
10291401ae5cSPengyu Luo		platform {
10301401ae5cSPengyu Luo			sound-dai = <&q6apm>;
10311401ae5cSPengyu Luo		};
10321401ae5cSPengyu Luo	};
10331401ae5cSPengyu Luo
10341401ae5cSPengyu Luo	va-dai-link {
10351401ae5cSPengyu Luo		link-name = "VA Capture";
10361401ae5cSPengyu Luo
10371401ae5cSPengyu Luo		cpu {
10381401ae5cSPengyu Luo			sound-dai = <&q6apmbedai VA_CODEC_DMA_TX_0>;
10391401ae5cSPengyu Luo		};
10401401ae5cSPengyu Luo
10411401ae5cSPengyu Luo		platform {
10421401ae5cSPengyu Luo			sound-dai = <&q6apm>;
10431401ae5cSPengyu Luo		};
10441401ae5cSPengyu Luo
10451401ae5cSPengyu Luo		codec {
10461401ae5cSPengyu Luo			sound-dai = <&vamacro 0>;
10471401ae5cSPengyu Luo		};
10481401ae5cSPengyu Luo	};
10491401ae5cSPengyu Luo};
10501401ae5cSPengyu Luo
10511401ae5cSPengyu Luo&swr0 {
10521401ae5cSPengyu Luo	status = "okay";
10531401ae5cSPengyu Luo
10541401ae5cSPengyu Luo	left_spkr: wsa8830-left@0,1 {
10551401ae5cSPengyu Luo		compatible = "sdw10217020200";
10561401ae5cSPengyu Luo		reg = <0 1>;
10571401ae5cSPengyu Luo		pinctrl-0 = <&spkr_1_sd_n_default>;
10581401ae5cSPengyu Luo		pinctrl-names = "default";
10591401ae5cSPengyu Luo		powerdown-gpios = <&tlmm 178 GPIO_ACTIVE_LOW>;
10601401ae5cSPengyu Luo		#thermal-sensor-cells = <0>;
10611401ae5cSPengyu Luo		sound-name-prefix = "SpkrLeft";
10621401ae5cSPengyu Luo		#sound-dai-cells = <0>;
10631401ae5cSPengyu Luo		vdd-supply = <&vreg_s10b>;
10641401ae5cSPengyu Luo	};
10651401ae5cSPengyu Luo
10661401ae5cSPengyu Luo	right_spkr: wsa8830-right@0,2 {
10671401ae5cSPengyu Luo		compatible = "sdw10217020200";
10681401ae5cSPengyu Luo		reg = <0 2>;
10691401ae5cSPengyu Luo		pinctrl-0 = <&spkr_2_sd_n_default>;
10701401ae5cSPengyu Luo		pinctrl-names = "default";
10711401ae5cSPengyu Luo		powerdown-gpios = <&tlmm 179 GPIO_ACTIVE_LOW>;
10721401ae5cSPengyu Luo		#thermal-sensor-cells = <0>;
10731401ae5cSPengyu Luo		sound-name-prefix = "SpkrRight";
10741401ae5cSPengyu Luo		#sound-dai-cells = <0>;
10751401ae5cSPengyu Luo		vdd-supply = <&vreg_s10b>;
10761401ae5cSPengyu Luo	};
10771401ae5cSPengyu Luo};
10781401ae5cSPengyu Luo
10791401ae5cSPengyu Luo&swr1 {
10801401ae5cSPengyu Luo	status = "okay";
10811401ae5cSPengyu Luo
10821401ae5cSPengyu Luo	wcd_rx: wcd9380-rx@0,4 {
10831401ae5cSPengyu Luo		compatible = "sdw20217010d00";
10841401ae5cSPengyu Luo		reg = <0 4>;
10851401ae5cSPengyu Luo		qcom,rx-port-mapping = <1 2 3 4 5>;
10861401ae5cSPengyu Luo	};
10871401ae5cSPengyu Luo};
10881401ae5cSPengyu Luo
10891401ae5cSPengyu Luo&swr2 {
10901401ae5cSPengyu Luo	status = "okay";
10911401ae5cSPengyu Luo
10921401ae5cSPengyu Luo	wcd_tx: wcd9380-tx@0,3 {
10931401ae5cSPengyu Luo		compatible = "sdw20217010d00";
10941401ae5cSPengyu Luo		reg = <0 3>;
10951401ae5cSPengyu Luo		qcom,tx-port-mapping = <1 1 2 3>;
10961401ae5cSPengyu Luo	};
10971401ae5cSPengyu Luo};
10981401ae5cSPengyu Luo
10991401ae5cSPengyu Luo&txmacro {
11001401ae5cSPengyu Luo	status = "okay";
11011401ae5cSPengyu Luo};
11021401ae5cSPengyu Luo
11031401ae5cSPengyu Luo&uart2 {
11041401ae5cSPengyu Luo	pinctrl-0 = <&uart2_default>;
11051401ae5cSPengyu Luo	pinctrl-names = "default";
11061401ae5cSPengyu Luo
11071401ae5cSPengyu Luo	status = "okay";
11081401ae5cSPengyu Luo
11091401ae5cSPengyu Luo	bluetooth {
11101401ae5cSPengyu Luo		compatible = "qcom,wcn6855-bt";
11111401ae5cSPengyu Luo
11121401ae5cSPengyu Luo		vddrfacmn-supply = <&vreg_pmu_rfa_cmn_0p8>;
11131401ae5cSPengyu Luo		vddaon-supply = <&vreg_pmu_aon_0p8>;
11141401ae5cSPengyu Luo		vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
11151401ae5cSPengyu Luo		vddwlmx-supply = <&vreg_pmu_wlmx_0p8>;
11161401ae5cSPengyu Luo		vddbtcmx-supply = <&vreg_pmu_btcmx_0p8>;
11171401ae5cSPengyu Luo		vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
11181401ae5cSPengyu Luo		vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
11191401ae5cSPengyu Luo		vddrfa1p8-supply = <&vreg_pmu_rfa_1p7>;
11201401ae5cSPengyu Luo
11211401ae5cSPengyu Luo		max-speed = <3200000>;
11221401ae5cSPengyu Luo	};
11231401ae5cSPengyu Luo};
11241401ae5cSPengyu Luo
11251401ae5cSPengyu Luo&usb_0 {
11261401ae5cSPengyu Luo	status = "okay";
11271401ae5cSPengyu Luo};
11281401ae5cSPengyu Luo
11291401ae5cSPengyu Luo&usb_0_dwc3 {
11301401ae5cSPengyu Luo	dr_mode = "host";
11311401ae5cSPengyu Luo};
11321401ae5cSPengyu Luo
1133*0b6d8f9dSPengyu Luo&usb_0_dwc3_hs {
1134*0b6d8f9dSPengyu Luo	remote-endpoint = <&ucsi0_hs_in>;
1135*0b6d8f9dSPengyu Luo};
1136*0b6d8f9dSPengyu Luo
11371401ae5cSPengyu Luo&usb_0_hsphy {
11381401ae5cSPengyu Luo	vdda-pll-supply = <&vreg_l9d>;
11391401ae5cSPengyu Luo	vdda18-supply = <&vreg_l1c>;
11401401ae5cSPengyu Luo	vdda33-supply = <&vreg_l7d>;
11411401ae5cSPengyu Luo
11421401ae5cSPengyu Luo	status = "okay";
11431401ae5cSPengyu Luo};
11441401ae5cSPengyu Luo
11451401ae5cSPengyu Luo&usb_0_qmpphy {
11461401ae5cSPengyu Luo	vdda-phy-supply = <&vreg_l9d>;
11471401ae5cSPengyu Luo	vdda-pll-supply = <&vreg_l4d>;
11481401ae5cSPengyu Luo
11491401ae5cSPengyu Luo	orientation-switch;
11501401ae5cSPengyu Luo
11511401ae5cSPengyu Luo	status = "okay";
11521401ae5cSPengyu Luo};
11531401ae5cSPengyu Luo
11541401ae5cSPengyu Luo&usb_0_qmpphy_dp_in {
11551401ae5cSPengyu Luo	remote-endpoint = <&mdss0_dp0_out>;
11561401ae5cSPengyu Luo};
11571401ae5cSPengyu Luo
1158*0b6d8f9dSPengyu Luo&usb_0_qmpphy_out {
1159*0b6d8f9dSPengyu Luo	remote-endpoint = <&ucsi0_ss_in>;
1160*0b6d8f9dSPengyu Luo};
1161*0b6d8f9dSPengyu Luo
11621401ae5cSPengyu Luo&usb_1 {
11631401ae5cSPengyu Luo	status = "okay";
11641401ae5cSPengyu Luo};
11651401ae5cSPengyu Luo
11661401ae5cSPengyu Luo&usb_1_dwc3 {
11671401ae5cSPengyu Luo	dr_mode = "host";
11681401ae5cSPengyu Luo};
11691401ae5cSPengyu Luo
1170*0b6d8f9dSPengyu Luo&usb_1_dwc3_hs {
1171*0b6d8f9dSPengyu Luo	remote-endpoint = <&ucsi1_hs_in>;
1172*0b6d8f9dSPengyu Luo};
1173*0b6d8f9dSPengyu Luo
11741401ae5cSPengyu Luo&usb_1_hsphy {
11751401ae5cSPengyu Luo	vdda-pll-supply = <&vreg_l4b>;
11761401ae5cSPengyu Luo	vdda18-supply = <&vreg_l1c>;
11771401ae5cSPengyu Luo	vdda33-supply = <&vreg_l13c>;
11781401ae5cSPengyu Luo
11791401ae5cSPengyu Luo	status = "okay";
11801401ae5cSPengyu Luo};
11811401ae5cSPengyu Luo
11821401ae5cSPengyu Luo&usb_1_qmpphy {
11831401ae5cSPengyu Luo	vdda-phy-supply = <&vreg_l4b>;
11841401ae5cSPengyu Luo	vdda-pll-supply = <&vreg_l3b>;
11851401ae5cSPengyu Luo
11861401ae5cSPengyu Luo	orientation-switch;
11871401ae5cSPengyu Luo
11881401ae5cSPengyu Luo	status = "okay";
11891401ae5cSPengyu Luo};
11901401ae5cSPengyu Luo
11911401ae5cSPengyu Luo&usb_1_qmpphy_dp_in {
11921401ae5cSPengyu Luo	remote-endpoint = <&mdss0_dp1_out>;
11931401ae5cSPengyu Luo};
11941401ae5cSPengyu Luo
1195*0b6d8f9dSPengyu Luo&usb_1_qmpphy_out {
1196*0b6d8f9dSPengyu Luo	remote-endpoint = <&ucsi1_ss_in>;
1197*0b6d8f9dSPengyu Luo};
1198*0b6d8f9dSPengyu Luo
11991401ae5cSPengyu Luo&usb_2 {
12001401ae5cSPengyu Luo	status = "okay";
12011401ae5cSPengyu Luo};
12021401ae5cSPengyu Luo
12031401ae5cSPengyu Luo&usb_2_hsphy0 {
12041401ae5cSPengyu Luo	vdda-pll-supply = <&vreg_l1b>;
12051401ae5cSPengyu Luo	vdda18-supply = <&vreg_l1c>;
12061401ae5cSPengyu Luo	vdda33-supply = <&vreg_l7d>;
12071401ae5cSPengyu Luo
12081401ae5cSPengyu Luo	status = "okay";
12091401ae5cSPengyu Luo};
12101401ae5cSPengyu Luo
12111401ae5cSPengyu Luo&usb_2_hsphy1 {
12121401ae5cSPengyu Luo	vdda-pll-supply = <&vreg_l8d>;
12131401ae5cSPengyu Luo	vdda18-supply = <&vreg_l1c>;
12141401ae5cSPengyu Luo	vdda33-supply = <&vreg_l7d>;
12151401ae5cSPengyu Luo
12161401ae5cSPengyu Luo	status = "okay";
12171401ae5cSPengyu Luo};
12181401ae5cSPengyu Luo
12191401ae5cSPengyu Luo&usb_2_hsphy2 {
12201401ae5cSPengyu Luo	vdda-pll-supply = <&vreg_l10d>;
12211401ae5cSPengyu Luo	vdda18-supply = <&vreg_l8c>;
12221401ae5cSPengyu Luo	vdda33-supply = <&vreg_l2d>;
12231401ae5cSPengyu Luo
12241401ae5cSPengyu Luo	status = "okay";
12251401ae5cSPengyu Luo};
12261401ae5cSPengyu Luo
12271401ae5cSPengyu Luo&usb_2_hsphy3 {
12281401ae5cSPengyu Luo	vdda-pll-supply = <&vreg_l10d>;
12291401ae5cSPengyu Luo	vdda18-supply = <&vreg_l8c>;
12301401ae5cSPengyu Luo	vdda33-supply = <&vreg_l2d>;
12311401ae5cSPengyu Luo
12321401ae5cSPengyu Luo	status = "okay";
12331401ae5cSPengyu Luo};
12341401ae5cSPengyu Luo
12351401ae5cSPengyu Luo&usb_2_qmpphy0 {
12361401ae5cSPengyu Luo	vdda-phy-supply = <&vreg_l1b>;
12371401ae5cSPengyu Luo	vdda-pll-supply = <&vreg_l4d>;
12381401ae5cSPengyu Luo
12391401ae5cSPengyu Luo	status = "okay";
12401401ae5cSPengyu Luo};
12411401ae5cSPengyu Luo
12421401ae5cSPengyu Luo&usb_2_qmpphy1 {
12431401ae5cSPengyu Luo	vdda-phy-supply = <&vreg_l8d>;
12441401ae5cSPengyu Luo	vdda-pll-supply = <&vreg_l4d>;
12451401ae5cSPengyu Luo
12461401ae5cSPengyu Luo	status = "okay";
12471401ae5cSPengyu Luo};
12481401ae5cSPengyu Luo
12491401ae5cSPengyu Luo&vamacro {
12501401ae5cSPengyu Luo	pinctrl-0 = <&dmic01_default>, <&dmic23_default>;
12511401ae5cSPengyu Luo	pinctrl-names = "default";
12521401ae5cSPengyu Luo
12531401ae5cSPengyu Luo	vdd-micb-supply = <&vreg_s10b>;
12541401ae5cSPengyu Luo
12551401ae5cSPengyu Luo	qcom,dmic-sample-rate = <4800000>;
12561401ae5cSPengyu Luo
12571401ae5cSPengyu Luo	status = "okay";
12581401ae5cSPengyu Luo};
12591401ae5cSPengyu Luo
12601401ae5cSPengyu Luo&wsamacro {
12611401ae5cSPengyu Luo	status = "okay";
12621401ae5cSPengyu Luo};
12631401ae5cSPengyu Luo
12641401ae5cSPengyu Luo&xo_board_clk {
12651401ae5cSPengyu Luo	clock-frequency = <38400000>;
12661401ae5cSPengyu Luo};
12671401ae5cSPengyu Luo
12681401ae5cSPengyu Luo/* PINCTRL */
12691401ae5cSPengyu Luo
12701401ae5cSPengyu Luo&lpass_tlmm {
12711401ae5cSPengyu Luo	status = "okay";
12721401ae5cSPengyu Luo};
12731401ae5cSPengyu Luo
12741401ae5cSPengyu Luo&pmc8280_1_gpios {
12751401ae5cSPengyu Luo	misc_3p3_reg_en: misc-3p3-reg-en-state {
12761401ae5cSPengyu Luo		pins = "gpio1";
12771401ae5cSPengyu Luo		function = "normal";
12781401ae5cSPengyu Luo	};
12791401ae5cSPengyu Luo
12801401ae5cSPengyu Luo	vol_up_n: vol-up-n-state {
12811401ae5cSPengyu Luo		pins = "gpio6";
12821401ae5cSPengyu Luo		function = "normal";
12831401ae5cSPengyu Luo		power-source = <1>;
12841401ae5cSPengyu Luo		input-enable;
12851401ae5cSPengyu Luo		bias-pull-up;
12861401ae5cSPengyu Luo	};
12871401ae5cSPengyu Luo};
12881401ae5cSPengyu Luo
12891401ae5cSPengyu Luo&pmr735a_gpios {
12901401ae5cSPengyu Luo	hastings_reg_en: hastings-reg-en-state {
12911401ae5cSPengyu Luo		pins = "gpio1";
12921401ae5cSPengyu Luo		function = "normal";
12931401ae5cSPengyu Luo	};
12941401ae5cSPengyu Luo};
12951401ae5cSPengyu Luo
12961401ae5cSPengyu Luo&tlmm {
12971401ae5cSPengyu Luo
12981401ae5cSPengyu Luo	gpio-reserved-ranges = <70 2>, <74 6>, <83 4>, <125 2>, <128 2>, <154 4>;
12991401ae5cSPengyu Luo
13001401ae5cSPengyu Luo	bt_default: bt-default-state {
13011401ae5cSPengyu Luo		hstp-bt-en-pins {
13021401ae5cSPengyu Luo			pins = "gpio133";
13031401ae5cSPengyu Luo			function = "gpio";
13041401ae5cSPengyu Luo			drive-strength = <16>;
13051401ae5cSPengyu Luo			bias-disable;
13061401ae5cSPengyu Luo		};
13071401ae5cSPengyu Luo
13081401ae5cSPengyu Luo		hstp-sw-ctrl-pins {
13091401ae5cSPengyu Luo			pins = "gpio132";
13101401ae5cSPengyu Luo			function = "gpio";
13111401ae5cSPengyu Luo			bias-pull-down;
13121401ae5cSPengyu Luo		};
13131401ae5cSPengyu Luo	};
13141401ae5cSPengyu Luo
13151401ae5cSPengyu Luo	i2c4_default: i2c4-default-state {
13161401ae5cSPengyu Luo		pins = "gpio171", "gpio172";
13171401ae5cSPengyu Luo		function = "qup4";
13181401ae5cSPengyu Luo		drive-strength = <16>;
13191401ae5cSPengyu Luo		bias-disable;
13201401ae5cSPengyu Luo	};
13211401ae5cSPengyu Luo
1322*0b6d8f9dSPengyu Luo	i2c15_default: i2c15-default-state {
1323*0b6d8f9dSPengyu Luo		pins = "gpio36", "gpio37";
1324*0b6d8f9dSPengyu Luo		function = "qup15";
1325*0b6d8f9dSPengyu Luo		drive-strength = <2>;
1326*0b6d8f9dSPengyu Luo		bias-pull-up;
1327*0b6d8f9dSPengyu Luo	};
1328*0b6d8f9dSPengyu Luo
13291401ae5cSPengyu Luo	mode_pin_active: mode-pin-state {
13301401ae5cSPengyu Luo		pins = "gpio26";
13311401ae5cSPengyu Luo		function = "gpio";
13321401ae5cSPengyu Luo		bias-disable;
13331401ae5cSPengyu Luo	};
13341401ae5cSPengyu Luo
13351401ae5cSPengyu Luo	nvme_reg_en: nvme-reg-en-state {
13361401ae5cSPengyu Luo		pins = "gpio135";
13371401ae5cSPengyu Luo		function = "gpio";
13381401ae5cSPengyu Luo		drive-strength = <2>;
13391401ae5cSPengyu Luo		bias-disable;
13401401ae5cSPengyu Luo	};
13411401ae5cSPengyu Luo
13421401ae5cSPengyu Luo	pcie2a_default: pcie2a-default-state {
13431401ae5cSPengyu Luo		clkreq-n-pins {
13441401ae5cSPengyu Luo			pins = "gpio142";
13451401ae5cSPengyu Luo			function = "pcie2a_clkreq";
13461401ae5cSPengyu Luo			drive-strength = <2>;
13471401ae5cSPengyu Luo			bias-pull-up;
13481401ae5cSPengyu Luo		};
13491401ae5cSPengyu Luo
13501401ae5cSPengyu Luo		perst-n-pins {
13511401ae5cSPengyu Luo			pins = "gpio143";
13521401ae5cSPengyu Luo			function = "gpio";
13531401ae5cSPengyu Luo			drive-strength = <2>;
13541401ae5cSPengyu Luo			bias-disable;
13551401ae5cSPengyu Luo		};
13561401ae5cSPengyu Luo
13571401ae5cSPengyu Luo		wake-n-pins {
13581401ae5cSPengyu Luo		       pins = "gpio145";
13591401ae5cSPengyu Luo		       function = "gpio";
13601401ae5cSPengyu Luo		       drive-strength = <2>;
13611401ae5cSPengyu Luo		       bias-pull-up;
13621401ae5cSPengyu Luo	       };
13631401ae5cSPengyu Luo	};
13641401ae5cSPengyu Luo
13651401ae5cSPengyu Luo	pcie4_default: pcie4-default-state {
13661401ae5cSPengyu Luo		clkreq-n-pins {
13671401ae5cSPengyu Luo			pins = "gpio140";
13681401ae5cSPengyu Luo			function = "pcie4_clkreq";
13691401ae5cSPengyu Luo			drive-strength = <2>;
13701401ae5cSPengyu Luo			bias-pull-up;
13711401ae5cSPengyu Luo		};
13721401ae5cSPengyu Luo
13731401ae5cSPengyu Luo		perst-n-pins {
13741401ae5cSPengyu Luo			pins = "gpio141";
13751401ae5cSPengyu Luo			function = "gpio";
13761401ae5cSPengyu Luo			drive-strength = <2>;
13771401ae5cSPengyu Luo			bias-disable;
13781401ae5cSPengyu Luo		};
13791401ae5cSPengyu Luo
13801401ae5cSPengyu Luo		wake-n-pins {
13811401ae5cSPengyu Luo			pins = "gpio139";
13821401ae5cSPengyu Luo			function = "gpio";
13831401ae5cSPengyu Luo			drive-strength = <2>;
13841401ae5cSPengyu Luo			bias-pull-up;
13851401ae5cSPengyu Luo		};
13861401ae5cSPengyu Luo	};
13871401ae5cSPengyu Luo
13881401ae5cSPengyu Luo	spkr_1_sd_n_default: spkr-1-sd-n-default-state {
13891401ae5cSPengyu Luo		perst-n-pins {
13901401ae5cSPengyu Luo			pins = "gpio178";
13911401ae5cSPengyu Luo			function = "gpio";
13921401ae5cSPengyu Luo			drive-strength = <16>;
13931401ae5cSPengyu Luo			bias-disable;
13941401ae5cSPengyu Luo			output-high;
13951401ae5cSPengyu Luo		};
13961401ae5cSPengyu Luo	};
13971401ae5cSPengyu Luo
13981401ae5cSPengyu Luo	spkr_2_sd_n_default: spkr-2-sd-n-default-state {
13991401ae5cSPengyu Luo		perst-n-pins {
14001401ae5cSPengyu Luo			pins = "gpio179";
14011401ae5cSPengyu Luo			function = "gpio";
14021401ae5cSPengyu Luo			drive-strength = <16>;
14031401ae5cSPengyu Luo			bias-disable;
14041401ae5cSPengyu Luo			output-high;
14051401ae5cSPengyu Luo		};
14061401ae5cSPengyu Luo	};
14071401ae5cSPengyu Luo
14081401ae5cSPengyu Luo	ts0_default: ts0-default-state {
14091401ae5cSPengyu Luo		int-n-pins {
14101401ae5cSPengyu Luo			pins = "gpio175";
14111401ae5cSPengyu Luo			function = "gpio";
14121401ae5cSPengyu Luo			drive-strength = <2>;
14131401ae5cSPengyu Luo			bias-disable;
14141401ae5cSPengyu Luo		};
14151401ae5cSPengyu Luo
14161401ae5cSPengyu Luo		reset-n-pins {
14171401ae5cSPengyu Luo			pins = "gpio99";
14181401ae5cSPengyu Luo			function = "gpio";
14191401ae5cSPengyu Luo			drive-strength = <2>;
14201401ae5cSPengyu Luo			bias-disable;
14211401ae5cSPengyu Luo			output-high;
14221401ae5cSPengyu Luo		};
14231401ae5cSPengyu Luo	};
14241401ae5cSPengyu Luo
14251401ae5cSPengyu Luo	uart2_default: uart2-default-state {
14261401ae5cSPengyu Luo		cts-pins {
14271401ae5cSPengyu Luo			pins = "gpio121";
14281401ae5cSPengyu Luo			function = "qup2";
14291401ae5cSPengyu Luo			bias-bus-hold;
14301401ae5cSPengyu Luo		};
14311401ae5cSPengyu Luo
14321401ae5cSPengyu Luo		rts-pins {
14331401ae5cSPengyu Luo			pins = "gpio122";
14341401ae5cSPengyu Luo			function = "qup2";
14351401ae5cSPengyu Luo			drive-strength = <2>;
14361401ae5cSPengyu Luo			bias-disable;
14371401ae5cSPengyu Luo		};
14381401ae5cSPengyu Luo
14391401ae5cSPengyu Luo		rx-pins {
14401401ae5cSPengyu Luo			pins = "gpio124";
14411401ae5cSPengyu Luo			function = "qup2";
14421401ae5cSPengyu Luo			bias-pull-up;
14431401ae5cSPengyu Luo		};
14441401ae5cSPengyu Luo
14451401ae5cSPengyu Luo		tx-pins {
14461401ae5cSPengyu Luo			pins = "gpio123";
14471401ae5cSPengyu Luo			function = "qup2";
14481401ae5cSPengyu Luo			drive-strength = <2>;
14491401ae5cSPengyu Luo			bias-disable;
14501401ae5cSPengyu Luo		};
14511401ae5cSPengyu Luo	};
14521401ae5cSPengyu Luo
1453*0b6d8f9dSPengyu Luo	usb0_sbu_default: usb0-sbu-state {
1454*0b6d8f9dSPengyu Luo		pins = "gpio164";
1455*0b6d8f9dSPengyu Luo		function = "gpio";
1456*0b6d8f9dSPengyu Luo		drive-strength = <16>;
1457*0b6d8f9dSPengyu Luo		bias-disable;
1458*0b6d8f9dSPengyu Luo	};
1459*0b6d8f9dSPengyu Luo
1460*0b6d8f9dSPengyu Luo	usb1_sbu_default: usb1-sbu-state {
1461*0b6d8f9dSPengyu Luo		pins = "gpio47";
1462*0b6d8f9dSPengyu Luo		function = "gpio";
1463*0b6d8f9dSPengyu Luo		drive-strength = <16>;
1464*0b6d8f9dSPengyu Luo		bias-disable;
1465*0b6d8f9dSPengyu Luo	};
1466*0b6d8f9dSPengyu Luo
14671401ae5cSPengyu Luo	wcd_default: wcd-default-state {
14681401ae5cSPengyu Luo		reset-pins {
14691401ae5cSPengyu Luo			pins = "gpio106";
14701401ae5cSPengyu Luo			function = "gpio";
14711401ae5cSPengyu Luo			bias-disable;
14721401ae5cSPengyu Luo		};
14731401ae5cSPengyu Luo	};
14741401ae5cSPengyu Luo
14751401ae5cSPengyu Luo	wlan_en: wlan-en-state {
14761401ae5cSPengyu Luo		pins = "gpio134";
14771401ae5cSPengyu Luo		function = "gpio";
14781401ae5cSPengyu Luo		drive-strength = <8>;
14791401ae5cSPengyu Luo		bias-pull-down;
14801401ae5cSPengyu Luo	};
14811401ae5cSPengyu Luo};
1482