Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: BSD-3-Clause
0002 /*
0003  * Copyright (c) 2020, The Linux Foundation. All rights reserved.
0004  */
0005 
0006 /dts-v1/;
0007 
0008 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
0009 #include <dt-bindings/sound/qcom,q6afe.h>
0010 #include <dt-bindings/sound/qcom,q6asm.h>
0011 #include <dt-bindings/gpio/gpio.h>
0012 #include "sm8250.dtsi"
0013 #include "pm8150.dtsi"
0014 #include "pm8150b.dtsi"
0015 #include "pm8150l.dtsi"
0016 #include "pm8009.dtsi"
0017 
0018 / {
0019         model = "Qualcomm Technologies, Inc. SM8250 MTP";
0020         compatible = "qcom,sm8250-mtp", "qcom,sm8250";
0021 
0022         aliases {
0023                 serial0 = &uart12;
0024         };
0025 
0026         chosen {
0027                 stdout-path = "serial0:115200n8";
0028         };
0029 
0030         thermal-zones {
0031                 camera-thermal {
0032                         polling-delay-passive = <0>;
0033                         polling-delay = <0>;
0034                         thermal-sensors = <&pm8150l_adc_tm 0>;
0035 
0036                         trips {
0037                                 active-config0 {
0038                                         temperature = <125000>;
0039                                         hysteresis = <1000>;
0040                                         type = "passive";
0041                                 };
0042                         };
0043                 };
0044 
0045                 conn-thermal {
0046                         polling-delay-passive = <0>;
0047                         polling-delay = <0>;
0048                         thermal-sensors = <&pm8150b_adc_tm 0>;
0049 
0050                         trips {
0051                                 active-config0 {
0052                                         temperature = <125000>;
0053                                         hysteresis = <1000>;
0054                                         type = "passive";
0055                                 };
0056                         };
0057                 };
0058 
0059                 mmw-pa1-thermal {
0060                         polling-delay-passive = <0>;
0061                         polling-delay = <0>;
0062                         thermal-sensors = <&pm8150_adc_tm 2>;
0063 
0064                         trips {
0065                                 active-config0 {
0066                                         temperature = <125000>;
0067                                         hysteresis = <1000>;
0068                                         type = "passive";
0069                                 };
0070                         };
0071                 };
0072 
0073                 mmw-pa2-thermal {
0074                         polling-delay-passive = <0>;
0075                         polling-delay = <0>;
0076                         thermal-sensors = <&pm8150l_adc_tm 2>;
0077 
0078                         trips {
0079                                 active-config0 {
0080                                         temperature = <125000>;
0081                                         hysteresis = <1000>;
0082                                         type = "passive";
0083                                 };
0084                         };
0085                 };
0086 
0087                 skin-msm-thermal {
0088                         polling-delay-passive = <0>;
0089                         polling-delay = <0>;
0090                         thermal-sensors = <&pm8150l_adc_tm 1>;
0091 
0092                         trips {
0093                                 active-config0 {
0094                                         temperature = <125000>;
0095                                         hysteresis = <1000>;
0096                                         type = "passive";
0097                                 };
0098                         };
0099                 };
0100 
0101                 skin-thermal {
0102                         polling-delay-passive = <0>;
0103                         polling-delay = <0>;
0104                         thermal-sensors = <&pm8150_adc_tm 1>;
0105 
0106                         trips {
0107                                 active-config0 {
0108                                         temperature = <125000>;
0109                                         hysteresis = <1000>;
0110                                         type = "passive";
0111                                 };
0112                         };
0113                 };
0114 
0115                 xo-thermal {
0116                         polling-delay-passive = <0>;
0117                         polling-delay = <0>;
0118                         thermal-sensors = <&pm8150_adc_tm 0>;
0119 
0120                         trips {
0121                                 active-config0 {
0122                                         temperature = <125000>;
0123                                         hysteresis = <1000>;
0124                                         type = "passive";
0125                                 };
0126                         };
0127                 };
0128         };
0129 
0130         vph_pwr: vph-pwr-regulator {
0131                 compatible = "regulator-fixed";
0132                 regulator-name = "vph_pwr";
0133                 regulator-min-microvolt = <3700000>;
0134                 regulator-max-microvolt = <3700000>;
0135         };
0136 
0137         vreg_s4a_1p8: pm8150-s4 {
0138                 compatible = "regulator-fixed";
0139                 regulator-name = "vreg_s4a_1p8";
0140 
0141                 regulator-min-microvolt = <1800000>;
0142                 regulator-max-microvolt = <1800000>;
0143 
0144                 regulator-always-on;
0145                 regulator-boot-on;
0146 
0147                 vin-supply = <&vph_pwr>;
0148         };
0149 
0150         vreg_s6c_0p88: smpc6-regulator {
0151                 compatible = "regulator-fixed";
0152                 regulator-name = "vreg_s6c_0p88";
0153 
0154                 regulator-min-microvolt = <880000>;
0155                 regulator-max-microvolt = <880000>;
0156                 regulator-always-on;
0157                 vin-supply = <&vph_pwr>;
0158         };
0159 };
0160 
0161 &adsp {
0162         status = "okay";
0163         firmware-name = "qcom/sm8250/adsp.mbn";
0164 };
0165 
0166 &apps_rsc {
0167         pm8150-rpmh-regulators {
0168                 compatible = "qcom,pm8150-rpmh-regulators";
0169                 qcom,pmic-id = "a";
0170 
0171                 vdd-s1-supply = <&vph_pwr>;
0172                 vdd-s2-supply = <&vph_pwr>;
0173                 vdd-s3-supply = <&vph_pwr>;
0174                 vdd-s4-supply = <&vph_pwr>;
0175                 vdd-s5-supply = <&vph_pwr>;
0176                 vdd-s6-supply = <&vph_pwr>;
0177                 vdd-s7-supply = <&vph_pwr>;
0178                 vdd-s8-supply = <&vph_pwr>;
0179                 vdd-s9-supply = <&vph_pwr>;
0180                 vdd-s10-supply = <&vph_pwr>;
0181                 vdd-l1-l8-l11-supply = <&vreg_s6c_0p88>;
0182                 vdd-l2-l10-supply = <&vreg_bob>;
0183                 vdd-l3-l4-l5-l18-supply = <&vreg_s6a_0p95>;
0184                 vdd-l6-l9-supply = <&vreg_s8c_1p3>;
0185                 vdd-l7-l12-l14-l15-supply = <&vreg_s5a_1p9>;
0186                 vdd-l13-l16-l17-supply = <&vreg_bob>;
0187 
0188                 vreg_s5a_1p9: smps5 {
0189                         regulator-name = "vreg_s5a_1p9";
0190                         regulator-min-microvolt = <1904000>;
0191                         regulator-max-microvolt = <2000000>;
0192                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0193                 };
0194 
0195                 vreg_s6a_0p95: smps6 {
0196                         regulator-name = "vreg_s6a_0p95";
0197                         regulator-min-microvolt = <920000>;
0198                         regulator-max-microvolt = <1128000>;
0199                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0200                 };
0201 
0202                 vreg_l2a_3p1: ldo2 {
0203                         regulator-name = "vreg_l2a_3p1";
0204                         regulator-min-microvolt = <3072000>;
0205                         regulator-max-microvolt = <3072000>;
0206                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0207                 };
0208 
0209                 vreg_l3a_0p9: ldo3 {
0210                         regulator-name = "vreg_l3a_0p9";
0211                         regulator-min-microvolt = <928000>;
0212                         regulator-max-microvolt = <932000>;
0213                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0214                 };
0215 
0216                 vreg_l5a_0p875: ldo5 {
0217                         regulator-name = "vreg_l5a_0p875";
0218                         regulator-min-microvolt = <880000>;
0219                         regulator-max-microvolt = <880000>;
0220                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0221                 };
0222 
0223                 vreg_l6a_1p2: ldo6 {
0224                         regulator-name = "vreg_l6a_1p2";
0225                         regulator-min-microvolt = <1200000>;
0226                         regulator-max-microvolt = <1200000>;
0227                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0228                 };
0229 
0230                 vreg_l7a_1p7: ldo7 {
0231                         regulator-name = "vreg_l7a_1p7";
0232                         regulator-min-microvolt = <1704000>;
0233                         regulator-max-microvolt = <1800000>;
0234                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0235                 };
0236 
0237                 vreg_l9a_1p2: ldo9 {
0238                         regulator-name = "vreg_l9a_1p2";
0239                         regulator-min-microvolt = <1200000>;
0240                         regulator-max-microvolt = <1200000>;
0241                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0242                 };
0243 
0244                 vreg_l10a_1p8: ldo10 {
0245                         regulator-name = "vreg_l10a_1p8";
0246                         regulator-min-microvolt = <1800000>;
0247                         regulator-max-microvolt = <1800000>;
0248                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0249                 };
0250 
0251                 vreg_l12a_1p8: ldo12 {
0252                         regulator-name = "vreg_l12a_1p8";
0253                         regulator-min-microvolt = <1800000>;
0254                         regulator-max-microvolt = <1800000>;
0255                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0256                 };
0257 
0258                 vreg_l13a_ts_3p0: ldo13 {
0259                         regulator-name = "vreg_l13a_ts_3p0";
0260                         regulator-min-microvolt = <3008000>;
0261                         regulator-max-microvolt = <3008000>;
0262                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0263                 };
0264 
0265                 vreg_l14a_1p8: ldo14 {
0266                         regulator-name = "vreg_l14a_1p8";
0267                         regulator-min-microvolt = <1800000>;
0268                         regulator-max-microvolt = <1880000>;
0269                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0270                 };
0271 
0272                 vreg_l15a_11ad_io_1p8: ldo15 {
0273                         regulator-name = "vreg_l15a_11ad_io_1p8";
0274                         regulator-min-microvolt = <1800000>;
0275                         regulator-max-microvolt = <1800000>;
0276                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0277                 };
0278 
0279                 vreg_l16a_2p7: ldo16 {
0280                         regulator-name = "vreg_l16a_2p7";
0281                         regulator-min-microvolt = <2704000>;
0282                         regulator-max-microvolt = <2960000>;
0283                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0284                 };
0285 
0286                 vreg_l17a_3p0: ldo17 {
0287                         regulator-name = "vreg_l17a_3p0";
0288                         regulator-min-microvolt = <2856000>;
0289                         regulator-max-microvolt = <3008000>;
0290                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0291                 };
0292 
0293                 vreg_l18a_0p9: ldo18 {
0294                         regulator-name = "vreg_l18a_0p9";
0295                         regulator-min-microvolt = <912000>;
0296                         regulator-max-microvolt = <912000>;
0297                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0298                 };
0299         };
0300 
0301         pm8150l-rpmh-regulators {
0302                 compatible = "qcom,pm8150l-rpmh-regulators";
0303                 qcom,pmic-id = "c";
0304 
0305                 vdd-s1-supply = <&vph_pwr>;
0306                 vdd-s2-supply = <&vph_pwr>;
0307                 vdd-s3-supply = <&vph_pwr>;
0308                 vdd-s4-supply = <&vph_pwr>;
0309                 vdd-s5-supply = <&vph_pwr>;
0310                 vdd-s6-supply = <&vph_pwr>;
0311                 vdd-s7-supply = <&vph_pwr>;
0312                 vdd-s8-supply = <&vph_pwr>;
0313                 vdd-l1-l8-supply = <&vreg_s4a_1p8>;
0314                 vdd-l2-l3-supply = <&vreg_s8c_1p3>;
0315                 vdd-l4-l5-l6-supply = <&vreg_bob>;
0316                 vdd-l7-l11-supply = <&vreg_bob>;
0317                 vdd-l9-l10-supply = <&vreg_bob>;
0318                 vdd-bob-supply = <&vph_pwr>;
0319 
0320                 vreg_bob: bob {
0321                         regulator-name = "vreg_bob";
0322                         regulator-min-microvolt = <3008000>;
0323                         regulator-max-microvolt = <4000000>;
0324                         regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
0325                 };
0326 
0327                 vreg_s8c_1p3: smps8 {
0328                         regulator-name = "vreg_s8c_1p3";
0329                         regulator-min-microvolt = <1352000>;
0330                         regulator-max-microvolt = <1352000>;
0331                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0332                 };
0333 
0334                 vreg_l1c_1p8: ldo1 {
0335                         regulator-name = "vreg_l1c_1p8";
0336                         regulator-min-microvolt = <1800000>;
0337                         regulator-max-microvolt = <1800000>;
0338                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0339                 };
0340 
0341                 vreg_l2c_1p2: ldo2 {
0342                         regulator-name = "vreg_l2c_1p2";
0343                         regulator-min-microvolt = <1200000>;
0344                         regulator-max-microvolt = <1200000>;
0345                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0346                 };
0347 
0348                 vreg_l3c_0p92: ldo3 {
0349                         regulator-name = "vreg_l3c_0p92";
0350                         regulator-min-microvolt = <920000>;
0351                         regulator-max-microvolt = <920000>;
0352                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0353                 };
0354 
0355                 vreg_l4c_1p7: ldo4 {
0356                         regulator-name = "vreg_l4c_1p7";
0357                         regulator-min-microvolt = <1704000>;
0358                         regulator-max-microvolt = <2928000>;
0359                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0360                 };
0361 
0362                 vreg_l5c_1p8: ldo5 {
0363                         regulator-name = "vreg_l5c_1p8";
0364                         regulator-min-microvolt = <1800000>;
0365                         regulator-max-microvolt = <2928000>;
0366                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0367                 };
0368 
0369                 vreg_l6c_2p9: ldo6 {
0370                         regulator-name = "vreg_l6c_2p9";
0371                         regulator-min-microvolt = <1800000>;
0372                         regulator-max-microvolt = <2960000>;
0373                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0374                 };
0375 
0376                 vreg_l7c_cam_vcm0_2p85: ldo7 {
0377                         regulator-name = "vreg_l7c_cam_vcm0_2p85";
0378                         regulator-min-microvolt = <2856000>;
0379                         regulator-max-microvolt = <3104000>;
0380                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0381                 };
0382 
0383                 vreg_l8c_1p8: ldo8 {
0384                         regulator-name = "vreg_l8c_1p8";
0385                         regulator-min-microvolt = <1800000>;
0386                         regulator-max-microvolt = <1800000>;
0387                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0388                 };
0389 
0390                 vreg_l9c_2p9: ldo9 {
0391                         regulator-name = "vreg_l9c_2p9";
0392                         regulator-min-microvolt = <2704000>;
0393                         regulator-max-microvolt = <2960000>;
0394                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0395                 };
0396 
0397                 vreg_l10c_3p0: ldo10 {
0398                         regulator-name = "vreg_l10c_3p0";
0399                         regulator-min-microvolt = <3000000>;
0400                         regulator-max-microvolt = <3000000>;
0401                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0402                 };
0403 
0404                 vreg_l11c_3p3: ldo11 {
0405                         regulator-name = "vreg_l11c_3p3";
0406                         regulator-min-microvolt = <3000000>;
0407                         regulator-max-microvolt = <3312000>;
0408                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0409                 };
0410         };
0411 
0412         pm8009-rpmh-regulators {
0413                 compatible = "qcom,pm8009-rpmh-regulators";
0414                 qcom,pmic-id = "f";
0415 
0416                 vdd-s1-supply = <&vph_pwr>;
0417                 vdd-s2-supply = <&vreg_bob>;
0418                 vdd-l2-supply = <&vreg_s8c_1p3>;
0419                 vdd-l5-l6-supply = <&vreg_bob>;
0420                 vdd-l7-supply = <&vreg_s4a_1p8>;
0421 
0422                 vreg_l1f_cam_dvdd1_1p1: ldo1 {
0423                         regulator-name = "vreg_l1f_cam_dvdd1_1p1";
0424                         regulator-min-microvolt = <1104000>;
0425                         regulator-max-microvolt = <1104000>;
0426                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0427                 };
0428 
0429                 vreg_l2f_cam_dvdd0_1p2: ldo2 {
0430                         regulator-name = "vreg_l2f_cam_dvdd0_1p2";
0431                         regulator-min-microvolt = <1200000>;
0432                         regulator-max-microvolt = <1200000>;
0433                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0434                 };
0435 
0436                 vreg_l3f_cam_dvdd2_1p05: ldo3 {
0437                         regulator-name = "vreg_l3f_cam_dvdd2_1p05";
0438                         regulator-min-microvolt = <1056000>;
0439                         regulator-max-microvolt = <1056000>;
0440                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0441                 };
0442 
0443                 vreg_l5f_cam_avdd0_2p85: ldo5 {
0444                         regulator-name = "vreg_l5f_cam_avdd0_2p85";
0445                         regulator-min-microvolt = <2800000>;
0446                         regulator-max-microvolt = <2800000>;
0447                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0448                 };
0449 
0450                 vreg_l6f_cam_avdd1_2p85: ldo6 {
0451                         regulator-name = "vreg_l6f_cam_avdd1_2p85";
0452                         regulator-min-microvolt = <2856000>;
0453                         regulator-max-microvolt = <2856000>;
0454                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0455                 };
0456 
0457                 vreg_l7f_1p8: ldo7 {
0458                         regulator-name = "vreg_l7f_1p8";
0459                         regulator-min-microvolt = <1800000>;
0460                         regulator-max-microvolt = <1800000>;
0461                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0462                 };
0463         };
0464 };
0465 
0466 &cdsp {
0467         status = "okay";
0468         firmware-name = "qcom/sm8250/cdsp.mbn";
0469 };
0470 
0471 &gmu {
0472         status = "okay";
0473 };
0474 
0475 &gpu {
0476         status = "okay";
0477 
0478         zap-shader {
0479                 memory-region = <&gpu_mem>;
0480                 firmware-name = "qcom/sm8250/a650_zap.mbn";
0481         };
0482 };
0483 
0484 &i2c1 {
0485         status = "okay";
0486         clock-frequency = <1000000>;
0487 
0488         /* NQ NFC chip @28 */
0489 };
0490 
0491 &i2c13 {
0492         status = "okay";
0493 
0494         /* st,stmfts @ 49 */
0495 };
0496 
0497 &i2c15 {
0498         status = "okay";
0499 
0500         /* smb1390 @ 10 */
0501         /* rtc6226 @ 64 */
0502 };
0503 
0504 &pm8150_adc {
0505         xo-therm@4c {
0506                 reg = <ADC5_XO_THERM_100K_PU>;
0507                 qcom,ratiometric;
0508                 qcom,hw-settle-time = <200>;
0509         };
0510 
0511         skin-therm@4d {
0512                 reg = <ADC5_AMUX_THM1_100K_PU>;
0513                 qcom,ratiometric;
0514                 qcom,hw-settle-time = <200>;
0515         };
0516 
0517         pa-therm1@4e {
0518                 reg = <ADC5_AMUX_THM2_100K_PU>;
0519                 qcom,ratiometric;
0520                 qcom,hw-settle-time = <200>;
0521         };
0522 };
0523 
0524 &pm8150_adc_tm {
0525         status = "okay";
0526 
0527         xo-therm@0 {
0528                 reg = <0>;
0529                 io-channels = <&pm8150_adc ADC5_XO_THERM_100K_PU>;
0530                 qcom,ratiometric;
0531                 qcom,hw-settle-time-us = <200>;
0532         };
0533 
0534         skin-therm@1 {
0535                 reg = <1>;
0536                 io-channels = <&pm8150_adc ADC5_AMUX_THM1_100K_PU>;
0537                 qcom,ratiometric;
0538                 qcom,hw-settle-time-us = <200>;
0539         };
0540 
0541         pa-therm1@2 {
0542                 reg = <2>;
0543                 io-channels = <&pm8150_adc ADC5_AMUX_THM2_100K_PU>;
0544                 qcom,ratiometric;
0545                 qcom,hw-settle-time-us = <200>;
0546         };
0547 };
0548 
0549 &pm8150b_adc {
0550         conn-therm@4f {
0551                 reg = <ADC5_AMUX_THM3_100K_PU>;
0552                 qcom,ratiometric;
0553                 qcom,hw-settle-time = <200>;
0554         };
0555 };
0556 
0557 &pm8150b_adc_tm {
0558         status = "okay";
0559 
0560         conn-therm@0 {
0561                 reg = <0>;
0562                 io-channels = <&pm8150b_adc ADC5_AMUX_THM3_100K_PU>;
0563                 qcom,ratiometric;
0564                 qcom,hw-settle-time-us = <200>;
0565         };
0566 };
0567 
0568 &pm8150l_adc_tm {
0569         status = "okay";
0570 
0571         camera-flash-therm@0 {
0572                 reg = <0>;
0573                 io-channels = <&pm8150l_adc ADC5_AMUX_THM1_100K_PU>;
0574                 qcom,ratiometric;
0575                 qcom,hw-settle-time-us = <200>;
0576         };
0577 
0578         skin-msm-therm@1 {
0579                 reg = <1>;
0580                 io-channels = <&pm8150l_adc ADC5_AMUX_THM2_100K_PU>;
0581                 qcom,ratiometric;
0582                 qcom,hw-settle-time-us = <200>;
0583         };
0584 
0585         pa-therm2@2 {
0586                 reg = <2>;
0587                 io-channels = <&pm8150l_adc ADC5_AMUX_THM3_100K_PU>;
0588                 qcom,ratiometric;
0589                 qcom,hw-settle-time-us = <200>;
0590         };
0591 };
0592 
0593 &pm8150l_adc {
0594         camera-flash-therm@4d {
0595                 reg = <ADC5_AMUX_THM1_100K_PU>;
0596                 qcom,ratiometric;
0597                 qcom,hw-settle-time = <200>;
0598         };
0599 
0600         skin-msm-therm@4e {
0601                 reg = <ADC5_AMUX_THM2_100K_PU>;
0602                 qcom,ratiometric;
0603                 qcom,hw-settle-time = <200>;
0604         };
0605 
0606         pa-therm2@4f {
0607                 reg = <ADC5_AMUX_THM3_100K_PU>;
0608                 qcom,ratiometric;
0609                 qcom,hw-settle-time = <200>;
0610         };
0611 };
0612 
0613 &qupv3_id_0 {
0614         status = "okay";
0615 };
0616 
0617 &qupv3_id_1 {
0618         status = "okay";
0619 };
0620 
0621 &qupv3_id_2 {
0622         status = "okay";
0623 };
0624 
0625 &rxmacro {
0626         status = "okay";
0627 };
0628 
0629 &slpi {
0630         status = "okay";
0631         firmware-name = "qcom/sm8250/slpi.mbn";
0632 };
0633 
0634 &soc {
0635         wcd938x: codec {
0636                 compatible = "qcom,wcd9380-codec";
0637                 #sound-dai-cells = <1>;
0638                 reset-gpios = <&tlmm 32 0>;
0639                 vdd-buck-supply = <&vreg_s4a_1p8>;
0640                 vdd-rxtx-supply = <&vreg_s4a_1p8>;
0641                 vdd-io-supply = <&vreg_s4a_1p8>;
0642                 vdd-mic-bias-supply = <&vreg_bob>;
0643                 qcom,micbias1-microvolt = <1800000>;
0644                 qcom,micbias2-microvolt = <1800000>;
0645                 qcom,micbias3-microvolt = <1800000>;
0646                 qcom,micbias4-microvolt = <1800000>;
0647                 qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>;
0648                 qcom,mbhc-headset-vthreshold-microvolt = <1700000>;
0649                 qcom,mbhc-headphone-vthreshold-microvolt = <50000>;
0650                 qcom,rx-device = <&wcd_rx>;
0651                 qcom,tx-device = <&wcd_tx>;
0652         };
0653 };
0654 
0655 &sound {
0656         compatible = "qcom,sm8250-sndcard";
0657         model = "SM8250-MTP-WCD9380-WSA8810-VA-DMIC";
0658         audio-routing =
0659                 "SpkrLeft IN", "WSA_SPK1 OUT",
0660                 "SpkrRight IN", "WSA_SPK2 OUT",
0661                 "IN1_HPHL", "HPHL_OUT",
0662                 "IN2_HPHR", "HPHR_OUT",
0663                 "AMIC1", "MIC BIAS1",
0664                 "AMIC2", "MIC BIAS2",
0665                 "AMIC3", "MIC BIAS3",
0666                 "AMIC4", "MIC BIAS3",
0667                 "AMIC5", "MIC BIAS4",
0668                 "TX SWR_ADC0", "ADC1_OUTPUT",
0669                 "TX SWR_ADC1", "ADC2_OUTPUT",
0670                 "TX SWR_ADC2", "ADC3_OUTPUT",
0671                 "TX SWR_ADC3", "ADC4_OUTPUT",
0672                 "TX SWR_DMIC0", "DMIC1_OUTPUT",
0673                 "TX SWR_DMIC1", "DMIC2_OUTPUT",
0674                 "TX SWR_DMIC2", "DMIC3_OUTPUT",
0675                 "TX SWR_DMIC3", "DMIC4_OUTPUT",
0676                 "TX SWR_DMIC4", "DMIC5_OUTPUT",
0677                 "TX SWR_DMIC5", "DMIC6_OUTPUT",
0678                 "TX SWR_DMIC6", "DMIC7_OUTPUT",
0679                 "TX SWR_DMIC7", "DMIC8_OUTPUT";
0680 
0681         mm1-dai-link {
0682                 link-name = "MultiMedia1";
0683                 cpu {
0684                         sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA1>;
0685                 };
0686         };
0687 
0688         mm2-dai-link {
0689                 link-name = "MultiMedia2";
0690                 cpu {
0691                         sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA2>;
0692                 };
0693         };
0694 
0695         mm3-dai-link {
0696                 link-name = "MultiMedia3";
0697                 cpu {
0698                         sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA3>;
0699                 };
0700         };
0701 
0702         wcd-playback-dai-link {
0703                 link-name = "WCD Playback";
0704                 cpu {
0705                         sound-dai = <&q6afedai RX_CODEC_DMA_RX_0>;
0706                 };
0707                 codec {
0708                         sound-dai = <&wcd938x 0>, <&swr1 0>, <&rxmacro 0>;
0709                 };
0710                 platform {
0711                         sound-dai = <&q6routing>;
0712                 };
0713         };
0714 
0715         wcd-capture-dai-link {
0716                 link-name = "WCD Capture";
0717                 cpu {
0718                         sound-dai = <&q6afedai TX_CODEC_DMA_TX_3>;
0719                 };
0720 
0721                 codec {
0722                         sound-dai = <&wcd938x 1>, <&swr2 0>, <&txmacro 0>;
0723                 };
0724                 platform {
0725                         sound-dai = <&q6routing>;
0726                 };
0727         };
0728 
0729         wsa-dai-link {
0730                 link-name = "WSA Playback";
0731                 cpu {
0732                         sound-dai = <&q6afedai WSA_CODEC_DMA_RX_0>;
0733                 };
0734 
0735                 codec {
0736                         sound-dai = <&left_spkr>, <&right_spkr>, <&swr0 0>, <&wsamacro 0>;
0737                 };
0738                 platform {
0739                         sound-dai = <&q6routing>;
0740                 };
0741         };
0742 
0743         va-dai-link {
0744                 link-name = "VA Capture";
0745                 cpu {
0746                         sound-dai = <&q6afedai VA_CODEC_DMA_TX_0>;
0747                 };
0748 
0749                 platform {
0750                         sound-dai = <&q6routing>;
0751                 };
0752 
0753                 codec {
0754                         sound-dai = <&vamacro 0>;
0755                 };
0756         };
0757 };
0758 
0759 &swr0 {
0760         left_spkr: wsa8810-right@0,3{
0761                 compatible = "sdw10217211000";
0762                 reg = <0 3>;
0763                 powerdown-gpios = <&tlmm 26 GPIO_ACTIVE_HIGH>;
0764                 #thermal-sensor-cells = <0>;
0765                 sound-name-prefix = "SpkrLeft";
0766                 #sound-dai-cells = <0>;
0767         };
0768 
0769         right_spkr: wsa8810-left@0,4{
0770                 compatible = "sdw10217211000";
0771                 reg = <0 4>;
0772                 powerdown-gpios = <&tlmm 127 GPIO_ACTIVE_HIGH>;
0773                 #thermal-sensor-cells = <0>;
0774                 sound-name-prefix = "SpkrRight";
0775                 #sound-dai-cells = <0>;
0776         };
0777 };
0778 
0779 &swr1 {
0780         status = "okay";
0781 
0782         wcd_rx: wcd9380-rx@0,4 {
0783                 compatible = "sdw20217010d00";
0784                 reg = <0 4>;
0785                 qcom,rx-port-mapping = <1 2 3 4 5>;
0786         };
0787 };
0788 
0789 &swr2 {
0790         status = "okay";
0791 
0792         wcd_tx: wcd9380-tx@0,3 {
0793                 compatible = "sdw20217010d00";
0794                 reg = <0 3>;
0795                 qcom,tx-port-mapping = <2 3 4 5>;
0796         };
0797 };
0798 
0799 &tlmm {
0800         gpio-reserved-ranges = <28 4>, <40 4>;
0801 
0802         wcd938x_reset_default: wcd938x_reset_default {
0803                 mux {
0804                         pins = "gpio32";
0805                         function = "gpio";
0806                 };
0807 
0808                 config {
0809                         pins = "gpio32";
0810                         drive-strength = <16>;
0811                         output-high;
0812                 };
0813         };
0814 
0815         wcd938x_reset_sleep: wcd938x_reset_sleep {
0816                 mux {
0817                         pins = "gpio32";
0818                         function = "gpio";
0819                 };
0820 
0821                 config {
0822                         pins = "gpio32";
0823                         drive-strength = <16>;
0824                         bias-disable;
0825                         output-low;
0826                 };
0827         };
0828 };
0829 
0830 &txmacro {
0831         status = "okay";
0832 };
0833 
0834 &uart12 {
0835         status = "okay";
0836 };
0837 
0838 &ufs_mem_hc {
0839         status = "okay";
0840 
0841         vcc-supply = <&vreg_l17a_3p0>;
0842         vcc-max-microamp = <750000>;
0843         vccq-supply = <&vreg_l6a_1p2>;
0844         vccq-max-microamp = <700000>;
0845         vccq2-supply = <&vreg_s4a_1p8>;
0846         vccq2-max-microamp = <750000>;
0847 };
0848 
0849 &ufs_mem_phy {
0850         status = "okay";
0851 
0852         vdda-phy-supply = <&vreg_l5a_0p875>;
0853         vdda-pll-supply = <&vreg_l9a_1p2>;
0854 };
0855 
0856 &usb_1 {
0857         status = "okay";
0858 };
0859 
0860 &usb_1_dwc3 {
0861         dr_mode = "host";
0862 };
0863 
0864 &usb_1_hsphy {
0865         status = "okay";
0866 
0867         vdda-pll-supply = <&vreg_l5a_0p875>;
0868         vdda18-supply = <&vreg_l12a_1p8>;
0869         vdda33-supply = <&vreg_l2a_3p1>;
0870 };
0871 
0872 &usb_1_qmpphy {
0873         status = "okay";
0874 
0875         vdda-phy-supply = <&vreg_l9a_1p2>;
0876         vdda-pll-supply = <&vreg_l18a_0p9>;
0877 };
0878 
0879 &usb_2 {
0880         status = "okay";
0881 };
0882 
0883 &usb_2_dwc3 {
0884         dr_mode = "host";
0885 };
0886 
0887 &usb_2_hsphy {
0888         status = "okay";
0889 
0890         vdda-pll-supply = <&vreg_l5a_0p875>;
0891         vdda18-supply = <&vreg_l12a_1p8>;
0892         vdda33-supply = <&vreg_l2a_3p1>;
0893 };
0894 
0895 &usb_2_qmpphy {
0896         status = "okay";
0897 
0898         vdda-phy-supply = <&vreg_l9a_1p2>;
0899         vdda-pll-supply = <&vreg_l18a_0p9>;
0900 };
0901 
0902 &venus {
0903         status = "okay";
0904 };