xref: /linux/scripts/dtc/include-prefixes/arm64/qcom/sm8250-xiaomi-elish-common.dtsi (revision ec71f661a572a770d7c861cd52a50cbbb0e1a8d1)
168434024SJianhua Lu// SPDX-License-Identifier: BSD-3-Clause
268434024SJianhua Lu/*
322196267SJianhua Lu * Copyright (c) 2022-2024 Jianhua Lu <lujianhua000@gmail.com>
468434024SJianhua Lu */
568434024SJianhua Lu
668434024SJianhua Lu#include <dt-bindings/arm/qcom,ids.h>
751c4c2bdSJianhua Lu#include <dt-bindings/phy/phy.h>
868434024SJianhua Lu#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
969652787SJianhua Lu#include <dt-bindings/usb/pd.h>
1068434024SJianhua Lu#include "sm8250.dtsi"
1168434024SJianhua Lu#include "pm8150.dtsi"
1268434024SJianhua Lu#include "pm8150b.dtsi"
1368434024SJianhua Lu#include "pm8150l.dtsi"
1468434024SJianhua Lu#include "pm8009.dtsi"
1568434024SJianhua Lu
1668434024SJianhua Lu/*
1768434024SJianhua Lu * Delete following upstream (sm8250.dtsi) reserved
1868434024SJianhua Lu * memory mappings which are different on this device.
1968434024SJianhua Lu */
2068434024SJianhua Lu/delete-node/ &adsp_mem;
2168434024SJianhua Lu/delete-node/ &cdsp_secure_heap;
2268434024SJianhua Lu/delete-node/ &slpi_mem;
2368434024SJianhua Lu/delete-node/ &spss_mem;
2468434024SJianhua Lu/delete-node/ &xbl_aop_mem;
2568434024SJianhua Lu
2668434024SJianhua Lu/ {
27608168b4SJianhua Lu	chassis-type = "tablet";
2868434024SJianhua Lu
2968434024SJianhua Lu	/* required for bootloader to select correct board */
3068434024SJianhua Lu	qcom,msm-id = <QCOM_ID_SM8250 0x20001>; /* SM8250 v2.1 */
3168434024SJianhua Lu	qcom,board-id = <0x10008 0>;
3268434024SJianhua Lu
338b14c064SJianhua Lu	aliases {
348b14c064SJianhua Lu		serial0 = &uart6;
358b14c064SJianhua Lu	};
368b14c064SJianhua Lu
3768434024SJianhua Lu	chosen {
3868434024SJianhua Lu		#address-cells = <2>;
3968434024SJianhua Lu		#size-cells = <2>;
4068434024SJianhua Lu		ranges;
4168434024SJianhua Lu
4268434024SJianhua Lu		framebuffer: framebuffer@9c000000 {
4368434024SJianhua Lu			compatible = "simple-framebuffer";
4468434024SJianhua Lu			reg = <0x0 0x9c000000 0x0 0x2300000>;
4568434024SJianhua Lu			width = <1600>;
4668434024SJianhua Lu			height = <2560>;
4768434024SJianhua Lu			stride = <(1600 * 4)>;
4868434024SJianhua Lu			format = "a8r8g8b8";
4968434024SJianhua Lu		};
5068434024SJianhua Lu	};
5168434024SJianhua Lu
5268434024SJianhua Lu	battery_l: battery-l {
5368434024SJianhua Lu		compatible = "simple-battery";
5468434024SJianhua Lu		voltage-min-design-microvolt = <3870000>;
5568434024SJianhua Lu		energy-full-design-microwatt-hours = <16600000>;
5668434024SJianhua Lu		charge-full-design-microamp-hours = <4300000>;
5768434024SJianhua Lu	};
5868434024SJianhua Lu
5968434024SJianhua Lu	battery_r: battery-r {
6068434024SJianhua Lu		compatible = "simple-battery";
6168434024SJianhua Lu		voltage-min-design-microvolt = <3870000>;
6268434024SJianhua Lu		energy-full-design-microwatt-hours = <16600000>;
6368434024SJianhua Lu		charge-full-design-microamp-hours = <4300000>;
6468434024SJianhua Lu	};
6568434024SJianhua Lu
6668434024SJianhua Lu	bl_vddpos_5p5: bl-vddpos-regulator {
6768434024SJianhua Lu		compatible = "regulator-fixed";
6868434024SJianhua Lu		regulator-name = "bl_vddpos_5p5";
6968434024SJianhua Lu		regulator-min-microvolt = <5500000>;
7068434024SJianhua Lu		regulator-max-microvolt = <5500000>;
7168434024SJianhua Lu		regulator-enable-ramp-delay = <233>;
7268434024SJianhua Lu		gpio = <&tlmm 130 GPIO_ACTIVE_HIGH>;
7368434024SJianhua Lu		enable-active-high;
7468434024SJianhua Lu		regulator-boot-on;
7568434024SJianhua Lu	};
7668434024SJianhua Lu
7768434024SJianhua Lu	bl_vddneg_5p5: bl-vddneg-regulator {
7868434024SJianhua Lu		compatible = "regulator-fixed";
7968434024SJianhua Lu		regulator-name = "bl_vddneg_5p5";
8068434024SJianhua Lu		regulator-min-microvolt = <5500000>;
8168434024SJianhua Lu		regulator-max-microvolt = <5500000>;
8268434024SJianhua Lu		regulator-enable-ramp-delay = <233>;
8368434024SJianhua Lu		gpio = <&tlmm 131 GPIO_ACTIVE_HIGH>;
8468434024SJianhua Lu		enable-active-high;
8568434024SJianhua Lu		regulator-boot-on;
8668434024SJianhua Lu	};
8768434024SJianhua Lu
8868434024SJianhua Lu	gpio_keys: gpio-keys {
8968434024SJianhua Lu		compatible = "gpio-keys";
9068434024SJianhua Lu
9168434024SJianhua Lu		pinctrl-names = "default";
9268434024SJianhua Lu		pinctrl-0 = <&vol_up_n>;
9368434024SJianhua Lu
9468434024SJianhua Lu		key-vol-up {
9568434024SJianhua Lu			label = "Volume Up";
9668434024SJianhua Lu			gpios = <&pm8150_gpios 6 GPIO_ACTIVE_LOW>;
9768434024SJianhua Lu			linux,code = <KEY_VOLUMEUP>;
9868434024SJianhua Lu			debounce-interval = <15>;
9968434024SJianhua Lu			linux,can-disable;
10068434024SJianhua Lu			wakeup-source;
10168434024SJianhua Lu		};
10268434024SJianhua Lu	};
10368434024SJianhua Lu
1046e4ec5f6SJianhua Lu	qca6390-pmu {
1056e4ec5f6SJianhua Lu		compatible = "qcom,qca6390-pmu";
1066e4ec5f6SJianhua Lu
1076e4ec5f6SJianhua Lu		pinctrl-names = "default";
1086e4ec5f6SJianhua Lu		pinctrl-0 = <&bt_en_state>, <&wlan_en_state>;
1096e4ec5f6SJianhua Lu
1106e4ec5f6SJianhua Lu		vddaon-supply = <&vreg_s6a_0p95>;
1116e4ec5f6SJianhua Lu		vddpmu-supply = <&vreg_s6a_0p95>;
1126e4ec5f6SJianhua Lu		vddrfa0p95-supply = <&vreg_s6a_0p95>;
1136e4ec5f6SJianhua Lu		vddrfa1p3-supply = <&vreg_s8c_1p35>;
1146e4ec5f6SJianhua Lu		vddrfa1p9-supply = <&vreg_s5a_1p9>;
1156e4ec5f6SJianhua Lu		vddpcie1p3-supply = <&vreg_s8c_1p35>;
1166e4ec5f6SJianhua Lu		vddpcie1p9-supply = <&vreg_s5a_1p9>;
1176e4ec5f6SJianhua Lu		vddio-supply = <&vreg_s4a_1p8>;
1186e4ec5f6SJianhua Lu
1196e4ec5f6SJianhua Lu		wlan-enable-gpios = <&tlmm 20 GPIO_ACTIVE_HIGH>;
1206e4ec5f6SJianhua Lu		bt-enable-gpios = <&tlmm 21 GPIO_ACTIVE_HIGH>;
1216e4ec5f6SJianhua Lu
1226e4ec5f6SJianhua Lu		regulators {
1236e4ec5f6SJianhua Lu			vreg_pmu_rfa_cmn: ldo0 {
1246e4ec5f6SJianhua Lu				regulator-name = "vreg_pmu_rfa_cmn";
1256e4ec5f6SJianhua Lu			};
1266e4ec5f6SJianhua Lu
1276e4ec5f6SJianhua Lu			vreg_pmu_aon_0p59: ldo1 {
1286e4ec5f6SJianhua Lu				regulator-name = "vreg_pmu_aon_0p59";
1296e4ec5f6SJianhua Lu			};
1306e4ec5f6SJianhua Lu
1316e4ec5f6SJianhua Lu			vreg_pmu_wlcx_0p8: ldo2 {
1326e4ec5f6SJianhua Lu				regulator-name = "vreg_pmu_wlcx_0p8";
1336e4ec5f6SJianhua Lu			};
1346e4ec5f6SJianhua Lu
1356e4ec5f6SJianhua Lu			vreg_pmu_wlmx_0p85: ldo3 {
1366e4ec5f6SJianhua Lu				regulator-name = "vreg_pmu_wlmx_0p85";
1376e4ec5f6SJianhua Lu			};
1386e4ec5f6SJianhua Lu
1396e4ec5f6SJianhua Lu			vreg_pmu_btcmx_0p85: ldo4 {
1406e4ec5f6SJianhua Lu				regulator-name = "vreg_pmu_btcmx_0p85";
1416e4ec5f6SJianhua Lu			};
1426e4ec5f6SJianhua Lu
1436e4ec5f6SJianhua Lu			vreg_pmu_rfa_0p8: ldo5 {
1446e4ec5f6SJianhua Lu				regulator-name = "vreg_pmu_rfa_0p8";
1456e4ec5f6SJianhua Lu			};
1466e4ec5f6SJianhua Lu
1476e4ec5f6SJianhua Lu			vreg_pmu_rfa_1p2: ldo6 {
1486e4ec5f6SJianhua Lu				regulator-name = "vreg_pmu_rfa_1p2";
1496e4ec5f6SJianhua Lu			};
1506e4ec5f6SJianhua Lu
1516e4ec5f6SJianhua Lu			vreg_pmu_rfa_1p7: ldo7 {
1526e4ec5f6SJianhua Lu				regulator-name = "vreg_pmu_rfa_1p7";
1536e4ec5f6SJianhua Lu			};
1546e4ec5f6SJianhua Lu
1556e4ec5f6SJianhua Lu			vreg_pmu_pcie_0p9: ldo8 {
1566e4ec5f6SJianhua Lu				regulator-name = "vreg_pmu_pcie_0p9";
1576e4ec5f6SJianhua Lu			};
1586e4ec5f6SJianhua Lu
1596e4ec5f6SJianhua Lu			vreg_pmu_pcie_1p8: ldo9 {
1606e4ec5f6SJianhua Lu				regulator-name = "vreg_pmu_pcie_1p8";
1616e4ec5f6SJianhua Lu			};
1626e4ec5f6SJianhua Lu		};
1636e4ec5f6SJianhua Lu	};
1646e4ec5f6SJianhua Lu
16568434024SJianhua Lu	vph_pwr: vph-pwr-regulator {
16668434024SJianhua Lu		compatible = "regulator-fixed";
16768434024SJianhua Lu		regulator-name = "vph_pwr";
16868434024SJianhua Lu		regulator-min-microvolt = <3700000>;
16968434024SJianhua Lu		regulator-max-microvolt = <3700000>;
17068434024SJianhua Lu	};
17168434024SJianhua Lu
17268434024SJianhua Lu	/* S6c is really ebi.lvl but it's there for supply map completeness sake. */
17368434024SJianhua Lu	vreg_s6c_0p88: smpc6-regulator {
17468434024SJianhua Lu		compatible = "regulator-fixed";
17568434024SJianhua Lu		regulator-name = "vreg_s6c_0p88";
17668434024SJianhua Lu		regulator-min-microvolt = <880000>;
17768434024SJianhua Lu		regulator-max-microvolt = <880000>;
17868434024SJianhua Lu		regulator-always-on;
17968434024SJianhua Lu		vin-supply = <&vph_pwr>;
18068434024SJianhua Lu	};
18168434024SJianhua Lu
18268434024SJianhua Lu	reserved-memory {
183608168b4SJianhua Lu		xbl_aop_mem: xbl-aop@80600000 {
18468434024SJianhua Lu			reg = <0x0 0x80600000 0x0 0x260000>;
18568434024SJianhua Lu			no-map;
18668434024SJianhua Lu		};
18768434024SJianhua Lu
18868434024SJianhua Lu		slpi_mem: slpi@88c00000 {
18968434024SJianhua Lu			reg = <0x0 0x88c00000 0x0 0x2f00000>;
19068434024SJianhua Lu			no-map;
19168434024SJianhua Lu		};
19268434024SJianhua Lu
19368434024SJianhua Lu		adsp_mem: adsp@8bb00000 {
19468434024SJianhua Lu			reg = <0x0 0x8bb00000 0x0 0x2500000>;
19568434024SJianhua Lu			no-map;
19668434024SJianhua Lu		};
19768434024SJianhua Lu
19868434024SJianhua Lu		spss_mem: spss@8e000000 {
19968434024SJianhua Lu			reg = <0x0 0x8e000000 0x0 0x100000>;
20068434024SJianhua Lu			no-map;
20168434024SJianhua Lu		};
20268434024SJianhua Lu
20368434024SJianhua Lu		cdsp_secure_heap: cdsp-secure-heap@8e100000 {
20468434024SJianhua Lu			reg = <0x0 0x8e100000 0x0 0x4600000>;
20568434024SJianhua Lu			no-map;
20668434024SJianhua Lu		};
20768434024SJianhua Lu
20868434024SJianhua Lu		cont_splash_mem: cont-splash@9c000000 {
20968434024SJianhua Lu			reg = <0x0 0x9c000000 0x0 0x2300000>;
21068434024SJianhua Lu			no-map;
21168434024SJianhua Lu		};
21268434024SJianhua Lu
21368434024SJianhua Lu		ramoops@b0000000 {
21468434024SJianhua Lu			compatible = "ramoops";
21568434024SJianhua Lu			reg = <0x0 0xb0000000 0x0 0x400000>;
21668434024SJianhua Lu			record-size = <0x1000>;
21768434024SJianhua Lu			console-size = <0x200000>;
21868434024SJianhua Lu			ecc-size = <16>;
21968434024SJianhua Lu			no-map;
22068434024SJianhua Lu		};
22168434024SJianhua Lu	};
22268434024SJianhua Lu};
22368434024SJianhua Lu
22468434024SJianhua Lu&adsp {
22568434024SJianhua Lu	firmware-name = "qcom/sm8250/xiaomi/elish/adsp.mbn";
22668434024SJianhua Lu	status = "okay";
22768434024SJianhua Lu};
22868434024SJianhua Lu
22968434024SJianhua Lu&apps_rsc {
23068434024SJianhua Lu	regulators-0 {
23168434024SJianhua Lu		compatible = "qcom,pm8150-rpmh-regulators";
23268434024SJianhua Lu		qcom,pmic-id = "a";
23368434024SJianhua Lu
23468434024SJianhua Lu		vdd-s1-supply = <&vph_pwr>;
23568434024SJianhua Lu		vdd-s2-supply = <&vph_pwr>;
23668434024SJianhua Lu		vdd-s3-supply = <&vph_pwr>;
23768434024SJianhua Lu		vdd-s4-supply = <&vph_pwr>;
23868434024SJianhua Lu		vdd-s5-supply = <&vph_pwr>;
23968434024SJianhua Lu		vdd-s6-supply = <&vph_pwr>;
24068434024SJianhua Lu		vdd-s7-supply = <&vph_pwr>;
24168434024SJianhua Lu		vdd-s8-supply = <&vph_pwr>;
24268434024SJianhua Lu		vdd-s9-supply = <&vph_pwr>;
24368434024SJianhua Lu		vdd-s10-supply = <&vph_pwr>;
24468434024SJianhua Lu		vdd-l1-l8-l11-supply = <&vreg_s6c_0p88>;
24568434024SJianhua Lu		vdd-l2-l10-supply = <&vreg_bob>;
24668434024SJianhua Lu		vdd-l3-l4-l5-l18-supply = <&vreg_s6a_0p95>;
24768434024SJianhua Lu		vdd-l6-l9-supply = <&vreg_s8c_1p35>;
24868434024SJianhua Lu		vdd-l7-l12-l14-l15-supply = <&vreg_s5a_1p9>;
24968434024SJianhua Lu		vdd-l13-l16-l17-supply = <&vreg_bob>;
25068434024SJianhua Lu
25168434024SJianhua Lu		/* (S1+S2+S3) - cx.lvl (ARC) */
25268434024SJianhua Lu
25368434024SJianhua Lu		vreg_s4a_1p8: smps4 {
25468434024SJianhua Lu			regulator-name = "vreg_s4a_1p8";
25568434024SJianhua Lu			regulator-min-microvolt = <1800000>;
25668434024SJianhua Lu			regulator-max-microvolt = <1920000>;
25768434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
25868434024SJianhua Lu			regulator-allow-set-load;
25968434024SJianhua Lu			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
26068434024SJianhua Lu						   RPMH_REGULATOR_MODE_HPM>;
26168434024SJianhua Lu		};
26268434024SJianhua Lu
26368434024SJianhua Lu		vreg_s5a_1p9: smps5 {
26468434024SJianhua Lu			regulator-name = "vreg_s5a_1p9";
26568434024SJianhua Lu			regulator-min-microvolt = <1900000>;
26668434024SJianhua Lu			regulator-max-microvolt = <2040000>;
26768434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
26868434024SJianhua Lu		};
26968434024SJianhua Lu
27068434024SJianhua Lu		vreg_s6a_0p95: smps6 {
27168434024SJianhua Lu			regulator-name = "vreg_s6a_0p95";
27268434024SJianhua Lu			regulator-min-microvolt = <950000>;
27368434024SJianhua Lu			regulator-max-microvolt = <1128000>;
27468434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
27568434024SJianhua Lu		};
27668434024SJianhua Lu
27768434024SJianhua Lu		vreg_l2a_3p1: ldo2 {
27868434024SJianhua Lu			regulator-name = "vreg_l2a_3p1";
27968434024SJianhua Lu			regulator-min-microvolt = <3072000>;
28068434024SJianhua Lu			regulator-max-microvolt = <3072000>;
28168434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
28268434024SJianhua Lu		};
28368434024SJianhua Lu
28468434024SJianhua Lu		vreg_l3a_0p9: ldo3 {
28568434024SJianhua Lu			regulator-name = "vreg_l3a_0p9";
28668434024SJianhua Lu			regulator-min-microvolt = <928000>;
28768434024SJianhua Lu			regulator-max-microvolt = <932000>;
28868434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
28968434024SJianhua Lu		};
29068434024SJianhua Lu
29168434024SJianhua Lu		/* L4 - lmx.lvl (ARC) */
29268434024SJianhua Lu
29368434024SJianhua Lu		vreg_l5a_0p88: ldo5 {
29468434024SJianhua Lu			regulator-name = "vreg_l5a_0p88";
29568434024SJianhua Lu			regulator-min-microvolt = <880000>;
29668434024SJianhua Lu			regulator-max-microvolt = <880000>;
29768434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
29868434024SJianhua Lu		};
29968434024SJianhua Lu
30068434024SJianhua Lu		vreg_l6a_1p2: ldo6 {
30168434024SJianhua Lu			regulator-name = "vreg_l6a_1p2";
30268434024SJianhua Lu			regulator-min-microvolt = <1200000>;
30368434024SJianhua Lu			regulator-max-microvolt = <1200000>;
30468434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
30568434024SJianhua Lu			regulator-allow-set-load;
30668434024SJianhua Lu			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
30768434024SJianhua Lu						   RPMH_REGULATOR_MODE_HPM>;
30868434024SJianhua Lu		};
30968434024SJianhua Lu
31068434024SJianhua Lu		/* L7 is unused. */
31168434024SJianhua Lu
31268434024SJianhua Lu		vreg_l9a_1p2: ldo9 {
31368434024SJianhua Lu			regulator-name = "vreg_l9a_1p2";
31468434024SJianhua Lu			regulator-min-microvolt = <1200000>;
31568434024SJianhua Lu			regulator-max-microvolt = <1200000>;
31668434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
31768434024SJianhua Lu		};
31868434024SJianhua Lu
31968434024SJianhua Lu		/* L10 is unused, L11 - lcx.lvl (ARC) */
32068434024SJianhua Lu
32168434024SJianhua Lu		vreg_l12a_1p8: ldo12 {
32268434024SJianhua Lu			regulator-name = "vreg_l12a_1p8";
32368434024SJianhua Lu			regulator-min-microvolt = <1800000>;
32468434024SJianhua Lu			regulator-max-microvolt = <1800000>;
32568434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
32668434024SJianhua Lu		};
32768434024SJianhua Lu
32868434024SJianhua Lu		/* L13 is unused. */
32968434024SJianhua Lu
33068434024SJianhua Lu		vreg_l14a_1p88: ldo14 {
33168434024SJianhua Lu			regulator-name = "vreg_l14a_1p88";
33268434024SJianhua Lu			regulator-min-microvolt = <1880000>;
33368434024SJianhua Lu			regulator-max-microvolt = <1880000>;
33468434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
33568434024SJianhua Lu		};
33668434024SJianhua Lu
33768434024SJianhua Lu		/* L15 & L16 are unused. */
33868434024SJianhua Lu
33968434024SJianhua Lu		vreg_l17a_3p0: ldo17 {
34068434024SJianhua Lu			regulator-name = "vreg_l17a_3p0";
34168434024SJianhua Lu			regulator-min-microvolt = <2496000>;
34268434024SJianhua Lu			regulator-max-microvolt = <3008000>;
34368434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
34468434024SJianhua Lu			regulator-allow-set-load;
34568434024SJianhua Lu			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
34668434024SJianhua Lu						   RPMH_REGULATOR_MODE_HPM>;
34768434024SJianhua Lu		};
34868434024SJianhua Lu
34968434024SJianhua Lu		vreg_l18a_0p9: ldo18 {
35068434024SJianhua Lu			regulator-name = "vreg_l18a_0p9";
35168434024SJianhua Lu			regulator-min-microvolt = <800000>;
35268434024SJianhua Lu			regulator-max-microvolt = <920000>;
35368434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
35468434024SJianhua Lu		};
35568434024SJianhua Lu	};
35668434024SJianhua Lu
35768434024SJianhua Lu	/*
35868434024SJianhua Lu	 * Remaining regulators that are not yet supported:
35968434024SJianhua Lu	 * OLEDB: 4925000-8100000
36068434024SJianhua Lu	 * ab: 4600000-6100000
36168434024SJianhua Lu	 * ibb: 800000-5400000
36268434024SJianhua Lu	 */
36368434024SJianhua Lu	regulators-1 {
36468434024SJianhua Lu		compatible = "qcom,pm8150l-rpmh-regulators";
36568434024SJianhua Lu		qcom,pmic-id = "c";
36668434024SJianhua Lu
36768434024SJianhua Lu		vdd-s1-supply = <&vph_pwr>;
36868434024SJianhua Lu		vdd-s2-supply = <&vph_pwr>;
36968434024SJianhua Lu		vdd-s3-supply = <&vph_pwr>;
37068434024SJianhua Lu		vdd-s4-supply = <&vph_pwr>;
37168434024SJianhua Lu		vdd-s5-supply = <&vph_pwr>;
37268434024SJianhua Lu		vdd-s6-supply = <&vph_pwr>;
37368434024SJianhua Lu		vdd-s7-supply = <&vph_pwr>;
37468434024SJianhua Lu		vdd-s8-supply = <&vph_pwr>;
37568434024SJianhua Lu		vdd-l1-l8-supply = <&vreg_s4a_1p8>;
37668434024SJianhua Lu		vdd-l2-l3-supply = <&vreg_s8c_1p35>;
37768434024SJianhua Lu		vdd-l4-l5-l6-supply = <&vreg_bob>;
37868434024SJianhua Lu		vdd-l7-l11-supply = <&vreg_bob>;
37968434024SJianhua Lu		vdd-l9-l10-supply = <&vreg_bob>;
38068434024SJianhua Lu		vdd-bob-supply = <&vph_pwr>;
38168434024SJianhua Lu
38268434024SJianhua Lu		vreg_bob: bob {
38368434024SJianhua Lu			regulator-name = "vreg_bob";
38468434024SJianhua Lu			regulator-min-microvolt = <3350000>;
38568434024SJianhua Lu			regulator-max-microvolt = <3960000>;
38668434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
38768434024SJianhua Lu		};
38868434024SJianhua Lu
38968434024SJianhua Lu		/*
39068434024SJianhua Lu		 * S1-S6 are ARCs:
39168434024SJianhua Lu		 * (S1+S2) - gfx.lvl,
39268434024SJianhua Lu		 * S3 - mx.lvl,
39368434024SJianhua Lu		 * (S4+S5) - mmcx.lvl,
39468434024SJianhua Lu		 * S6 - ebi.lvl
39568434024SJianhua Lu		 */
39668434024SJianhua Lu
39768434024SJianhua Lu		vreg_s7c_0p35: smps7 {
39868434024SJianhua Lu			regulator-name = "vreg_s7c_0p35";
39968434024SJianhua Lu			regulator-min-microvolt = <348000>;
40068434024SJianhua Lu			regulator-max-microvolt = <1000000>;
40168434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
40268434024SJianhua Lu		};
40368434024SJianhua Lu
40468434024SJianhua Lu		vreg_s8c_1p35: smps8 {
40568434024SJianhua Lu			regulator-name = "vreg_s8c_1p35";
40668434024SJianhua Lu			regulator-min-microvolt = <1350000>;
40768434024SJianhua Lu			regulator-max-microvolt = <1400000>;
40868434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
40968434024SJianhua Lu		};
41068434024SJianhua Lu
41168434024SJianhua Lu		vreg_l1c_1p8: ldo1 {
41268434024SJianhua Lu			regulator-name = "vreg_l1c_1p8";
41368434024SJianhua Lu			regulator-min-microvolt = <1800000>;
41468434024SJianhua Lu			regulator-max-microvolt = <1800000>;
41568434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
41668434024SJianhua Lu		};
41768434024SJianhua Lu
41868434024SJianhua Lu		/* L2-4 are unused. */
41968434024SJianhua Lu
42068434024SJianhua Lu		vreg_l5c_1p8: ldo5 {
42168434024SJianhua Lu			regulator-name = "vreg_l5c_1p8";
42268434024SJianhua Lu			regulator-min-microvolt = <1800000>;
42368434024SJianhua Lu			regulator-max-microvolt = <2800000>;
42468434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
42568434024SJianhua Lu		};
42668434024SJianhua Lu
42768434024SJianhua Lu		vreg_l6c_2p9: ldo6 {
42868434024SJianhua Lu			regulator-name = "vreg_l6c_2p9";
42968434024SJianhua Lu			regulator-min-microvolt = <1800000>;
43068434024SJianhua Lu			regulator-max-microvolt = <2960000>;
43168434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
43268434024SJianhua Lu			regulator-allow-set-load;
43368434024SJianhua Lu			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
43468434024SJianhua Lu						   RPMH_REGULATOR_MODE_HPM>;
43568434024SJianhua Lu		};
43668434024SJianhua Lu
43768434024SJianhua Lu		vreg_l7c_2p85: ldo7 {
43868434024SJianhua Lu			regulator-name = "vreg_l7c_2p85";
43968434024SJianhua Lu			regulator-min-microvolt = <2856000>;
44068434024SJianhua Lu			regulator-max-microvolt = <3104000>;
44168434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
44268434024SJianhua Lu		};
44368434024SJianhua Lu
44468434024SJianhua Lu		vreg_l8c_1p8: ldo8 {
44568434024SJianhua Lu			regulator-name = "vreg_l8c_1p8";
44668434024SJianhua Lu			regulator-min-microvolt = <1800000>;
44768434024SJianhua Lu			regulator-max-microvolt = <1800000>;
44868434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
44968434024SJianhua Lu		};
45068434024SJianhua Lu
45168434024SJianhua Lu		vreg_l9c_2p9: ldo9 {
45268434024SJianhua Lu			regulator-name = "vreg_l9c_2p9";
45368434024SJianhua Lu			regulator-min-microvolt = <2704000>;
45468434024SJianhua Lu			regulator-max-microvolt = <2960000>;
45568434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
45668434024SJianhua Lu			regulator-allow-set-load;
45768434024SJianhua Lu			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
45868434024SJianhua Lu						   RPMH_REGULATOR_MODE_HPM>;
45968434024SJianhua Lu		};
46068434024SJianhua Lu
46168434024SJianhua Lu		vreg_l10c_3p3: ldo10 {
46268434024SJianhua Lu			regulator-name = "vreg_l10c_3p3";
46368434024SJianhua Lu			regulator-min-microvolt = <3296000>;
46468434024SJianhua Lu			regulator-max-microvolt = <3296000>;
46568434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
46668434024SJianhua Lu		};
46768434024SJianhua Lu
46868434024SJianhua Lu		vreg_l11c_3p0: ldo11 {
46968434024SJianhua Lu			regulator-name = "vreg_l11c_3p0";
47068434024SJianhua Lu			regulator-min-microvolt = <3000000>;
47168434024SJianhua Lu			regulator-max-microvolt = <3000000>;
47268434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
47368434024SJianhua Lu		};
47468434024SJianhua Lu	};
47568434024SJianhua Lu
47668434024SJianhua Lu	regulators-2 {
47768434024SJianhua Lu		compatible = "qcom,pm8009-rpmh-regulators";
47868434024SJianhua Lu		qcom,pmic-id = "f";
47968434024SJianhua Lu
48068434024SJianhua Lu		vdd-s1-supply = <&vph_pwr>;
48168434024SJianhua Lu		vdd-s2-supply = <&vreg_bob>;
48268434024SJianhua Lu		vdd-l2-supply = <&vreg_s8c_1p35>;
48368434024SJianhua Lu		vdd-l5-l6-supply = <&vreg_bob>;
48468434024SJianhua Lu		vdd-l7-supply = <&vreg_s4a_1p8>;
48568434024SJianhua Lu
48668434024SJianhua Lu		vreg_s1f_1p2: smps1 {
48768434024SJianhua Lu			regulator-name = "vreg_s1f_1p2";
48868434024SJianhua Lu			regulator-min-microvolt = <1200000>;
48968434024SJianhua Lu			regulator-max-microvolt = <1200000>;
49068434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
49168434024SJianhua Lu		};
49268434024SJianhua Lu
49368434024SJianhua Lu		vreg_s2f_0p5: smps2 {
49468434024SJianhua Lu			regulator-name = "vreg_s2f_0p5";
49568434024SJianhua Lu			regulator-min-microvolt = <512000>;
49668434024SJianhua Lu			regulator-max-microvolt = <1100000>;
49768434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
49868434024SJianhua Lu		};
49968434024SJianhua Lu
50068434024SJianhua Lu		/* L1 is unused. */
50168434024SJianhua Lu
50268434024SJianhua Lu		vreg_l2f_1p3: ldo2 {
50368434024SJianhua Lu			regulator-name = "vreg_l2f_1p3";
50468434024SJianhua Lu			regulator-min-microvolt = <1304000>;
50568434024SJianhua Lu			regulator-max-microvolt = <1304000>;
50668434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
50768434024SJianhua Lu		};
50868434024SJianhua Lu
50968434024SJianhua Lu		/* L3 & L4 are unused. */
51068434024SJianhua Lu
51168434024SJianhua Lu		vreg_l5f_2p8: ldo5 {
51268434024SJianhua Lu			regulator-name = "vreg_l5f_2p85";
51368434024SJianhua Lu			regulator-min-microvolt = <2800000>;
51468434024SJianhua Lu			regulator-max-microvolt = <2800000>;
51568434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
51668434024SJianhua Lu		};
51768434024SJianhua Lu
51868434024SJianhua Lu		vreg_l6f_2p8: ldo6 {
51968434024SJianhua Lu			regulator-name = "vreg_l6f_2p8";
52068434024SJianhua Lu			regulator-min-microvolt = <2800000>;
52168434024SJianhua Lu			regulator-max-microvolt = <2800000>;
52268434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
52368434024SJianhua Lu		};
52468434024SJianhua Lu
52568434024SJianhua Lu		vreg_l7f_1p8: ldo7 {
52668434024SJianhua Lu			regulator-name = "vreg_l7f_1p8";
52768434024SJianhua Lu			regulator-min-microvolt = <1800000>;
52868434024SJianhua Lu			regulator-max-microvolt = <1800000>;
52968434024SJianhua Lu			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
53068434024SJianhua Lu		};
53168434024SJianhua Lu	};
53268434024SJianhua Lu};
53368434024SJianhua Lu
53468434024SJianhua Lu&cdsp {
53568434024SJianhua Lu	firmware-name = "qcom/sm8250/xiaomi/elish/cdsp.mbn";
53668434024SJianhua Lu	status = "okay";
53768434024SJianhua Lu};
53868434024SJianhua Lu
53968434024SJianhua Lu&gmu {
54068434024SJianhua Lu	status = "okay";
54168434024SJianhua Lu};
54268434024SJianhua Lu
54368434024SJianhua Lu&gpi_dma0 {
54468434024SJianhua Lu	status = "okay";
54568434024SJianhua Lu};
54668434024SJianhua Lu
54768434024SJianhua Lu&gpi_dma1 {
54868434024SJianhua Lu	status = "okay";
54968434024SJianhua Lu};
55068434024SJianhua Lu
55168434024SJianhua Lu&gpi_dma2 {
55268434024SJianhua Lu	status = "okay";
55368434024SJianhua Lu};
55468434024SJianhua Lu
55568434024SJianhua Lu&gpu {
55668434024SJianhua Lu	status = "okay";
55768434024SJianhua Lu
55868434024SJianhua Lu	zap-shader {
55968434024SJianhua Lu		memory-region = <&gpu_mem>;
56068434024SJianhua Lu		firmware-name = "qcom/sm8250/xiaomi/elish/a650_zap.mbn";
56168434024SJianhua Lu	};
56268434024SJianhua Lu};
56368434024SJianhua Lu
56468434024SJianhua Lu&i2c0 {
56568434024SJianhua Lu	clock-frequency = <400000>;
56668434024SJianhua Lu	status = "okay";
56768434024SJianhua Lu
56868434024SJianhua Lu	fuel-gauge@55 {
56968434024SJianhua Lu		compatible = "ti,bq27z561";
57068434024SJianhua Lu		reg = <0x55>;
57168434024SJianhua Lu		monitored-battery = <&battery_r>;
57268434024SJianhua Lu	};
57368434024SJianhua Lu};
57468434024SJianhua Lu
57568434024SJianhua Lu&i2c11 {
57668434024SJianhua Lu	clock-frequency = <400000>;
57768434024SJianhua Lu	status = "okay";
57868434024SJianhua Lu
57968434024SJianhua Lu	backlight: backlight@11 {
58068434024SJianhua Lu		compatible = "kinetic,ktz8866";
58168434024SJianhua Lu		reg = <0x11>;
58268434024SJianhua Lu		vddpos-supply = <&bl_vddpos_5p5>;
58368434024SJianhua Lu		vddneg-supply = <&bl_vddneg_5p5>;
58468434024SJianhua Lu		enable-gpios = <&tlmm 139 GPIO_ACTIVE_HIGH>;
58568434024SJianhua Lu		current-num-sinks = <5>;
58668434024SJianhua Lu		kinetic,current-ramp-delay-ms = <128>;
58768434024SJianhua Lu		kinetic,led-enable-ramp-delay-ms = <1>;
58868434024SJianhua Lu		kinetic,enable-lcd-bias;
58968434024SJianhua Lu	};
59068434024SJianhua Lu};
59168434024SJianhua Lu
59268434024SJianhua Lu&i2c13 {
59368434024SJianhua Lu	clock-frequency = <400000>;
59468434024SJianhua Lu	status = "okay";
59568434024SJianhua Lu
59668434024SJianhua Lu	fuel-gauge@55 {
59768434024SJianhua Lu		compatible = "ti,bq27z561";
59868434024SJianhua Lu		reg = <0x55>;
59968434024SJianhua Lu		monitored-battery = <&battery_l>;
60068434024SJianhua Lu	};
60168434024SJianhua Lu};
60268434024SJianhua Lu
60351c4c2bdSJianhua Lu&mdss {
60451c4c2bdSJianhua Lu	status = "okay";
60551c4c2bdSJianhua Lu};
60651c4c2bdSJianhua Lu
607e47a7f57SDmitry Baryshkov&mdss_dsi0 {
608e47a7f57SDmitry Baryshkov	vdda-supply = <&vreg_l9a_1p2>;
609e47a7f57SDmitry Baryshkov	qcom,dual-dsi-mode;
610e47a7f57SDmitry Baryshkov	qcom,sync-dual-dsi;
611e47a7f57SDmitry Baryshkov	qcom,master-dsi;
612e47a7f57SDmitry Baryshkov	status = "okay";
613e47a7f57SDmitry Baryshkov
614e47a7f57SDmitry Baryshkov	display_panel: panel@0 {
615e47a7f57SDmitry Baryshkov		reg = <0>;
616e47a7f57SDmitry Baryshkov		vddio-supply = <&vreg_l14a_1p88>;
617e47a7f57SDmitry Baryshkov		reset-gpios = <&tlmm 75 GPIO_ACTIVE_LOW>;
618e47a7f57SDmitry Baryshkov		backlight = <&backlight>;
61922196267SJianhua Lu		rotation = <90>;
620e47a7f57SDmitry Baryshkov
621e47a7f57SDmitry Baryshkov		status = "disabled";
622e47a7f57SDmitry Baryshkov
623e47a7f57SDmitry Baryshkov		ports {
624e47a7f57SDmitry Baryshkov			#address-cells = <1>;
625e47a7f57SDmitry Baryshkov			#size-cells = <0>;
626e47a7f57SDmitry Baryshkov
627e47a7f57SDmitry Baryshkov			port@0 {
628e47a7f57SDmitry Baryshkov				reg = <0>;
629e47a7f57SDmitry Baryshkov
630e47a7f57SDmitry Baryshkov				panel_in_0: endpoint {
631e47a7f57SDmitry Baryshkov					remote-endpoint = <&mdss_dsi0_out>;
632e47a7f57SDmitry Baryshkov				};
633e47a7f57SDmitry Baryshkov			};
634e47a7f57SDmitry Baryshkov
635e47a7f57SDmitry Baryshkov			port@1 {
636e47a7f57SDmitry Baryshkov				reg = <1>;
637e47a7f57SDmitry Baryshkov
638e47a7f57SDmitry Baryshkov				panel_in_1: endpoint {
639e47a7f57SDmitry Baryshkov					remote-endpoint = <&mdss_dsi1_out>;
640e47a7f57SDmitry Baryshkov				};
641e47a7f57SDmitry Baryshkov			};
642e47a7f57SDmitry Baryshkov		};
643e47a7f57SDmitry Baryshkov	};
644e47a7f57SDmitry Baryshkov};
645e47a7f57SDmitry Baryshkov
646e47a7f57SDmitry Baryshkov&mdss_dsi0_out {
647e47a7f57SDmitry Baryshkov	data-lanes = <0 1 2>;
648e47a7f57SDmitry Baryshkov	remote-endpoint = <&panel_in_0>;
649e47a7f57SDmitry Baryshkov};
650e47a7f57SDmitry Baryshkov
651e47a7f57SDmitry Baryshkov&mdss_dsi0_phy {
652e47a7f57SDmitry Baryshkov	vdds-supply = <&vreg_l5a_0p88>;
653e47a7f57SDmitry Baryshkov	phy-type = <PHY_TYPE_CPHY>;
654e47a7f57SDmitry Baryshkov	status = "okay";
655e47a7f57SDmitry Baryshkov};
656e47a7f57SDmitry Baryshkov
657e47a7f57SDmitry Baryshkov&mdss_dsi1 {
658e47a7f57SDmitry Baryshkov	vdda-supply = <&vreg_l9a_1p2>;
659e47a7f57SDmitry Baryshkov	qcom,dual-dsi-mode;
660e47a7f57SDmitry Baryshkov	qcom,sync-dual-dsi;
661e47a7f57SDmitry Baryshkov	/* DSI1 is slave, so use DSI0 clocks */
662*855ff060SKrzysztof Kozlowski	assigned-clock-parents = <&mdss_dsi0_phy DSI_BYTE_PLL_CLK>,
663*855ff060SKrzysztof Kozlowski				 <&mdss_dsi0_phy DSI_PIXEL_PLL_CLK>;
664e47a7f57SDmitry Baryshkov	status = "okay";
665e47a7f57SDmitry Baryshkov};
666e47a7f57SDmitry Baryshkov
667e47a7f57SDmitry Baryshkov&mdss_dsi1_out {
668e47a7f57SDmitry Baryshkov	data-lanes = <0 1 2>;
669e47a7f57SDmitry Baryshkov	remote-endpoint = <&panel_in_1>;
670e47a7f57SDmitry Baryshkov};
671e47a7f57SDmitry Baryshkov
672e47a7f57SDmitry Baryshkov&mdss_dsi1_phy {
673e47a7f57SDmitry Baryshkov	vdds-supply = <&vreg_l5a_0p88>;
674e47a7f57SDmitry Baryshkov	phy-type = <PHY_TYPE_CPHY>;
675e47a7f57SDmitry Baryshkov	status = "okay";
676e47a7f57SDmitry Baryshkov};
677e47a7f57SDmitry Baryshkov
67868434024SJianhua Lu&pcie0 {
67968434024SJianhua Lu	status = "okay";
68068434024SJianhua Lu};
68168434024SJianhua Lu
68268434024SJianhua Lu&pcie0_phy {
68368434024SJianhua Lu	vdda-phy-supply = <&vreg_l5a_0p88>;
68468434024SJianhua Lu	vdda-pll-supply = <&vreg_l9a_1p2>;
68568434024SJianhua Lu	status = "okay";
68668434024SJianhua Lu};
68768434024SJianhua Lu
6881993f025SJianhua Lu&pcieport0 {
6891993f025SJianhua Lu	wifi@0 {
6901993f025SJianhua Lu		compatible = "pci17cb,1101";
6911993f025SJianhua Lu		reg = <0x10000 0x0 0x0 0x0 0x0>;
6921993f025SJianhua Lu
6931993f025SJianhua Lu		vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
6941993f025SJianhua Lu		vddaon-supply = <&vreg_pmu_aon_0p59>;
6951993f025SJianhua Lu		vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
6961993f025SJianhua Lu		vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
6971993f025SJianhua Lu		vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
6981993f025SJianhua Lu		vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
6991993f025SJianhua Lu		vddrfa1p7-supply = <&vreg_pmu_rfa_1p7>;
7001993f025SJianhua Lu		vddpcie0p9-supply = <&vreg_pmu_pcie_0p9>;
7011993f025SJianhua Lu		vddpcie1p8-supply = <&vreg_pmu_pcie_1p8>;
7021993f025SJianhua Lu
70337eb85aeSKrzysztof Kozlowski		qcom,calibration-variant = "Xiaomi_Pad_5Pro";
7041993f025SJianhua Lu	};
7051993f025SJianhua Lu};
7061993f025SJianhua Lu
70768434024SJianhua Lu&pm8150_gpios {
70868434024SJianhua Lu	vol_up_n: vol-up-n-state {
70968434024SJianhua Lu		pins = "gpio6";
71068434024SJianhua Lu		function = "normal";
71168434024SJianhua Lu		power-source = <1>;
71268434024SJianhua Lu		input-enable;
71368434024SJianhua Lu		bias-pull-up;
71468434024SJianhua Lu	};
71568434024SJianhua Lu};
71668434024SJianhua Lu
71769652787SJianhua Lu&pm8150b_typec {
71869652787SJianhua Lu	vdd-pdphy-supply = <&vreg_l2a_3p1>;
71969652787SJianhua Lu	status = "okay";
72069652787SJianhua Lu
72169652787SJianhua Lu	connector {
72269652787SJianhua Lu		compatible = "usb-c-connector";
72369652787SJianhua Lu
72491905d83SJianhua Lu		op-sink-microwatt = <10000000>;
72591905d83SJianhua Lu		power-role = "dual";
72669652787SJianhua Lu		data-role = "dual";
72769652787SJianhua Lu		self-powered;
72869652787SJianhua Lu
72969652787SJianhua Lu		source-pdos = <PDO_FIXED(5000, 3000,
73069652787SJianhua Lu					 PDO_FIXED_DUAL_ROLE |
73169652787SJianhua Lu					 PDO_FIXED_USB_COMM |
73269652787SJianhua Lu					 PDO_FIXED_DATA_SWAP)>;
73369652787SJianhua Lu
73491905d83SJianhua Lu		sink-pdos = <PDO_FIXED(5000, 3000,
73591905d83SJianhua Lu				       PDO_FIXED_DUAL_ROLE |
73691905d83SJianhua Lu				       PDO_FIXED_USB_COMM |
73791905d83SJianhua Lu				       PDO_FIXED_DATA_SWAP)
73891905d83SJianhua Lu				       PDO_VAR(5000, 12000, 5000)>;
73991905d83SJianhua Lu
74069652787SJianhua Lu		ports {
74169652787SJianhua Lu			#address-cells = <1>;
74269652787SJianhua Lu			#size-cells = <0>;
74369652787SJianhua Lu
74469652787SJianhua Lu			port@0 {
74569652787SJianhua Lu				reg = <0>;
74669652787SJianhua Lu
747db67e958SDmitry Baryshkov				pm8150b_hs_in: endpoint {
748db67e958SDmitry Baryshkov					remote-endpoint = <&usb_1_dwc3_hs_out>;
74969652787SJianhua Lu				};
75069652787SJianhua Lu			};
75169652787SJianhua Lu		};
75269652787SJianhua Lu	};
75369652787SJianhua Lu};
75469652787SJianhua Lu
75569652787SJianhua Lu&pm8150b_vbus {
7560a8ab4a8SJianhua Lu	regulator-min-microamp = <500000>;
7570a8ab4a8SJianhua Lu	regulator-max-microamp = <3000000>;
75869652787SJianhua Lu	status = "okay";
75969652787SJianhua Lu};
76069652787SJianhua Lu
76187ca44abSTingguo Cheng&pon {
76287ca44abSTingguo Cheng	mode-bootloader = <0x2>;
76387ca44abSTingguo Cheng	mode-recovery = <0x1>;
76487ca44abSTingguo Cheng};
76587ca44abSTingguo Cheng
76668434024SJianhua Lu&pon_pwrkey {
76768434024SJianhua Lu	status = "okay";
76868434024SJianhua Lu};
76968434024SJianhua Lu
77068434024SJianhua Lu&pon_resin {
77168434024SJianhua Lu	linux,code = <KEY_VOLUMEDOWN>;
77268434024SJianhua Lu	status = "okay";
77368434024SJianhua Lu};
77468434024SJianhua Lu
77568434024SJianhua Lu&qupv3_id_0 {
77668434024SJianhua Lu	status = "okay";
77768434024SJianhua Lu};
77868434024SJianhua Lu
77968434024SJianhua Lu&qupv3_id_1 {
78068434024SJianhua Lu	status = "okay";
78168434024SJianhua Lu};
78268434024SJianhua Lu
78368434024SJianhua Lu&qupv3_id_2 {
78468434024SJianhua Lu	status = "okay";
78568434024SJianhua Lu};
78668434024SJianhua Lu
78768434024SJianhua Lu&slpi {
78868434024SJianhua Lu	firmware-name = "qcom/sm8250/xiaomi/elish/slpi.mbn";
78968434024SJianhua Lu	status = "okay";
79068434024SJianhua Lu};
79168434024SJianhua Lu
79268434024SJianhua Lu&tlmm {
79368434024SJianhua Lu	gpio-reserved-ranges = <40 4>;
7946e4ec5f6SJianhua Lu
7956e4ec5f6SJianhua Lu	bt_en_state: bt-default-state {
7966e4ec5f6SJianhua Lu		pins = "gpio21";
7976e4ec5f6SJianhua Lu		function = "gpio";
7986e4ec5f6SJianhua Lu		drive-strength = <16>;
7996e4ec5f6SJianhua Lu		output-low;
8006e4ec5f6SJianhua Lu		bias-pull-up;
8016e4ec5f6SJianhua Lu	};
8026e4ec5f6SJianhua Lu
8036e4ec5f6SJianhua Lu	wlan_en_state: wlan-default-state {
8046e4ec5f6SJianhua Lu		pins = "gpio20";
8056e4ec5f6SJianhua Lu		function = "gpio";
8066e4ec5f6SJianhua Lu		drive-strength = <16>;
8076e4ec5f6SJianhua Lu		output-low;
8086e4ec5f6SJianhua Lu		bias-pull-up;
8096e4ec5f6SJianhua Lu	};
81068434024SJianhua Lu};
81168434024SJianhua Lu
8128b14c064SJianhua Lu&uart6 {
8138b14c064SJianhua Lu	status = "okay";
8148b14c064SJianhua Lu
8158b14c064SJianhua Lu	bluetooth {
8168b14c064SJianhua Lu		compatible = "qcom,qca6390-bt";
8178b14c064SJianhua Lu
8188b14c064SJianhua Lu		vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
8198b14c064SJianhua Lu		vddaon-supply = <&vreg_pmu_aon_0p59>;
8208b14c064SJianhua Lu		vddbtcmx-supply = <&vreg_pmu_btcmx_0p85>;
8218b14c064SJianhua Lu		vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
8228b14c064SJianhua Lu		vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
8238b14c064SJianhua Lu		vddrfa1p7-supply = <&vreg_pmu_rfa_1p7>;
8248b14c064SJianhua Lu	};
8258b14c064SJianhua Lu};
8268b14c064SJianhua Lu
82768434024SJianhua Lu&usb_1 {
82868434024SJianhua Lu	/* USB 2.0 only */
82968434024SJianhua Lu	qcom,select-utmi-as-pipe-clk;
83068434024SJianhua Lu	status = "okay";
83168434024SJianhua Lu};
83268434024SJianhua Lu
83368434024SJianhua Lu&usb_1_dwc3 {
83469652787SJianhua Lu	dr_mode = "otg";
83568434024SJianhua Lu	maximum-speed = "high-speed";
83668434024SJianhua Lu	/* Remove USB3 phy */
83768434024SJianhua Lu	phys = <&usb_1_hsphy>;
83868434024SJianhua Lu	phy-names = "usb2-phy";
83969652787SJianhua Lu	usb-role-switch;
84068434024SJianhua Lu};
84168434024SJianhua Lu
84268434024SJianhua Lu&usb_1_hsphy {
84368434024SJianhua Lu	vdda-pll-supply = <&vreg_l5a_0p88>;
84468434024SJianhua Lu	vdda18-supply = <&vreg_l12a_1p8>;
84568434024SJianhua Lu	vdda33-supply = <&vreg_l2a_3p1>;
84668434024SJianhua Lu	status = "okay";
84768434024SJianhua Lu};
84868434024SJianhua Lu
849db67e958SDmitry Baryshkov&usb_1_dwc3_hs_out {
850db67e958SDmitry Baryshkov	remote-endpoint = <&pm8150b_hs_in>;
85169652787SJianhua Lu};
85269652787SJianhua Lu
85368434024SJianhua Lu&ufs_mem_hc {
85468434024SJianhua Lu	vcc-supply = <&vreg_l17a_3p0>;
85568434024SJianhua Lu	vcc-max-microamp = <800000>;
85668434024SJianhua Lu	vccq-supply = <&vreg_l6a_1p2>;
85768434024SJianhua Lu	vccq-max-microamp = <800000>;
85868434024SJianhua Lu	vccq2-supply = <&vreg_s4a_1p8>;
85968434024SJianhua Lu	vccq2-max-microamp = <800000>;
86068434024SJianhua Lu	status = "okay";
86168434024SJianhua Lu};
86268434024SJianhua Lu
86368434024SJianhua Lu&ufs_mem_phy {
86468434024SJianhua Lu	vdda-phy-supply = <&vreg_l5a_0p88>;
86568434024SJianhua Lu	vdda-pll-supply = <&vreg_l9a_1p2>;
86668434024SJianhua Lu	status = "okay";
86768434024SJianhua Lu};
86868434024SJianhua Lu
86968434024SJianhua Lu&venus {
87068434024SJianhua Lu	firmware-name = "qcom/sm8250/xiaomi/elish/venus.mbn";
87168434024SJianhua Lu	status = "okay";
87268434024SJianhua Lu};
873