1 // SPDX-License-Identifier: GPL-2.0
5 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
6 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
7 #include <dt-bindings/sound/qcom,q6afe.h>
8 #include <dt-bindings/sound/qcom,q6asm.h>
10 #include "pm8998.dtsi"
11 #include "pmi8998.dtsi"
14 * Delete following upstream (sdm845.dtsi) reserved
15 * memory mappings which are different in this device.
17 /delete-node/ &tz_mem;
18 /delete-node/ &adsp_mem;
19 /delete-node/ &wlan_msa_mem;
20 /delete-node/ &mpss_region;
21 /delete-node/ &venus_mem;
22 /delete-node/ &cdsp_mem;
23 /delete-node/ &mba_region;
24 /delete-node/ &slpi_mem;
25 /delete-node/ &spss_mem;
26 /delete-node/ &rmtfs_mem;
29 model = "Xiaomi Pocophone F1";
30 compatible = "xiaomi,beryllium", "qcom,sdm845";
31 chassis-type = "handset";
33 /* required for bootloader to select correct board */
34 qcom,board-id = <69 0>;
35 qcom,msm-id = <321 0x20001>;
42 compatible = "gpio-keys";
45 pinctrl-names = "default";
46 pinctrl-0 = <&vol_up_pin_a>;
50 linux,code = <KEY_VOLUMEUP>;
51 gpios = <&pm8998_gpio 6 GPIO_ACTIVE_LOW>;
55 /* Reserved memory changes from downstream */
57 tz_mem: memory@86200000 {
58 reg = <0 0x86200000 0 0x4900000>;
62 adsp_mem: memory@8c500000 {
63 reg = <0 0x8c500000 0 0x1e00000>;
67 wlan_msa_mem: memory@8e300000 {
68 reg = <0 0x8e300000 0 0x100000>;
72 mpss_region: memory@8e400000 {
73 reg = <0 0x8e400000 0 0x7800000>;
77 venus_mem: memory@95c00000 {
78 reg = <0 0x95c00000 0 0x500000>;
82 cdsp_mem: memory@96100000 {
83 reg = <0 0x96100000 0 0x800000>;
87 mba_region: memory@96900000 {
88 reg = <0 0x96900000 0 0x200000>;
92 slpi_mem: memory@96b00000 {
93 reg = <0 0x96b00000 0 0x1400000>;
97 spss_mem: memory@97f00000 {
98 reg = <0 0x97f00000 0 0x100000>;
102 rmtfs_mem: memory@f6301000 {
103 compatible = "qcom,rmtfs-mem";
104 reg = <0 0xf6301000 0 0x200000>;
107 qcom,client-id = <1>;
112 vreg_s4a_1p8: vreg-s4a-1p8 {
113 compatible = "regulator-fixed";
114 regulator-name = "vreg_s4a_1p8";
116 regulator-min-microvolt = <1800000>;
117 regulator-max-microvolt = <1800000>;
124 firmware-name = "qcom/sdm845/beryllium/adsp.mbn";
128 pm8998-rpmh-regulators {
129 compatible = "qcom,pm8998-rpmh-regulators";
132 vreg_l1a_0p875: ldo1 {
133 regulator-min-microvolt = <880000>;
134 regulator-max-microvolt = <880000>;
135 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
139 regulator-min-microvolt = <800000>;
140 regulator-max-microvolt = <800000>;
141 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
145 regulator-min-microvolt = <1800000>;
146 regulator-max-microvolt = <1800000>;
147 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
150 vreg_l12a_1p8: ldo12 {
151 regulator-min-microvolt = <1800000>;
152 regulator-max-microvolt = <1800000>;
153 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
156 vreg_l13a_2p95: ldo13 {
157 regulator-min-microvolt = <1800000>;
158 regulator-max-microvolt = <2960000>;
159 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
162 vreg_l14a_1p8: ldo14 {
163 regulator-min-microvolt = <1800000>;
164 regulator-max-microvolt = <1800000>;
165 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
170 vreg_l17a_1p3: ldo17 {
171 regulator-min-microvolt = <1304000>;
172 regulator-max-microvolt = <1304000>;
173 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
176 vreg_l20a_2p95: ldo20 {
177 regulator-min-microvolt = <2960000>;
178 regulator-max-microvolt = <2968000>;
179 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
182 vreg_l21a_2p95: ldo21 {
183 regulator-min-microvolt = <2960000>;
184 regulator-max-microvolt = <2968000>;
185 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
188 vreg_l23a_3p3: ldo23 {
189 regulator-min-microvolt = <3300000>;
190 regulator-max-microvolt = <3312000>;
191 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
194 vreg_l24a_3p075: ldo24 {
195 regulator-min-microvolt = <3088000>;
196 regulator-max-microvolt = <3088000>;
197 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
200 vreg_l25a_3p3: ldo25 {
201 regulator-min-microvolt = <3300000>;
202 regulator-max-microvolt = <3312000>;
203 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
206 vreg_l26a_1p2: ldo26 {
207 regulator-min-microvolt = <1200000>;
208 regulator-max-microvolt = <1200000>;
209 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
217 firmware-name = "qcom/sdm845/beryllium/cdsp.mbn";
222 vdda-supply = <&vreg_l26a_1p2>;
225 compatible = "tianma,fhd-video";
227 vddio-supply = <&vreg_l14a_1p8>;
228 vddpos-supply = <&lab>;
229 vddneg-supply = <&ibb>;
231 #address-cells = <1>;
234 backlight = <&pmi8998_wled>;
235 reset-gpios = <&tlmm 6 GPIO_ACTIVE_LOW>;
238 tianma_nt36672a_in_0: endpoint {
239 remote-endpoint = <&dsi0_out>;
246 remote-endpoint = <&tianma_nt36672a_in_0>;
247 data-lanes = <0 1 2 3>;
252 vdds-supply = <&vreg_l1a_0p875>;
256 protected-clocks = <GCC_QSPI_CORE_CLK>,
257 <GCC_QSPI_CORE_CLK_SRC>,
258 <GCC_QSPI_CNOC_PERIPH_AHB_CLK>,
259 <GCC_LPASS_Q6_AXI_CLK>,
260 <GCC_LPASS_SWAY_CLK>;
271 memory-region = <&gpu_mem>;
272 firmware-name = "qcom/sdm845/beryllium/a630_zap.mbn";
277 regulator-min-microvolt = <4600000>;
278 regulator-max-microvolt = <6000000>;
279 regulator-over-current-protection;
281 regulator-soft-start;
282 qcom,discharge-resistor-kohms = <300>;
286 regulator-min-microvolt = <4600000>;
287 regulator-max-microvolt = <6000000>;
288 regulator-over-current-protection;
290 regulator-soft-start;
299 firmware-name = "qcom/sdm845/beryllium/mba.mbn", "qcom/sdm845/beryllium/modem.mbn";
304 memory-region = <&ipa_fw_mem>;
305 firmware-name = "qcom/sdm845/beryllium/ipa_fws.mbn";
309 vol_up_pin_a: vol-up-active-state {
314 qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
320 qcom,current-boost-limit = <970>;
321 qcom,ovp-millivolt = <29600>;
322 qcom,current-limit-microamp = <20000>;
323 qcom,num-strings = <2>;
324 qcom,switching-freq = <600>;
331 compatible = "qcom,pm8941-resin";
332 interrupts = <0x0 0x8 1 IRQ_TYPE_EDGE_BOTH>;
335 linux,code = <KEY_VOLUMEDOWN>;
339 /* QUAT I2S Uses 1 I2S SD Line for audio on TAS2559/60 amplifiers */
342 reg = <QUATERNARY_MI2S_RX>;
368 pinctrl-names = "default";
369 pinctrl-0 = <&sdc2_default_state &sdc2_card_det_n>;
371 vmmc-supply = <&vreg_l21a_2p95>;
372 vqmmc-supply = <&vreg_l13a_2p95>;
375 cd-gpios = <&tlmm 126 GPIO_ACTIVE_HIGH>;
379 compatible = "qcom,db845c-sndcard";
380 pinctrl-0 = <&quat_mi2s_active
381 &quat_mi2s_sd0_active>;
382 pinctrl-names = "default";
383 model = "Xiaomi Poco F1";
386 "AMIC1", "MIC BIAS1",
387 "AMIC2", "MIC BIAS2",
388 "AMIC3", "MIC BIAS3";
391 link-name = "MultiMedia1";
393 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA1>;
398 link-name = "MultiMedia2";
400 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA2>;
405 link-name = "MultiMedia3";
407 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA3>;
412 link-name = "SLIM Playback";
414 sound-dai = <&q6afedai SLIMBUS_0_RX>;
418 sound-dai = <&q6routing>;
422 sound-dai = <&wcd9340 0>;
427 link-name = "SLIM Capture";
429 sound-dai = <&q6afedai SLIMBUS_0_TX>;
433 sound-dai = <&q6routing>;
437 sound-dai = <&wcd9340 1>;
443 gpio-reserved-ranges = <0 4>, <81 4>;
445 sdc2_default_state: sdc2-default {
449 drive-strength = <16>;
455 drive-strength = <10>;
461 drive-strength = <10>;
465 sdc2_card_det_n: sd-card-det-n {
471 wcd_intr_default: wcd_intr_default {
477 drive-strength = <2>;
485 compatible = "qcom,wcn3990-bt";
487 vddio-supply = <&vreg_s4a_1p8>;
488 vddxo-supply = <&vreg_l7a_1p8>;
489 vddrf-supply = <&vreg_l17a_1p3>;
490 vddch0-supply = <&vreg_l25a_3p3>;
491 max-speed = <3200000>;
498 reset-gpios = <&tlmm 150 GPIO_ACTIVE_LOW>;
500 vcc-supply = <&vreg_l20a_2p95>;
501 vcc-max-microamp = <800000>;
507 vdda-phy-supply = <&vreg_l1a_0p875>;
508 vdda-pll-supply = <&vreg_l26a_1p2>;
516 dr_mode = "peripheral";
522 vdd-supply = <&vreg_l1a_0p875>;
523 vdda-pll-supply = <&vreg_l12a_1p8>;
524 vdda-phy-dpdm-supply = <&vreg_l24a_3p075>;
526 qcom,imp-res-offset-value = <8>;
527 qcom,hstx-trim-value = <QUSB2_V2_HSTX_TRIM_21_6_MA>;
528 qcom,preemphasis-level = <QUSB2_V2_PREEMPHASIS_5_PERCENT>;
529 qcom,preemphasis-width = <QUSB2_V2_PREEMPHASIS_WIDTH_HALF_BIT>;
535 vdda-phy-supply = <&vreg_l26a_1p2>;
536 vdda-pll-supply = <&vreg_l1a_0p875>;
541 firmware-name = "qcom/sdm845/beryllium/venus.mbn";
545 pinctrl-0 = <&wcd_intr_default>;
546 pinctrl-names = "default";
547 clock-names = "extclk";
548 clocks = <&rpmhcc RPMH_LN_BB_CLK2>;
549 reset-gpios = <&tlmm 64 0>;
550 vdd-buck-supply = <&vreg_s4a_1p8>;
551 vdd-buck-sido-supply = <&vreg_s4a_1p8>;
552 vdd-tx-supply = <&vreg_s4a_1p8>;
553 vdd-rx-supply = <&vreg_s4a_1p8>;
554 vdd-io-supply = <&vreg_s4a_1p8>;
555 qcom,micbias1-microvolt = <2700000>;
556 qcom,micbias2-microvolt = <1800000>;
557 qcom,micbias3-microvolt = <2700000>;
558 qcom,micbias4-microvolt = <2700000>;
564 vdd-0.8-cx-mx-supply = <&vreg_l5a_0p8>;
565 vdd-1.8-xo-supply = <&vreg_l7a_1p8>;
566 vdd-1.3-rfa-supply = <&vreg_l17a_1p3>;
567 vdd-3.3-ch0-supply = <&vreg_l25a_3p3>;
568 vdd-3.3-ch1-supply = <&vreg_l23a_3p3>;
571 /* PINCTRL - additions to nodes defined in sdm845.dtsi */
575 pins = "gpio45", "gpio46", "gpio47", "gpio48";
585 pins = "gpio46", "gpio47";
586 drive-strength = <2>;