xref: /freebsd-src/sys/contrib/device-tree/src/arm64/qcom/sm8250-xiaomi-elish-common.dtsi (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1fac71e4eSEmmanuel Vadot// SPDX-License-Identifier: BSD-3-Clause
2fac71e4eSEmmanuel Vadot/*
301950c46SEmmanuel Vadot * Copyright (c) 2022-2024 Jianhua Lu <lujianhua000@gmail.com>
4fac71e4eSEmmanuel Vadot */
5fac71e4eSEmmanuel Vadot
6fac71e4eSEmmanuel Vadot#include <dt-bindings/arm/qcom,ids.h>
7fac71e4eSEmmanuel Vadot#include <dt-bindings/phy/phy.h>
8fac71e4eSEmmanuel Vadot#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
98d13bc63SEmmanuel Vadot#include <dt-bindings/usb/pd.h>
10fac71e4eSEmmanuel Vadot#include "sm8250.dtsi"
11fac71e4eSEmmanuel Vadot#include "pm8150.dtsi"
12fac71e4eSEmmanuel Vadot#include "pm8150b.dtsi"
13fac71e4eSEmmanuel Vadot#include "pm8150l.dtsi"
14fac71e4eSEmmanuel Vadot#include "pm8009.dtsi"
15fac71e4eSEmmanuel Vadot
16fac71e4eSEmmanuel Vadot/*
17fac71e4eSEmmanuel Vadot * Delete following upstream (sm8250.dtsi) reserved
18fac71e4eSEmmanuel Vadot * memory mappings which are different on this device.
19fac71e4eSEmmanuel Vadot */
20fac71e4eSEmmanuel Vadot/delete-node/ &adsp_mem;
21fac71e4eSEmmanuel Vadot/delete-node/ &cdsp_secure_heap;
22fac71e4eSEmmanuel Vadot/delete-node/ &slpi_mem;
23fac71e4eSEmmanuel Vadot/delete-node/ &spss_mem;
24fac71e4eSEmmanuel Vadot/delete-node/ &xbl_aop_mem;
25fac71e4eSEmmanuel Vadot
26fac71e4eSEmmanuel Vadot/ {
278d13bc63SEmmanuel Vadot	chassis-type = "tablet";
28fac71e4eSEmmanuel Vadot
29fac71e4eSEmmanuel Vadot	/* required for bootloader to select correct board */
30fac71e4eSEmmanuel Vadot	qcom,msm-id = <QCOM_ID_SM8250 0x20001>; /* SM8250 v2.1 */
31fac71e4eSEmmanuel Vadot	qcom,board-id = <0x10008 0>;
32fac71e4eSEmmanuel Vadot
33fac71e4eSEmmanuel Vadot	chosen {
34fac71e4eSEmmanuel Vadot		#address-cells = <2>;
35fac71e4eSEmmanuel Vadot		#size-cells = <2>;
36fac71e4eSEmmanuel Vadot		ranges;
37fac71e4eSEmmanuel Vadot
38fac71e4eSEmmanuel Vadot		framebuffer: framebuffer@9c000000 {
39fac71e4eSEmmanuel Vadot			compatible = "simple-framebuffer";
40fac71e4eSEmmanuel Vadot			reg = <0x0 0x9c000000 0x0 0x2300000>;
41fac71e4eSEmmanuel Vadot			width = <1600>;
42fac71e4eSEmmanuel Vadot			height = <2560>;
43fac71e4eSEmmanuel Vadot			stride = <(1600 * 4)>;
44fac71e4eSEmmanuel Vadot			format = "a8r8g8b8";
45fac71e4eSEmmanuel Vadot		};
46fac71e4eSEmmanuel Vadot	};
47fac71e4eSEmmanuel Vadot
48fac71e4eSEmmanuel Vadot	battery_l: battery-l {
49fac71e4eSEmmanuel Vadot		compatible = "simple-battery";
50fac71e4eSEmmanuel Vadot		voltage-min-design-microvolt = <3870000>;
51fac71e4eSEmmanuel Vadot		energy-full-design-microwatt-hours = <16600000>;
52fac71e4eSEmmanuel Vadot		charge-full-design-microamp-hours = <4300000>;
53fac71e4eSEmmanuel Vadot	};
54fac71e4eSEmmanuel Vadot
55fac71e4eSEmmanuel Vadot	battery_r: battery-r {
56fac71e4eSEmmanuel Vadot		compatible = "simple-battery";
57fac71e4eSEmmanuel Vadot		voltage-min-design-microvolt = <3870000>;
58fac71e4eSEmmanuel Vadot		energy-full-design-microwatt-hours = <16600000>;
59fac71e4eSEmmanuel Vadot		charge-full-design-microamp-hours = <4300000>;
60fac71e4eSEmmanuel Vadot	};
61fac71e4eSEmmanuel Vadot
62fac71e4eSEmmanuel Vadot	bl_vddpos_5p5: bl-vddpos-regulator {
63fac71e4eSEmmanuel Vadot		compatible = "regulator-fixed";
64fac71e4eSEmmanuel Vadot		regulator-name = "bl_vddpos_5p5";
65fac71e4eSEmmanuel Vadot		regulator-min-microvolt = <5500000>;
66fac71e4eSEmmanuel Vadot		regulator-max-microvolt = <5500000>;
67fac71e4eSEmmanuel Vadot		regulator-enable-ramp-delay = <233>;
68fac71e4eSEmmanuel Vadot		gpio = <&tlmm 130 GPIO_ACTIVE_HIGH>;
69fac71e4eSEmmanuel Vadot		enable-active-high;
70fac71e4eSEmmanuel Vadot		regulator-boot-on;
71fac71e4eSEmmanuel Vadot	};
72fac71e4eSEmmanuel Vadot
73fac71e4eSEmmanuel Vadot	bl_vddneg_5p5: bl-vddneg-regulator {
74fac71e4eSEmmanuel Vadot		compatible = "regulator-fixed";
75fac71e4eSEmmanuel Vadot		regulator-name = "bl_vddneg_5p5";
76fac71e4eSEmmanuel Vadot		regulator-min-microvolt = <5500000>;
77fac71e4eSEmmanuel Vadot		regulator-max-microvolt = <5500000>;
78fac71e4eSEmmanuel Vadot		regulator-enable-ramp-delay = <233>;
79fac71e4eSEmmanuel Vadot		gpio = <&tlmm 131 GPIO_ACTIVE_HIGH>;
80fac71e4eSEmmanuel Vadot		enable-active-high;
81fac71e4eSEmmanuel Vadot		regulator-boot-on;
82fac71e4eSEmmanuel Vadot	};
83fac71e4eSEmmanuel Vadot
84fac71e4eSEmmanuel Vadot	gpio_keys: gpio-keys {
85fac71e4eSEmmanuel Vadot		compatible = "gpio-keys";
86fac71e4eSEmmanuel Vadot
87fac71e4eSEmmanuel Vadot		pinctrl-names = "default";
88fac71e4eSEmmanuel Vadot		pinctrl-0 = <&vol_up_n>;
89fac71e4eSEmmanuel Vadot
90fac71e4eSEmmanuel Vadot		key-vol-up {
91fac71e4eSEmmanuel Vadot			label = "Volume Up";
92fac71e4eSEmmanuel Vadot			gpios = <&pm8150_gpios 6 GPIO_ACTIVE_LOW>;
93fac71e4eSEmmanuel Vadot			linux,code = <KEY_VOLUMEUP>;
94fac71e4eSEmmanuel Vadot			debounce-interval = <15>;
95fac71e4eSEmmanuel Vadot			linux,can-disable;
96fac71e4eSEmmanuel Vadot			wakeup-source;
97fac71e4eSEmmanuel Vadot		};
98fac71e4eSEmmanuel Vadot	};
99fac71e4eSEmmanuel Vadot
100fac71e4eSEmmanuel Vadot	vph_pwr: vph-pwr-regulator {
101fac71e4eSEmmanuel Vadot		compatible = "regulator-fixed";
102fac71e4eSEmmanuel Vadot		regulator-name = "vph_pwr";
103fac71e4eSEmmanuel Vadot		regulator-min-microvolt = <3700000>;
104fac71e4eSEmmanuel Vadot		regulator-max-microvolt = <3700000>;
105fac71e4eSEmmanuel Vadot	};
106fac71e4eSEmmanuel Vadot
107fac71e4eSEmmanuel Vadot	/* S6c is really ebi.lvl but it's there for supply map completeness sake. */
108fac71e4eSEmmanuel Vadot	vreg_s6c_0p88: smpc6-regulator {
109fac71e4eSEmmanuel Vadot		compatible = "regulator-fixed";
110fac71e4eSEmmanuel Vadot		regulator-name = "vreg_s6c_0p88";
111fac71e4eSEmmanuel Vadot		regulator-min-microvolt = <880000>;
112fac71e4eSEmmanuel Vadot		regulator-max-microvolt = <880000>;
113fac71e4eSEmmanuel Vadot		regulator-always-on;
114fac71e4eSEmmanuel Vadot		vin-supply = <&vph_pwr>;
115fac71e4eSEmmanuel Vadot	};
116fac71e4eSEmmanuel Vadot
117fac71e4eSEmmanuel Vadot	reserved-memory {
1188d13bc63SEmmanuel Vadot		xbl_aop_mem: xbl-aop@80600000 {
119fac71e4eSEmmanuel Vadot			reg = <0x0 0x80600000 0x0 0x260000>;
120fac71e4eSEmmanuel Vadot			no-map;
121fac71e4eSEmmanuel Vadot		};
122fac71e4eSEmmanuel Vadot
123fac71e4eSEmmanuel Vadot		slpi_mem: slpi@88c00000 {
124fac71e4eSEmmanuel Vadot			reg = <0x0 0x88c00000 0x0 0x2f00000>;
125fac71e4eSEmmanuel Vadot			no-map;
126fac71e4eSEmmanuel Vadot		};
127fac71e4eSEmmanuel Vadot
128fac71e4eSEmmanuel Vadot		adsp_mem: adsp@8bb00000 {
129fac71e4eSEmmanuel Vadot			reg = <0x0 0x8bb00000 0x0 0x2500000>;
130fac71e4eSEmmanuel Vadot			no-map;
131fac71e4eSEmmanuel Vadot		};
132fac71e4eSEmmanuel Vadot
133fac71e4eSEmmanuel Vadot		spss_mem: spss@8e000000 {
134fac71e4eSEmmanuel Vadot			reg = <0x0 0x8e000000 0x0 0x100000>;
135fac71e4eSEmmanuel Vadot			no-map;
136fac71e4eSEmmanuel Vadot		};
137fac71e4eSEmmanuel Vadot
138fac71e4eSEmmanuel Vadot		cdsp_secure_heap: cdsp-secure-heap@8e100000 {
139fac71e4eSEmmanuel Vadot			reg = <0x0 0x8e100000 0x0 0x4600000>;
140fac71e4eSEmmanuel Vadot			no-map;
141fac71e4eSEmmanuel Vadot		};
142fac71e4eSEmmanuel Vadot
143fac71e4eSEmmanuel Vadot		cont_splash_mem: cont-splash@9c000000 {
144fac71e4eSEmmanuel Vadot			reg = <0x0 0x9c000000 0x0 0x2300000>;
145fac71e4eSEmmanuel Vadot			no-map;
146fac71e4eSEmmanuel Vadot		};
147fac71e4eSEmmanuel Vadot
148fac71e4eSEmmanuel Vadot		ramoops@b0000000 {
149fac71e4eSEmmanuel Vadot			compatible = "ramoops";
150fac71e4eSEmmanuel Vadot			reg = <0x0 0xb0000000 0x0 0x400000>;
151fac71e4eSEmmanuel Vadot			record-size = <0x1000>;
152fac71e4eSEmmanuel Vadot			console-size = <0x200000>;
153fac71e4eSEmmanuel Vadot			ecc-size = <16>;
154fac71e4eSEmmanuel Vadot			no-map;
155fac71e4eSEmmanuel Vadot		};
156fac71e4eSEmmanuel Vadot	};
157fac71e4eSEmmanuel Vadot};
158fac71e4eSEmmanuel Vadot
159fac71e4eSEmmanuel Vadot&adsp {
160fac71e4eSEmmanuel Vadot	firmware-name = "qcom/sm8250/xiaomi/elish/adsp.mbn";
161fac71e4eSEmmanuel Vadot	status = "okay";
162fac71e4eSEmmanuel Vadot};
163fac71e4eSEmmanuel Vadot
164fac71e4eSEmmanuel Vadot&apps_rsc {
165fac71e4eSEmmanuel Vadot	regulators-0 {
166fac71e4eSEmmanuel Vadot		compatible = "qcom,pm8150-rpmh-regulators";
167fac71e4eSEmmanuel Vadot		qcom,pmic-id = "a";
168fac71e4eSEmmanuel Vadot
169fac71e4eSEmmanuel Vadot		vdd-s1-supply = <&vph_pwr>;
170fac71e4eSEmmanuel Vadot		vdd-s2-supply = <&vph_pwr>;
171fac71e4eSEmmanuel Vadot		vdd-s3-supply = <&vph_pwr>;
172fac71e4eSEmmanuel Vadot		vdd-s4-supply = <&vph_pwr>;
173fac71e4eSEmmanuel Vadot		vdd-s5-supply = <&vph_pwr>;
174fac71e4eSEmmanuel Vadot		vdd-s6-supply = <&vph_pwr>;
175fac71e4eSEmmanuel Vadot		vdd-s7-supply = <&vph_pwr>;
176fac71e4eSEmmanuel Vadot		vdd-s8-supply = <&vph_pwr>;
177fac71e4eSEmmanuel Vadot		vdd-s9-supply = <&vph_pwr>;
178fac71e4eSEmmanuel Vadot		vdd-s10-supply = <&vph_pwr>;
179fac71e4eSEmmanuel Vadot		vdd-l1-l8-l11-supply = <&vreg_s6c_0p88>;
180fac71e4eSEmmanuel Vadot		vdd-l2-l10-supply = <&vreg_bob>;
181fac71e4eSEmmanuel Vadot		vdd-l3-l4-l5-l18-supply = <&vreg_s6a_0p95>;
182fac71e4eSEmmanuel Vadot		vdd-l6-l9-supply = <&vreg_s8c_1p35>;
183fac71e4eSEmmanuel Vadot		vdd-l7-l12-l14-l15-supply = <&vreg_s5a_1p9>;
184fac71e4eSEmmanuel Vadot		vdd-l13-l16-l17-supply = <&vreg_bob>;
185fac71e4eSEmmanuel Vadot
186fac71e4eSEmmanuel Vadot		/* (S1+S2+S3) - cx.lvl (ARC) */
187fac71e4eSEmmanuel Vadot
188fac71e4eSEmmanuel Vadot		vreg_s4a_1p8: smps4 {
189fac71e4eSEmmanuel Vadot			regulator-name = "vreg_s4a_1p8";
190fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
191fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <1920000>;
192fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
193fac71e4eSEmmanuel Vadot			regulator-allow-set-load;
194fac71e4eSEmmanuel Vadot			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
195fac71e4eSEmmanuel Vadot						   RPMH_REGULATOR_MODE_HPM>;
196fac71e4eSEmmanuel Vadot		};
197fac71e4eSEmmanuel Vadot
198fac71e4eSEmmanuel Vadot		vreg_s5a_1p9: smps5 {
199fac71e4eSEmmanuel Vadot			regulator-name = "vreg_s5a_1p9";
200fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <1900000>;
201fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <2040000>;
202fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
203fac71e4eSEmmanuel Vadot		};
204fac71e4eSEmmanuel Vadot
205fac71e4eSEmmanuel Vadot		vreg_s6a_0p95: smps6 {
206fac71e4eSEmmanuel Vadot			regulator-name = "vreg_s6a_0p95";
207fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <950000>;
208fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <1128000>;
209fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
210fac71e4eSEmmanuel Vadot		};
211fac71e4eSEmmanuel Vadot
212fac71e4eSEmmanuel Vadot		vreg_l2a_3p1: ldo2 {
213fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l2a_3p1";
214fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <3072000>;
215fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <3072000>;
216fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
217fac71e4eSEmmanuel Vadot		};
218fac71e4eSEmmanuel Vadot
219fac71e4eSEmmanuel Vadot		vreg_l3a_0p9: ldo3 {
220fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l3a_0p9";
221fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <928000>;
222fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <932000>;
223fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
224fac71e4eSEmmanuel Vadot		};
225fac71e4eSEmmanuel Vadot
226fac71e4eSEmmanuel Vadot		/* L4 - lmx.lvl (ARC) */
227fac71e4eSEmmanuel Vadot
228fac71e4eSEmmanuel Vadot		vreg_l5a_0p88: ldo5 {
229fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l5a_0p88";
230fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <880000>;
231fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <880000>;
232fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
233fac71e4eSEmmanuel Vadot		};
234fac71e4eSEmmanuel Vadot
235fac71e4eSEmmanuel Vadot		vreg_l6a_1p2: ldo6 {
236fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l6a_1p2";
237fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <1200000>;
238fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <1200000>;
239fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
240fac71e4eSEmmanuel Vadot			regulator-allow-set-load;
241fac71e4eSEmmanuel Vadot			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
242fac71e4eSEmmanuel Vadot						   RPMH_REGULATOR_MODE_HPM>;
243fac71e4eSEmmanuel Vadot		};
244fac71e4eSEmmanuel Vadot
245fac71e4eSEmmanuel Vadot		/* L7 is unused. */
246fac71e4eSEmmanuel Vadot
247fac71e4eSEmmanuel Vadot		vreg_l9a_1p2: ldo9 {
248fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l9a_1p2";
249fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <1200000>;
250fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <1200000>;
251fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
252fac71e4eSEmmanuel Vadot		};
253fac71e4eSEmmanuel Vadot
254fac71e4eSEmmanuel Vadot		/* L10 is unused, L11 - lcx.lvl (ARC) */
255fac71e4eSEmmanuel Vadot
256fac71e4eSEmmanuel Vadot		vreg_l12a_1p8: ldo12 {
257fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l12a_1p8";
258fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
259fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
260fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
261fac71e4eSEmmanuel Vadot		};
262fac71e4eSEmmanuel Vadot
263fac71e4eSEmmanuel Vadot		/* L13 is unused. */
264fac71e4eSEmmanuel Vadot
265fac71e4eSEmmanuel Vadot		vreg_l14a_1p88: ldo14 {
266fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l14a_1p88";
267fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <1880000>;
268fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <1880000>;
269fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
270fac71e4eSEmmanuel Vadot		};
271fac71e4eSEmmanuel Vadot
272fac71e4eSEmmanuel Vadot		/* L15 & L16 are unused. */
273fac71e4eSEmmanuel Vadot
274fac71e4eSEmmanuel Vadot		vreg_l17a_3p0: ldo17 {
275fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l17a_3p0";
276fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <2496000>;
277fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <3008000>;
278fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
279fac71e4eSEmmanuel Vadot			regulator-allow-set-load;
280fac71e4eSEmmanuel Vadot			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
281fac71e4eSEmmanuel Vadot						   RPMH_REGULATOR_MODE_HPM>;
282fac71e4eSEmmanuel Vadot		};
283fac71e4eSEmmanuel Vadot
284fac71e4eSEmmanuel Vadot		vreg_l18a_0p9: ldo18 {
285fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l18a_0p9";
286fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <800000>;
287fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <920000>;
288fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
289fac71e4eSEmmanuel Vadot		};
290fac71e4eSEmmanuel Vadot	};
291fac71e4eSEmmanuel Vadot
292fac71e4eSEmmanuel Vadot	/*
293fac71e4eSEmmanuel Vadot	 * Remaining regulators that are not yet supported:
294fac71e4eSEmmanuel Vadot	 * OLEDB: 4925000-8100000
295fac71e4eSEmmanuel Vadot	 * ab: 4600000-6100000
296fac71e4eSEmmanuel Vadot	 * ibb: 800000-5400000
297fac71e4eSEmmanuel Vadot	 */
298fac71e4eSEmmanuel Vadot	regulators-1 {
299fac71e4eSEmmanuel Vadot		compatible = "qcom,pm8150l-rpmh-regulators";
300fac71e4eSEmmanuel Vadot		qcom,pmic-id = "c";
301fac71e4eSEmmanuel Vadot
302fac71e4eSEmmanuel Vadot		vdd-s1-supply = <&vph_pwr>;
303fac71e4eSEmmanuel Vadot		vdd-s2-supply = <&vph_pwr>;
304fac71e4eSEmmanuel Vadot		vdd-s3-supply = <&vph_pwr>;
305fac71e4eSEmmanuel Vadot		vdd-s4-supply = <&vph_pwr>;
306fac71e4eSEmmanuel Vadot		vdd-s5-supply = <&vph_pwr>;
307fac71e4eSEmmanuel Vadot		vdd-s6-supply = <&vph_pwr>;
308fac71e4eSEmmanuel Vadot		vdd-s7-supply = <&vph_pwr>;
309fac71e4eSEmmanuel Vadot		vdd-s8-supply = <&vph_pwr>;
310fac71e4eSEmmanuel Vadot		vdd-l1-l8-supply = <&vreg_s4a_1p8>;
311fac71e4eSEmmanuel Vadot		vdd-l2-l3-supply = <&vreg_s8c_1p35>;
312fac71e4eSEmmanuel Vadot		vdd-l4-l5-l6-supply = <&vreg_bob>;
313fac71e4eSEmmanuel Vadot		vdd-l7-l11-supply = <&vreg_bob>;
314fac71e4eSEmmanuel Vadot		vdd-l9-l10-supply = <&vreg_bob>;
315fac71e4eSEmmanuel Vadot		vdd-bob-supply = <&vph_pwr>;
316fac71e4eSEmmanuel Vadot
317fac71e4eSEmmanuel Vadot		vreg_bob: bob {
318fac71e4eSEmmanuel Vadot			regulator-name = "vreg_bob";
319fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <3350000>;
320fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <3960000>;
321fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
322fac71e4eSEmmanuel Vadot		};
323fac71e4eSEmmanuel Vadot
324fac71e4eSEmmanuel Vadot		/*
325fac71e4eSEmmanuel Vadot		 * S1-S6 are ARCs:
326fac71e4eSEmmanuel Vadot		 * (S1+S2) - gfx.lvl,
327fac71e4eSEmmanuel Vadot		 * S3 - mx.lvl,
328fac71e4eSEmmanuel Vadot		 * (S4+S5) - mmcx.lvl,
329fac71e4eSEmmanuel Vadot		 * S6 - ebi.lvl
330fac71e4eSEmmanuel Vadot		 */
331fac71e4eSEmmanuel Vadot
332fac71e4eSEmmanuel Vadot		vreg_s7c_0p35: smps7 {
333fac71e4eSEmmanuel Vadot			regulator-name = "vreg_s7c_0p35";
334fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <348000>;
335fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <1000000>;
336fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
337fac71e4eSEmmanuel Vadot		};
338fac71e4eSEmmanuel Vadot
339fac71e4eSEmmanuel Vadot		vreg_s8c_1p35: smps8 {
340fac71e4eSEmmanuel Vadot			regulator-name = "vreg_s8c_1p35";
341fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <1350000>;
342fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <1400000>;
343fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
344fac71e4eSEmmanuel Vadot		};
345fac71e4eSEmmanuel Vadot
346fac71e4eSEmmanuel Vadot		vreg_l1c_1p8: ldo1 {
347fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l1c_1p8";
348fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
349fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
350fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
351fac71e4eSEmmanuel Vadot		};
352fac71e4eSEmmanuel Vadot
353fac71e4eSEmmanuel Vadot		/* L2-4 are unused. */
354fac71e4eSEmmanuel Vadot
355fac71e4eSEmmanuel Vadot		vreg_l5c_1p8: ldo5 {
356fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l5c_1p8";
357fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
358fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <2800000>;
359fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
360fac71e4eSEmmanuel Vadot		};
361fac71e4eSEmmanuel Vadot
362fac71e4eSEmmanuel Vadot		vreg_l6c_2p9: ldo6 {
363fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l6c_2p9";
364fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
365fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <2960000>;
366fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
367fac71e4eSEmmanuel Vadot			regulator-allow-set-load;
368fac71e4eSEmmanuel Vadot			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
369fac71e4eSEmmanuel Vadot						   RPMH_REGULATOR_MODE_HPM>;
370fac71e4eSEmmanuel Vadot		};
371fac71e4eSEmmanuel Vadot
372fac71e4eSEmmanuel Vadot		vreg_l7c_2p85: ldo7 {
373fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l7c_2p85";
374fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <2856000>;
375fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <3104000>;
376fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
377fac71e4eSEmmanuel Vadot		};
378fac71e4eSEmmanuel Vadot
379fac71e4eSEmmanuel Vadot		vreg_l8c_1p8: ldo8 {
380fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l8c_1p8";
381fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
382fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
383fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
384fac71e4eSEmmanuel Vadot		};
385fac71e4eSEmmanuel Vadot
386fac71e4eSEmmanuel Vadot		vreg_l9c_2p9: ldo9 {
387fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l9c_2p9";
388fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <2704000>;
389fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <2960000>;
390fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
391fac71e4eSEmmanuel Vadot			regulator-allow-set-load;
392fac71e4eSEmmanuel Vadot			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
393fac71e4eSEmmanuel Vadot						   RPMH_REGULATOR_MODE_HPM>;
394fac71e4eSEmmanuel Vadot		};
395fac71e4eSEmmanuel Vadot
396fac71e4eSEmmanuel Vadot		vreg_l10c_3p3: ldo10 {
397fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l10c_3p3";
398fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <3296000>;
399fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <3296000>;
400fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
401fac71e4eSEmmanuel Vadot		};
402fac71e4eSEmmanuel Vadot
403fac71e4eSEmmanuel Vadot		vreg_l11c_3p0: ldo11 {
404fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l11c_3p0";
405fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <3000000>;
406fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <3000000>;
407fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
408fac71e4eSEmmanuel Vadot		};
409fac71e4eSEmmanuel Vadot	};
410fac71e4eSEmmanuel Vadot
411fac71e4eSEmmanuel Vadot	regulators-2 {
412fac71e4eSEmmanuel Vadot		compatible = "qcom,pm8009-rpmh-regulators";
413fac71e4eSEmmanuel Vadot		qcom,pmic-id = "f";
414fac71e4eSEmmanuel Vadot
415fac71e4eSEmmanuel Vadot		vdd-s1-supply = <&vph_pwr>;
416fac71e4eSEmmanuel Vadot		vdd-s2-supply = <&vreg_bob>;
417fac71e4eSEmmanuel Vadot		vdd-l2-supply = <&vreg_s8c_1p35>;
418fac71e4eSEmmanuel Vadot		vdd-l5-l6-supply = <&vreg_bob>;
419fac71e4eSEmmanuel Vadot		vdd-l7-supply = <&vreg_s4a_1p8>;
420fac71e4eSEmmanuel Vadot
421fac71e4eSEmmanuel Vadot		vreg_s1f_1p2: smps1 {
422fac71e4eSEmmanuel Vadot			regulator-name = "vreg_s1f_1p2";
423fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <1200000>;
424fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <1200000>;
425fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
426fac71e4eSEmmanuel Vadot		};
427fac71e4eSEmmanuel Vadot
428fac71e4eSEmmanuel Vadot		vreg_s2f_0p5: smps2 {
429fac71e4eSEmmanuel Vadot			regulator-name = "vreg_s2f_0p5";
430fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <512000>;
431fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <1100000>;
432fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
433fac71e4eSEmmanuel Vadot		};
434fac71e4eSEmmanuel Vadot
435fac71e4eSEmmanuel Vadot		/* L1 is unused. */
436fac71e4eSEmmanuel Vadot
437fac71e4eSEmmanuel Vadot		vreg_l2f_1p3: ldo2 {
438fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l2f_1p3";
439fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <1304000>;
440fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <1304000>;
441fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
442fac71e4eSEmmanuel Vadot		};
443fac71e4eSEmmanuel Vadot
444fac71e4eSEmmanuel Vadot		/* L3 & L4 are unused. */
445fac71e4eSEmmanuel Vadot
446fac71e4eSEmmanuel Vadot		vreg_l5f_2p8: ldo5 {
447fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l5f_2p85";
448fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <2800000>;
449fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <2800000>;
450fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
451fac71e4eSEmmanuel Vadot		};
452fac71e4eSEmmanuel Vadot
453fac71e4eSEmmanuel Vadot		vreg_l6f_2p8: ldo6 {
454fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l6f_2p8";
455fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <2800000>;
456fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <2800000>;
457fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
458fac71e4eSEmmanuel Vadot		};
459fac71e4eSEmmanuel Vadot
460fac71e4eSEmmanuel Vadot		vreg_l7f_1p8: ldo7 {
461fac71e4eSEmmanuel Vadot			regulator-name = "vreg_l7f_1p8";
462fac71e4eSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
463fac71e4eSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
464fac71e4eSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
465fac71e4eSEmmanuel Vadot		};
466fac71e4eSEmmanuel Vadot	};
467fac71e4eSEmmanuel Vadot};
468fac71e4eSEmmanuel Vadot
469fac71e4eSEmmanuel Vadot&cdsp {
470fac71e4eSEmmanuel Vadot	firmware-name = "qcom/sm8250/xiaomi/elish/cdsp.mbn";
471fac71e4eSEmmanuel Vadot	status = "okay";
472fac71e4eSEmmanuel Vadot};
473fac71e4eSEmmanuel Vadot
474fac71e4eSEmmanuel Vadot&gmu {
475fac71e4eSEmmanuel Vadot	status = "okay";
476fac71e4eSEmmanuel Vadot};
477fac71e4eSEmmanuel Vadot
478fac71e4eSEmmanuel Vadot&gpi_dma0 {
479fac71e4eSEmmanuel Vadot	status = "okay";
480fac71e4eSEmmanuel Vadot};
481fac71e4eSEmmanuel Vadot
482fac71e4eSEmmanuel Vadot&gpi_dma1 {
483fac71e4eSEmmanuel Vadot	status = "okay";
484fac71e4eSEmmanuel Vadot};
485fac71e4eSEmmanuel Vadot
486fac71e4eSEmmanuel Vadot&gpi_dma2 {
487fac71e4eSEmmanuel Vadot	status = "okay";
488fac71e4eSEmmanuel Vadot};
489fac71e4eSEmmanuel Vadot
490fac71e4eSEmmanuel Vadot&gpu {
491fac71e4eSEmmanuel Vadot	status = "okay";
492fac71e4eSEmmanuel Vadot
493fac71e4eSEmmanuel Vadot	zap-shader {
494fac71e4eSEmmanuel Vadot		memory-region = <&gpu_mem>;
495fac71e4eSEmmanuel Vadot		firmware-name = "qcom/sm8250/xiaomi/elish/a650_zap.mbn";
496fac71e4eSEmmanuel Vadot	};
497fac71e4eSEmmanuel Vadot};
498fac71e4eSEmmanuel Vadot
499fac71e4eSEmmanuel Vadot&i2c0 {
500fac71e4eSEmmanuel Vadot	clock-frequency = <400000>;
501fac71e4eSEmmanuel Vadot	status = "okay";
502fac71e4eSEmmanuel Vadot
503fac71e4eSEmmanuel Vadot	fuel-gauge@55 {
504fac71e4eSEmmanuel Vadot		compatible = "ti,bq27z561";
505fac71e4eSEmmanuel Vadot		reg = <0x55>;
506fac71e4eSEmmanuel Vadot		monitored-battery = <&battery_r>;
507fac71e4eSEmmanuel Vadot	};
508fac71e4eSEmmanuel Vadot};
509fac71e4eSEmmanuel Vadot
510fac71e4eSEmmanuel Vadot&i2c11 {
511fac71e4eSEmmanuel Vadot	clock-frequency = <400000>;
512fac71e4eSEmmanuel Vadot	status = "okay";
513fac71e4eSEmmanuel Vadot
514fac71e4eSEmmanuel Vadot	backlight: backlight@11 {
515fac71e4eSEmmanuel Vadot		compatible = "kinetic,ktz8866";
516fac71e4eSEmmanuel Vadot		reg = <0x11>;
517fac71e4eSEmmanuel Vadot		vddpos-supply = <&bl_vddpos_5p5>;
518fac71e4eSEmmanuel Vadot		vddneg-supply = <&bl_vddneg_5p5>;
519fac71e4eSEmmanuel Vadot		enable-gpios = <&tlmm 139 GPIO_ACTIVE_HIGH>;
520fac71e4eSEmmanuel Vadot		current-num-sinks = <5>;
521fac71e4eSEmmanuel Vadot		kinetic,current-ramp-delay-ms = <128>;
522fac71e4eSEmmanuel Vadot		kinetic,led-enable-ramp-delay-ms = <1>;
523fac71e4eSEmmanuel Vadot		kinetic,enable-lcd-bias;
524fac71e4eSEmmanuel Vadot	};
525fac71e4eSEmmanuel Vadot};
526fac71e4eSEmmanuel Vadot
527fac71e4eSEmmanuel Vadot&i2c13 {
528fac71e4eSEmmanuel Vadot	clock-frequency = <400000>;
529fac71e4eSEmmanuel Vadot	status = "okay";
530fac71e4eSEmmanuel Vadot
531fac71e4eSEmmanuel Vadot	fuel-gauge@55 {
532fac71e4eSEmmanuel Vadot		compatible = "ti,bq27z561";
533fac71e4eSEmmanuel Vadot		reg = <0x55>;
534fac71e4eSEmmanuel Vadot		monitored-battery = <&battery_l>;
535fac71e4eSEmmanuel Vadot	};
536fac71e4eSEmmanuel Vadot};
537fac71e4eSEmmanuel Vadot
538fac71e4eSEmmanuel Vadot&mdss {
539fac71e4eSEmmanuel Vadot	status = "okay";
540fac71e4eSEmmanuel Vadot};
541fac71e4eSEmmanuel Vadot
542f126890aSEmmanuel Vadot&mdss_dsi0 {
543f126890aSEmmanuel Vadot	vdda-supply = <&vreg_l9a_1p2>;
544f126890aSEmmanuel Vadot	qcom,dual-dsi-mode;
545f126890aSEmmanuel Vadot	qcom,sync-dual-dsi;
546f126890aSEmmanuel Vadot	qcom,master-dsi;
547f126890aSEmmanuel Vadot	status = "okay";
548f126890aSEmmanuel Vadot
549f126890aSEmmanuel Vadot	display_panel: panel@0 {
550f126890aSEmmanuel Vadot		reg = <0>;
551f126890aSEmmanuel Vadot		vddio-supply = <&vreg_l14a_1p88>;
552f126890aSEmmanuel Vadot		reset-gpios = <&tlmm 75 GPIO_ACTIVE_LOW>;
553f126890aSEmmanuel Vadot		backlight = <&backlight>;
55401950c46SEmmanuel Vadot		rotation = <90>;
555f126890aSEmmanuel Vadot
556f126890aSEmmanuel Vadot		status = "disabled";
557f126890aSEmmanuel Vadot
558f126890aSEmmanuel Vadot		ports {
559f126890aSEmmanuel Vadot			#address-cells = <1>;
560f126890aSEmmanuel Vadot			#size-cells = <0>;
561f126890aSEmmanuel Vadot
562f126890aSEmmanuel Vadot			port@0 {
563f126890aSEmmanuel Vadot				reg = <0>;
564f126890aSEmmanuel Vadot
565f126890aSEmmanuel Vadot				panel_in_0: endpoint {
566f126890aSEmmanuel Vadot					remote-endpoint = <&mdss_dsi0_out>;
567f126890aSEmmanuel Vadot				};
568f126890aSEmmanuel Vadot			};
569f126890aSEmmanuel Vadot
570f126890aSEmmanuel Vadot			port@1 {
571f126890aSEmmanuel Vadot				reg = <1>;
572f126890aSEmmanuel Vadot
573f126890aSEmmanuel Vadot				panel_in_1: endpoint {
574f126890aSEmmanuel Vadot					remote-endpoint = <&mdss_dsi1_out>;
575f126890aSEmmanuel Vadot				};
576f126890aSEmmanuel Vadot			};
577f126890aSEmmanuel Vadot		};
578f126890aSEmmanuel Vadot	};
579f126890aSEmmanuel Vadot};
580f126890aSEmmanuel Vadot
581f126890aSEmmanuel Vadot&mdss_dsi0_out {
582f126890aSEmmanuel Vadot	data-lanes = <0 1 2>;
583f126890aSEmmanuel Vadot	remote-endpoint = <&panel_in_0>;
584f126890aSEmmanuel Vadot};
585f126890aSEmmanuel Vadot
586f126890aSEmmanuel Vadot&mdss_dsi0_phy {
587f126890aSEmmanuel Vadot	vdds-supply = <&vreg_l5a_0p88>;
588f126890aSEmmanuel Vadot	phy-type = <PHY_TYPE_CPHY>;
589f126890aSEmmanuel Vadot	status = "okay";
590f126890aSEmmanuel Vadot};
591f126890aSEmmanuel Vadot
592f126890aSEmmanuel Vadot&mdss_dsi1 {
593f126890aSEmmanuel Vadot	vdda-supply = <&vreg_l9a_1p2>;
594f126890aSEmmanuel Vadot	qcom,dual-dsi-mode;
595f126890aSEmmanuel Vadot	qcom,sync-dual-dsi;
596f126890aSEmmanuel Vadot	/* DSI1 is slave, so use DSI0 clocks */
597f126890aSEmmanuel Vadot	assigned-clock-parents = <&mdss_dsi0_phy 0>, <&mdss_dsi0_phy 1>;
598f126890aSEmmanuel Vadot	status = "okay";
599f126890aSEmmanuel Vadot};
600f126890aSEmmanuel Vadot
601f126890aSEmmanuel Vadot&mdss_dsi1_out {
602f126890aSEmmanuel Vadot	data-lanes = <0 1 2>;
603f126890aSEmmanuel Vadot	remote-endpoint = <&panel_in_1>;
604f126890aSEmmanuel Vadot};
605f126890aSEmmanuel Vadot
606f126890aSEmmanuel Vadot&mdss_dsi1_phy {
607f126890aSEmmanuel Vadot	vdds-supply = <&vreg_l5a_0p88>;
608f126890aSEmmanuel Vadot	phy-type = <PHY_TYPE_CPHY>;
609f126890aSEmmanuel Vadot	status = "okay";
610f126890aSEmmanuel Vadot};
611f126890aSEmmanuel Vadot
612fac71e4eSEmmanuel Vadot&pcie0 {
613fac71e4eSEmmanuel Vadot	status = "okay";
614fac71e4eSEmmanuel Vadot};
615fac71e4eSEmmanuel Vadot
616fac71e4eSEmmanuel Vadot&pcie0_phy {
617fac71e4eSEmmanuel Vadot	vdda-phy-supply = <&vreg_l5a_0p88>;
618fac71e4eSEmmanuel Vadot	vdda-pll-supply = <&vreg_l9a_1p2>;
619fac71e4eSEmmanuel Vadot	status = "okay";
620fac71e4eSEmmanuel Vadot};
621fac71e4eSEmmanuel Vadot
622fac71e4eSEmmanuel Vadot&pm8150_gpios {
623fac71e4eSEmmanuel Vadot	vol_up_n: vol-up-n-state {
624fac71e4eSEmmanuel Vadot		pins = "gpio6";
625fac71e4eSEmmanuel Vadot		function = "normal";
626fac71e4eSEmmanuel Vadot		power-source = <1>;
627fac71e4eSEmmanuel Vadot		input-enable;
628fac71e4eSEmmanuel Vadot		bias-pull-up;
629fac71e4eSEmmanuel Vadot	};
630fac71e4eSEmmanuel Vadot};
631fac71e4eSEmmanuel Vadot
6328d13bc63SEmmanuel Vadot&pm8150b_typec {
6338d13bc63SEmmanuel Vadot	vdd-pdphy-supply = <&vreg_l2a_3p1>;
6348d13bc63SEmmanuel Vadot	status = "okay";
6358d13bc63SEmmanuel Vadot
6368d13bc63SEmmanuel Vadot	connector {
6378d13bc63SEmmanuel Vadot		compatible = "usb-c-connector";
6388d13bc63SEmmanuel Vadot
6397d0873ebSEmmanuel Vadot		op-sink-microwatt = <10000000>;
6407d0873ebSEmmanuel Vadot		power-role = "dual";
6418d13bc63SEmmanuel Vadot		data-role = "dual";
6428d13bc63SEmmanuel Vadot		self-powered;
6438d13bc63SEmmanuel Vadot
6448d13bc63SEmmanuel Vadot		source-pdos = <PDO_FIXED(5000, 3000,
6458d13bc63SEmmanuel Vadot					 PDO_FIXED_DUAL_ROLE |
6468d13bc63SEmmanuel Vadot					 PDO_FIXED_USB_COMM |
6478d13bc63SEmmanuel Vadot					 PDO_FIXED_DATA_SWAP)>;
6488d13bc63SEmmanuel Vadot
6497d0873ebSEmmanuel Vadot		sink-pdos = <PDO_FIXED(5000, 3000,
6507d0873ebSEmmanuel Vadot				       PDO_FIXED_DUAL_ROLE |
6517d0873ebSEmmanuel Vadot				       PDO_FIXED_USB_COMM |
6527d0873ebSEmmanuel Vadot				       PDO_FIXED_DATA_SWAP)
6537d0873ebSEmmanuel Vadot				       PDO_VAR(5000, 12000, 5000)>;
6547d0873ebSEmmanuel Vadot
6558d13bc63SEmmanuel Vadot		ports {
6568d13bc63SEmmanuel Vadot			#address-cells = <1>;
6578d13bc63SEmmanuel Vadot			#size-cells = <0>;
6588d13bc63SEmmanuel Vadot
6598d13bc63SEmmanuel Vadot			port@0 {
6608d13bc63SEmmanuel Vadot				reg = <0>;
6618d13bc63SEmmanuel Vadot
662*0e8011faSEmmanuel Vadot				pm8150b_hs_in: endpoint {
663*0e8011faSEmmanuel Vadot					remote-endpoint = <&usb_1_dwc3_hs_out>;
6648d13bc63SEmmanuel Vadot				};
6658d13bc63SEmmanuel Vadot			};
6668d13bc63SEmmanuel Vadot		};
6678d13bc63SEmmanuel Vadot	};
6688d13bc63SEmmanuel Vadot};
6698d13bc63SEmmanuel Vadot
6708d13bc63SEmmanuel Vadot&pm8150b_vbus {
6717d0873ebSEmmanuel Vadot	regulator-min-microamp = <500000>;
6727d0873ebSEmmanuel Vadot	regulator-max-microamp = <3000000>;
6738d13bc63SEmmanuel Vadot	status = "okay";
6748d13bc63SEmmanuel Vadot};
6758d13bc63SEmmanuel Vadot
676fac71e4eSEmmanuel Vadot&pon_pwrkey {
677fac71e4eSEmmanuel Vadot	status = "okay";
678fac71e4eSEmmanuel Vadot};
679fac71e4eSEmmanuel Vadot
680fac71e4eSEmmanuel Vadot&pon_resin {
681fac71e4eSEmmanuel Vadot	linux,code = <KEY_VOLUMEDOWN>;
682fac71e4eSEmmanuel Vadot	status = "okay";
683fac71e4eSEmmanuel Vadot};
684fac71e4eSEmmanuel Vadot
685fac71e4eSEmmanuel Vadot&qupv3_id_0 {
686fac71e4eSEmmanuel Vadot	status = "okay";
687fac71e4eSEmmanuel Vadot};
688fac71e4eSEmmanuel Vadot
689fac71e4eSEmmanuel Vadot&qupv3_id_1 {
690fac71e4eSEmmanuel Vadot	status = "okay";
691fac71e4eSEmmanuel Vadot};
692fac71e4eSEmmanuel Vadot
693fac71e4eSEmmanuel Vadot&qupv3_id_2 {
694fac71e4eSEmmanuel Vadot	status = "okay";
695fac71e4eSEmmanuel Vadot};
696fac71e4eSEmmanuel Vadot
697fac71e4eSEmmanuel Vadot&slpi {
698fac71e4eSEmmanuel Vadot	firmware-name = "qcom/sm8250/xiaomi/elish/slpi.mbn";
699fac71e4eSEmmanuel Vadot	status = "okay";
700fac71e4eSEmmanuel Vadot};
701fac71e4eSEmmanuel Vadot
702fac71e4eSEmmanuel Vadot&tlmm {
703fac71e4eSEmmanuel Vadot	gpio-reserved-ranges = <40 4>;
704fac71e4eSEmmanuel Vadot};
705fac71e4eSEmmanuel Vadot
706fac71e4eSEmmanuel Vadot&usb_1 {
707fac71e4eSEmmanuel Vadot	/* USB 2.0 only */
708fac71e4eSEmmanuel Vadot	qcom,select-utmi-as-pipe-clk;
709fac71e4eSEmmanuel Vadot	status = "okay";
710fac71e4eSEmmanuel Vadot};
711fac71e4eSEmmanuel Vadot
712fac71e4eSEmmanuel Vadot&usb_1_dwc3 {
7138d13bc63SEmmanuel Vadot	dr_mode = "otg";
714fac71e4eSEmmanuel Vadot	maximum-speed = "high-speed";
715fac71e4eSEmmanuel Vadot	/* Remove USB3 phy */
716fac71e4eSEmmanuel Vadot	phys = <&usb_1_hsphy>;
717fac71e4eSEmmanuel Vadot	phy-names = "usb2-phy";
7188d13bc63SEmmanuel Vadot	usb-role-switch;
719fac71e4eSEmmanuel Vadot};
720fac71e4eSEmmanuel Vadot
721fac71e4eSEmmanuel Vadot&usb_1_hsphy {
722fac71e4eSEmmanuel Vadot	vdda-pll-supply = <&vreg_l5a_0p88>;
723fac71e4eSEmmanuel Vadot	vdda18-supply = <&vreg_l12a_1p8>;
724fac71e4eSEmmanuel Vadot	vdda33-supply = <&vreg_l2a_3p1>;
725fac71e4eSEmmanuel Vadot	status = "okay";
726fac71e4eSEmmanuel Vadot};
727fac71e4eSEmmanuel Vadot
728*0e8011faSEmmanuel Vadot&usb_1_dwc3_hs_out {
729*0e8011faSEmmanuel Vadot	remote-endpoint = <&pm8150b_hs_in>;
7308d13bc63SEmmanuel Vadot};
7318d13bc63SEmmanuel Vadot
732fac71e4eSEmmanuel Vadot&ufs_mem_hc {
733fac71e4eSEmmanuel Vadot	vcc-supply = <&vreg_l17a_3p0>;
734fac71e4eSEmmanuel Vadot	vcc-max-microamp = <800000>;
735fac71e4eSEmmanuel Vadot	vccq-supply = <&vreg_l6a_1p2>;
736fac71e4eSEmmanuel Vadot	vccq-max-microamp = <800000>;
737fac71e4eSEmmanuel Vadot	vccq2-supply = <&vreg_s4a_1p8>;
738fac71e4eSEmmanuel Vadot	vccq2-max-microamp = <800000>;
739fac71e4eSEmmanuel Vadot	status = "okay";
740fac71e4eSEmmanuel Vadot};
741fac71e4eSEmmanuel Vadot
742fac71e4eSEmmanuel Vadot&ufs_mem_phy {
743fac71e4eSEmmanuel Vadot	vdda-phy-supply = <&vreg_l5a_0p88>;
744fac71e4eSEmmanuel Vadot	vdda-pll-supply = <&vreg_l9a_1p2>;
745fac71e4eSEmmanuel Vadot	status = "okay";
746fac71e4eSEmmanuel Vadot};
747fac71e4eSEmmanuel Vadot
748fac71e4eSEmmanuel Vadot&venus {
749fac71e4eSEmmanuel Vadot	firmware-name = "qcom/sm8250/xiaomi/elish/venus.mbn";
750fac71e4eSEmmanuel Vadot	status = "okay";
751fac71e4eSEmmanuel Vadot};
752