1 // SPDX-License-Identifier: BSD-3-Clause
3 * Copyright (c) 2022, Alec Su <ae40515@yahoo.com.tw>
8 #include "msm8996pro.dtsi"
9 #include "msm8996-xiaomi-common.dtsi"
10 #include "pmi8996.dtsi"
11 #include <dt-bindings/sound/qcom,q6afe.h>
12 #include <dt-bindings/sound/qcom,q6asm.h>
15 model = "Xiaomi Mi 5s Plus";
16 compatible = "xiaomi,natrium", "qcom,msm8996pro", "qcom,msm8996";
17 chassis-type = "handset";
18 qcom,msm-id = <305 0x10000>;
19 qcom,board-id = <47 0>;
23 firmware-name = "qcom/msm8996/natrium/adsp.mbn";
28 compatible = "syna,rmi4-i2c";
30 interrupt-parent = <&tlmm>;
31 interrupts = <125 IRQ_TYPE_LEVEL_LOW>;
32 vdd-supply = <&vdd_3v2_tp>;
33 syna,reset-delay-ms = <200>;
34 syna,startup-delay-ms = <5>;
36 pinctrl-names = "default", "sleep";
37 pinctrl-0 = <&touchscreen_default>;
38 pinctrl-1 = <&touchscreen_sleep>;
44 firmware-name = "qcom/msm8996/natrium/a530_zap.mbn";
51 vdda-supply = <&vreg_l2a_1p25>;
52 vcca-supply = <&vreg_l28a_0p925>;
54 pinctrl-names = "default", "sleep";
55 pinctrl-0 = <&mdss_dsi_default &mdss_te_default>;
56 pinctrl-1 = <&mdss_dsi_sleep &mdss_te_sleep>;
59 compatible = "jdi,fhd-r63452";
61 reset-gpios = <&tlmm 8 GPIO_ACTIVE_LOW>;
62 backlight = <&pmi8994_wled>;
66 remote-endpoint = <&mdss_dsi0_out>;
73 remote-endpoint = <&panel_in>;
77 firmware-name = "qcom/msm8996/natrium/mba.mbn",
78 "qcom/msm8996/natrium/modem.mbn";
84 qcom,enabled-strings = <0 1>;
85 qcom,switching-freq = <600>;
103 firmware-name = "qcom/msm8996/natrium/slpi.mbn";
107 compatible = "qcom,apq8096-sndcard";
109 audio-routing = "RX_BIAS", "MCLK";
112 link-name = "MultiMedia1";
114 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA1>;
119 link-name = "MultiMedia2";
121 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA2>;
126 link-name = "MultiMedia3";
128 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA3>;
133 link-name = "SLIM Playback";
135 sound-dai = <&q6afedai SLIMBUS_6_RX>;
139 sound-dai = <&q6routing>;
143 sound-dai = <&wcd9335 6>;
148 link-name = "SLIM Capture";
150 sound-dai = <&q6afedai SLIMBUS_0_TX>;
154 sound-dai = <&q6routing>;
158 sound-dai = <&wcd9335 1>;
164 firmware-name = "qcom/msm8996/natrium/venus.mbn";
170 regulator-name = "vreg_l3a_0p875";
171 regulator-min-microvolt = <850000>;
172 regulator-max-microvolt = <1300000>;
175 regulator-name = "vreg_l11a_1p1";
176 regulator-min-microvolt = <1100000>;
177 regulator-max-microvolt = <1100000>;
180 regulator-name = "vreg_l17a_2p8";
181 regulator-min-microvolt = <2800000>;
182 regulator-max-microvolt = <2800000>;
185 regulator-name = "vreg_l18a_2p8";
186 regulator-min-microvolt = <2800000>;
187 regulator-max-microvolt = <2800000>;
190 regulator-name = "vreg_l29a_2p8";
191 regulator-min-microvolt = <2800000>;
192 regulator-max-microvolt = <2800000>;
200 "VOL_UP_N", /* GPIO_2 */
201 "SPKR_ID", /* GPIO_3 */
202 "PWM_HAPTICS", /* GPIO_4 */
203 "INFARED_DRV", /* GPIO_5 */
205 "KEYPAD_LED_EN_A", /* GPIO_7 */
206 "WL_EN", /* GPIO_8 */
207 "3P3_ENABLE", /* GPIO_9 */
213 "DIVCLK1_CDC", /* GPIO_15 */
214 "DIVCLK2_HAPTICS", /* GPIO_16 */
216 "32KHz_CLK_IN", /* GPIO_18 */
217 "BT_EN", /* GPIO_19 */
218 "PMIC_SLB", /* GPIO_20 */
219 "UIM_BATT_ALARM", /* GPIO_21 */
226 "CCI_TIMER1", /* MPP_2 */
227 "PMIC_SLB", /* MPP_3 */
228 "EXT_FET_WLED_PWR_EN_N",/* MPP_4 */
238 "SPKR_PA_EN", /* GPIO_2 */
251 "ESE_SPI_MOSI", /* GPIO_0 */
252 "ESE_SPI_MISO", /* GPIO_1 */
254 "ESE_SPI_CLK", /* GPIO_3 */
255 "MSM_UART_TX", /* GPIO_4 */
256 "MSM_UART_RX", /* GPIO_5 */
257 "NFC_I2C_SDA", /* GPIO_6 */
258 "NFC_I2C_SCL", /* GPIO_7 */
259 "LCD0_RESET_N", /* GPIO_8 */
260 "NFC_IRQ", /* GPIO_9 */
261 "LCD_TE", /* GPIO_10 */
262 "LCD_ID_DET1", /* GPIO_11 */
263 "NFC_DISABLE", /* GPIO_12 */
264 "CAM_MCLK0", /* GPIO_13 */
265 "CAM_MCLK1", /* GPIO_14 */
266 "CAM_MCLK2", /* GPIO_15 */
267 "ESE_PWR_REQ", /* GPIO_16 */
268 "CCI_I2C_SDA0", /* GPIO_17 */
269 "CCI_I2C_SCL0", /* GPIO_18 */
270 "CCI_I2C_SDA1", /* GPIO_19 */
271 "CCI_I2C_SCL1", /* GPIO_20 */
272 "NFC_DWL_REQ", /* GPIO_21 */
273 "CCI_TIMER1", /* GPIO_22 */
274 "WEBCAM1_RESET_N", /* GPIO_23 */
275 "ESE_IRQ", /* GPIO_24 */
277 "WEBCAM1_STANDBY", /* GPIO_26 */
281 "CAM_VDD_1P2_EN_2", /* GPIO_30 */
282 "CAM_RESET_0", /* GPIO_31 */
283 "CAM_RESET_1", /* GPIO_32 */
286 "PCI_E0_RST_N", /* GPIO_35 */
287 "PCI_E0_CLKREQ_N", /* GPIO_36 */
288 "PCI_E0_WAKE", /* GPIO_37 */
289 "CHARGER_INT", /* GPIO_38 */
290 "CHARGER_RESET", /* GPIO_39 */
292 "QCA_UART_TXD", /* GPIO_41 */
293 "QCA_UART_RXD", /* GPIO_42 */
294 "QCA_UART_CTS", /* GPIO_43 */
295 "QCA_UART_RTS", /* GPIO_44 */
296 "MAWC_UART_TX", /* GPIO_45 */
297 "MAWC_UART_RX", /* GPIO_46 */
301 "FP_SPI_RST", /* GPIO_50 */
302 "TYPEC_I2C_SDA", /* GPIO_51 */
303 "TYPEC_I2C_SCL", /* GPIO_52 */
304 "CODEC_INT2_N", /* GPIO_53 */
305 "CODEC_INT1_N", /* GPIO_54 */
306 "APPS_I2C7_SDA", /* GPIO_55 */
307 "APPS_I2C7_SCL", /* GPIO_56 */
308 "FORCE_USB_BOOT", /* GPIO_57 */
313 "ESE_RSTN", /* GPIO_62 */
314 "TYPEC_INT", /* GPIO_63 */
315 "CODEC_RESET_N", /* GPIO_64 */
316 "PCM_CLK", /* GPIO_65 */
317 "PCM_SYNC", /* GPIO_66 */
318 "PCM_DIN", /* GPIO_67 */
319 "PCM_DOUT", /* GPIO_68 */
320 "CDC_44K1_CLK", /* GPIO_69 */
321 "SLIMBUS_CLK", /* GPIO_70 */
322 "SLIMBUS_DATA0", /* GPIO_71 */
323 "SLIMBUS_DATA1", /* GPIO_72 */
324 "LDO_5V_IN_EN", /* GPIO_73 */
325 "TYPEC_EN_N", /* GPIO_74 */
331 "SENSOR_RESET_N", /* GPIO_80 */
332 "FP_SPI_MOSI", /* GPIO_81 */
333 "FP_SPI_MISO", /* GPIO_82 */
334 "FP_SPI_CS_N", /* GPIO_83 */
335 "FP_SPI_CLK", /* GPIO_84 */
337 "CAM_VDD_1P2_EN", /* GPIO_86 */
338 "MSM_TS_I2C_SDA", /* GPIO_87 */
339 "MSM_TS_I2C_SCL", /* GPIO_88 */
340 "TS_RESOUT_N", /* GPIO_89 */
341 "ESE_SPI_CS_N", /* GPIO_90 */
343 "CAM2_AVDD_EN", /* GPIO_92 */
344 "CAM2_VCM_EN", /* GPIO_93 */
348 "GRFC_0", /* GPIO_97 */
349 "GRFC_1", /* GPIO_98 */
351 "GRFC_3", /* GPIO_100 */
352 "GRFC_4", /* GPIO_101 */
353 "GRFC_5", /* GPIO_102 */
355 "GRFC_7", /* GPIO_104 */
356 "UIM2_DATA", /* GPIO_105 */
357 "UIM2_CLK", /* GPIO_106 */
358 "UIM2_RESET", /* GPIO_107 */
359 "UIM2_PRESENT", /* GPIO_108 */
360 "UIM1_DATA", /* GPIO_109 */
361 "UIM1_CLK", /* GPIO_110 */
362 "UIM1_RESET", /* GPIO_111 */
363 "UIM1_PRESENT", /* GPIO_112 */
364 "UIM_BATT_ALARM", /* GPIO_113 */
365 "GRFC_8", /* GPIO_114 */
366 "GRFC_9", /* GPIO_115 */
367 "TX_GTR_THRES", /* GPIO_116 */
368 "ACCEL_INT", /* GPIO_117 */
369 "GYRO_INT", /* GPIO_118 */
370 "COMPASS_INT", /* GPIO_119 */
371 "PROXIMITY_INT_N", /* GPIO_120 */
372 "FP_IRQ", /* GPIO_121 */
373 "P_SENSE", /* GPIO_122 */
374 "HALL_INTR2", /* GPIO_123 */
375 "HALL_INTR1", /* GPIO_124 */
376 "TS_INT_N", /* GPIO_125 */
378 "GRFC_11", /* GPIO_127 */
380 "EXT_GPS_LNA_EN", /* GPIO_129 */
382 "LCD_ID_DET2", /* GPIO_131 */
383 "LCD_TE2", /* GPIO_132 */
384 "GRFC_14", /* GPIO_133 */
385 "GSM_TX2_PHASE_D", /* GPIO_134 */
387 "GRFC_15", /* GPIO_136 */
388 "RFFE3_DATA", /* GPIO_137 */
389 "RFFE3_CLK", /* GPIO_138 */
392 "RFFE5_DATA", /* GPIO_141 */
393 "RFFE5_CLK", /* GPIO_142 */
395 "COEX_UART_TX", /* GPIO_144 */
396 "COEX_UART_RX", /* GPIO_145 */
397 "RFFE2_DATA", /* GPIO_146 */
398 "RFFE2_CLK", /* GPIO_147 */
399 "RFFE1_DATA", /* GPIO_148 */
400 "RFFE1_CLK"; /* GPIO_149 */
402 touchscreen_default: touchscreen-default-state {
403 pins = "gpio89", "gpio125";
405 drive-strength = <10>;
409 touchscreen_sleep: touchscreen-sleep-state {
410 pins = "gpio89", "gpio125";
412 drive-strength = <2>;