xref: /openbmc/linux/scripts/dtc/include-prefixes/arm64/qcom/sdm845-xiaomi-beryllium-common.dtsi (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
1dd6459a0SJoel Selvaraj// SPDX-License-Identifier: GPL-2.0
2dd6459a0SJoel Selvaraj
3dd6459a0SJoel Selvaraj/dts-v1/;
4dd6459a0SJoel Selvaraj
5*d20ad168SJoel Selvaraj#include <dt-bindings/leds/common.h>
6dd6459a0SJoel Selvaraj#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
7dd6459a0SJoel Selvaraj#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
8dd6459a0SJoel Selvaraj#include <dt-bindings/sound/qcom,q6afe.h>
9dd6459a0SJoel Selvaraj#include <dt-bindings/sound/qcom,q6asm.h>
10dd6459a0SJoel Selvaraj#include "sdm845.dtsi"
1134c86173SKrzysztof Kozlowski#include "sdm845-wcd9340.dtsi"
12dd6459a0SJoel Selvaraj#include "pm8998.dtsi"
13dd6459a0SJoel Selvaraj#include "pmi8998.dtsi"
14dd6459a0SJoel Selvaraj
15dd6459a0SJoel Selvaraj/*
16dd6459a0SJoel Selvaraj * Delete following upstream (sdm845.dtsi) reserved
17dd6459a0SJoel Selvaraj * memory mappings which are different in this device.
18dd6459a0SJoel Selvaraj */
19dd6459a0SJoel Selvaraj/delete-node/ &tz_mem;
20dd6459a0SJoel Selvaraj/delete-node/ &adsp_mem;
21dd6459a0SJoel Selvaraj/delete-node/ &wlan_msa_mem;
22dd6459a0SJoel Selvaraj/delete-node/ &mpss_region;
23dd6459a0SJoel Selvaraj/delete-node/ &venus_mem;
24dd6459a0SJoel Selvaraj/delete-node/ &cdsp_mem;
25dd6459a0SJoel Selvaraj/delete-node/ &mba_region;
26dd6459a0SJoel Selvaraj/delete-node/ &slpi_mem;
27dd6459a0SJoel Selvaraj/delete-node/ &spss_mem;
28dd6459a0SJoel Selvaraj/delete-node/ &rmtfs_mem;
29dd6459a0SJoel Selvaraj
30dd6459a0SJoel Selvaraj/ {
31dd6459a0SJoel Selvaraj	chassis-type = "handset";
32dd6459a0SJoel Selvaraj
33dd6459a0SJoel Selvaraj	/* required for bootloader to select correct board */
34dd6459a0SJoel Selvaraj	qcom,board-id = <69 0>;
35dd6459a0SJoel Selvaraj	qcom,msm-id = <321 0x20001>;
36dd6459a0SJoel Selvaraj
37dd6459a0SJoel Selvaraj	aliases {
384772c030SCaleb Connolly		serial1 = &uart6;
39dd6459a0SJoel Selvaraj	};
40dd6459a0SJoel Selvaraj
41dd6459a0SJoel Selvaraj	gpio-keys {
42dd6459a0SJoel Selvaraj		compatible = "gpio-keys";
43dd6459a0SJoel Selvaraj		autorepeat;
44dd6459a0SJoel Selvaraj
45dd6459a0SJoel Selvaraj		pinctrl-names = "default";
46dd6459a0SJoel Selvaraj		pinctrl-0 = <&vol_up_pin_a>;
47dd6459a0SJoel Selvaraj
48dd6459a0SJoel Selvaraj		key-vol-up {
49dd6459a0SJoel Selvaraj			label = "Volume Up";
50dd6459a0SJoel Selvaraj			linux,code = <KEY_VOLUMEUP>;
51ea25d61bSMarijn Suijten			gpios = <&pm8998_gpios 6 GPIO_ACTIVE_LOW>;
52dd6459a0SJoel Selvaraj		};
53dd6459a0SJoel Selvaraj	};
54dd6459a0SJoel Selvaraj
55dd6459a0SJoel Selvaraj	/* Reserved memory changes from downstream */
56dd6459a0SJoel Selvaraj	reserved-memory {
57dd6459a0SJoel Selvaraj		tz_mem: memory@86200000 {
58dd6459a0SJoel Selvaraj			reg = <0 0x86200000 0 0x4900000>;
59dd6459a0SJoel Selvaraj			no-map;
60dd6459a0SJoel Selvaraj		};
61dd6459a0SJoel Selvaraj
62dd6459a0SJoel Selvaraj		adsp_mem: memory@8c500000 {
63dd6459a0SJoel Selvaraj			reg = <0 0x8c500000 0 0x1e00000>;
64dd6459a0SJoel Selvaraj			no-map;
65dd6459a0SJoel Selvaraj		};
66dd6459a0SJoel Selvaraj
67dd6459a0SJoel Selvaraj		wlan_msa_mem: memory@8e300000 {
68dd6459a0SJoel Selvaraj			reg = <0 0x8e300000 0 0x100000>;
69dd6459a0SJoel Selvaraj			no-map;
70dd6459a0SJoel Selvaraj		};
71dd6459a0SJoel Selvaraj
72dd6459a0SJoel Selvaraj		mpss_region: memory@8e400000 {
73dd6459a0SJoel Selvaraj			reg = <0 0x8e400000 0 0x7800000>;
74dd6459a0SJoel Selvaraj			no-map;
75dd6459a0SJoel Selvaraj		};
76dd6459a0SJoel Selvaraj
77dd6459a0SJoel Selvaraj		venus_mem: memory@95c00000 {
78dd6459a0SJoel Selvaraj			reg = <0 0x95c00000 0 0x500000>;
79dd6459a0SJoel Selvaraj			no-map;
80dd6459a0SJoel Selvaraj		};
81dd6459a0SJoel Selvaraj
82dd6459a0SJoel Selvaraj		cdsp_mem: memory@96100000 {
83dd6459a0SJoel Selvaraj			reg = <0 0x96100000 0 0x800000>;
84dd6459a0SJoel Selvaraj			no-map;
85dd6459a0SJoel Selvaraj		};
86dd6459a0SJoel Selvaraj
87dd6459a0SJoel Selvaraj		mba_region: memory@96900000 {
88dd6459a0SJoel Selvaraj			reg = <0 0x96900000 0 0x200000>;
89dd6459a0SJoel Selvaraj			no-map;
90dd6459a0SJoel Selvaraj		};
91dd6459a0SJoel Selvaraj
92dd6459a0SJoel Selvaraj		slpi_mem: memory@96b00000 {
93dd6459a0SJoel Selvaraj			reg = <0 0x96b00000 0 0x1400000>;
94dd6459a0SJoel Selvaraj			no-map;
95dd6459a0SJoel Selvaraj		};
96dd6459a0SJoel Selvaraj
97dd6459a0SJoel Selvaraj		spss_mem: memory@97f00000 {
98dd6459a0SJoel Selvaraj			reg = <0 0x97f00000 0 0x100000>;
99dd6459a0SJoel Selvaraj			no-map;
100dd6459a0SJoel Selvaraj		};
101dd6459a0SJoel Selvaraj
1021b8f9b91SAmit Pundir		/* Cont splash region set up by the bootloader */
1031b8f9b91SAmit Pundir		cont_splash_mem: framebuffer@9d400000 {
1041b8f9b91SAmit Pundir			reg = <0 0x9d400000 0 0x2400000>;
1051b8f9b91SAmit Pundir			no-map;
1061b8f9b91SAmit Pundir		};
1071b8f9b91SAmit Pundir
108dd6459a0SJoel Selvaraj		rmtfs_mem: memory@f6301000 {
109dd6459a0SJoel Selvaraj			compatible = "qcom,rmtfs-mem";
110dd6459a0SJoel Selvaraj			reg = <0 0xf6301000 0 0x200000>;
111dd6459a0SJoel Selvaraj			no-map;
112dd6459a0SJoel Selvaraj
113dd6459a0SJoel Selvaraj			qcom,client-id = <1>;
114dd6459a0SJoel Selvaraj			qcom,vmid = <15>;
115dd6459a0SJoel Selvaraj		};
116dd6459a0SJoel Selvaraj	};
117dd6459a0SJoel Selvaraj
118dd6459a0SJoel Selvaraj	battery: battery {
119dd6459a0SJoel Selvaraj		compatible = "simple-battery";
120dd6459a0SJoel Selvaraj
121dd6459a0SJoel Selvaraj		charge-full-design-microamp-hours = <4000000>;
122dd6459a0SJoel Selvaraj		voltage-min-design-microvolt = <3400000>;
123dd6459a0SJoel Selvaraj		voltage-max-design-microvolt = <4400000>;
124dd6459a0SJoel Selvaraj	};
125dd6459a0SJoel Selvaraj
126dd6459a0SJoel Selvaraj	vreg_s4a_1p8: vreg-s4a-1p8 {
127dd6459a0SJoel Selvaraj		compatible = "regulator-fixed";
128dd6459a0SJoel Selvaraj		regulator-name = "vreg_s4a_1p8";
129dd6459a0SJoel Selvaraj
130dd6459a0SJoel Selvaraj		regulator-min-microvolt = <1800000>;
131dd6459a0SJoel Selvaraj		regulator-max-microvolt = <1800000>;
132dd6459a0SJoel Selvaraj		regulator-always-on;
133dd6459a0SJoel Selvaraj	};
13486dd19bbSKrzysztof Kozlowski};
135dd6459a0SJoel Selvaraj
136dd6459a0SJoel Selvaraj&adsp_pas {
137dd6459a0SJoel Selvaraj	status = "okay";
138dd6459a0SJoel Selvaraj	firmware-name = "qcom/sdm845/beryllium/adsp.mbn";
139dd6459a0SJoel Selvaraj};
140dd6459a0SJoel Selvaraj
141dd6459a0SJoel Selvaraj&apps_rsc {
142dd6459a0SJoel Selvaraj	regulators-0 {
143dd6459a0SJoel Selvaraj		compatible = "qcom,pm8998-rpmh-regulators";
144dd6459a0SJoel Selvaraj		qcom,pmic-id = "a";
145dd6459a0SJoel Selvaraj
146dd6459a0SJoel Selvaraj		vreg_l1a_0p875: ldo1 {
147dd6459a0SJoel Selvaraj			regulator-min-microvolt = <880000>;
148dd6459a0SJoel Selvaraj			regulator-max-microvolt = <880000>;
149dd6459a0SJoel Selvaraj			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
150dd6459a0SJoel Selvaraj		};
151dd6459a0SJoel Selvaraj
152dd6459a0SJoel Selvaraj		vreg_l5a_0p8: ldo5 {
153dd6459a0SJoel Selvaraj			regulator-min-microvolt = <800000>;
154dd6459a0SJoel Selvaraj			regulator-max-microvolt = <800000>;
155dd6459a0SJoel Selvaraj			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
156dd6459a0SJoel Selvaraj		};
157dd6459a0SJoel Selvaraj
158dd6459a0SJoel Selvaraj		vreg_l7a_1p8: ldo7 {
159dd6459a0SJoel Selvaraj			regulator-min-microvolt = <1800000>;
160dd6459a0SJoel Selvaraj			regulator-max-microvolt = <1800000>;
161dd6459a0SJoel Selvaraj			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
162dd6459a0SJoel Selvaraj		};
163dd6459a0SJoel Selvaraj
164dd6459a0SJoel Selvaraj		vreg_l12a_1p8: ldo12 {
165dd6459a0SJoel Selvaraj			regulator-min-microvolt = <1800000>;
166dd6459a0SJoel Selvaraj			regulator-max-microvolt = <1800000>;
167dd6459a0SJoel Selvaraj			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
168dd6459a0SJoel Selvaraj		};
169dd6459a0SJoel Selvaraj
170dd6459a0SJoel Selvaraj		vreg_l13a_2p95: ldo13 {
171dd6459a0SJoel Selvaraj			regulator-min-microvolt = <1800000>;
172dd6459a0SJoel Selvaraj			regulator-max-microvolt = <2960000>;
173dd6459a0SJoel Selvaraj			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
174dd6459a0SJoel Selvaraj		};
175dd6459a0SJoel Selvaraj
176dd6459a0SJoel Selvaraj		vreg_l14a_1p8: ldo14 {
177dd6459a0SJoel Selvaraj			regulator-min-microvolt = <1800000>;
178dd6459a0SJoel Selvaraj			regulator-max-microvolt = <1800000>;
179dd6459a0SJoel Selvaraj			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
180dd6459a0SJoel Selvaraj			regulator-boot-on;
181dd6459a0SJoel Selvaraj			regulator-always-on;
182dd6459a0SJoel Selvaraj		};
183dd6459a0SJoel Selvaraj
184dd6459a0SJoel Selvaraj		vreg_l17a_1p3: ldo17 {
185dd6459a0SJoel Selvaraj			regulator-min-microvolt = <1304000>;
186dd6459a0SJoel Selvaraj			regulator-max-microvolt = <1304000>;
187dd6459a0SJoel Selvaraj			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
188dd6459a0SJoel Selvaraj		};
189dd6459a0SJoel Selvaraj
190dd6459a0SJoel Selvaraj		vreg_l20a_2p95: ldo20 {
191dd6459a0SJoel Selvaraj			regulator-min-microvolt = <2960000>;
192dd6459a0SJoel Selvaraj			regulator-max-microvolt = <2968000>;
193dd6459a0SJoel Selvaraj			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
194dd6459a0SJoel Selvaraj		};
195dd6459a0SJoel Selvaraj
196dd6459a0SJoel Selvaraj		vreg_l21a_2p95: ldo21 {
197dd6459a0SJoel Selvaraj			regulator-min-microvolt = <2960000>;
198dd6459a0SJoel Selvaraj			regulator-max-microvolt = <2968000>;
199dd6459a0SJoel Selvaraj			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
200dd6459a0SJoel Selvaraj		};
201dd6459a0SJoel Selvaraj
202dd6459a0SJoel Selvaraj		vreg_l23a_3p3: ldo23 {
203dd6459a0SJoel Selvaraj			regulator-min-microvolt = <3300000>;
204dd6459a0SJoel Selvaraj			regulator-max-microvolt = <3312000>;
205dd6459a0SJoel Selvaraj			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
206dd6459a0SJoel Selvaraj		};
207dd6459a0SJoel Selvaraj
208dd6459a0SJoel Selvaraj		vreg_l24a_3p075: ldo24 {
209dd6459a0SJoel Selvaraj			regulator-min-microvolt = <3088000>;
210dd6459a0SJoel Selvaraj			regulator-max-microvolt = <3088000>;
211dd6459a0SJoel Selvaraj			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
212dd6459a0SJoel Selvaraj		};
213dd6459a0SJoel Selvaraj
214dd6459a0SJoel Selvaraj		vreg_l25a_3p3: ldo25 {
215dd6459a0SJoel Selvaraj			regulator-min-microvolt = <3300000>;
216dd6459a0SJoel Selvaraj			regulator-max-microvolt = <3312000>;
217dd6459a0SJoel Selvaraj			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
218dd6459a0SJoel Selvaraj		};
219dd6459a0SJoel Selvaraj
220dd6459a0SJoel Selvaraj		vreg_l26a_1p2: ldo26 {
221dd6459a0SJoel Selvaraj			regulator-min-microvolt = <1200000>;
222dd6459a0SJoel Selvaraj			regulator-max-microvolt = <1200000>;
223dd6459a0SJoel Selvaraj			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
224dd6459a0SJoel Selvaraj			regulator-boot-on;
225dd6459a0SJoel Selvaraj		};
226dd6459a0SJoel Selvaraj	};
227dd6459a0SJoel Selvaraj};
228dd6459a0SJoel Selvaraj
229dd6459a0SJoel Selvaraj&cdsp_pas {
230dd6459a0SJoel Selvaraj	status = "okay";
231dd6459a0SJoel Selvaraj	firmware-name = "qcom/sdm845/beryllium/cdsp.mbn";
232dd6459a0SJoel Selvaraj};
233dd6459a0SJoel Selvaraj
234dd6459a0SJoel Selvaraj&gcc {
235dd6459a0SJoel Selvaraj	protected-clocks = <GCC_QSPI_CORE_CLK>,
236dd6459a0SJoel Selvaraj			   <GCC_QSPI_CORE_CLK_SRC>,
237dd6459a0SJoel Selvaraj			   <GCC_QSPI_CNOC_PERIPH_AHB_CLK>,
238dd6459a0SJoel Selvaraj			   <GCC_LPASS_Q6_AXI_CLK>,
239dd6459a0SJoel Selvaraj			   <GCC_LPASS_SWAY_CLK>;
240dd6459a0SJoel Selvaraj};
241dd6459a0SJoel Selvaraj
242dd6459a0SJoel Selvaraj&gmu {
243dd6459a0SJoel Selvaraj	status = "okay";
244dd6459a0SJoel Selvaraj};
245dd6459a0SJoel Selvaraj
246dd6459a0SJoel Selvaraj&gpu {
247dd6459a0SJoel Selvaraj	status = "okay";
248dd6459a0SJoel Selvaraj
249dd6459a0SJoel Selvaraj	zap-shader {
250dd6459a0SJoel Selvaraj		memory-region = <&gpu_mem>;
251dd6459a0SJoel Selvaraj		firmware-name = "qcom/sdm845/beryllium/a630_zap.mbn";
252dd6459a0SJoel Selvaraj	};
253dd6459a0SJoel Selvaraj};
254dd6459a0SJoel Selvaraj
255dd6459a0SJoel Selvaraj&ibb {
256dd6459a0SJoel Selvaraj	regulator-min-microvolt = <4600000>;
257dd6459a0SJoel Selvaraj	regulator-max-microvolt = <6000000>;
258dd6459a0SJoel Selvaraj	regulator-over-current-protection;
259dd6459a0SJoel Selvaraj	regulator-pull-down;
260dd6459a0SJoel Selvaraj	regulator-soft-start;
261dd6459a0SJoel Selvaraj	qcom,discharge-resistor-kohms = <300>;
262dd6459a0SJoel Selvaraj};
263dd6459a0SJoel Selvaraj
264dd6459a0SJoel Selvaraj&lab {
265dd6459a0SJoel Selvaraj	regulator-min-microvolt = <4600000>;
266dd6459a0SJoel Selvaraj	regulator-max-microvolt = <6000000>;
267dd6459a0SJoel Selvaraj	regulator-over-current-protection;
268dd6459a0SJoel Selvaraj	regulator-pull-down;
269dd6459a0SJoel Selvaraj	regulator-soft-start;
270dd6459a0SJoel Selvaraj};
271dd6459a0SJoel Selvaraj
272dd6459a0SJoel Selvaraj&mdss {
273dd6459a0SJoel Selvaraj	status = "okay";
274dd6459a0SJoel Selvaraj};
275dd6459a0SJoel Selvaraj
276dd6459a0SJoel Selvaraj&mdss_dsi0 {
277dd6459a0SJoel Selvaraj	status = "okay";
278dd6459a0SJoel Selvaraj	vdda-supply = <&vreg_l26a_1p2>;
279dd6459a0SJoel Selvaraj
280dd6459a0SJoel Selvaraj	display_panel: panel@0 {
281dd6459a0SJoel Selvaraj		reg = <0>;
282dd6459a0SJoel Selvaraj		vddio-supply = <&vreg_l14a_1p8>;
283dd6459a0SJoel Selvaraj		vddpos-supply = <&lab>;
284dd6459a0SJoel Selvaraj		vddneg-supply = <&ibb>;
285dd6459a0SJoel Selvaraj
286dd6459a0SJoel Selvaraj		backlight = <&pmi8998_wled>;
287dd6459a0SJoel Selvaraj		reset-gpios = <&tlmm 6 GPIO_ACTIVE_LOW>;
288dd6459a0SJoel Selvaraj
289dd6459a0SJoel Selvaraj		status = "disabled";
290dd6459a0SJoel Selvaraj
291dd6459a0SJoel Selvaraj		port {
292dd6459a0SJoel Selvaraj			panel_in_0: endpoint {
293dd6459a0SJoel Selvaraj				remote-endpoint = <&mdss_dsi0_out>;
294dd6459a0SJoel Selvaraj			};
295dd6459a0SJoel Selvaraj		};
296dd6459a0SJoel Selvaraj	};
297dd6459a0SJoel Selvaraj};
298dd6459a0SJoel Selvaraj
299dd6459a0SJoel Selvaraj&mdss_dsi0_out {
300dd6459a0SJoel Selvaraj	remote-endpoint = <&panel_in_0>;
301dd6459a0SJoel Selvaraj	data-lanes = <0 1 2 3>;
302dd6459a0SJoel Selvaraj};
303dd6459a0SJoel Selvaraj
304dd6459a0SJoel Selvaraj&mdss_dsi0_phy {
305dd6459a0SJoel Selvaraj	status = "okay";
306dd6459a0SJoel Selvaraj	vdds-supply = <&vreg_l1a_0p875>;
307a9a9e857SAlex Elder};
308dd6459a0SJoel Selvaraj
309dd6459a0SJoel Selvaraj&mss_pil {
310a9a9e857SAlex Elder	status = "okay";
311dd6459a0SJoel Selvaraj	firmware-name = "qcom/sdm845/beryllium/mba.mbn", "qcom/sdm845/beryllium/modem.mbn";
312dd6459a0SJoel Selvaraj};
313ea25d61bSMarijn Suijten
314dd6459a0SJoel Selvaraj&ipa {
315dd6459a0SJoel Selvaraj	qcom,gsi-loader = "self";
316dd6459a0SJoel Selvaraj	memory-region = <&ipa_fw_mem>;
317dd6459a0SJoel Selvaraj	firmware-name = "qcom/sdm845/beryllium/ipa_fws.mbn";
318dd6459a0SJoel Selvaraj	status = "okay";
319dd6459a0SJoel Selvaraj};
320dd6459a0SJoel Selvaraj
321dd6459a0SJoel Selvaraj&pm8998_gpios {
322dd6459a0SJoel Selvaraj	vol_up_pin_a: vol-up-active-state {
323*d20ad168SJoel Selvaraj		pins = "gpio6";
324*d20ad168SJoel Selvaraj		function = "normal";
325*d20ad168SJoel Selvaraj		input-enable;
326*d20ad168SJoel Selvaraj		bias-pull-up;
327*d20ad168SJoel Selvaraj		qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
328*d20ad168SJoel Selvaraj	};
329*d20ad168SJoel Selvaraj};
330*d20ad168SJoel Selvaraj
331*d20ad168SJoel Selvaraj&pmi8998_lpg {
332*d20ad168SJoel Selvaraj	status = "okay";
333dd6459a0SJoel Selvaraj
334dd6459a0SJoel Selvaraj	led@5 {
335dd6459a0SJoel Selvaraj		reg = <5>;
336dd6459a0SJoel Selvaraj		color = <LED_COLOR_ID_WHITE>;
337dd6459a0SJoel Selvaraj		function = LED_FUNCTION_STATUS;
338dd6459a0SJoel Selvaraj	};
339dd6459a0SJoel Selvaraj};
340dd6459a0SJoel Selvaraj
341dd6459a0SJoel Selvaraj&pmi8998_wled {
342dd6459a0SJoel Selvaraj	status = "okay";
343dd6459a0SJoel Selvaraj	qcom,current-boost-limit = <970>;
3444c881ab7SDzmitry Sankouski	qcom,ovp-millivolt = <29600>;
345dd6459a0SJoel Selvaraj	qcom,current-limit-microamp = <20000>;
3464c881ab7SDzmitry Sankouski	qcom,num-strings = <2>;
347dd6459a0SJoel Selvaraj	qcom,switching-freq = <600>;
348dd6459a0SJoel Selvaraj	qcom,external-pfet;
34953c54069SCaleb Connolly	qcom,cabc;
35053c54069SCaleb Connolly};
35153c54069SCaleb Connolly
35253c54069SCaleb Connolly&pmi8998_charger {
353dd6459a0SJoel Selvaraj	monitored-battery = <&battery>;
354dd6459a0SJoel Selvaraj
355dd6459a0SJoel Selvaraj	status = "okay";
356dd6459a0SJoel Selvaraj};
357dd6459a0SJoel Selvaraj
358dd6459a0SJoel Selvaraj&pm8998_resin {
359dd6459a0SJoel Selvaraj	linux,code = <KEY_VOLUMEDOWN>;
360dd6459a0SJoel Selvaraj	status = "okay";
361dd6459a0SJoel Selvaraj};
362dd6459a0SJoel Selvaraj
363dd6459a0SJoel Selvaraj/* QUAT I2S Uses 1 I2S SD Line for audio on TAS2559/60 amplifiers */
364dd6459a0SJoel Selvaraj&q6afedai {
365dd6459a0SJoel Selvaraj	dai@22 {
366dd6459a0SJoel Selvaraj		reg = <QUATERNARY_MI2S_RX>;
367dd6459a0SJoel Selvaraj		qcom,sd-lines = <0>;
368dd6459a0SJoel Selvaraj	};
369dd6459a0SJoel Selvaraj};
370dd6459a0SJoel Selvaraj
371dd6459a0SJoel Selvaraj&q6asmdai {
372dd6459a0SJoel Selvaraj	dai@0 {
373dd6459a0SJoel Selvaraj		reg = <0>;
374dd6459a0SJoel Selvaraj	};
375dd6459a0SJoel Selvaraj
376dd6459a0SJoel Selvaraj	dai@1 {
377dd6459a0SJoel Selvaraj		reg = <1>;
378dd6459a0SJoel Selvaraj	};
379dd6459a0SJoel Selvaraj
380dd6459a0SJoel Selvaraj	dai@2 {
381dd6459a0SJoel Selvaraj		reg = <2>;
382dd6459a0SJoel Selvaraj	};
383dd6459a0SJoel Selvaraj};
384dd6459a0SJoel Selvaraj
385dd6459a0SJoel Selvaraj&qupv3_id_0 {
386dd6459a0SJoel Selvaraj	status = "okay";
387dd6459a0SJoel Selvaraj};
388dd6459a0SJoel Selvaraj
389dd6459a0SJoel Selvaraj&sdhc_2 {
390dd6459a0SJoel Selvaraj	status = "okay";
391dd6459a0SJoel Selvaraj
392dd6459a0SJoel Selvaraj	pinctrl-names = "default";
393f7c45f3dSKrzysztof Kozlowski	pinctrl-0 = <&sdc2_default_state &sdc2_card_det_n>;
394dd6459a0SJoel Selvaraj
395dd6459a0SJoel Selvaraj	vmmc-supply = <&vreg_l21a_2p95>;
396dd6459a0SJoel Selvaraj	vqmmc-supply = <&vreg_l13a_2p95>;
397dd6459a0SJoel Selvaraj
398dd6459a0SJoel Selvaraj	bus-width = <4>;
399dd6459a0SJoel Selvaraj	cd-gpios = <&tlmm 126 GPIO_ACTIVE_HIGH>;
400dd6459a0SJoel Selvaraj};
401dd6459a0SJoel Selvaraj
402dd6459a0SJoel Selvaraj&sound {
403dd6459a0SJoel Selvaraj	compatible = "qcom,db845c-sndcard", "qcom,sdm845-sndcard";
404dd6459a0SJoel Selvaraj	pinctrl-0 = <&quat_mi2s_active
405dd6459a0SJoel Selvaraj			&quat_mi2s_sd0_active>;
406dd6459a0SJoel Selvaraj	pinctrl-names = "default";
407dd6459a0SJoel Selvaraj	model = "Xiaomi Poco F1";
408dd6459a0SJoel Selvaraj	audio-routing =
409dd6459a0SJoel Selvaraj		"RX_BIAS", "MCLK",
410dd6459a0SJoel Selvaraj		"AMIC1", "MIC BIAS1",
411dd6459a0SJoel Selvaraj		"AMIC2", "MIC BIAS2",
412dd6459a0SJoel Selvaraj		"AMIC3", "MIC BIAS3";
413dd6459a0SJoel Selvaraj
414dd6459a0SJoel Selvaraj	mm1-dai-link {
415dd6459a0SJoel Selvaraj		link-name = "MultiMedia1";
416dd6459a0SJoel Selvaraj		cpu {
417dd6459a0SJoel Selvaraj			sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA1>;
418dd6459a0SJoel Selvaraj		};
419dd6459a0SJoel Selvaraj	};
420dd6459a0SJoel Selvaraj
421dd6459a0SJoel Selvaraj	mm2-dai-link {
422dd6459a0SJoel Selvaraj		link-name = "MultiMedia2";
423dd6459a0SJoel Selvaraj		cpu {
424dd6459a0SJoel Selvaraj			sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA2>;
425dd6459a0SJoel Selvaraj		};
426dd6459a0SJoel Selvaraj	};
427dd6459a0SJoel Selvaraj
428dd6459a0SJoel Selvaraj	mm3-dai-link {
429dd6459a0SJoel Selvaraj		link-name = "MultiMedia3";
430dd6459a0SJoel Selvaraj		cpu {
431dd6459a0SJoel Selvaraj			sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA3>;
432dd6459a0SJoel Selvaraj		};
433dd6459a0SJoel Selvaraj	};
434dd6459a0SJoel Selvaraj
435dd6459a0SJoel Selvaraj	slim-dai-link {
436dd6459a0SJoel Selvaraj		link-name = "SLIM Playback";
437dd6459a0SJoel Selvaraj		cpu {
438dd6459a0SJoel Selvaraj			sound-dai = <&q6afedai SLIMBUS_0_RX>;
439dd6459a0SJoel Selvaraj		};
440dd6459a0SJoel Selvaraj
441dd6459a0SJoel Selvaraj		platform {
442dd6459a0SJoel Selvaraj			sound-dai = <&q6routing>;
443dd6459a0SJoel Selvaraj		};
444dd6459a0SJoel Selvaraj
445dd6459a0SJoel Selvaraj		codec {
446dd6459a0SJoel Selvaraj			sound-dai = <&wcd9340 0>;
447dd6459a0SJoel Selvaraj		};
448dd6459a0SJoel Selvaraj	};
449dd6459a0SJoel Selvaraj
450dd6459a0SJoel Selvaraj	slimcap-dai-link {
451dd6459a0SJoel Selvaraj		link-name = "SLIM Capture";
452dd6459a0SJoel Selvaraj		cpu {
453dd6459a0SJoel Selvaraj			sound-dai = <&q6afedai SLIMBUS_0_TX>;
454dd6459a0SJoel Selvaraj		};
455dd6459a0SJoel Selvaraj
456dd6459a0SJoel Selvaraj		platform {
457dd6459a0SJoel Selvaraj			sound-dai = <&q6routing>;
458dd6459a0SJoel Selvaraj		};
459d05e3428SKrzysztof Kozlowski
460d05e3428SKrzysztof Kozlowski		codec {
461dd6459a0SJoel Selvaraj			sound-dai = <&wcd9340 1>;
462dd6459a0SJoel Selvaraj		};
463dd6459a0SJoel Selvaraj	};
464dd6459a0SJoel Selvaraj};
465dd6459a0SJoel Selvaraj
466d05e3428SKrzysztof Kozlowski&tlmm {
467dd6459a0SJoel Selvaraj	gpio-reserved-ranges = <0 4>, <81 4>;
468dd6459a0SJoel Selvaraj
469dd6459a0SJoel Selvaraj	sdc2_default_state: sdc2-default-state {
470dd6459a0SJoel Selvaraj		clk-pins {
471dd6459a0SJoel Selvaraj			pins = "sdc2_clk";
472d05e3428SKrzysztof Kozlowski			bias-disable;
473dd6459a0SJoel Selvaraj			drive-strength = <16>;
474dd6459a0SJoel Selvaraj		};
475dd6459a0SJoel Selvaraj
476dd6459a0SJoel Selvaraj		cmd-pins {
477dd6459a0SJoel Selvaraj			pins = "sdc2_cmd";
478dd6459a0SJoel Selvaraj			bias-pull-up;
479d05e3428SKrzysztof Kozlowski			drive-strength = <10>;
480dd6459a0SJoel Selvaraj		};
481dd6459a0SJoel Selvaraj
482dd6459a0SJoel Selvaraj		data-pins {
483dd6459a0SJoel Selvaraj			pins = "sdc2_data";
484dd6459a0SJoel Selvaraj			bias-pull-up;
485dd6459a0SJoel Selvaraj			drive-strength = <10>;
486dd6459a0SJoel Selvaraj		};
487dd6459a0SJoel Selvaraj	};
488dd6459a0SJoel Selvaraj
489691dfbf5SCaleb Connolly	sdc2_card_det_n: sd-card-det-n-state {
490691dfbf5SCaleb Connolly		pins = "gpio126";
491dd6459a0SJoel Selvaraj		function = "gpio";
492dd6459a0SJoel Selvaraj		bias-pull-up;
493dd6459a0SJoel Selvaraj	};
494dd6459a0SJoel Selvaraj};
495dd6459a0SJoel Selvaraj
496dd6459a0SJoel Selvaraj&uart6 {
497dd6459a0SJoel Selvaraj	status = "okay";
498dd6459a0SJoel Selvaraj
499dd6459a0SJoel Selvaraj	pinctrl-0 = <&qup_uart6_4pin>;
500dd6459a0SJoel Selvaraj
501dd6459a0SJoel Selvaraj	bluetooth {
502dd6459a0SJoel Selvaraj		compatible = "qcom,wcn3990-bt";
503dd6459a0SJoel Selvaraj
504dd6459a0SJoel Selvaraj		vddio-supply = <&vreg_s4a_1p8>;
505dd6459a0SJoel Selvaraj		vddxo-supply = <&vreg_l7a_1p8>;
506dd6459a0SJoel Selvaraj		vddrf-supply = <&vreg_l17a_1p3>;
507dd6459a0SJoel Selvaraj		vddch0-supply = <&vreg_l25a_3p3>;
508dd6459a0SJoel Selvaraj		max-speed = <3200000>;
509dd6459a0SJoel Selvaraj	};
510dd6459a0SJoel Selvaraj};
511dd6459a0SJoel Selvaraj
512dd6459a0SJoel Selvaraj&ufs_mem_hc {
513dd6459a0SJoel Selvaraj	status = "okay";
514dd6459a0SJoel Selvaraj
515dd6459a0SJoel Selvaraj	reset-gpios = <&tlmm 150 GPIO_ACTIVE_LOW>;
516dd6459a0SJoel Selvaraj
517dd6459a0SJoel Selvaraj	vcc-supply = <&vreg_l20a_2p95>;
518dd6459a0SJoel Selvaraj	vcc-max-microamp = <800000>;
519dd6459a0SJoel Selvaraj};
520dd6459a0SJoel Selvaraj
521dd6459a0SJoel Selvaraj&ufs_mem_phy {
522dd6459a0SJoel Selvaraj	status = "okay";
523dd6459a0SJoel Selvaraj
524dd6459a0SJoel Selvaraj	vdda-phy-supply = <&vreg_l1a_0p875>;
525dd6459a0SJoel Selvaraj	vdda-pll-supply = <&vreg_l26a_1p2>;
526dd6459a0SJoel Selvaraj};
527dd6459a0SJoel Selvaraj
528dd6459a0SJoel Selvaraj&usb_1 {
529dd6459a0SJoel Selvaraj	status = "okay";
530dd6459a0SJoel Selvaraj};
531dd6459a0SJoel Selvaraj
532dd6459a0SJoel Selvaraj&usb_1_dwc3 {
533dd6459a0SJoel Selvaraj	dr_mode = "peripheral";
534dd6459a0SJoel Selvaraj};
535dd6459a0SJoel Selvaraj
536dd6459a0SJoel Selvaraj&usb_1_hsphy {
537dd6459a0SJoel Selvaraj	status = "okay";
538dd6459a0SJoel Selvaraj
539dd6459a0SJoel Selvaraj	vdd-supply = <&vreg_l1a_0p875>;
540dd6459a0SJoel Selvaraj	vdda-pll-supply = <&vreg_l12a_1p8>;
541dd6459a0SJoel Selvaraj	vdda-phy-dpdm-supply = <&vreg_l24a_3p075>;
542dd6459a0SJoel Selvaraj
543dd6459a0SJoel Selvaraj	qcom,imp-res-offset-value = <8>;
544dd6459a0SJoel Selvaraj	qcom,hstx-trim-value = <QUSB2_V2_HSTX_TRIM_21_6_MA>;
545dd6459a0SJoel Selvaraj	qcom,preemphasis-level = <QUSB2_V2_PREEMPHASIS_5_PERCENT>;
546dd6459a0SJoel Selvaraj	qcom,preemphasis-width = <QUSB2_V2_PREEMPHASIS_WIDTH_HALF_BIT>;
547dd6459a0SJoel Selvaraj};
548dd6459a0SJoel Selvaraj
549dd6459a0SJoel Selvaraj&usb_1_qmpphy {
550dd6459a0SJoel Selvaraj	status = "okay";
551dd6459a0SJoel Selvaraj
552dd6459a0SJoel Selvaraj	vdda-phy-supply = <&vreg_l26a_1p2>;
553dd6459a0SJoel Selvaraj	vdda-pll-supply = <&vreg_l1a_0p875>;
554dd6459a0SJoel Selvaraj};
555dd6459a0SJoel Selvaraj
556dd6459a0SJoel Selvaraj&venus {
557dd6459a0SJoel Selvaraj	status = "okay";
558dd6459a0SJoel Selvaraj	firmware-name = "qcom/sdm845/beryllium/venus.mbn";
559dd6459a0SJoel Selvaraj};
560dd6459a0SJoel Selvaraj
561dd6459a0SJoel Selvaraj&wcd9340 {
562dd6459a0SJoel Selvaraj	reset-gpios = <&tlmm 64 GPIO_ACTIVE_HIGH>;
563dd6459a0SJoel Selvaraj	vdd-buck-supply = <&vreg_s4a_1p8>;
564dd6459a0SJoel Selvaraj	vdd-buck-sido-supply = <&vreg_s4a_1p8>;
565dd6459a0SJoel Selvaraj	vdd-tx-supply = <&vreg_s4a_1p8>;
566dd6459a0SJoel Selvaraj	vdd-rx-supply = <&vreg_s4a_1p8>;
567dd6459a0SJoel Selvaraj	vdd-io-supply = <&vreg_s4a_1p8>;
568dd6459a0SJoel Selvaraj	qcom,micbias1-microvolt = <2700000>;
569dd6459a0SJoel Selvaraj	qcom,micbias2-microvolt = <1800000>;
570dd6459a0SJoel Selvaraj	qcom,micbias3-microvolt = <2700000>;
571dd6459a0SJoel Selvaraj	qcom,micbias4-microvolt = <2700000>;
572dd6459a0SJoel Selvaraj};
573
574&wifi {
575	status = "okay";
576
577	vdd-0.8-cx-mx-supply = <&vreg_l5a_0p8>;
578	vdd-1.8-xo-supply = <&vreg_l7a_1p8>;
579	vdd-1.3-rfa-supply = <&vreg_l17a_1p3>;
580	vdd-3.3-ch0-supply = <&vreg_l25a_3p3>;
581	vdd-3.3-ch1-supply = <&vreg_l23a_3p3>;
582};
583