xref: /linux/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi (revision ec71f661a572a770d7c861cd52a50cbbb0e1a8d1)
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * SDM845 OnePlus 6(T) (enchilada / fajita) common device tree source
4 *
5 * Copyright (c) 2020, The Linux Foundation. All rights reserved.
6 */
7
8/dts-v1/;
9
10#include <dt-bindings/input/linux-event-codes.h>
11#include <dt-bindings/leds/common.h>
12#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
13#include <dt-bindings/sound/qcom,q6afe.h>
14#include <dt-bindings/sound/qcom,q6asm.h>
15
16#include "sdm845.dtsi"
17#include "sdm845-wcd9340.dtsi"
18#include "pm8998.dtsi"
19#include "pmi8998.dtsi"
20
21/delete-node/ &rmtfs_mem;
22
23/ {
24	aliases {
25		serial0 = &uart9;
26		serial1 = &uart6;
27	};
28
29	chosen {
30		stdout-path = "serial0:115200n8";
31	};
32
33	gpio-hall-sensor {
34		compatible = "gpio-keys";
35		label = "Hall effect sensor";
36
37		pinctrl-0 = <&hall_sensor_default>;
38		pinctrl-names = "default";
39
40		event-hall-sensor {
41			gpios = <&tlmm 124 GPIO_ACTIVE_LOW>;
42			label = "Hall Effect Sensor";
43			linux,input-type = <EV_SW>;
44			linux,code = <SW_LID>;
45			linux,can-disable;
46			wakeup-source;
47		};
48	};
49
50	gpio-keys {
51		compatible = "gpio-keys";
52		label = "Volume keys";
53		autorepeat;
54
55		pinctrl-names = "default";
56		pinctrl-0 = <&volume_down_gpio &volume_up_gpio>;
57
58		key-vol-down {
59			label = "Volume down";
60			linux,code = <KEY_VOLUMEDOWN>;
61			gpios = <&pm8998_gpios 5 GPIO_ACTIVE_LOW>;
62			debounce-interval = <15>;
63		};
64
65		key-vol-up {
66			label = "Volume up";
67			linux,code = <KEY_VOLUMEUP>;
68			gpios = <&pm8998_gpios 6 GPIO_ACTIVE_LOW>;
69			debounce-interval = <15>;
70		};
71	};
72
73	reserved-memory {
74		/*
75		 * The rmtfs_mem needs to be guarded due to "XPU limitations"
76		 * it is otherwise possible for an allocation adjacent to the
77		 * rmtfs_mem region to trigger an XPU violation, causing a crash.
78		 */
79		rmtfs_lower_guard: rmtfs-lower-guard@f5b00000 {
80			no-map;
81			reg = <0 0xf5b00000 0 0x1000>;
82		};
83		/*
84		 * The rmtfs memory region in downstream is 'dynamically allocated'
85		 * but given the same address every time. Hard code it as this address is
86		 * where the modem firmware expects it to be.
87		 */
88		rmtfs_mem: rmtfs-mem@f5b01000 {
89			compatible = "qcom,rmtfs-mem";
90			reg = <0 0xf5b01000 0 0x200000>;
91			no-map;
92
93			qcom,client-id = <1>;
94			qcom,vmid = <QCOM_SCM_VMID_MSS_MSA>;
95		};
96		rmtfs_upper_guard: rmtfs-upper-guard@f5d01000 {
97			no-map;
98			reg = <0 0xf5d01000 0 0x1000>;
99		};
100
101		/*
102		 * It seems like reserving the old rmtfs_mem region is also needed to prevent
103		 * random crashes which are most likely modem related, more testing needed.
104		 */
105		removed_region: removed-region@88f00000 {
106			no-map;
107			reg = <0 0x88f00000 0 0x1c00000>;
108		};
109
110		ramoops: ramoops@ac300000 {
111			compatible = "ramoops";
112			reg = <0 0xac300000 0 0x400000>;
113			record-size = <0x40000>;
114			console-size = <0x40000>;
115			ftrace-size = <0x40000>;
116			pmsg-size = <0x200000>;
117			ecc-size = <16>;
118		};
119	};
120
121	vph_pwr: vph-pwr-regulator {
122		compatible = "regulator-fixed";
123		regulator-name = "vph_pwr";
124		regulator-min-microvolt = <3700000>;
125		regulator-max-microvolt = <3700000>;
126	};
127
128	/*
129	 * Apparently RPMh does not provide support for PM8998 S4 because it
130	 * is always-on; model it as a fixed regulator.
131	 */
132	vreg_s4a_1p8: pm8998-smps4 {
133		compatible = "regulator-fixed";
134		regulator-name = "vreg_s4a_1p8";
135
136		regulator-min-microvolt = <1800000>;
137		regulator-max-microvolt = <1800000>;
138
139		regulator-always-on;
140		regulator-boot-on;
141
142		vin-supply = <&vph_pwr>;
143	};
144
145	/*
146	 * The touchscreen regulator seems to be controlled somehow by a gpio.
147	 * Model it as a fixed regulator and keep it on. Without schematics we
148	 * don't know how this is actually wired up...
149	 */
150	ts_1p8_supply: ts-1p8-regulator {
151		compatible = "regulator-fixed";
152		regulator-name = "ts_1p8_supply";
153
154		regulator-min-microvolt = <1800000>;
155		regulator-max-microvolt = <1800000>;
156
157		gpio = <&tlmm 88 0>;
158		enable-active-high;
159		regulator-boot-on;
160	};
161};
162
163&adsp_pas {
164	status = "okay";
165	firmware-name = "qcom/sdm845/oneplus6/adsp.mbn";
166};
167
168&apps_rsc {
169	regulators-0 {
170		compatible = "qcom,pm8998-rpmh-regulators";
171		qcom,pmic-id = "a";
172
173		vdd-s1-supply = <&vph_pwr>;
174		vdd-s2-supply = <&vph_pwr>;
175		vdd-s3-supply = <&vph_pwr>;
176		vdd-s4-supply = <&vph_pwr>;
177		vdd-s5-supply = <&vph_pwr>;
178		vdd-s6-supply = <&vph_pwr>;
179		vdd-s7-supply = <&vph_pwr>;
180		vdd-s8-supply = <&vph_pwr>;
181		vdd-s9-supply = <&vph_pwr>;
182		vdd-s10-supply = <&vph_pwr>;
183		vdd-s11-supply = <&vph_pwr>;
184		vdd-s12-supply = <&vph_pwr>;
185		vdd-s13-supply = <&vph_pwr>;
186		vdd-l1-l27-supply = <&vreg_s7a_1p025>;
187		vdd-l2-l8-l17-supply = <&vreg_s3a_1p35>;
188		vdd-l3-l11-supply = <&vreg_s7a_1p025>;
189		vdd-l4-l5-supply = <&vreg_s7a_1p025>;
190		vdd-l6-supply = <&vph_pwr>;
191		vdd-l7-l12-l14-l15-supply = <&vreg_s5a_2p04>;
192		vdd-l9-supply = <&vreg_bob>;
193		vdd-l10-l23-l25-supply = <&vreg_bob>;
194		vdd-l13-l19-l21-supply = <&vreg_bob>;
195		vdd-l16-l28-supply = <&vreg_bob>;
196		vdd-l18-l22-supply = <&vreg_bob>;
197		vdd-l20-l24-supply = <&vreg_bob>;
198		vdd-l26-supply = <&vreg_s3a_1p35>;
199		vin-lvs-1-2-supply = <&vreg_s4a_1p8>;
200
201		vreg_s3a_1p35: smps3 {
202			regulator-min-microvolt = <1352000>;
203			regulator-max-microvolt = <1352000>;
204		};
205
206		vreg_s5a_2p04: smps5 {
207			regulator-min-microvolt = <1904000>;
208			regulator-max-microvolt = <2040000>;
209		};
210
211		vreg_s7a_1p025: smps7 {
212			regulator-min-microvolt = <900000>;
213			regulator-max-microvolt = <1028000>;
214		};
215
216		vdda_mipi_dsi0_pll:
217		vdda_qlink_lv:
218		vdda_ufs1_core:
219		vdda_usb1_ss_core:
220		vreg_l1a_0p875: ldo1 {
221			regulator-min-microvolt = <880000>;
222			regulator-max-microvolt = <880000>;
223			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
224		};
225
226		vreg_l2a_1p2: ldo2 {
227			regulator-min-microvolt = <1200000>;
228			regulator-max-microvolt = <1200000>;
229			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
230			regulator-always-on;
231		};
232
233		vreg_l5a_0p8: ldo5 {
234			regulator-min-microvolt = <800000>;
235			regulator-max-microvolt = <800000>;
236			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
237		};
238
239		vreg_l7a_1p8: ldo7 {
240			regulator-min-microvolt = <1800000>;
241			regulator-max-microvolt = <1800000>;
242			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
243		};
244
245		vdda_qusb_hs0_1p8:
246		vreg_l12a_1p8: ldo12 {
247			regulator-min-microvolt = <1800000>;
248			regulator-max-microvolt = <1800000>;
249			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
250		};
251
252		vreg_l14a_1p88: ldo14 {
253			regulator-min-microvolt = <1800000>;
254			regulator-max-microvolt = <1800000>;
255			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
256			regulator-always-on;
257		};
258
259		vreg_l17a_1p3: ldo17 {
260			regulator-min-microvolt = <1304000>;
261			regulator-max-microvolt = <1304000>;
262			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
263		};
264
265		vreg_l20a_2p95: ldo20 {
266			regulator-min-microvolt = <2704000>;
267			regulator-max-microvolt = <2960000>;
268			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
269		};
270
271		vreg_l23a_3p3: ldo23 {
272			regulator-min-microvolt = <3300000>;
273			regulator-max-microvolt = <3312000>;
274			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
275		};
276
277		vdda_qusb_hs0_3p1:
278		vreg_l24a_3p075: ldo24 {
279			regulator-min-microvolt = <3088000>;
280			regulator-max-microvolt = <3088000>;
281			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
282		};
283
284		vreg_l25a_3p3: ldo25 {
285			regulator-min-microvolt = <3300000>;
286			regulator-max-microvolt = <3312000>;
287			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
288		};
289
290		vdda_mipi_dsi0_1p2:
291		vdda_ufs1_1p2:
292		vreg_l26a_1p2: ldo26 {
293			regulator-min-microvolt = <1200000>;
294			regulator-max-microvolt = <1200000>;
295			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
296		};
297
298		vreg_l28a_3p0: ldo28 {
299			regulator-min-microvolt = <2856000>;
300			regulator-max-microvolt = <3008000>;
301			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
302		};
303	};
304
305	regulators-1 {
306		compatible = "qcom,pmi8998-rpmh-regulators";
307		qcom,pmic-id = "b";
308
309		vdd-bob-supply = <&vph_pwr>;
310
311		vreg_bob: bob {
312			regulator-min-microvolt = <3312000>;
313			regulator-max-microvolt = <3600000>;
314			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
315			regulator-allow-bypass;
316		};
317	};
318
319	regulators-2 {
320		compatible = "qcom,pm8005-rpmh-regulators";
321		qcom,pmic-id = "c";
322
323		vdd-s1-supply = <&vph_pwr>;
324		vdd-s2-supply = <&vph_pwr>;
325		vdd-s3-supply = <&vph_pwr>;
326		vdd-s4-supply = <&vph_pwr>;
327
328		vreg_s3c_0p6: smps3 {
329			regulator-min-microvolt = <600000>;
330			regulator-max-microvolt = <600000>;
331		};
332	};
333};
334
335&cdsp_pas {
336	status = "okay";
337	firmware-name = "qcom/sdm845/oneplus6/cdsp.mbn";
338};
339
340&gcc {
341	protected-clocks = <GCC_QSPI_CORE_CLK>,
342				<GCC_QSPI_CORE_CLK_SRC>,
343				<GCC_QSPI_CNOC_PERIPH_AHB_CLK>,
344				<GCC_LPASS_Q6_AXI_CLK>,
345				<GCC_LPASS_SWAY_CLK>;
346};
347
348&gpu {
349	status = "okay";
350
351	zap-shader {
352		memory-region = <&gpu_mem>;
353		firmware-name = "qcom/sdm845/oneplus6/a630_zap.mbn";
354	};
355};
356
357&i2c10 {
358	status = "okay";
359	clock-frequency = <100000>;
360
361	bq27441_fg: bq27441-battery@55 {
362		compatible = "ti,bq27411";
363		status = "okay";
364		reg = <0x55>;
365	};
366};
367
368&i2c12 {
369	status = "okay";
370	clock-frequency = <400000>;
371
372	synaptics-rmi4-i2c@20 {
373		compatible = "syna,rmi4-i2c";
374		reg = <0x20>;
375		#address-cells = <1>;
376		#size-cells = <0>;
377		interrupts-extended = <&tlmm 125 IRQ_TYPE_EDGE_FALLING>;
378
379		pinctrl-names = "default";
380		pinctrl-0 = <&ts_default_pins>;
381
382		vdd-supply = <&vreg_l28a_3p0>;
383		vio-supply = <&ts_1p8_supply>;
384
385		syna,reset-delay-ms = <200>;
386		syna,startup-delay-ms = <200>;
387
388		rmi4-f01@1 {
389			reg = <0x01>;
390			syna,nosleep-mode = <1>;
391		};
392
393		rmi4_f12: rmi4-f12@12 {
394			reg = <0x12>;
395			touchscreen-x-mm = <68>;
396			touchscreen-y-mm = <144>;
397			syna,sensor-type = <1>;
398			syna,rezero-wait-ms = <200>;
399		};
400	};
401};
402
403&ipa {
404	qcom,gsi-loader = "self";
405	memory-region = <&ipa_fw_mem>;
406	firmware-name = "qcom/sdm845/oneplus6/ipa_fws.mbn";
407	status = "okay";
408};
409
410&mdss {
411	status = "okay";
412};
413
414&mdss_dsi0 {
415	status = "okay";
416	vdda-supply = <&vdda_mipi_dsi0_1p2>;
417
418	/*
419	 * Both devices use different panels but all other properties
420	 * are common. Compatible line is declared in device dts.
421	 */
422	display_panel: panel@0 {
423		status = "disabled";
424
425		reg = <0>;
426
427		vddio-supply = <&vreg_l14a_1p88>;
428
429		reset-gpios = <&tlmm 6 GPIO_ACTIVE_LOW>;
430
431		pinctrl-names = "default";
432		pinctrl-0 = <&panel_reset_pins &panel_te_pin &panel_esd_pin>;
433
434		port {
435			panel_in: endpoint {
436				remote-endpoint = <&mdss_dsi0_out>;
437			};
438		};
439	};
440};
441
442&mdss_dsi0_out {
443	remote-endpoint = <&panel_in>;
444	data-lanes = <0 1 2 3>;
445};
446
447&mdss_dsi0_phy {
448	status = "okay";
449	vdds-supply = <&vdda_mipi_dsi0_pll>;
450};
451
452/* Modem/wifi */
453&mss_pil {
454	status = "okay";
455	firmware-name = "qcom/sdm845/oneplus6/mba.mbn", "qcom/sdm845/oneplus6/modem.mbn";
456};
457
458&pm8998_gpios {
459	volume_down_gpio: pm8998-gpio5-state {
460		pinconf {
461			pins = "gpio5";
462			function = "normal";
463			input-enable;
464			bias-pull-up;
465			qcom,drive-strength = <0>;
466		};
467	};
468
469	volume_up_gpio: pm8998-gpio6-state {
470		pinconf {
471			pins = "gpio6";
472			function = "normal";
473			input-enable;
474			bias-pull-up;
475			qcom,drive-strength = <0>;
476		};
477	};
478};
479
480&pmi8998_charger {
481	status = "okay";
482};
483
484&pmi8998_flash {
485	status = "okay";
486
487	led-0 {
488		function = LED_FUNCTION_FLASH;
489		color = <LED_COLOR_ID_WHITE>;
490		led-sources = <1>;
491		led-max-microamp = <500000>;
492		flash-max-microamp = <1500000>;
493		flash-max-timeout-us = <1280000>;
494	};
495
496	led-1 {
497		function = LED_FUNCTION_FLASH;
498		color = <LED_COLOR_ID_YELLOW>;
499		led-sources = <2>;
500		led-max-microamp = <500000>;
501		flash-max-microamp = <1500000>;
502		flash-max-timeout-us = <1280000>;
503	};
504};
505
506&q6afedai {
507	dai@22 {
508		reg = <QUATERNARY_MI2S_RX>;
509		qcom,sd-lines = <1>;
510	};
511
512	dai@23 {
513		reg = <QUATERNARY_MI2S_TX>;
514		qcom,sd-lines = <0>;
515	};
516};
517
518&q6asmdai {
519	dai@0 {
520		reg = <MSM_FRONTEND_DAI_MULTIMEDIA1>;
521	};
522
523	dai@1 {
524		reg = <MSM_FRONTEND_DAI_MULTIMEDIA2>;
525	};
526
527	dai@2 {
528		reg = <MSM_FRONTEND_DAI_MULTIMEDIA3>;
529	};
530
531	dai@3 {
532		reg = <MSM_FRONTEND_DAI_MULTIMEDIA4>;
533	};
534
535	dai@4 {
536		reg = <MSM_FRONTEND_DAI_MULTIMEDIA5>;
537	};
538
539	dai@5 {
540		reg = <MSM_FRONTEND_DAI_MULTIMEDIA6>;
541	};
542};
543
544&qupv3_id_1 {
545	status = "okay";
546};
547
548&qupv3_id_0 {
549	status = "okay";
550};
551
552&qup_i2c10_default {
553	drive-strength = <2>;
554	bias-disable;
555};
556
557&qup_i2c12_default {
558	drive-strength = <2>;
559	bias-disable;
560};
561
562&qup_uart9_rx {
563	drive-strength = <2>;
564	bias-pull-up;
565};
566
567&qup_uart9_tx {
568	drive-strength = <2>;
569	bias-disable;
570};
571
572&slpi_pas {
573	firmware-name = "qcom/sdm845/oneplus6/slpi.mbn";
574	status = "okay";
575};
576
577&sound {
578	compatible = "qcom,sdm845-sndcard";
579	pinctrl-0 = <&quat_mi2s_active &quat_mi2s_sd0_active &quat_mi2s_sd1_active>;
580	pinctrl-names = "default";
581	status = "okay";
582
583	mm1-dai-link {
584		link-name = "MultiMedia1";
585		cpu {
586			sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA1>;
587		};
588	};
589
590	mm2-dai-link {
591		link-name = "MultiMedia2";
592		cpu {
593			sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA2>;
594		};
595	};
596
597	mm3-dai-link {
598		link-name = "MultiMedia3";
599		cpu {
600			sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA3>;
601		};
602	};
603
604	mm4-dai-link {
605		link-name = "MultiMedia4";
606		cpu {
607			sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA4>;
608		};
609	};
610
611	mm5-dai-link {
612		link-name = "MultiMedia5";
613		cpu {
614			sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA5>;
615		};
616	};
617
618	mm6-dai-link {
619		link-name = "MultiMedia6";
620		cpu {
621			sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA6>;
622		};
623	};
624
625	speaker_playback_dai: speaker-dai-link {
626		link-name = "Speaker Playback";
627		cpu {
628			sound-dai = <&q6afedai QUATERNARY_MI2S_RX>;
629		};
630
631		platform {
632			sound-dai = <&q6routing>;
633		};
634	};
635
636	slim-dai-link {
637		link-name = "SLIM Playback 1";
638		cpu {
639			sound-dai = <&q6afedai SLIMBUS_0_RX>;
640		};
641
642		platform {
643			sound-dai = <&q6routing>;
644		};
645
646		codec {
647			sound-dai = <&wcd9340 0>;
648		};
649	};
650
651	slimcap-dai-link {
652		link-name = "SLIM Capture 1";
653		cpu {
654			sound-dai = <&q6afedai SLIMBUS_0_TX>;
655		};
656
657		platform {
658			sound-dai = <&q6routing>;
659		};
660
661		codec {
662			sound-dai = <&wcd9340 1>;
663		};
664	};
665
666	slim2-dai-link {
667		link-name = "SLIM Playback 2";
668		cpu {
669			sound-dai = <&q6afedai SLIMBUS_1_RX>;
670		};
671
672		platform {
673			sound-dai = <&q6routing>;
674		};
675
676		codec {
677			sound-dai = <&wcd9340 2>; /* AIF2_PB */
678		};
679	};
680
681	slimcap2-dai-link {
682		link-name = "SLIM Capture 2";
683		cpu {
684			sound-dai = <&q6afedai SLIMBUS_1_TX>;
685		};
686
687		platform {
688			sound-dai = <&q6routing>;
689		};
690
691		codec {
692			sound-dai = <&wcd9340 3>; /* AIF2_CAP */
693		};
694	};
695
696	slimcap3-dai-link {
697		link-name = "SLIM Capture 3";
698		cpu {
699			sound-dai = <&q6afedai SLIMBUS_2_TX>;
700		};
701
702		platform {
703			sound-dai = <&q6routing>;
704		};
705
706		codec {
707			sound-dai = <&wcd9340 5>; /* AIF3_CAP */
708		};
709	};
710};
711
712&uart6 {
713	status = "okay";
714
715	pinctrl-0 = <&qup_uart6_4pin>;
716
717	bluetooth {
718		compatible = "qcom,wcn3990-bt";
719
720		/*
721		 * This path is relative to the qca/
722		 * subdir under lib/firmware.
723		 */
724		firmware-name = "oneplus6/crnv21.bin";
725
726		vddio-supply = <&vreg_s4a_1p8>;
727		vddxo-supply = <&vreg_l7a_1p8>;
728		vddrf-supply = <&vreg_l17a_1p3>;
729		vddch0-supply = <&vreg_l25a_3p3>;
730		max-speed = <3200000>;
731	};
732};
733
734&uart9 {
735	label = "LS-UART1";
736	status = "okay";
737};
738
739&ufs_mem_hc {
740	status = "okay";
741
742	reset-gpios = <&tlmm 150 GPIO_ACTIVE_LOW>;
743
744	vcc-supply = <&vreg_l20a_2p95>;
745	vcc-max-microamp = <600000>;
746};
747
748&ufs_mem_phy {
749	status = "okay";
750
751	vdda-phy-supply = <&vdda_ufs1_core>;
752	vdda-pll-supply = <&vdda_ufs1_1p2>;
753};
754
755&usb_1 {
756	status = "okay";
757
758	/*
759	 * disable USB3 clock requirement as the device only supports
760	 * USB2.
761	 */
762	qcom,select-utmi-as-pipe-clk;
763};
764
765&usb_1_dwc3 {
766	/*
767	 * We don't have the capability to switch modes yet.
768	 */
769	dr_mode = "peripheral";
770
771	/* fastest mode for USB 2 */
772	maximum-speed = "high-speed";
773
774	/* Remove USB3 phy as it's unused on this device. */
775	phys = <&usb_1_hsphy>;
776	phy-names = "usb2-phy";
777};
778
779&usb_1_hsphy {
780	status = "okay";
781
782	vdd-supply = <&vdda_usb1_ss_core>;
783	vdda-pll-supply = <&vdda_qusb_hs0_1p8>;
784	vdda-phy-dpdm-supply = <&vdda_qusb_hs0_3p1>;
785
786	qcom,imp-res-offset-value = <8>;
787	qcom,hstx-trim-value = <QUSB2_V2_HSTX_TRIM_21_6_MA>;
788	qcom,preemphasis-level = <QUSB2_V2_PREEMPHASIS_5_PERCENT>;
789	qcom,preemphasis-width = <QUSB2_V2_PREEMPHASIS_WIDTH_HALF_BIT>;
790};
791
792&tlmm {
793	gpio-reserved-ranges = <0 4>, <81 4>;
794
795	hall_sensor_default: hall-sensor-default-state {
796		pins = "gpio124";
797		function = "gpio";
798		drive-strength = <2>;
799		bias-disable;
800	};
801
802	tri_state_key_default: tri-state-key-default-state {
803		pins = "gpio40", "gpio42", "gpio26";
804		function = "gpio";
805		drive-strength = <2>;
806		bias-disable;
807	};
808
809	ts_default_pins: ts-int-state {
810		pins = "gpio99", "gpio125";
811		function = "gpio";
812		drive-strength = <16>;
813		bias-pull-up;
814	};
815
816	panel_reset_pins: panel-reset-state {
817		pins = "gpio6", "gpio25", "gpio26";
818		function = "gpio";
819		drive-strength = <8>;
820		bias-disable;
821	};
822
823	panel_te_pin: panel-te-state {
824		pins = "gpio10";
825		function = "mdp_vsync";
826		drive-strength = <2>;
827		bias-disable;
828	};
829
830	panel_esd_pin: panel-esd-state {
831		pins = "gpio30";
832		function = "gpio";
833		drive-strength = <2>;
834		bias-pull-down;
835	};
836
837	speaker_default: speaker-default-state {
838		pins = "gpio69";
839		function = "gpio";
840		drive-strength = <16>;
841		bias-pull-up;
842		output-high;
843	};
844};
845
846&venus {
847	status = "okay";
848	firmware-name = "qcom/sdm845/oneplus6/venus.mbn";
849};
850
851&wcd9340 {
852	pinctrl-0 = <&wcd_intr_default>;
853	pinctrl-names = "default";
854	reset-gpios = <&tlmm 64 GPIO_ACTIVE_HIGH>;
855	vdd-buck-supply = <&vreg_s4a_1p8>;
856	vdd-buck-sido-supply = <&vreg_s4a_1p8>;
857	vdd-tx-supply = <&vreg_s4a_1p8>;
858	vdd-rx-supply = <&vreg_s4a_1p8>;
859	vdd-io-supply = <&vreg_s4a_1p8>;
860};
861
862&wifi {
863	status = "okay";
864	vdd-0.8-cx-mx-supply = <&vreg_l5a_0p8>;
865	vdd-1.8-xo-supply = <&vreg_l7a_1p8>;
866	vdd-1.3-rfa-supply = <&vreg_l17a_1p3>;
867	vdd-3.3-ch0-supply = <&vreg_l25a_3p3>;
868	vdd-3.3-ch1-supply = <&vreg_l23a_3p3>;
869
870	qcom,snoc-host-cap-8bit-quirk;
871};
872