1 // SPDX-License-Identifier: BSD-3-Clause
3 * Copyright (c) 2020, Konrad Dybcio
8 #include "msm8992.dtsi"
10 #include "pmi8994.dtsi"
11 #include <dt-bindings/gpio/gpio.h>
12 #include <dt-bindings/input/gpio-keys.h>
15 model = "Xiaomi Mi 4C";
16 compatible = "xiaomi,libra", "qcom,msm8992";
17 /* required for bootloader to select correct board */
18 qcom,msm-id = <251 0 252 0>;
19 qcom,pmic-id = <65545 65546 0 0>;
20 qcom,board-id = <12 0>;
22 /* This enables graphical output via bootloader-enabled display */
24 bootargs = "earlycon=tty0 console=tty0";
30 framebuffer0: framebuffer@3404000 {
32 compatible = "simple-framebuffer";
33 reg = <0 0x3404000 0 (1080 * 1920 * 3)>;
36 stride = <(1080 * 3)>;
42 compatible = "gpio-keys";
43 input-name = "gpio-keys";
50 gpios = <&pm8994_gpios 3 GPIO_ACTIVE_LOW>;
51 linux,input-type = <1>;
52 linux,code = <KEY_VOLUMEUP>;
54 debounce-interval = <15>;
63 /* This is for getting crash logs using Android downstream kernels */
65 compatible = "ramoops";
66 reg = <0x0 0xdfc00000 0x0 0x40000>;
67 console-size = <0x10000>;
68 record-size = <0x10000>;
69 ftrace-size = <0x10000>;
70 pmsg-size = <0x20000>;
73 modem_region: modem_region@9000000 {
74 reg = <0x0 0x9000000 0x0 0x5a00000>;
78 tzapp: modem_region@ea00000 {
79 reg = <0x0 0xea00000 0x0 0x1900000>;
88 /* Atmel or Synaptics touchscreen */
94 /* ST lsm6db0 gyro/accelerometer */
102 * TI USB320 Type-C controller,
103 * Pericom 30216a USB (de)mux switch
110 /* cm36686 proximity and ambient light sensor */
116 /* Silabs si4705 FM transmitter */
124 reg = <0x0 0x7400000 0x0 0x1c00000>;
130 compatible = "qcom,rpm-pm8994-regulators";
132 vdd_l1-supply = <&pm8994_s7>;
133 vdd_l2_26_28-supply = <&pm8994_s3>;
134 vdd_l3_11-supply = <&pm8994_s3>;
135 vdd_l4_27_31-supply = <&pm8994_s3>;
136 vdd_l5_7-supply = <&pm8994_s3>;
137 vdd_l6_12_32-supply = <&pm8994_s5>;
138 vdd_l8_16_30-supply = <&vph_pwr>;
139 vdd_l9_10_18_22-supply = <&vph_pwr>;
140 vdd_l13_19_23_24-supply = <&vph_pwr>;
141 vdd_l14_15-supply = <&pm8994_s5>;
142 vdd_l17_29-supply = <&vph_pwr>;
143 vdd_l20_21-supply = <&vph_pwr>;
144 vdd_l25-supply = <&pm8994_s5>;
145 vdd_lvs1_2 = <&pm8994_s4>;
147 /* S1, S2, S6 and S12 are managed by RPMPD */
150 regulator-min-microvolt = <1300000>;
151 regulator-max-microvolt = <1300000>;
155 regulator-min-microvolt = <1800000>;
156 regulator-max-microvolt = <1800000>;
157 regulator-allow-set-load;
159 regulator-system-load = <325000>;
163 regulator-min-microvolt = <2150000>;
164 regulator-max-microvolt = <2150000>;
168 regulator-min-microvolt = <1000000>;
169 regulator-max-microvolt = <1000000>;
172 /* S8, S9, S10 and S11 - SPMI-managed VDD_APC */
175 regulator-min-microvolt = <1000000>;
176 regulator-max-microvolt = <1000000>;
180 regulator-min-microvolt = <1250000>;
181 regulator-max-microvolt = <1250000>;
185 regulator-min-microvolt = <1200000>;
186 regulator-max-microvolt = <1200000>;
190 regulator-min-microvolt = <1225000>;
191 regulator-max-microvolt = <1225000>;
194 /* L5 is inaccessible from RPM */
197 regulator-min-microvolt = <1800000>;
198 regulator-max-microvolt = <1800000>;
201 /* L7 is inaccessible from RPM */
204 regulator-min-microvolt = <1800000>;
205 regulator-max-microvolt = <1800000>;
209 regulator-min-microvolt = <1800000>;
210 regulator-max-microvolt = <1800000>;
214 regulator-min-microvolt = <1800000>;
215 regulator-max-microvolt = <1800000>;
219 regulator-min-microvolt = <1200000>;
220 regulator-max-microvolt = <1200000>;
224 regulator-min-microvolt = <1800000>;
225 regulator-max-microvolt = <1800000>;
229 regulator-min-microvolt = <1800000>;
230 regulator-max-microvolt = <2950000>;
234 regulator-min-microvolt = <1800000>;
235 regulator-max-microvolt = <1800000>;
239 regulator-min-microvolt = <1800000>;
240 regulator-max-microvolt = <1800000>;
244 regulator-min-microvolt = <2700000>;
245 regulator-max-microvolt = <2700000>;
249 regulator-min-microvolt = <2700000>;
250 regulator-max-microvolt = <2700000>;
254 regulator-min-microvolt = <2850000>;
255 regulator-max-microvolt = <2850000>;
260 regulator-min-microvolt = <2800000>;
261 regulator-max-microvolt = <2800000>;
265 regulator-min-microvolt = <2950000>;
266 regulator-max-microvolt = <2950000>;
269 regulator-allow-set-load;
270 regulator-system-load = <570000>;
274 regulator-min-microvolt = <2950000>;
275 regulator-max-microvolt = <2950000>;
280 regulator-min-microvolt = <3000000>;
281 regulator-max-microvolt = <3000000>;
285 regulator-min-microvolt = <2800000>;
286 regulator-max-microvolt = <2800000>;
290 regulator-min-microvolt = <3075000>;
291 regulator-max-microvolt = <3150000>;
295 regulator-min-microvolt = <1000000>;
296 regulator-max-microvolt = <1000000>;
300 regulator-min-microvolt = <987500>;
301 regulator-max-microvolt = <987500>;
306 regulator-min-microvolt = <1050000>;
307 regulator-max-microvolt = <1050000>;
311 regulator-min-microvolt = <1000000>;
312 regulator-max-microvolt = <1000000>;
316 regulator-min-microvolt = <2800000>;
317 regulator-max-microvolt = <2800000>;
321 regulator-min-microvolt = <1800000>;
322 regulator-max-microvolt = <1800000>;
326 regulator-min-microvolt = <1262500>;
327 regulator-max-microvolt = <1262500>;
331 regulator-min-microvolt = <1800000>;
332 regulator-max-microvolt = <1800000>;
335 pm8994_lvs1: lvs1 {};
336 pm8994_lvs2: lvs2 {};
339 pmi8994_regulators: pmi8994-regulators {
340 compatible = "qcom,rpm-pmi8994-regulators";
341 vdd_s1-supply = <&vph_pwr>;
342 vdd_bst_byp-supply = <&vph_pwr>;
345 regulator-min-microvolt = <1025000>;
346 regulator-max-microvolt = <1025000>;
349 /* S2 & S3 - VDD_GFX */
351 pmi8994_bby: boost-bypass {
352 regulator-min-microvolt = <3150000>;
353 regulator-max-microvolt = <3600000>;
362 vmmc-supply = <&pm8994_l20>;
363 vqmmc-supply = <&pm8994_s4>;