xref: /freebsd/sys/contrib/device-tree/src/arm64/qcom/sdm845-db845c.dts (revision 7d0873ebb83b19ba1e8a89e679470d885efe12e3)
1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2c66ec88fSEmmanuel Vadot/*
3c66ec88fSEmmanuel Vadot * Copyright (c) 2019, Linaro Ltd.
4c66ec88fSEmmanuel Vadot */
5c66ec88fSEmmanuel Vadot
6c66ec88fSEmmanuel Vadot/dts-v1/;
7c66ec88fSEmmanuel Vadot
8b97ee269SEmmanuel Vadot#include <dt-bindings/leds/common.h>
9c66ec88fSEmmanuel Vadot#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
10c66ec88fSEmmanuel Vadot#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
11c66ec88fSEmmanuel Vadot#include <dt-bindings/sound/qcom,q6afe.h>
12c66ec88fSEmmanuel Vadot#include <dt-bindings/sound/qcom,q6asm.h>
13c66ec88fSEmmanuel Vadot#include "sdm845.dtsi"
14cb7aa33aSEmmanuel Vadot#include "sdm845-wcd9340.dtsi"
15c66ec88fSEmmanuel Vadot#include "pm8998.dtsi"
16c66ec88fSEmmanuel Vadot#include "pmi8998.dtsi"
17c66ec88fSEmmanuel Vadot
18c66ec88fSEmmanuel Vadot/ {
19c66ec88fSEmmanuel Vadot	model = "Thundercomm Dragonboard 845c";
20c66ec88fSEmmanuel Vadot	compatible = "thundercomm,db845c", "qcom,sdm845";
218cc087a1SEmmanuel Vadot	qcom,msm-id = <341 0x20001>;
228cc087a1SEmmanuel Vadot	qcom,board-id = <8 0>;
23c66ec88fSEmmanuel Vadot
24c66ec88fSEmmanuel Vadot	aliases {
25c66ec88fSEmmanuel Vadot		serial0 = &uart9;
268bab661aSEmmanuel Vadot		serial1 = &uart6;
27c66ec88fSEmmanuel Vadot	};
28c66ec88fSEmmanuel Vadot
29c66ec88fSEmmanuel Vadot	chosen {
30c66ec88fSEmmanuel Vadot		stdout-path = "serial0:115200n8";
31c66ec88fSEmmanuel Vadot	};
32c66ec88fSEmmanuel Vadot
33d5b0e70fSEmmanuel Vadot	/* Fixed crystal oscillator dedicated to MCP2517FD */
34d5b0e70fSEmmanuel Vadot	clk40M: can-clock {
35d5b0e70fSEmmanuel Vadot		compatible = "fixed-clock";
36d5b0e70fSEmmanuel Vadot		#clock-cells = <0>;
37d5b0e70fSEmmanuel Vadot		clock-frequency = <40000000>;
38d5b0e70fSEmmanuel Vadot	};
39d5b0e70fSEmmanuel Vadot
40c66ec88fSEmmanuel Vadot	dc12v: dc12v-regulator {
41c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
42c66ec88fSEmmanuel Vadot		regulator-name = "DC12V";
43c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <12000000>;
44c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <12000000>;
45c66ec88fSEmmanuel Vadot		regulator-always-on;
46c66ec88fSEmmanuel Vadot	};
47c66ec88fSEmmanuel Vadot
48b97ee269SEmmanuel Vadot	gpio-keys {
49c66ec88fSEmmanuel Vadot		compatible = "gpio-keys";
50c66ec88fSEmmanuel Vadot		autorepeat;
51c66ec88fSEmmanuel Vadot
52c66ec88fSEmmanuel Vadot		pinctrl-names = "default";
53c66ec88fSEmmanuel Vadot		pinctrl-0 = <&vol_up_pin_a>;
54c66ec88fSEmmanuel Vadot
55b97ee269SEmmanuel Vadot		key-vol-up {
56c66ec88fSEmmanuel Vadot			label = "Volume Up";
57c66ec88fSEmmanuel Vadot			linux,code = <KEY_VOLUMEUP>;
58cb7aa33aSEmmanuel Vadot			gpios = <&pm8998_gpios 6 GPIO_ACTIVE_LOW>;
59c66ec88fSEmmanuel Vadot		};
60c66ec88fSEmmanuel Vadot	};
61c66ec88fSEmmanuel Vadot
62c66ec88fSEmmanuel Vadot	leds {
63c66ec88fSEmmanuel Vadot		compatible = "gpio-leds";
64c66ec88fSEmmanuel Vadot
65b97ee269SEmmanuel Vadot		led-0 {
66c66ec88fSEmmanuel Vadot			label = "green:user4";
67b97ee269SEmmanuel Vadot			function = LED_FUNCTION_INDICATOR;
68b97ee269SEmmanuel Vadot			color = <LED_COLOR_ID_GREEN>;
69cb7aa33aSEmmanuel Vadot			gpios = <&pm8998_gpios 13 GPIO_ACTIVE_HIGH>;
70c66ec88fSEmmanuel Vadot			default-state = "off";
718d13bc63SEmmanuel Vadot			panic-indicator;
72c66ec88fSEmmanuel Vadot		};
73c66ec88fSEmmanuel Vadot
74b97ee269SEmmanuel Vadot		led-1 {
75c66ec88fSEmmanuel Vadot			label = "yellow:wlan";
76b97ee269SEmmanuel Vadot			function = LED_FUNCTION_WLAN;
77b97ee269SEmmanuel Vadot			color = <LED_COLOR_ID_YELLOW>;
78cb7aa33aSEmmanuel Vadot			gpios = <&pm8998_gpios 9 GPIO_ACTIVE_HIGH>;
79c66ec88fSEmmanuel Vadot			linux,default-trigger = "phy0tx";
80c66ec88fSEmmanuel Vadot			default-state = "off";
81c66ec88fSEmmanuel Vadot		};
82c66ec88fSEmmanuel Vadot
83b97ee269SEmmanuel Vadot		led-2 {
84c66ec88fSEmmanuel Vadot			label = "blue:bt";
85b97ee269SEmmanuel Vadot			function = LED_FUNCTION_BLUETOOTH;
86b97ee269SEmmanuel Vadot			color = <LED_COLOR_ID_BLUE>;
87cb7aa33aSEmmanuel Vadot			gpios = <&pm8998_gpios 5 GPIO_ACTIVE_HIGH>;
88c66ec88fSEmmanuel Vadot			linux,default-trigger = "bluetooth-power";
89c66ec88fSEmmanuel Vadot			default-state = "off";
90c66ec88fSEmmanuel Vadot		};
91c66ec88fSEmmanuel Vadot	};
92c66ec88fSEmmanuel Vadot
93c66ec88fSEmmanuel Vadot	hdmi-out {
94c66ec88fSEmmanuel Vadot		compatible = "hdmi-connector";
95c66ec88fSEmmanuel Vadot		type = "a";
96c66ec88fSEmmanuel Vadot
97c66ec88fSEmmanuel Vadot		port {
98c66ec88fSEmmanuel Vadot			hdmi_con: endpoint {
99c66ec88fSEmmanuel Vadot				remote-endpoint = <&lt9611_out>;
100c66ec88fSEmmanuel Vadot			};
101c66ec88fSEmmanuel Vadot		};
102c66ec88fSEmmanuel Vadot	};
103c66ec88fSEmmanuel Vadot
104aa1a8ff2SEmmanuel Vadot	reserved-memory {
105aa1a8ff2SEmmanuel Vadot		/* Cont splash region set up by the bootloader */
106aa1a8ff2SEmmanuel Vadot		cont_splash_mem: framebuffer@9d400000 {
107aa1a8ff2SEmmanuel Vadot			reg = <0x0 0x9d400000 0x0 0x2400000>;
108aa1a8ff2SEmmanuel Vadot			no-map;
109aa1a8ff2SEmmanuel Vadot		};
110aa1a8ff2SEmmanuel Vadot	};
111aa1a8ff2SEmmanuel Vadot
112c66ec88fSEmmanuel Vadot	lt9611_1v8: lt9611-vdd18-regulator {
113c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
114c66ec88fSEmmanuel Vadot		regulator-name = "LT9611_1V8";
115c66ec88fSEmmanuel Vadot
116c66ec88fSEmmanuel Vadot		vin-supply = <&vdc_5v>;
117c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
118c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
119c66ec88fSEmmanuel Vadot
120c66ec88fSEmmanuel Vadot		gpio = <&tlmm 89 GPIO_ACTIVE_HIGH>;
121c66ec88fSEmmanuel Vadot		enable-active-high;
122c66ec88fSEmmanuel Vadot	};
123c66ec88fSEmmanuel Vadot
124c66ec88fSEmmanuel Vadot	lt9611_3v3: lt9611-3v3 {
125c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
126c66ec88fSEmmanuel Vadot		regulator-name = "LT9611_3V3";
127c66ec88fSEmmanuel Vadot
128c66ec88fSEmmanuel Vadot		vin-supply = <&vdc_3v3>;
129c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
130c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
131c66ec88fSEmmanuel Vadot
1328bab661aSEmmanuel Vadot		/*
1338bab661aSEmmanuel Vadot		 * TODO: make it possible to drive same GPIO from two clients
1348bab661aSEmmanuel Vadot		 * gpio = <&tlmm 89 GPIO_ACTIVE_HIGH>;
1358bab661aSEmmanuel Vadot		 * enable-active-high;
1368bab661aSEmmanuel Vadot		 */
137c66ec88fSEmmanuel Vadot	};
138c66ec88fSEmmanuel Vadot
139c66ec88fSEmmanuel Vadot	pcie0_1p05v: pcie-0-1p05v-regulator {
140c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
141c66ec88fSEmmanuel Vadot		regulator-name = "PCIE0_1.05V";
142c66ec88fSEmmanuel Vadot
143c66ec88fSEmmanuel Vadot		vin-supply = <&vbat>;
144c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <1050000>;
145c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <1050000>;
146c66ec88fSEmmanuel Vadot
1478bab661aSEmmanuel Vadot		/*
1488bab661aSEmmanuel Vadot		 * TODO: make it possible to drive same GPIO from two clients
1498bab661aSEmmanuel Vadot		 * gpio = <&tlmm 90 GPIO_ACTIVE_HIGH>;
1508bab661aSEmmanuel Vadot		 * enable-active-high;
1518bab661aSEmmanuel Vadot		 */
152c66ec88fSEmmanuel Vadot	};
153c66ec88fSEmmanuel Vadot
154cb7aa33aSEmmanuel Vadot	cam0_dvdd_1v2: cam0-dvdd-1v2-regulator {
155c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
156c66ec88fSEmmanuel Vadot		regulator-name = "CAM0_DVDD_1V2";
157c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <1200000>;
158c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <1200000>;
159c66ec88fSEmmanuel Vadot		enable-active-high;
160cb7aa33aSEmmanuel Vadot		gpio = <&pm8998_gpios 12 GPIO_ACTIVE_HIGH>;
161c66ec88fSEmmanuel Vadot		pinctrl-names = "default";
162c66ec88fSEmmanuel Vadot		pinctrl-0 = <&cam0_dvdd_1v2_en_default>;
163c66ec88fSEmmanuel Vadot		vin-supply = <&vbat>;
164c66ec88fSEmmanuel Vadot	};
165c66ec88fSEmmanuel Vadot
166cb7aa33aSEmmanuel Vadot	cam0_avdd_2v8: cam0-avdd-2v8-regulator {
167c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
168c66ec88fSEmmanuel Vadot		regulator-name = "CAM0_AVDD_2V8";
169c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <2800000>;
170c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <2800000>;
171c66ec88fSEmmanuel Vadot		enable-active-high;
172cb7aa33aSEmmanuel Vadot		gpio = <&pm8998_gpios 10 GPIO_ACTIVE_HIGH>;
173c66ec88fSEmmanuel Vadot		pinctrl-names = "default";
174c66ec88fSEmmanuel Vadot		pinctrl-0 = <&cam0_avdd_2v8_en_default>;
175c66ec88fSEmmanuel Vadot		vin-supply = <&vbat>;
176c66ec88fSEmmanuel Vadot	};
177c66ec88fSEmmanuel Vadot
178c66ec88fSEmmanuel Vadot	/* This regulator is enabled when the VREG_LVS1A_1P8 trace is enabled */
179cb7aa33aSEmmanuel Vadot	cam3_avdd_2v8: cam3-avdd-2v8-regulator {
180c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
181c66ec88fSEmmanuel Vadot		regulator-name = "CAM3_AVDD_2V8";
182c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <2800000>;
183c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <2800000>;
184c66ec88fSEmmanuel Vadot		regulator-always-on;
185c66ec88fSEmmanuel Vadot		vin-supply = <&vbat>;
186c66ec88fSEmmanuel Vadot	};
187c66ec88fSEmmanuel Vadot
188c66ec88fSEmmanuel Vadot	pcie0_3p3v_dual: vldo-3v3-regulator {
189c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
190c66ec88fSEmmanuel Vadot		regulator-name = "VLDO_3V3";
191c66ec88fSEmmanuel Vadot
192c66ec88fSEmmanuel Vadot		vin-supply = <&vbat>;
193c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
194c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
195c66ec88fSEmmanuel Vadot
196c66ec88fSEmmanuel Vadot		gpio = <&tlmm 90 GPIO_ACTIVE_HIGH>;
197c66ec88fSEmmanuel Vadot		enable-active-high;
198*7d0873ebSEmmanuel Vadot		/*
199*7d0873ebSEmmanuel Vadot		 * FIXME: this regulator is responsible for VBUS on the left USB
200*7d0873ebSEmmanuel Vadot		 * port. Keep it always on until we can correctly model this
201*7d0873ebSEmmanuel Vadot		 * relationship.
202*7d0873ebSEmmanuel Vadot		 */
203*7d0873ebSEmmanuel Vadot		regulator-always-on;
204c66ec88fSEmmanuel Vadot
205c66ec88fSEmmanuel Vadot		pinctrl-names = "default";
206c66ec88fSEmmanuel Vadot		pinctrl-0 = <&pcie0_pwren_state>;
207c66ec88fSEmmanuel Vadot	};
208c66ec88fSEmmanuel Vadot
209c66ec88fSEmmanuel Vadot	v5p0_hdmiout: v5p0-hdmiout-regulator {
210c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
211c66ec88fSEmmanuel Vadot		regulator-name = "V5P0_HDMIOUT";
212c66ec88fSEmmanuel Vadot
213c66ec88fSEmmanuel Vadot		vin-supply = <&vdc_5v>;
214c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <500000>;
215c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <500000>;
216c66ec88fSEmmanuel Vadot
2178bab661aSEmmanuel Vadot		/*
2188bab661aSEmmanuel Vadot		 * TODO: make it possible to drive same GPIO from two clients
2198bab661aSEmmanuel Vadot		 * gpio = <&tlmm 89 GPIO_ACTIVE_HIGH>;
2208bab661aSEmmanuel Vadot		 * enable-active-high;
2218bab661aSEmmanuel Vadot		 */
222c66ec88fSEmmanuel Vadot	};
223c66ec88fSEmmanuel Vadot
224c66ec88fSEmmanuel Vadot	vbat: vbat-regulator {
225c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
226c66ec88fSEmmanuel Vadot		regulator-name = "VBAT";
227c66ec88fSEmmanuel Vadot
228c66ec88fSEmmanuel Vadot		vin-supply = <&dc12v>;
229c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <4200000>;
230c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <4200000>;
231c66ec88fSEmmanuel Vadot		regulator-always-on;
232c66ec88fSEmmanuel Vadot	};
233c66ec88fSEmmanuel Vadot
234c66ec88fSEmmanuel Vadot	vbat_som: vbat-som-regulator {
235c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
236c66ec88fSEmmanuel Vadot		regulator-name = "VBAT_SOM";
237c66ec88fSEmmanuel Vadot
238c66ec88fSEmmanuel Vadot		vin-supply = <&dc12v>;
239c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <4200000>;
240c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <4200000>;
241c66ec88fSEmmanuel Vadot		regulator-always-on;
242c66ec88fSEmmanuel Vadot	};
243c66ec88fSEmmanuel Vadot
244c66ec88fSEmmanuel Vadot	vdc_3v3: vdc-3v3-regulator {
245c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
246c66ec88fSEmmanuel Vadot		regulator-name = "VDC_3V3";
247c66ec88fSEmmanuel Vadot		vin-supply = <&dc12v>;
248c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
249c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
250c66ec88fSEmmanuel Vadot		regulator-always-on;
251c66ec88fSEmmanuel Vadot	};
252c66ec88fSEmmanuel Vadot
253c66ec88fSEmmanuel Vadot	vdc_5v: vdc-5v-regulator {
254c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
255c66ec88fSEmmanuel Vadot		regulator-name = "VDC_5V";
256c66ec88fSEmmanuel Vadot
257c66ec88fSEmmanuel Vadot		vin-supply = <&dc12v>;
258c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <500000>;
259c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <500000>;
260c66ec88fSEmmanuel Vadot		regulator-always-on;
261c66ec88fSEmmanuel Vadot	};
262c66ec88fSEmmanuel Vadot
263c66ec88fSEmmanuel Vadot	vreg_s4a_1p8: vreg-s4a-1p8 {
264c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
265c66ec88fSEmmanuel Vadot		regulator-name = "vreg_s4a_1p8";
266c66ec88fSEmmanuel Vadot
267c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
268c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
269c66ec88fSEmmanuel Vadot		regulator-always-on;
270c66ec88fSEmmanuel Vadot	};
271c66ec88fSEmmanuel Vadot
272c66ec88fSEmmanuel Vadot	vph_pwr: vph-pwr-regulator {
273c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
274c66ec88fSEmmanuel Vadot		regulator-name = "vph_pwr";
275c66ec88fSEmmanuel Vadot
276c66ec88fSEmmanuel Vadot		vin-supply = <&vbat_som>;
277c66ec88fSEmmanuel Vadot	};
278c66ec88fSEmmanuel Vadot};
279c66ec88fSEmmanuel Vadot
280c66ec88fSEmmanuel Vadot&adsp_pas {
281c66ec88fSEmmanuel Vadot	status = "okay";
282c66ec88fSEmmanuel Vadot
2832eb4d8dcSEmmanuel Vadot	firmware-name = "qcom/sdm845/adsp.mbn";
284c66ec88fSEmmanuel Vadot};
285c66ec88fSEmmanuel Vadot
286c66ec88fSEmmanuel Vadot&apps_rsc {
287cb7aa33aSEmmanuel Vadot	regulators-0 {
288c66ec88fSEmmanuel Vadot		compatible = "qcom,pm8998-rpmh-regulators";
289c66ec88fSEmmanuel Vadot		qcom,pmic-id = "a";
290c66ec88fSEmmanuel Vadot		vdd-s1-supply = <&vph_pwr>;
291c66ec88fSEmmanuel Vadot		vdd-s2-supply = <&vph_pwr>;
292c66ec88fSEmmanuel Vadot		vdd-s3-supply = <&vph_pwr>;
293c66ec88fSEmmanuel Vadot		vdd-s4-supply = <&vph_pwr>;
294c66ec88fSEmmanuel Vadot		vdd-s5-supply = <&vph_pwr>;
295c66ec88fSEmmanuel Vadot		vdd-s6-supply = <&vph_pwr>;
296c66ec88fSEmmanuel Vadot		vdd-s7-supply = <&vph_pwr>;
297c66ec88fSEmmanuel Vadot		vdd-s8-supply = <&vph_pwr>;
298c66ec88fSEmmanuel Vadot		vdd-s9-supply = <&vph_pwr>;
299c66ec88fSEmmanuel Vadot		vdd-s10-supply = <&vph_pwr>;
300c66ec88fSEmmanuel Vadot		vdd-s11-supply = <&vph_pwr>;
301c66ec88fSEmmanuel Vadot		vdd-s12-supply = <&vph_pwr>;
302c66ec88fSEmmanuel Vadot		vdd-s13-supply = <&vph_pwr>;
303c66ec88fSEmmanuel Vadot		vdd-l1-l27-supply = <&vreg_s7a_1p025>;
304c66ec88fSEmmanuel Vadot		vdd-l2-l8-l17-supply = <&vreg_s3a_1p35>;
305c66ec88fSEmmanuel Vadot		vdd-l3-l11-supply = <&vreg_s7a_1p025>;
306c66ec88fSEmmanuel Vadot		vdd-l4-l5-supply = <&vreg_s7a_1p025>;
307c66ec88fSEmmanuel Vadot		vdd-l6-supply = <&vph_pwr>;
308c66ec88fSEmmanuel Vadot		vdd-l7-l12-l14-l15-supply = <&vreg_s5a_2p04>;
309c66ec88fSEmmanuel Vadot		vdd-l9-supply = <&vreg_bob>;
310c66ec88fSEmmanuel Vadot		vdd-l10-l23-l25-supply = <&vreg_bob>;
311c66ec88fSEmmanuel Vadot		vdd-l13-l19-l21-supply = <&vreg_bob>;
312c66ec88fSEmmanuel Vadot		vdd-l16-l28-supply = <&vreg_bob>;
313c66ec88fSEmmanuel Vadot		vdd-l18-l22-supply = <&vreg_bob>;
314c66ec88fSEmmanuel Vadot		vdd-l20-l24-supply = <&vreg_bob>;
315c66ec88fSEmmanuel Vadot		vdd-l26-supply = <&vreg_s3a_1p35>;
316c66ec88fSEmmanuel Vadot		vin-lvs-1-2-supply = <&vreg_s4a_1p8>;
317c66ec88fSEmmanuel Vadot
318c66ec88fSEmmanuel Vadot		vreg_s3a_1p35: smps3 {
319c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <1352000>;
320c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <1352000>;
321c66ec88fSEmmanuel Vadot		};
322c66ec88fSEmmanuel Vadot
323c66ec88fSEmmanuel Vadot		vreg_s5a_2p04: smps5 {
324c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <1904000>;
325c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <2040000>;
326c66ec88fSEmmanuel Vadot		};
327c66ec88fSEmmanuel Vadot
328c66ec88fSEmmanuel Vadot		vreg_s7a_1p025: smps7 {
329c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <900000>;
330c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <1028000>;
331c66ec88fSEmmanuel Vadot		};
332c66ec88fSEmmanuel Vadot
333c66ec88fSEmmanuel Vadot		vreg_l1a_0p875: ldo1 {
334c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <880000>;
335c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <880000>;
336c66ec88fSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
337c66ec88fSEmmanuel Vadot		};
338c66ec88fSEmmanuel Vadot
339c66ec88fSEmmanuel Vadot		vreg_l5a_0p8: ldo5 {
340c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <800000>;
341c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <800000>;
342c66ec88fSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
343c66ec88fSEmmanuel Vadot		};
344c66ec88fSEmmanuel Vadot
345c66ec88fSEmmanuel Vadot		vreg_l12a_1p8: ldo12 {
346c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
347c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
348c66ec88fSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
349c66ec88fSEmmanuel Vadot		};
350c66ec88fSEmmanuel Vadot
351c66ec88fSEmmanuel Vadot		vreg_l7a_1p8: ldo7 {
352c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
353c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
354c66ec88fSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
355c66ec88fSEmmanuel Vadot		};
356c66ec88fSEmmanuel Vadot
357c66ec88fSEmmanuel Vadot		vreg_l13a_2p95: ldo13 {
358c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
359c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <2960000>;
360c66ec88fSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
361c66ec88fSEmmanuel Vadot		};
362c66ec88fSEmmanuel Vadot
363c66ec88fSEmmanuel Vadot		vreg_l17a_1p3: ldo17 {
364c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <1304000>;
365c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <1304000>;
366c66ec88fSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
367c66ec88fSEmmanuel Vadot		};
368c66ec88fSEmmanuel Vadot
369c66ec88fSEmmanuel Vadot		vreg_l20a_2p95: ldo20 {
370c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <2960000>;
371c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <2968000>;
372c66ec88fSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
373c66ec88fSEmmanuel Vadot		};
374c66ec88fSEmmanuel Vadot
375c66ec88fSEmmanuel Vadot		vreg_l21a_2p95: ldo21 {
376c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <2960000>;
377c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <2968000>;
378c66ec88fSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
379c66ec88fSEmmanuel Vadot		};
380c66ec88fSEmmanuel Vadot
381c66ec88fSEmmanuel Vadot		vreg_l24a_3p075: ldo24 {
382c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <3088000>;
383c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <3088000>;
384c66ec88fSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
385c66ec88fSEmmanuel Vadot		};
386c66ec88fSEmmanuel Vadot
387c66ec88fSEmmanuel Vadot		vreg_l25a_3p3: ldo25 {
388c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <3300000>;
389c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <3312000>;
390c66ec88fSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
391c66ec88fSEmmanuel Vadot		};
392c66ec88fSEmmanuel Vadot
393c66ec88fSEmmanuel Vadot		vreg_l26a_1p2: ldo26 {
394c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <1200000>;
395c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <1200000>;
396c66ec88fSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
397c66ec88fSEmmanuel Vadot		};
398c66ec88fSEmmanuel Vadot
399c66ec88fSEmmanuel Vadot		vreg_lvs1a_1p8: lvs1 {
400c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
401c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
402c66ec88fSEmmanuel Vadot			regulator-always-on;
403c66ec88fSEmmanuel Vadot		};
404c66ec88fSEmmanuel Vadot
405c66ec88fSEmmanuel Vadot		vreg_lvs2a_1p8: lvs2 {
406c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
407c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
408c66ec88fSEmmanuel Vadot			regulator-always-on;
409c66ec88fSEmmanuel Vadot		};
410c66ec88fSEmmanuel Vadot	};
411c66ec88fSEmmanuel Vadot
412cb7aa33aSEmmanuel Vadot	regulators-1 {
413c66ec88fSEmmanuel Vadot		compatible = "qcom,pmi8998-rpmh-regulators";
414c66ec88fSEmmanuel Vadot		qcom,pmic-id = "b";
415c66ec88fSEmmanuel Vadot
416c66ec88fSEmmanuel Vadot		vdd-bob-supply = <&vph_pwr>;
417c66ec88fSEmmanuel Vadot
418c66ec88fSEmmanuel Vadot		vreg_bob: bob {
419c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <3312000>;
420c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <3600000>;
421c66ec88fSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
422c66ec88fSEmmanuel Vadot			regulator-allow-bypass;
423c66ec88fSEmmanuel Vadot		};
424c66ec88fSEmmanuel Vadot	};
425c66ec88fSEmmanuel Vadot};
426c66ec88fSEmmanuel Vadot
427aa1a8ff2SEmmanuel Vadot&camss {
428aa1a8ff2SEmmanuel Vadot	status = "okay";
429aa1a8ff2SEmmanuel Vadot
430aa1a8ff2SEmmanuel Vadot	vdda-phy-supply = <&vreg_l1a_0p875>;
431aa1a8ff2SEmmanuel Vadot	vdda-pll-supply = <&vreg_l26a_1p2>;
432aa1a8ff2SEmmanuel Vadot};
433aa1a8ff2SEmmanuel Vadot
434c66ec88fSEmmanuel Vadot&cdsp_pas {
435c66ec88fSEmmanuel Vadot	status = "okay";
4362eb4d8dcSEmmanuel Vadot	firmware-name = "qcom/sdm845/cdsp.mbn";
437c66ec88fSEmmanuel Vadot};
438c66ec88fSEmmanuel Vadot
439c66ec88fSEmmanuel Vadot&gcc {
440c66ec88fSEmmanuel Vadot	protected-clocks = <GCC_QSPI_CORE_CLK>,
441c66ec88fSEmmanuel Vadot			   <GCC_QSPI_CORE_CLK_SRC>,
4425def4c47SEmmanuel Vadot			   <GCC_QSPI_CNOC_PERIPH_AHB_CLK>,
4435def4c47SEmmanuel Vadot			   <GCC_LPASS_Q6_AXI_CLK>,
4445def4c47SEmmanuel Vadot			   <GCC_LPASS_SWAY_CLK>;
445c66ec88fSEmmanuel Vadot};
446c66ec88fSEmmanuel Vadot
4478cc087a1SEmmanuel Vadot&gmu {
4488cc087a1SEmmanuel Vadot	status = "okay";
4498cc087a1SEmmanuel Vadot};
4508cc087a1SEmmanuel Vadot
451c9ccf3a3SEmmanuel Vadot&gpi_dma0 {
452c9ccf3a3SEmmanuel Vadot	status = "okay";
453c9ccf3a3SEmmanuel Vadot};
454c9ccf3a3SEmmanuel Vadot
455b97ee269SEmmanuel Vadot&gpi_dma1 {
456b97ee269SEmmanuel Vadot	status = "okay";
457b97ee269SEmmanuel Vadot};
458b97ee269SEmmanuel Vadot
459c66ec88fSEmmanuel Vadot&gpu {
4608cc087a1SEmmanuel Vadot	status = "okay";
461c66ec88fSEmmanuel Vadot	zap-shader {
462c66ec88fSEmmanuel Vadot		memory-region = <&gpu_mem>;
463c66ec88fSEmmanuel Vadot		firmware-name = "qcom/sdm845/a630_zap.mbn";
464c66ec88fSEmmanuel Vadot	};
465c66ec88fSEmmanuel Vadot};
466c66ec88fSEmmanuel Vadot
467c66ec88fSEmmanuel Vadot&i2c10 {
468c66ec88fSEmmanuel Vadot	status = "okay";
469c66ec88fSEmmanuel Vadot	clock-frequency = <400000>;
470c66ec88fSEmmanuel Vadot
471c66ec88fSEmmanuel Vadot	lt9611_codec: hdmi-bridge@3b {
472c66ec88fSEmmanuel Vadot		compatible = "lontium,lt9611";
473c66ec88fSEmmanuel Vadot		reg = <0x3b>;
474c66ec88fSEmmanuel Vadot		#sound-dai-cells = <1>;
475c66ec88fSEmmanuel Vadot
476c66ec88fSEmmanuel Vadot		interrupts-extended = <&tlmm 84 IRQ_TYPE_EDGE_FALLING>;
477c66ec88fSEmmanuel Vadot
478c66ec88fSEmmanuel Vadot		reset-gpios = <&tlmm 128 GPIO_ACTIVE_HIGH>;
479c66ec88fSEmmanuel Vadot
480c66ec88fSEmmanuel Vadot		vdd-supply = <&lt9611_1v8>;
481c66ec88fSEmmanuel Vadot		vcc-supply = <&lt9611_3v3>;
482c66ec88fSEmmanuel Vadot
483c66ec88fSEmmanuel Vadot		pinctrl-names = "default";
484c66ec88fSEmmanuel Vadot		pinctrl-0 = <&lt9611_irq_pin>, <&dsi_sw_sel>;
485c66ec88fSEmmanuel Vadot
486c66ec88fSEmmanuel Vadot		ports {
487c66ec88fSEmmanuel Vadot			#address-cells = <1>;
488c66ec88fSEmmanuel Vadot			#size-cells = <0>;
489c66ec88fSEmmanuel Vadot
490c66ec88fSEmmanuel Vadot			port@0 {
491c66ec88fSEmmanuel Vadot				reg = <0>;
492c66ec88fSEmmanuel Vadot
493c66ec88fSEmmanuel Vadot				lt9611_a: endpoint {
494f126890aSEmmanuel Vadot					remote-endpoint = <&mdss_dsi0_out>;
495f126890aSEmmanuel Vadot				};
496f126890aSEmmanuel Vadot			};
497f126890aSEmmanuel Vadot
498f126890aSEmmanuel Vadot			port@1 {
499f126890aSEmmanuel Vadot				reg = <1>;
500f126890aSEmmanuel Vadot
501f126890aSEmmanuel Vadot				lt9611_b: endpoint {
502f126890aSEmmanuel Vadot					remote-endpoint = <&mdss_dsi1_out>;
503c66ec88fSEmmanuel Vadot				};
504c66ec88fSEmmanuel Vadot			};
5056be33864SEmmanuel Vadot
5066be33864SEmmanuel Vadot			port@2 {
5076be33864SEmmanuel Vadot				reg = <2>;
5086be33864SEmmanuel Vadot
5096be33864SEmmanuel Vadot				lt9611_out: endpoint {
5106be33864SEmmanuel Vadot					remote-endpoint = <&hdmi_con>;
5116be33864SEmmanuel Vadot				};
5126be33864SEmmanuel Vadot			};
513c66ec88fSEmmanuel Vadot		};
514c66ec88fSEmmanuel Vadot	};
515c66ec88fSEmmanuel Vadot};
516c66ec88fSEmmanuel Vadot
517c66ec88fSEmmanuel Vadot&i2c11 {
518c66ec88fSEmmanuel Vadot	/* On Low speed expansion */
519b97ee269SEmmanuel Vadot	clock-frequency = <100000>;
520c66ec88fSEmmanuel Vadot	status = "okay";
521c66ec88fSEmmanuel Vadot};
522c66ec88fSEmmanuel Vadot
523c66ec88fSEmmanuel Vadot&i2c14 {
524c66ec88fSEmmanuel Vadot	/* On Low speed expansion */
525b97ee269SEmmanuel Vadot	clock-frequency = <100000>;
526c66ec88fSEmmanuel Vadot	status = "okay";
527c66ec88fSEmmanuel Vadot};
528c66ec88fSEmmanuel Vadot
529c66ec88fSEmmanuel Vadot&mdss {
530aa1a8ff2SEmmanuel Vadot	memory-region = <&cont_splash_mem>;
531c66ec88fSEmmanuel Vadot	status = "okay";
532c66ec88fSEmmanuel Vadot};
533c66ec88fSEmmanuel Vadot
534f126890aSEmmanuel Vadot&mdss_dsi0 {
535f126890aSEmmanuel Vadot	status = "okay";
536f126890aSEmmanuel Vadot	vdda-supply = <&vreg_l26a_1p2>;
537f126890aSEmmanuel Vadot
538f126890aSEmmanuel Vadot	qcom,dual-dsi-mode;
539f126890aSEmmanuel Vadot	qcom,master-dsi;
540f126890aSEmmanuel Vadot
541f126890aSEmmanuel Vadot	ports {
542f126890aSEmmanuel Vadot		port@1 {
543f126890aSEmmanuel Vadot			endpoint {
544f126890aSEmmanuel Vadot				remote-endpoint = <&lt9611_a>;
545f126890aSEmmanuel Vadot				data-lanes = <0 1 2 3>;
546f126890aSEmmanuel Vadot			};
547f126890aSEmmanuel Vadot		};
548f126890aSEmmanuel Vadot	};
549f126890aSEmmanuel Vadot};
550f126890aSEmmanuel Vadot
551f126890aSEmmanuel Vadot&mdss_dsi0_phy {
552f126890aSEmmanuel Vadot	status = "okay";
553f126890aSEmmanuel Vadot	vdds-supply = <&vreg_l1a_0p875>;
554f126890aSEmmanuel Vadot};
555f126890aSEmmanuel Vadot
556f126890aSEmmanuel Vadot&mdss_dsi1 {
557f126890aSEmmanuel Vadot	vdda-supply = <&vreg_l26a_1p2>;
558f126890aSEmmanuel Vadot
559f126890aSEmmanuel Vadot	qcom,dual-dsi-mode;
560f126890aSEmmanuel Vadot
561f126890aSEmmanuel Vadot	/* DSI1 is slave, so use DSI0 clocks */
562f126890aSEmmanuel Vadot	assigned-clock-parents = <&mdss_dsi0_phy 0>, <&mdss_dsi0_phy 1>;
563f126890aSEmmanuel Vadot
564f126890aSEmmanuel Vadot	status = "okay";
565f126890aSEmmanuel Vadot
566f126890aSEmmanuel Vadot	ports {
567f126890aSEmmanuel Vadot		port@1 {
568f126890aSEmmanuel Vadot			endpoint {
569f126890aSEmmanuel Vadot				remote-endpoint = <&lt9611_b>;
570f126890aSEmmanuel Vadot				data-lanes = <0 1 2 3>;
571f126890aSEmmanuel Vadot			};
572f126890aSEmmanuel Vadot		};
573f126890aSEmmanuel Vadot	};
574f126890aSEmmanuel Vadot};
575f126890aSEmmanuel Vadot
576f126890aSEmmanuel Vadot&mdss_dsi1_phy {
577f126890aSEmmanuel Vadot	vdds-supply = <&vreg_l1a_0p875>;
578f126890aSEmmanuel Vadot	status = "okay";
579f126890aSEmmanuel Vadot};
580f126890aSEmmanuel Vadot
581c66ec88fSEmmanuel Vadot&mss_pil {
582c66ec88fSEmmanuel Vadot	status = "okay";
583c66ec88fSEmmanuel Vadot	firmware-name = "qcom/sdm845/mba.mbn", "qcom/sdm845/modem.mbn";
584c66ec88fSEmmanuel Vadot};
585c66ec88fSEmmanuel Vadot
586c66ec88fSEmmanuel Vadot&pcie0 {
587c66ec88fSEmmanuel Vadot	status = "okay";
5887ef62cebSEmmanuel Vadot	perst-gpios = <&tlmm 35 GPIO_ACTIVE_LOW>;
58901950c46SEmmanuel Vadot	wake-gpios = <&tlmm 134 GPIO_ACTIVE_HIGH>;
590c66ec88fSEmmanuel Vadot
591c66ec88fSEmmanuel Vadot	vddpe-3v3-supply = <&pcie0_3p3v_dual>;
592c66ec88fSEmmanuel Vadot
593c66ec88fSEmmanuel Vadot	pinctrl-names = "default";
594c66ec88fSEmmanuel Vadot	pinctrl-0 = <&pcie0_default_state>;
595c66ec88fSEmmanuel Vadot};
596c66ec88fSEmmanuel Vadot
597c66ec88fSEmmanuel Vadot&pcie0_phy {
598c66ec88fSEmmanuel Vadot	status = "okay";
599c66ec88fSEmmanuel Vadot
600c66ec88fSEmmanuel Vadot	vdda-phy-supply = <&vreg_l1a_0p875>;
601c66ec88fSEmmanuel Vadot	vdda-pll-supply = <&vreg_l26a_1p2>;
602c66ec88fSEmmanuel Vadot};
603c66ec88fSEmmanuel Vadot
604c66ec88fSEmmanuel Vadot&pcie1 {
605c66ec88fSEmmanuel Vadot	status = "okay";
6067ef62cebSEmmanuel Vadot	perst-gpios = <&tlmm 102 GPIO_ACTIVE_LOW>;
607c66ec88fSEmmanuel Vadot
608c66ec88fSEmmanuel Vadot	pinctrl-names = "default";
609c66ec88fSEmmanuel Vadot	pinctrl-0 = <&pcie1_default_state>;
610c66ec88fSEmmanuel Vadot};
611c66ec88fSEmmanuel Vadot
612c66ec88fSEmmanuel Vadot&pcie1_phy {
613c66ec88fSEmmanuel Vadot	status = "okay";
614c66ec88fSEmmanuel Vadot
615c66ec88fSEmmanuel Vadot	vdda-phy-supply = <&vreg_l1a_0p875>;
616c66ec88fSEmmanuel Vadot	vdda-pll-supply = <&vreg_l26a_1p2>;
617c66ec88fSEmmanuel Vadot};
618c66ec88fSEmmanuel Vadot
619cb7aa33aSEmmanuel Vadot&pm8998_gpios {
620c66ec88fSEmmanuel Vadot	gpio-line-names =
621c66ec88fSEmmanuel Vadot		"NC",
622c66ec88fSEmmanuel Vadot		"NC",
623c66ec88fSEmmanuel Vadot		"WLAN_SW_CTRL",
624c66ec88fSEmmanuel Vadot		"NC",
625c66ec88fSEmmanuel Vadot		"PM_GPIO5_BLUE_BT_LED",
626c66ec88fSEmmanuel Vadot		"VOL_UP_N",
627c66ec88fSEmmanuel Vadot		"NC",
628c66ec88fSEmmanuel Vadot		"ADC_IN1",
629c66ec88fSEmmanuel Vadot		"PM_GPIO9_YEL_WIFI_LED",
630c66ec88fSEmmanuel Vadot		"CAM0_AVDD_EN",
631c66ec88fSEmmanuel Vadot		"NC",
632c66ec88fSEmmanuel Vadot		"CAM0_DVDD_EN",
633c66ec88fSEmmanuel Vadot		"PM_GPIO13_GREEN_U4_LED",
634c66ec88fSEmmanuel Vadot		"DIV_CLK2",
635c66ec88fSEmmanuel Vadot		"NC",
636c66ec88fSEmmanuel Vadot		"NC",
637c66ec88fSEmmanuel Vadot		"NC",
638c66ec88fSEmmanuel Vadot		"SMB_STAT",
639c66ec88fSEmmanuel Vadot		"NC",
640c66ec88fSEmmanuel Vadot		"NC",
641c66ec88fSEmmanuel Vadot		"ADC_IN2",
642c66ec88fSEmmanuel Vadot		"OPTION1",
643c66ec88fSEmmanuel Vadot		"WCSS_PWR_REQ",
644c66ec88fSEmmanuel Vadot		"PM845_GPIO24",
645c66ec88fSEmmanuel Vadot		"OPTION2",
646c66ec88fSEmmanuel Vadot		"PM845_SLB";
647c66ec88fSEmmanuel Vadot
648b97ee269SEmmanuel Vadot	cam0_dvdd_1v2_en_default: cam0-dvdd-1v2-en-state {
649c66ec88fSEmmanuel Vadot		pins = "gpio12";
650c66ec88fSEmmanuel Vadot		function = "normal";
651c66ec88fSEmmanuel Vadot
652c66ec88fSEmmanuel Vadot		bias-pull-up;
653c66ec88fSEmmanuel Vadot		drive-push-pull;
654c66ec88fSEmmanuel Vadot		qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>;
655c66ec88fSEmmanuel Vadot	};
656c66ec88fSEmmanuel Vadot
657b97ee269SEmmanuel Vadot	cam0_avdd_2v8_en_default: cam0-avdd-2v8-en-state {
658c66ec88fSEmmanuel Vadot		pins = "gpio10";
659c66ec88fSEmmanuel Vadot		function = "normal";
660c66ec88fSEmmanuel Vadot
661c66ec88fSEmmanuel Vadot		bias-pull-up;
662c66ec88fSEmmanuel Vadot		drive-push-pull;
663c66ec88fSEmmanuel Vadot		qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>;
664c66ec88fSEmmanuel Vadot	};
665c66ec88fSEmmanuel Vadot
666b97ee269SEmmanuel Vadot	vol_up_pin_a: vol-up-active-state {
667c66ec88fSEmmanuel Vadot		pins = "gpio6";
668c66ec88fSEmmanuel Vadot		function = "normal";
669c66ec88fSEmmanuel Vadot		input-enable;
670c66ec88fSEmmanuel Vadot		bias-pull-up;
671c66ec88fSEmmanuel Vadot		qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
672c66ec88fSEmmanuel Vadot	};
673c66ec88fSEmmanuel Vadot};
674c66ec88fSEmmanuel Vadot
675cb7aa33aSEmmanuel Vadot&pm8998_resin {
676c66ec88fSEmmanuel Vadot	linux,code = <KEY_VOLUMEDOWN>;
677cb7aa33aSEmmanuel Vadot	status = "okay";
678c66ec88fSEmmanuel Vadot};
679c66ec88fSEmmanuel Vadot
680b97ee269SEmmanuel Vadot&pmi8998_lpg {
681b97ee269SEmmanuel Vadot	status = "okay";
682b97ee269SEmmanuel Vadot
683b97ee269SEmmanuel Vadot	qcom,power-source = <1>;
684b97ee269SEmmanuel Vadot
685b97ee269SEmmanuel Vadot	led@3 {
686b97ee269SEmmanuel Vadot		reg = <3>;
687b97ee269SEmmanuel Vadot		color = <LED_COLOR_ID_GREEN>;
688b97ee269SEmmanuel Vadot		function = LED_FUNCTION_HEARTBEAT;
689b97ee269SEmmanuel Vadot		function-enumerator = <3>;
690b97ee269SEmmanuel Vadot
691b97ee269SEmmanuel Vadot		linux,default-trigger = "heartbeat";
692b97ee269SEmmanuel Vadot		default-state = "on";
693b97ee269SEmmanuel Vadot	};
694b97ee269SEmmanuel Vadot
695b97ee269SEmmanuel Vadot	led@4 {
696b97ee269SEmmanuel Vadot		reg = <4>;
697b97ee269SEmmanuel Vadot		color = <LED_COLOR_ID_GREEN>;
698b97ee269SEmmanuel Vadot		function = LED_FUNCTION_INDICATOR;
699b97ee269SEmmanuel Vadot		function-enumerator = <2>;
700b97ee269SEmmanuel Vadot	};
701b97ee269SEmmanuel Vadot
702b97ee269SEmmanuel Vadot	led@5 {
703b97ee269SEmmanuel Vadot		reg = <5>;
704b97ee269SEmmanuel Vadot		color = <LED_COLOR_ID_GREEN>;
705b97ee269SEmmanuel Vadot		function = LED_FUNCTION_INDICATOR;
706b97ee269SEmmanuel Vadot		function-enumerator = <1>;
707b97ee269SEmmanuel Vadot	};
708b97ee269SEmmanuel Vadot};
709b97ee269SEmmanuel Vadot
710c66ec88fSEmmanuel Vadot/* QUAT I2S Uses 4 I2S SD Lines for audio on LT9611 HDMI Bridge */
711c66ec88fSEmmanuel Vadot&q6afedai {
7128bab661aSEmmanuel Vadot	dai@22 {
713b97ee269SEmmanuel Vadot		reg = <QUATERNARY_MI2S_RX>;
714c66ec88fSEmmanuel Vadot		qcom,sd-lines = <0 1 2 3>;
715c66ec88fSEmmanuel Vadot	};
716c66ec88fSEmmanuel Vadot};
717c66ec88fSEmmanuel Vadot
718c66ec88fSEmmanuel Vadot&q6asmdai {
719c66ec88fSEmmanuel Vadot	dai@0 {
720c66ec88fSEmmanuel Vadot		reg = <0>;
721c66ec88fSEmmanuel Vadot	};
722c66ec88fSEmmanuel Vadot
723c66ec88fSEmmanuel Vadot	dai@1 {
724c66ec88fSEmmanuel Vadot		reg = <1>;
725c66ec88fSEmmanuel Vadot	};
726c66ec88fSEmmanuel Vadot
727c66ec88fSEmmanuel Vadot	dai@2 {
728c66ec88fSEmmanuel Vadot		reg = <2>;
729c66ec88fSEmmanuel Vadot	};
730c66ec88fSEmmanuel Vadot
731c66ec88fSEmmanuel Vadot	dai@3 {
732c66ec88fSEmmanuel Vadot		reg = <3>;
733c66ec88fSEmmanuel Vadot		direction = <2>;
734c66ec88fSEmmanuel Vadot		is-compress-dai;
735c66ec88fSEmmanuel Vadot	};
736c66ec88fSEmmanuel Vadot};
737c66ec88fSEmmanuel Vadot
738c66ec88fSEmmanuel Vadot&qupv3_id_0 {
739c66ec88fSEmmanuel Vadot	status = "okay";
740c66ec88fSEmmanuel Vadot};
741c66ec88fSEmmanuel Vadot
742c66ec88fSEmmanuel Vadot&qupv3_id_1 {
743c66ec88fSEmmanuel Vadot	status = "okay";
744c66ec88fSEmmanuel Vadot};
745c66ec88fSEmmanuel Vadot
746c66ec88fSEmmanuel Vadot&sdhc_2 {
747c66ec88fSEmmanuel Vadot	status = "okay";
748c66ec88fSEmmanuel Vadot
749c66ec88fSEmmanuel Vadot	pinctrl-names = "default";
750c66ec88fSEmmanuel Vadot	pinctrl-0 = <&sdc2_default_state &sdc2_card_det_n>;
751c66ec88fSEmmanuel Vadot
752c66ec88fSEmmanuel Vadot	vmmc-supply = <&vreg_l21a_2p95>;
753c66ec88fSEmmanuel Vadot	vqmmc-supply = <&vreg_l13a_2p95>;
754c66ec88fSEmmanuel Vadot
755c66ec88fSEmmanuel Vadot	bus-width = <4>;
756c66ec88fSEmmanuel Vadot	cd-gpios = <&tlmm 126 GPIO_ACTIVE_LOW>;
757c66ec88fSEmmanuel Vadot};
758c66ec88fSEmmanuel Vadot
759c66ec88fSEmmanuel Vadot&sound {
760cb7aa33aSEmmanuel Vadot	compatible = "qcom,db845c-sndcard", "qcom,sdm845-sndcard";
761c66ec88fSEmmanuel Vadot	pinctrl-0 = <&quat_mi2s_active
762c66ec88fSEmmanuel Vadot			 &quat_mi2s_sd0_active
763c66ec88fSEmmanuel Vadot			 &quat_mi2s_sd1_active
764c66ec88fSEmmanuel Vadot			 &quat_mi2s_sd2_active
765c66ec88fSEmmanuel Vadot			 &quat_mi2s_sd3_active>;
766c66ec88fSEmmanuel Vadot	pinctrl-names = "default";
767c66ec88fSEmmanuel Vadot	model = "DB845c";
768c66ec88fSEmmanuel Vadot	audio-routing =
769c66ec88fSEmmanuel Vadot		"RX_BIAS", "MCLK",
770c66ec88fSEmmanuel Vadot		"AMIC1", "MIC BIAS1",
771c66ec88fSEmmanuel Vadot		"AMIC2", "MIC BIAS2",
772c66ec88fSEmmanuel Vadot		"DMIC0", "MIC BIAS1",
773c66ec88fSEmmanuel Vadot		"DMIC1", "MIC BIAS1",
774c66ec88fSEmmanuel Vadot		"DMIC2", "MIC BIAS3",
775c66ec88fSEmmanuel Vadot		"DMIC3", "MIC BIAS3",
776c66ec88fSEmmanuel Vadot		"SpkrLeft IN", "SPK1 OUT",
777c66ec88fSEmmanuel Vadot		"SpkrRight IN", "SPK2 OUT",
778c66ec88fSEmmanuel Vadot		"MM_DL1",  "MultiMedia1 Playback",
779c66ec88fSEmmanuel Vadot		"MM_DL2",  "MultiMedia2 Playback",
780c66ec88fSEmmanuel Vadot		"MM_DL4",  "MultiMedia4 Playback",
781c66ec88fSEmmanuel Vadot		"MultiMedia3 Capture", "MM_UL3";
782c66ec88fSEmmanuel Vadot
783c66ec88fSEmmanuel Vadot	mm1-dai-link {
784c66ec88fSEmmanuel Vadot		link-name = "MultiMedia1";
785c66ec88fSEmmanuel Vadot		cpu {
786c66ec88fSEmmanuel Vadot			sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA1>;
787c66ec88fSEmmanuel Vadot		};
788c66ec88fSEmmanuel Vadot	};
789c66ec88fSEmmanuel Vadot
790c66ec88fSEmmanuel Vadot	mm2-dai-link {
791c66ec88fSEmmanuel Vadot		link-name = "MultiMedia2";
792c66ec88fSEmmanuel Vadot		cpu {
793c66ec88fSEmmanuel Vadot			sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA2>;
794c66ec88fSEmmanuel Vadot		};
795c66ec88fSEmmanuel Vadot	};
796c66ec88fSEmmanuel Vadot
797c66ec88fSEmmanuel Vadot	mm3-dai-link {
798c66ec88fSEmmanuel Vadot		link-name = "MultiMedia3";
799c66ec88fSEmmanuel Vadot		cpu {
800c66ec88fSEmmanuel Vadot			sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA3>;
801c66ec88fSEmmanuel Vadot		};
802c66ec88fSEmmanuel Vadot	};
803c66ec88fSEmmanuel Vadot
804c66ec88fSEmmanuel Vadot	mm4-dai-link {
805c66ec88fSEmmanuel Vadot		link-name = "MultiMedia4";
806c66ec88fSEmmanuel Vadot		cpu {
807c66ec88fSEmmanuel Vadot			sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA4>;
808c66ec88fSEmmanuel Vadot		};
809c66ec88fSEmmanuel Vadot	};
810c66ec88fSEmmanuel Vadot
811c66ec88fSEmmanuel Vadot	hdmi-dai-link {
812c66ec88fSEmmanuel Vadot		link-name = "HDMI Playback";
813c66ec88fSEmmanuel Vadot		cpu {
814c66ec88fSEmmanuel Vadot			sound-dai = <&q6afedai QUATERNARY_MI2S_RX>;
815c66ec88fSEmmanuel Vadot		};
816c66ec88fSEmmanuel Vadot
817c66ec88fSEmmanuel Vadot		platform {
818c66ec88fSEmmanuel Vadot			sound-dai = <&q6routing>;
819c66ec88fSEmmanuel Vadot		};
820c66ec88fSEmmanuel Vadot
821c66ec88fSEmmanuel Vadot		codec {
822c66ec88fSEmmanuel Vadot			sound-dai = <&lt9611_codec 0>;
823c66ec88fSEmmanuel Vadot		};
824c66ec88fSEmmanuel Vadot	};
825c66ec88fSEmmanuel Vadot
826c66ec88fSEmmanuel Vadot	slim-dai-link {
827c66ec88fSEmmanuel Vadot		link-name = "SLIM Playback";
828c66ec88fSEmmanuel Vadot		cpu {
829c66ec88fSEmmanuel Vadot			sound-dai = <&q6afedai SLIMBUS_0_RX>;
830c66ec88fSEmmanuel Vadot		};
831c66ec88fSEmmanuel Vadot
832c66ec88fSEmmanuel Vadot		platform {
833c66ec88fSEmmanuel Vadot			sound-dai = <&q6routing>;
834c66ec88fSEmmanuel Vadot		};
835c66ec88fSEmmanuel Vadot
836c66ec88fSEmmanuel Vadot		codec {
837c66ec88fSEmmanuel Vadot			sound-dai = <&left_spkr>, <&right_spkr>, <&swm 0>, <&wcd9340 0>;
838c66ec88fSEmmanuel Vadot		};
839c66ec88fSEmmanuel Vadot	};
840c66ec88fSEmmanuel Vadot
841c66ec88fSEmmanuel Vadot	slimcap-dai-link {
842c66ec88fSEmmanuel Vadot		link-name = "SLIM Capture";
843c66ec88fSEmmanuel Vadot		cpu {
844c66ec88fSEmmanuel Vadot			sound-dai = <&q6afedai SLIMBUS_0_TX>;
845c66ec88fSEmmanuel Vadot		};
846c66ec88fSEmmanuel Vadot
847c66ec88fSEmmanuel Vadot		platform {
848c66ec88fSEmmanuel Vadot			sound-dai = <&q6routing>;
849c66ec88fSEmmanuel Vadot		};
850c66ec88fSEmmanuel Vadot
851c66ec88fSEmmanuel Vadot		codec {
852c66ec88fSEmmanuel Vadot			sound-dai = <&wcd9340 1>;
853c66ec88fSEmmanuel Vadot		};
854c66ec88fSEmmanuel Vadot	};
855c66ec88fSEmmanuel Vadot};
856c66ec88fSEmmanuel Vadot
857d5b0e70fSEmmanuel Vadot&spi0 {
858d5b0e70fSEmmanuel Vadot	status = "okay";
859d5b0e70fSEmmanuel Vadot	pinctrl-names = "default";
860d5b0e70fSEmmanuel Vadot	pinctrl-0 = <&qup_spi0_default>;
861d5b0e70fSEmmanuel Vadot	cs-gpios = <&tlmm 3 GPIO_ACTIVE_LOW>;
862d5b0e70fSEmmanuel Vadot
863d5b0e70fSEmmanuel Vadot	can@0 {
864d5b0e70fSEmmanuel Vadot		compatible = "microchip,mcp2517fd";
865d5b0e70fSEmmanuel Vadot		reg = <0>;
866d5b0e70fSEmmanuel Vadot		clocks = <&clk40M>;
867d5b0e70fSEmmanuel Vadot		interrupts-extended = <&tlmm 104 IRQ_TYPE_LEVEL_LOW>;
868d5b0e70fSEmmanuel Vadot		spi-max-frequency = <10000000>;
869d5b0e70fSEmmanuel Vadot		vdd-supply = <&vdc_5v>;
870d5b0e70fSEmmanuel Vadot		xceiver-supply = <&vdc_5v>;
871d5b0e70fSEmmanuel Vadot	};
872d5b0e70fSEmmanuel Vadot};
873d5b0e70fSEmmanuel Vadot
874c66ec88fSEmmanuel Vadot&spi2 {
875c66ec88fSEmmanuel Vadot	/* On Low speed expansion */
876c66ec88fSEmmanuel Vadot	status = "okay";
877c66ec88fSEmmanuel Vadot};
878c66ec88fSEmmanuel Vadot
879c66ec88fSEmmanuel Vadot&tlmm {
880cb7aa33aSEmmanuel Vadot	cam0_default: cam0-default-state {
881cb7aa33aSEmmanuel Vadot		rst-pins {
882c66ec88fSEmmanuel Vadot			pins = "gpio9";
883c66ec88fSEmmanuel Vadot			function = "gpio";
884c66ec88fSEmmanuel Vadot
885c66ec88fSEmmanuel Vadot			drive-strength = <16>;
886c66ec88fSEmmanuel Vadot			bias-disable;
887c66ec88fSEmmanuel Vadot		};
888c66ec88fSEmmanuel Vadot
889cb7aa33aSEmmanuel Vadot		mclk0-pins {
890c66ec88fSEmmanuel Vadot			pins = "gpio13";
891c66ec88fSEmmanuel Vadot			function = "cam_mclk";
892c66ec88fSEmmanuel Vadot
893c66ec88fSEmmanuel Vadot			drive-strength = <16>;
894c66ec88fSEmmanuel Vadot			bias-disable;
895c66ec88fSEmmanuel Vadot		};
896c66ec88fSEmmanuel Vadot	};
897c66ec88fSEmmanuel Vadot
898cb7aa33aSEmmanuel Vadot	cam3_default: cam3-default-state {
899cb7aa33aSEmmanuel Vadot		rst-pins {
900c66ec88fSEmmanuel Vadot			function = "gpio";
901c66ec88fSEmmanuel Vadot			pins = "gpio21";
902c66ec88fSEmmanuel Vadot
903c66ec88fSEmmanuel Vadot			drive-strength = <16>;
904c66ec88fSEmmanuel Vadot			bias-disable;
905c66ec88fSEmmanuel Vadot		};
906c66ec88fSEmmanuel Vadot
907cb7aa33aSEmmanuel Vadot		mclk3-pins {
908c66ec88fSEmmanuel Vadot			function = "cam_mclk";
909c66ec88fSEmmanuel Vadot			pins = "gpio16";
910c66ec88fSEmmanuel Vadot
911c66ec88fSEmmanuel Vadot			drive-strength = <16>;
912c66ec88fSEmmanuel Vadot			bias-disable;
913c66ec88fSEmmanuel Vadot		};
914c66ec88fSEmmanuel Vadot	};
915c66ec88fSEmmanuel Vadot
916cb7aa33aSEmmanuel Vadot	dsi_sw_sel: dsi-sw-sel-state {
917c66ec88fSEmmanuel Vadot		pins = "gpio120";
918c66ec88fSEmmanuel Vadot		function = "gpio";
919c66ec88fSEmmanuel Vadot
920c66ec88fSEmmanuel Vadot		drive-strength = <2>;
921c66ec88fSEmmanuel Vadot		bias-disable;
922c66ec88fSEmmanuel Vadot		output-high;
923c66ec88fSEmmanuel Vadot	};
924c66ec88fSEmmanuel Vadot
925cb7aa33aSEmmanuel Vadot	lt9611_irq_pin: lt9611-irq-state {
926c66ec88fSEmmanuel Vadot		pins = "gpio84";
927c66ec88fSEmmanuel Vadot		function = "gpio";
928c66ec88fSEmmanuel Vadot		bias-disable;
929c66ec88fSEmmanuel Vadot	};
930c66ec88fSEmmanuel Vadot
931cb7aa33aSEmmanuel Vadot	pcie0_default_state: pcie0-default-state {
932cb7aa33aSEmmanuel Vadot		clkreq-pins {
933c66ec88fSEmmanuel Vadot			pins = "gpio36";
934c66ec88fSEmmanuel Vadot			function = "pci_e0";
935c66ec88fSEmmanuel Vadot			bias-pull-up;
936c66ec88fSEmmanuel Vadot		};
937c66ec88fSEmmanuel Vadot
938cb7aa33aSEmmanuel Vadot		reset-n-pins {
939c66ec88fSEmmanuel Vadot			pins = "gpio35";
940c66ec88fSEmmanuel Vadot			function = "gpio";
941c66ec88fSEmmanuel Vadot
942c66ec88fSEmmanuel Vadot			drive-strength = <2>;
943c66ec88fSEmmanuel Vadot			output-low;
944c66ec88fSEmmanuel Vadot			bias-pull-down;
945c66ec88fSEmmanuel Vadot		};
946c66ec88fSEmmanuel Vadot
947cb7aa33aSEmmanuel Vadot		wake-n-pins {
948c66ec88fSEmmanuel Vadot			pins = "gpio37";
949c66ec88fSEmmanuel Vadot			function = "gpio";
950c66ec88fSEmmanuel Vadot
951c66ec88fSEmmanuel Vadot			drive-strength = <2>;
952c66ec88fSEmmanuel Vadot			bias-pull-up;
953c66ec88fSEmmanuel Vadot		};
954c66ec88fSEmmanuel Vadot	};
955c66ec88fSEmmanuel Vadot
956cb7aa33aSEmmanuel Vadot	pcie0_pwren_state: pcie0-pwren-state {
957c66ec88fSEmmanuel Vadot		pins = "gpio90";
958c66ec88fSEmmanuel Vadot		function = "gpio";
959c66ec88fSEmmanuel Vadot
960c66ec88fSEmmanuel Vadot		drive-strength = <2>;
961c66ec88fSEmmanuel Vadot		bias-disable;
962c66ec88fSEmmanuel Vadot	};
963c66ec88fSEmmanuel Vadot
964cb7aa33aSEmmanuel Vadot	pcie1_default_state: pcie1-default-state {
965cb7aa33aSEmmanuel Vadot		perst-n-pins {
966c66ec88fSEmmanuel Vadot			pins = "gpio102";
967c66ec88fSEmmanuel Vadot			function = "gpio";
968c66ec88fSEmmanuel Vadot
969c66ec88fSEmmanuel Vadot			drive-strength = <16>;
970c66ec88fSEmmanuel Vadot			bias-disable;
971c66ec88fSEmmanuel Vadot		};
972c66ec88fSEmmanuel Vadot
973cb7aa33aSEmmanuel Vadot		clkreq-pins {
974c66ec88fSEmmanuel Vadot			pins = "gpio103";
975c66ec88fSEmmanuel Vadot			function = "pci_e1";
976c66ec88fSEmmanuel Vadot			bias-pull-up;
977c66ec88fSEmmanuel Vadot		};
978c66ec88fSEmmanuel Vadot
979cb7aa33aSEmmanuel Vadot		wake-n-pins {
980c66ec88fSEmmanuel Vadot			pins = "gpio11";
981c66ec88fSEmmanuel Vadot			function = "gpio";
982c66ec88fSEmmanuel Vadot
983c66ec88fSEmmanuel Vadot			drive-strength = <2>;
984c66ec88fSEmmanuel Vadot			bias-pull-up;
985c66ec88fSEmmanuel Vadot		};
986c66ec88fSEmmanuel Vadot
987cb7aa33aSEmmanuel Vadot		reset-n-pins {
988c66ec88fSEmmanuel Vadot			pins = "gpio75";
989c66ec88fSEmmanuel Vadot			function = "gpio";
990c66ec88fSEmmanuel Vadot
991c66ec88fSEmmanuel Vadot			drive-strength = <16>;
992c66ec88fSEmmanuel Vadot			bias-pull-up;
993c66ec88fSEmmanuel Vadot			output-high;
994c66ec88fSEmmanuel Vadot		};
995c66ec88fSEmmanuel Vadot	};
996c66ec88fSEmmanuel Vadot
997cb7aa33aSEmmanuel Vadot	sdc2_default_state: sdc2-default-state {
998cb7aa33aSEmmanuel Vadot		clk-pins {
999c66ec88fSEmmanuel Vadot			pins = "sdc2_clk";
1000c66ec88fSEmmanuel Vadot			bias-disable;
1001c66ec88fSEmmanuel Vadot
1002c66ec88fSEmmanuel Vadot			/*
1003c66ec88fSEmmanuel Vadot			 * It seems that mmc_test reports errors if drive
1004c66ec88fSEmmanuel Vadot			 * strength is not 16 on clk, cmd, and data pins.
1005c66ec88fSEmmanuel Vadot			 */
1006c66ec88fSEmmanuel Vadot			drive-strength = <16>;
1007c66ec88fSEmmanuel Vadot		};
1008c66ec88fSEmmanuel Vadot
1009cb7aa33aSEmmanuel Vadot		cmd-pins {
1010c66ec88fSEmmanuel Vadot			pins = "sdc2_cmd";
1011c66ec88fSEmmanuel Vadot			bias-pull-up;
1012c66ec88fSEmmanuel Vadot			drive-strength = <10>;
1013c66ec88fSEmmanuel Vadot		};
1014c66ec88fSEmmanuel Vadot
1015cb7aa33aSEmmanuel Vadot		data-pins {
1016c66ec88fSEmmanuel Vadot			pins = "sdc2_data";
1017c66ec88fSEmmanuel Vadot			bias-pull-up;
1018c66ec88fSEmmanuel Vadot			drive-strength = <10>;
1019c66ec88fSEmmanuel Vadot		};
1020c66ec88fSEmmanuel Vadot	};
1021c66ec88fSEmmanuel Vadot
1022cb7aa33aSEmmanuel Vadot	sdc2_card_det_n: sd-card-det-n-state {
1023c66ec88fSEmmanuel Vadot		pins = "gpio126";
1024c66ec88fSEmmanuel Vadot		function = "gpio";
1025c66ec88fSEmmanuel Vadot		bias-pull-up;
1026c66ec88fSEmmanuel Vadot	};
1027c66ec88fSEmmanuel Vadot};
1028c66ec88fSEmmanuel Vadot
1029c66ec88fSEmmanuel Vadot&uart3 {
1030c66ec88fSEmmanuel Vadot	label = "LS-UART0";
1031cb7aa33aSEmmanuel Vadot	pinctrl-0 = <&qup_uart3_4pin>;
1032cb7aa33aSEmmanuel Vadot
1033c66ec88fSEmmanuel Vadot	status = "disabled";
1034c66ec88fSEmmanuel Vadot};
1035c66ec88fSEmmanuel Vadot
1036c66ec88fSEmmanuel Vadot&uart6 {
1037c66ec88fSEmmanuel Vadot	status = "okay";
1038c66ec88fSEmmanuel Vadot
10398bab661aSEmmanuel Vadot	pinctrl-0 = <&qup_uart6_4pin>;
10408bab661aSEmmanuel Vadot
1041c66ec88fSEmmanuel Vadot	bluetooth {
1042c66ec88fSEmmanuel Vadot		compatible = "qcom,wcn3990-bt";
1043c66ec88fSEmmanuel Vadot
1044c66ec88fSEmmanuel Vadot		vddio-supply = <&vreg_s4a_1p8>;
1045c66ec88fSEmmanuel Vadot		vddxo-supply = <&vreg_l7a_1p8>;
1046c66ec88fSEmmanuel Vadot		vddrf-supply = <&vreg_l17a_1p3>;
1047c66ec88fSEmmanuel Vadot		vddch0-supply = <&vreg_l25a_3p3>;
1048c66ec88fSEmmanuel Vadot		max-speed = <3200000>;
1049c66ec88fSEmmanuel Vadot	};
1050c66ec88fSEmmanuel Vadot};
1051c66ec88fSEmmanuel Vadot
1052c66ec88fSEmmanuel Vadot&uart9 {
1053c66ec88fSEmmanuel Vadot	label = "LS-UART1";
1054c66ec88fSEmmanuel Vadot	status = "okay";
1055c66ec88fSEmmanuel Vadot};
1056c66ec88fSEmmanuel Vadot
1057c66ec88fSEmmanuel Vadot&usb_1 {
1058c66ec88fSEmmanuel Vadot	status = "okay";
1059c66ec88fSEmmanuel Vadot};
1060c66ec88fSEmmanuel Vadot
1061c66ec88fSEmmanuel Vadot&usb_1_dwc3 {
1062c66ec88fSEmmanuel Vadot	dr_mode = "peripheral";
1063c66ec88fSEmmanuel Vadot};
1064c66ec88fSEmmanuel Vadot
1065c66ec88fSEmmanuel Vadot&usb_1_hsphy {
1066c66ec88fSEmmanuel Vadot	status = "okay";
1067c66ec88fSEmmanuel Vadot
1068c66ec88fSEmmanuel Vadot	vdd-supply = <&vreg_l1a_0p875>;
1069c66ec88fSEmmanuel Vadot	vdda-pll-supply = <&vreg_l12a_1p8>;
1070c66ec88fSEmmanuel Vadot	vdda-phy-dpdm-supply = <&vreg_l24a_3p075>;
1071c66ec88fSEmmanuel Vadot
1072c66ec88fSEmmanuel Vadot	qcom,imp-res-offset-value = <8>;
1073c66ec88fSEmmanuel Vadot	qcom,hstx-trim-value = <QUSB2_V2_HSTX_TRIM_21_6_MA>;
1074c66ec88fSEmmanuel Vadot	qcom,preemphasis-level = <QUSB2_V2_PREEMPHASIS_5_PERCENT>;
1075c66ec88fSEmmanuel Vadot	qcom,preemphasis-width = <QUSB2_V2_PREEMPHASIS_WIDTH_HALF_BIT>;
1076c66ec88fSEmmanuel Vadot};
1077c66ec88fSEmmanuel Vadot
1078c66ec88fSEmmanuel Vadot&usb_1_qmpphy {
1079c66ec88fSEmmanuel Vadot	status = "okay";
1080c66ec88fSEmmanuel Vadot
1081c66ec88fSEmmanuel Vadot	vdda-phy-supply = <&vreg_l26a_1p2>;
1082c66ec88fSEmmanuel Vadot	vdda-pll-supply = <&vreg_l1a_0p875>;
1083c66ec88fSEmmanuel Vadot};
1084c66ec88fSEmmanuel Vadot
1085c66ec88fSEmmanuel Vadot&usb_2 {
1086c66ec88fSEmmanuel Vadot	status = "okay";
1087c66ec88fSEmmanuel Vadot};
1088c66ec88fSEmmanuel Vadot
1089c66ec88fSEmmanuel Vadot&usb_2_dwc3 {
1090c66ec88fSEmmanuel Vadot	dr_mode = "host";
1091c66ec88fSEmmanuel Vadot};
1092c66ec88fSEmmanuel Vadot
1093c66ec88fSEmmanuel Vadot&usb_2_hsphy {
1094c66ec88fSEmmanuel Vadot	status = "okay";
1095c66ec88fSEmmanuel Vadot
1096c66ec88fSEmmanuel Vadot	vdd-supply = <&vreg_l1a_0p875>;
1097c66ec88fSEmmanuel Vadot	vdda-pll-supply = <&vreg_l12a_1p8>;
1098c66ec88fSEmmanuel Vadot	vdda-phy-dpdm-supply = <&vreg_l24a_3p075>;
1099c66ec88fSEmmanuel Vadot
1100c66ec88fSEmmanuel Vadot	qcom,imp-res-offset-value = <8>;
1101c66ec88fSEmmanuel Vadot	qcom,hstx-trim-value = <QUSB2_V2_HSTX_TRIM_22_8_MA>;
1102c66ec88fSEmmanuel Vadot};
1103c66ec88fSEmmanuel Vadot
1104c66ec88fSEmmanuel Vadot&usb_2_qmpphy {
1105c66ec88fSEmmanuel Vadot	status = "okay";
1106c66ec88fSEmmanuel Vadot
1107c66ec88fSEmmanuel Vadot	vdda-phy-supply = <&vreg_l26a_1p2>;
1108c66ec88fSEmmanuel Vadot	vdda-pll-supply = <&vreg_l1a_0p875>;
1109c66ec88fSEmmanuel Vadot};
1110c66ec88fSEmmanuel Vadot
1111c66ec88fSEmmanuel Vadot&ufs_mem_hc {
1112c66ec88fSEmmanuel Vadot	status = "okay";
1113c66ec88fSEmmanuel Vadot
1114c66ec88fSEmmanuel Vadot	reset-gpios = <&tlmm 150 GPIO_ACTIVE_LOW>;
1115c66ec88fSEmmanuel Vadot
1116c66ec88fSEmmanuel Vadot	vcc-supply = <&vreg_l20a_2p95>;
1117c66ec88fSEmmanuel Vadot	vcc-max-microamp = <800000>;
1118c66ec88fSEmmanuel Vadot};
1119c66ec88fSEmmanuel Vadot
1120c66ec88fSEmmanuel Vadot&ufs_mem_phy {
1121c66ec88fSEmmanuel Vadot	status = "okay";
1122c66ec88fSEmmanuel Vadot
1123c66ec88fSEmmanuel Vadot	vdda-phy-supply = <&vreg_l1a_0p875>;
1124c66ec88fSEmmanuel Vadot	vdda-pll-supply = <&vreg_l26a_1p2>;
1125c66ec88fSEmmanuel Vadot};
1126c66ec88fSEmmanuel Vadot
11278cc087a1SEmmanuel Vadot&venus {
11288cc087a1SEmmanuel Vadot	status = "okay";
11298cc087a1SEmmanuel Vadot};
11308cc087a1SEmmanuel Vadot
1131c66ec88fSEmmanuel Vadot&wcd9340 {
11327ef62cebSEmmanuel Vadot	reset-gpios = <&tlmm 64 GPIO_ACTIVE_HIGH>;
1133c66ec88fSEmmanuel Vadot	vdd-buck-supply = <&vreg_s4a_1p8>;
1134c66ec88fSEmmanuel Vadot	vdd-buck-sido-supply = <&vreg_s4a_1p8>;
1135c66ec88fSEmmanuel Vadot	vdd-tx-supply = <&vreg_s4a_1p8>;
1136c66ec88fSEmmanuel Vadot	vdd-rx-supply = <&vreg_s4a_1p8>;
1137c66ec88fSEmmanuel Vadot	vdd-io-supply = <&vreg_s4a_1p8>;
1138c66ec88fSEmmanuel Vadot
11398d13bc63SEmmanuel Vadot	swm: soundwire@c85 {
11408bab661aSEmmanuel Vadot		left_spkr: speaker@0,1 {
1141c66ec88fSEmmanuel Vadot			compatible = "sdw10217201000";
1142c66ec88fSEmmanuel Vadot			reg = <0 1>;
11432eb4d8dcSEmmanuel Vadot			powerdown-gpios = <&wcdgpio 1 GPIO_ACTIVE_HIGH>;
1144c66ec88fSEmmanuel Vadot			#thermal-sensor-cells = <0>;
1145c66ec88fSEmmanuel Vadot			sound-name-prefix = "SpkrLeft";
1146c66ec88fSEmmanuel Vadot			#sound-dai-cells = <0>;
1147c66ec88fSEmmanuel Vadot		};
1148c66ec88fSEmmanuel Vadot
11498bab661aSEmmanuel Vadot		right_spkr: speaker@0,2 {
1150c66ec88fSEmmanuel Vadot			compatible = "sdw10217201000";
11512eb4d8dcSEmmanuel Vadot			powerdown-gpios = <&wcdgpio 1 GPIO_ACTIVE_HIGH>;
1152c66ec88fSEmmanuel Vadot			reg = <0 2>;
1153c66ec88fSEmmanuel Vadot			#thermal-sensor-cells = <0>;
1154c66ec88fSEmmanuel Vadot			sound-name-prefix = "SpkrRight";
1155c66ec88fSEmmanuel Vadot			#sound-dai-cells = <0>;
1156c66ec88fSEmmanuel Vadot		};
1157c66ec88fSEmmanuel Vadot	};
1158c66ec88fSEmmanuel Vadot};
1159c66ec88fSEmmanuel Vadot
1160c66ec88fSEmmanuel Vadot&wifi {
1161c66ec88fSEmmanuel Vadot	status = "okay";
1162c66ec88fSEmmanuel Vadot
1163c66ec88fSEmmanuel Vadot	vdd-0.8-cx-mx-supply = <&vreg_l5a_0p8>;
1164c66ec88fSEmmanuel Vadot	vdd-1.8-xo-supply = <&vreg_l7a_1p8>;
1165c66ec88fSEmmanuel Vadot	vdd-1.3-rfa-supply = <&vreg_l17a_1p3>;
1166c66ec88fSEmmanuel Vadot	vdd-3.3-ch0-supply = <&vreg_l25a_3p3>;
1167c66ec88fSEmmanuel Vadot
1168c66ec88fSEmmanuel Vadot	qcom,snoc-host-cap-8bit-quirk;
1169d5b0e70fSEmmanuel Vadot	qcom,ath10k-calibration-variant = "Thundercomm_DB845C";
1170c66ec88fSEmmanuel Vadot};
1171c66ec88fSEmmanuel Vadot
1172c66ec88fSEmmanuel Vadot/* PINCTRL - additions to nodes defined in sdm845.dtsi */
1173c66ec88fSEmmanuel Vadot&qup_spi2_default {
1174c66ec88fSEmmanuel Vadot	drive-strength = <16>;
1175c66ec88fSEmmanuel Vadot};
1176c66ec88fSEmmanuel Vadot
1177c66ec88fSEmmanuel Vadot&qup_i2c10_default {
1178c66ec88fSEmmanuel Vadot	drive-strength = <2>;
1179c66ec88fSEmmanuel Vadot	bias-disable;
1180c66ec88fSEmmanuel Vadot};
1181c66ec88fSEmmanuel Vadot
1182cb7aa33aSEmmanuel Vadot&qup_uart9_rx {
1183c66ec88fSEmmanuel Vadot	drive-strength = <2>;
1184c66ec88fSEmmanuel Vadot	bias-pull-up;
1185c66ec88fSEmmanuel Vadot};
1186cb7aa33aSEmmanuel Vadot
1187cb7aa33aSEmmanuel Vadot&qup_uart9_tx {
1188cb7aa33aSEmmanuel Vadot	drive-strength = <2>;
1189cb7aa33aSEmmanuel Vadot	bias-disable;
1190c66ec88fSEmmanuel Vadot};
1191c66ec88fSEmmanuel Vadot
1192d5b0e70fSEmmanuel Vadot/* PINCTRL - additions to nodes defined in sdm845.dtsi */
1193d5b0e70fSEmmanuel Vadot&qup_spi0_default {
1194d5b0e70fSEmmanuel Vadot	drive-strength = <6>;
1195d5b0e70fSEmmanuel Vadot	bias-disable;
1196d5b0e70fSEmmanuel Vadot};
1197