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