Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: BSD-3-Clause
0002 /*
0003  * Copyright (c) 2020, Linaro Ltd.
0004  */
0005 
0006 /dts-v1/;
0007 
0008 #include <dt-bindings/leds/common.h>
0009 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
0010 #include <dt-bindings/sound/qcom,q6afe.h>
0011 #include <dt-bindings/sound/qcom,q6asm.h>
0012 #include "sm8250.dtsi"
0013 #include "pm8150.dtsi"
0014 #include "pm8150b.dtsi"
0015 #include "pm8150l.dtsi"
0016 
0017 / {
0018         model = "Qualcomm Technologies, Inc. Robotics RB5";
0019         compatible = "qcom,qrb5165-rb5", "qcom,sm8250";
0020         qcom,msm-id = <455 0x20001>;
0021         qcom,board-id = <11 3>;
0022 
0023         aliases {
0024                 serial0 = &uart12;
0025                 sdhc2 = &sdhc_2;
0026         };
0027 
0028         chosen {
0029                 stdout-path = "serial0:115200n8";
0030         };
0031 
0032         /* Fixed crystal oscillator dedicated to MCP2518FD */
0033         clk40M: can-clock {
0034                 compatible = "fixed-clock";
0035                 #clock-cells = <0>;
0036                 clock-frequency = <40000000>;
0037         };
0038 
0039         dc12v: dc12v-regulator {
0040                 compatible = "regulator-fixed";
0041                 regulator-name = "DC12V";
0042                 regulator-min-microvolt = <12000000>;
0043                 regulator-max-microvolt = <12000000>;
0044                 regulator-always-on;
0045         };
0046 
0047         hdmi-out {
0048                 compatible = "hdmi-connector";
0049                 type = "a";
0050 
0051                 port {
0052                         hdmi_con: endpoint {
0053                                 remote-endpoint = <&lt9611_out>;
0054                         };
0055                 };
0056         };
0057 
0058         leds {
0059                 compatible = "gpio-leds";
0060 
0061                 led-user4 {
0062                         label = "green:user4";
0063                         function = LED_FUNCTION_INDICATOR;
0064                         color = <LED_COLOR_ID_GREEN>;
0065                         gpios = <&pm8150_gpios 10 GPIO_ACTIVE_HIGH>;
0066                         linux,default-trigger = "panic-indicator";
0067                         default-state = "off";
0068                 };
0069 
0070                 led-wlan {
0071                         label = "yellow:wlan";
0072                         function = LED_FUNCTION_WLAN;
0073                         color = <LED_COLOR_ID_YELLOW>;
0074                         gpios = <&pm8150_gpios 9 GPIO_ACTIVE_HIGH>;
0075                         linux,default-trigger = "phy0tx";
0076                         default-state = "off";
0077                 };
0078 
0079                 led-bt {
0080                         label = "blue:bt";
0081                         function = LED_FUNCTION_BLUETOOTH;
0082                         color = <LED_COLOR_ID_BLUE>;
0083                         gpios = <&pm8150_gpios 7 GPIO_ACTIVE_HIGH>;
0084                         linux,default-trigger = "bluetooth-power";
0085                         default-state = "off";
0086                 };
0087         };
0088 
0089         lt9611_1v2: lt9611-vdd12-regulator {
0090                 compatible = "regulator-fixed";
0091                 regulator-name = "LT9611_1V2";
0092 
0093                 vin-supply = <&vdc_3v3>;
0094                 regulator-min-microvolt = <1200000>;
0095                 regulator-max-microvolt = <1200000>;
0096         };
0097 
0098         lt9611_3v3: lt9611-3v3 {
0099                 compatible = "regulator-fixed";
0100                 regulator-name = "LT9611_3V3";
0101 
0102                 vin-supply = <&vdc_3v3>;
0103                 regulator-min-microvolt = <3300000>;
0104                 regulator-max-microvolt = <3300000>;
0105                 regulator-boot-on;
0106                 regulator-always-on;
0107         };
0108 
0109         thermal-zones {
0110                 conn-thermal {
0111                         polling-delay-passive = <0>;
0112                         polling-delay = <0>;
0113                         thermal-sensors = <&pm8150b_adc_tm 0>;
0114 
0115                         trips {
0116                                 active-config0 {
0117                                         temperature = <125000>;
0118                                         hysteresis = <1000>;
0119                                         type = "critical";
0120                                 };
0121                         };
0122                 };
0123 
0124                 pm8150l-thermal {
0125                         polling-delay-passive = <0>;
0126                         polling-delay = <0>;
0127                         thermal-sensors = <&pm8150l_adc_tm 1>;
0128 
0129                         trips {
0130                                 active-config0 {
0131                                         temperature = <50000>;
0132                                         hysteresis = <4000>;
0133                                         type = "passive";
0134                                 };
0135                         };
0136                 };
0137 
0138                 skin-msm-thermal {
0139                         polling-delay-passive = <0>;
0140                         polling-delay = <0>;
0141                         thermal-sensors = <&pm8150l_adc_tm 0>;
0142 
0143                         trips {
0144                                 active-config0 {
0145                                         temperature = <50000>;
0146                                         hysteresis = <4000>;
0147                                         type = "passive";
0148                                 };
0149                         };
0150                 };
0151 
0152                 wifi-thermal {
0153                         polling-delay-passive = <0>;
0154                         polling-delay = <0>;
0155                         thermal-sensors = <&pm8150_adc_tm 1>;
0156 
0157                         trips {
0158                                 active-config0 {
0159                                         temperature = <52000>;
0160                                         hysteresis = <4000>;
0161                                         type = "passive";
0162                                 };
0163                         };
0164                 };
0165 
0166                 xo-thermal {
0167                         polling-delay-passive = <0>;
0168                         polling-delay = <0>;
0169                         thermal-sensors = <&pm8150_adc_tm 0>;
0170 
0171                         trips {
0172                                 active-config0 {
0173                                         temperature = <50000>;
0174                                         hysteresis = <4000>;
0175                                         type = "passive";
0176                                 };
0177                         };
0178                 };
0179         };
0180 
0181         vbat: vbat-regulator {
0182                 compatible = "regulator-fixed";
0183                 regulator-name = "VBAT";
0184                 vin-supply = <&vreg_l11c_3p3>;
0185                 regulator-min-microvolt = <4200000>;
0186                 regulator-max-microvolt = <4200000>;
0187                 regulator-always-on;
0188         };
0189 
0190         vbat_som: vbat-som-regulator {
0191                 compatible = "regulator-fixed";
0192                 regulator-name = "VBAT_SOM";
0193                 vin-supply = <&dc12v>;
0194                 regulator-min-microvolt = <4200000>;
0195                 regulator-max-microvolt = <4200000>;
0196                 regulator-always-on;
0197         };
0198 
0199         vdc_3v3: vdc-3v3-regulator {
0200                 compatible = "regulator-fixed";
0201                 regulator-name = "VDC_3V3";
0202                 vin-supply = <&vreg_l11c_3p3>;
0203                 regulator-min-microvolt = <3300000>;
0204                 regulator-max-microvolt = <3300000>;
0205                 regulator-always-on;
0206         };
0207 
0208         vdc_5v: vdc-5v-regulator {
0209                 compatible = "regulator-fixed";
0210                 regulator-name = "VDC_5V";
0211 
0212                 regulator-min-microvolt = <5000000>;
0213                 regulator-max-microvolt = <5000000>;
0214                 regulator-always-on;
0215                 vin-supply = <&vreg_l11c_3p3>;
0216         };
0217 
0218         vph_pwr: vph-pwr-regulator {
0219                 compatible = "regulator-fixed";
0220                 regulator-name = "vph_pwr";
0221                 regulator-min-microvolt = <3700000>;
0222                 regulator-max-microvolt = <3700000>;
0223                 regulator-always-on;
0224         };
0225 
0226         vreg_s4a_1p8: vreg-s4a-1p8 {
0227                 compatible = "regulator-fixed";
0228                 regulator-name = "vreg_s4a_1p8";
0229                 regulator-min-microvolt = <1800000>;
0230                 regulator-max-microvolt = <1800000>;
0231                 regulator-always-on;
0232         };
0233 };
0234 
0235 &adsp {
0236         status = "okay";
0237         firmware-name = "qcom/sm8250/adsp.mbn";
0238 };
0239 
0240 &apps_rsc {
0241         pm8009-rpmh-regulators {
0242                 compatible = "qcom,pm8009-1-rpmh-regulators";
0243                 qcom,pmic-id = "f";
0244 
0245                 vdd-s1-supply = <&vph_pwr>;
0246                 vdd-s2-supply = <&vph_pwr>;
0247                 vdd-l2-supply = <&vreg_s8c_1p3>;
0248                 vdd-l5-l6-supply = <&vreg_bob>;
0249                 vdd-l7-supply = <&vreg_s4a_1p8>;
0250 
0251                 vreg_s2f_0p95: smps2 {
0252                         regulator-name = "vreg_s2f_0p95";
0253                         regulator-min-microvolt = <900000>;
0254                         regulator-max-microvolt = <952000>;
0255                         regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
0256                 };
0257 
0258                 vreg_l1f_1p1: ldo1 {
0259                         regulator-name = "vreg_l1f_1p1";
0260                         regulator-min-microvolt = <1104000>;
0261                         regulator-max-microvolt = <1104000>;
0262                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0263                 };
0264 
0265                 vreg_l2f_1p2: ldo2 {
0266                         regulator-name = "vreg_l2f_1p2";
0267                         regulator-min-microvolt = <1200000>;
0268                         regulator-max-microvolt = <1200000>;
0269                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0270                 };
0271 
0272                 vreg_l6f_2p8: ldo6 {
0273                         regulator-name = "vreg_l6f_2p8";
0274                         regulator-min-microvolt = <2800000>;
0275                         regulator-max-microvolt = <2800000>;
0276                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0277                 };
0278 
0279                 vreg_l7f_1p8: ldo7 {
0280                         regulator-name = "vreg_l7f_1p8";
0281                         regulator-min-microvolt = <1800000>;
0282                         regulator-max-microvolt = <1800000>;
0283                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0284                 };
0285         };
0286 
0287         pm8150-rpmh-regulators {
0288                 compatible = "qcom,pm8150-rpmh-regulators";
0289                 qcom,pmic-id = "a";
0290 
0291                 vdd-s1-supply = <&vph_pwr>;
0292                 vdd-s2-supply = <&vph_pwr>;
0293                 vdd-s3-supply = <&vph_pwr>;
0294                 vdd-s4-supply = <&vph_pwr>;
0295                 vdd-s5-supply = <&vph_pwr>;
0296                 vdd-s6-supply = <&vph_pwr>;
0297                 vdd-s7-supply = <&vph_pwr>;
0298                 vdd-s8-supply = <&vph_pwr>;
0299                 vdd-s9-supply = <&vph_pwr>;
0300                 vdd-s10-supply = <&vph_pwr>;
0301                 vdd-l2-l10-supply = <&vreg_bob>;
0302                 vdd-l3-l4-l5-l18-supply = <&vreg_s6a_0p95>;
0303                 vdd-l6-l9-supply = <&vreg_s8c_1p3>;
0304                 vdd-l7-l12-l14-l15-supply = <&vreg_s5a_1p9>;
0305                 vdd-l13-l16-l17-supply = <&vreg_bob>;
0306 
0307                 vreg_l2a_3p1: ldo2 {
0308                         regulator-name = "vreg_l2a_3p1";
0309                         regulator-min-microvolt = <3072000>;
0310                         regulator-max-microvolt = <3072000>;
0311                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0312                 };
0313 
0314                 vreg_l3a_0p9: ldo3 {
0315                         regulator-name = "vreg_l3a_0p9";
0316                         regulator-min-microvolt = <928000>;
0317                         regulator-max-microvolt = <932000>;
0318                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0319                 };
0320 
0321                 vreg_l5a_0p88: ldo5 {
0322                         regulator-name = "vreg_l5a_0p88";
0323                         regulator-min-microvolt = <880000>;
0324                         regulator-max-microvolt = <880000>;
0325                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0326                 };
0327 
0328                 vreg_l6a_1p2: ldo6 {
0329                         regulator-name = "vreg_l6a_1p2";
0330                         regulator-min-microvolt = <1200000>;
0331                         regulator-max-microvolt = <1200000>;
0332                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0333                 };
0334 
0335                 vreg_l7a_1p7: ldo7 {
0336                         regulator-name = "vreg_l7a_1p7";
0337                         regulator-min-microvolt = <1704000>;
0338                         regulator-max-microvolt = <1800000>;
0339                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0340                 };
0341 
0342                 vreg_l9a_1p2: ldo9 {
0343                         regulator-name = "vreg_l9a_1p2";
0344                         regulator-min-microvolt = <1200000>;
0345                         regulator-max-microvolt = <1200000>;
0346                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0347                 };
0348 
0349                 vreg_l10a_1p8: ldo10 {
0350                         regulator-name = "vreg_l10a_1p8";
0351                         regulator-min-microvolt = <1800000>;
0352                         regulator-max-microvolt = <1800000>;
0353                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0354                 };
0355 
0356                 vreg_l12a_1p8: ldo12 {
0357                         regulator-name = "vreg_l12a_1p8";
0358                         regulator-min-microvolt = <1800000>;
0359                         regulator-max-microvolt = <1800000>;
0360                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0361                 };
0362 
0363                 vreg_l13a_ts_3p0: ldo13 {
0364                         regulator-name = "vreg_l13a_ts_3p0";
0365                         regulator-min-microvolt = <3008000>;
0366                         regulator-max-microvolt = <3008000>;
0367                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0368                 };
0369 
0370                 vreg_l14a_1p8: ldo14 {
0371                         regulator-name = "vreg_l14a_1p8";
0372                         regulator-min-microvolt = <1800000>;
0373                         regulator-max-microvolt = <1880000>;
0374                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0375                 };
0376 
0377                 vreg_l15a_1p8: ldo15 {
0378                         regulator-name = "vreg_l15a_1p8";
0379                         regulator-min-microvolt = <1800000>;
0380                         regulator-max-microvolt = <1800000>;
0381                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0382                 };
0383 
0384                 vreg_l16a_2p7: ldo16 {
0385                         regulator-name = "vreg_l16a_2p7";
0386                         regulator-min-microvolt = <2704000>;
0387                         regulator-max-microvolt = <2960000>;
0388                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0389                 };
0390 
0391                 vreg_l17a_3p0: ldo17 {
0392                         regulator-name = "vreg_l17a_3p0";
0393                         regulator-min-microvolt = <2856000>;
0394                         regulator-max-microvolt = <3008000>;
0395                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0396                 };
0397 
0398                 vreg_l18a_0p92: ldo18 {
0399                         regulator-name = "vreg_l18a_0p92";
0400                         regulator-min-microvolt = <800000>;
0401                         regulator-max-microvolt = <912000>;
0402                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0403                 };
0404 
0405                 vreg_s5a_1p9: smps5 {
0406                         regulator-name = "vreg_s5a_1p9";
0407                         regulator-min-microvolt = <1904000>;
0408                         regulator-max-microvolt = <2000000>;
0409                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0410                 };
0411 
0412                 vreg_s6a_0p95: smps6 {
0413                         regulator-name = "vreg_s6a_0p95";
0414                         regulator-min-microvolt = <920000>;
0415                         regulator-max-microvolt = <1128000>;
0416                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0417                 };
0418         };
0419 
0420         pm8150l-rpmh-regulators {
0421                 compatible = "qcom,pm8150l-rpmh-regulators";
0422                 qcom,pmic-id = "c";
0423 
0424                 vdd-s1-supply = <&vph_pwr>;
0425                 vdd-s2-supply = <&vph_pwr>;
0426                 vdd-s3-supply = <&vph_pwr>;
0427                 vdd-s4-supply = <&vph_pwr>;
0428                 vdd-s5-supply = <&vph_pwr>;
0429                 vdd-s6-supply = <&vph_pwr>;
0430                 vdd-s7-supply = <&vph_pwr>;
0431                 vdd-s8-supply = <&vph_pwr>;
0432                 vdd-l1-l8-supply = <&vreg_s4a_1p8>;
0433                 vdd-l2-l3-supply = <&vreg_s8c_1p3>;
0434                 vdd-l4-l5-l6-supply = <&vreg_bob>;
0435                 vdd-l7-l11-supply = <&vreg_bob>;
0436                 vdd-l9-l10-supply = <&vreg_bob>;
0437                 vdd-bob-supply = <&vph_pwr>;
0438 
0439                 vreg_bob: bob {
0440                         regulator-name = "vreg_bob";
0441                         regulator-min-microvolt = <3008000>;
0442                         regulator-max-microvolt = <4000000>;
0443                         regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
0444                 };
0445 
0446                 vreg_l1c_1p8: ldo1 {
0447                         regulator-name = "vreg_l1c_1p8";
0448                         regulator-min-microvolt = <1800000>;
0449                         regulator-max-microvolt = <1800000>;
0450                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0451                 };
0452 
0453                 vreg_l2c_1p2: ldo2 {
0454                         regulator-name = "vreg_l2c_1p2";
0455                         regulator-min-microvolt = <1200000>;
0456                         regulator-max-microvolt = <1200000>;
0457                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0458                 };
0459 
0460                 vreg_l3c_0p8: ldo3 {
0461                         regulator-name = "vreg_l3c_0p8";
0462                         regulator-min-microvolt = <800000>;
0463                         regulator-max-microvolt = <800000>;
0464                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0465                 };
0466 
0467                 vreg_l4c_1p7: ldo4 {
0468                         regulator-name = "vreg_l4c_1p7";
0469                         regulator-min-microvolt = <1704000>;
0470                         regulator-max-microvolt = <2928000>;
0471                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0472                 };
0473 
0474                 vreg_l5c_1p8: ldo5 {
0475                         regulator-name = "vreg_l5c_1p8";
0476                         regulator-min-microvolt = <1800000>;
0477                         regulator-max-microvolt = <2928000>;
0478                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0479                 };
0480 
0481                 vreg_l6c_2p96: ldo6 {
0482                         regulator-name = "vreg_l6c_2p96";
0483                         regulator-min-microvolt = <1800000>;
0484                         regulator-max-microvolt = <2960000>;
0485                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0486                 };
0487 
0488                 vreg_l7c_cam_vcm0_2p85: ldo7 {
0489                         regulator-name = "vreg_l7c_cam_vcm0_2p85";
0490                         regulator-min-microvolt = <2856000>;
0491                         regulator-max-microvolt = <3104000>;
0492                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0493                 };
0494 
0495                 vreg_l8c_1p8: ldo8 {
0496                         regulator-name = "vreg_l8c_1p8";
0497                         regulator-min-microvolt = <1800000>;
0498                         regulator-max-microvolt = <1800000>;
0499                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0500                 };
0501 
0502                 vreg_l9c_2p96: ldo9 {
0503                         regulator-name = "vreg_l9c_2p96";
0504                         regulator-min-microvolt = <2704000>;
0505                         regulator-max-microvolt = <2960000>;
0506                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0507                 };
0508 
0509                 vreg_l10c_3p0: ldo10 {
0510                         regulator-name = "vreg_l10c_3p0";
0511                         regulator-min-microvolt = <3000000>;
0512                         regulator-max-microvolt = <3000000>;
0513                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0514                 };
0515 
0516                 vreg_l11c_3p3: ldo11 {
0517                         regulator-name = "vreg_l11c_3p3";
0518                         regulator-min-microvolt = <3296000>;
0519                         regulator-max-microvolt = <3296000>;
0520                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0521                         regulator-always-on;
0522                 };
0523 
0524                 vreg_s8c_1p3: smps8 {
0525                         regulator-name = "vreg_s8c_1p3";
0526                         regulator-min-microvolt = <1352000>;
0527                         regulator-max-microvolt = <1352000>;
0528                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
0529                 };
0530         };
0531 };
0532 
0533 &cdsp {
0534         status = "okay";
0535         firmware-name = "qcom/sm8250/cdsp.mbn";
0536 };
0537 
0538 &dsi0 {
0539         status = "okay";
0540         vdda-supply = <&vreg_l9a_1p2>;
0541 
0542 #if 0
0543         qcom,dual-dsi-mode;
0544         qcom,master-dsi;
0545 #endif
0546 
0547         ports {
0548                 port@1 {
0549                         endpoint {
0550                                 remote-endpoint = <&lt9611_a>;
0551                                 data-lanes = <0 1 2 3>;
0552                         };
0553                 };
0554         };
0555 };
0556 
0557 &dsi0_phy {
0558         status = "okay";
0559         vdds-supply = <&vreg_l5a_0p88>;
0560 };
0561 
0562 &gmu {
0563         status = "okay";
0564 };
0565 
0566 &gpu {
0567         status = "okay";
0568 
0569         zap-shader {
0570                 memory-region = <&gpu_mem>;
0571                 firmware-name = "qcom/sm8250/a650_zap.mbn";
0572         };
0573 };
0574 
0575 /* LS-I2C0 */
0576 &i2c4 {
0577         status = "okay";
0578 };
0579 
0580 &i2c5 {
0581         status = "okay";
0582         clock-frequency = <400000>;
0583 
0584         lt9611_codec: hdmi-bridge@2b {
0585                 compatible = "lontium,lt9611uxc";
0586                 reg = <0x2b>;
0587                 #sound-dai-cells = <1>;
0588 
0589                 interrupts-extended = <&tlmm 63 IRQ_TYPE_EDGE_FALLING>;
0590 
0591                 reset-gpios = <&pm8150l_gpios 5 GPIO_ACTIVE_HIGH>;
0592 
0593                 vdd-supply = <&lt9611_1v2>;
0594                 vcc-supply = <&lt9611_3v3>;
0595 
0596                 pinctrl-names = "default";
0597                 pinctrl-0 = <&lt9611_irq_pin &lt9611_rst_pin>;
0598 
0599                 ports {
0600                         #address-cells = <1>;
0601                         #size-cells = <0>;
0602 
0603                         port@0 {
0604                                 reg = <0>;
0605 
0606                                 lt9611_a: endpoint {
0607                                         remote-endpoint = <&dsi0_out>;
0608                                 };
0609                         };
0610 
0611 #if 0
0612                         port@1 {
0613                                 reg = <1>;
0614 
0615                                 lt9611_b: endpoint {
0616                                         remote-endpoint = <&dsi1_out>;
0617                                 };
0618                         };
0619 #endif
0620 
0621                         port@2 {
0622                                 reg = <2>;
0623 
0624                                 lt9611_out: endpoint {
0625                                         remote-endpoint = <&hdmi_con>;
0626                                 };
0627                         };
0628 
0629                 };
0630         };
0631 };
0632 
0633 /* LS-I2C1 */
0634 &i2c15 {
0635         status = "okay";
0636 };
0637 
0638 &mdss {
0639         status = "okay";
0640 };
0641 
0642 &mdss_mdp {
0643         status = "okay";
0644 };
0645 
0646 &pm8150_adc {
0647         xo-therm@4c {
0648                 reg = <ADC5_XO_THERM_100K_PU>;
0649                 qcom,ratiometric;
0650                 qcom,hw-settle-time = <200>;
0651         };
0652 
0653         wifi-therm@4e {
0654                 reg = <ADC5_AMUX_THM2_100K_PU>;
0655                 qcom,ratiometric;
0656                 qcom,hw-settle-time = <200>;
0657         };
0658 };
0659 
0660 &pm8150_adc_tm {
0661         status = "okay";
0662 
0663         xo-therm@0 {
0664                 reg = <0>;
0665                 io-channels = <&pm8150_adc ADC5_XO_THERM_100K_PU>;
0666                 qcom,ratiometric;
0667                 qcom,hw-settle-time-us = <200>;
0668         };
0669 
0670         wifi-therm@1 {
0671                 reg = <1>;
0672                 io-channels = <&pm8150_adc ADC5_AMUX_THM2_100K_PU>;
0673                 qcom,ratiometric;
0674                 qcom,hw-settle-time-us = <200>;
0675         };
0676 };
0677 
0678 &pcie0 {
0679         status = "okay";
0680 };
0681 
0682 &pcie0_phy {
0683         status = "okay";
0684         vdda-phy-supply = <&vreg_l5a_0p88>;
0685         vdda-pll-supply = <&vreg_l9a_1p2>;
0686 };
0687 
0688 &pcie1 {
0689         status = "okay";
0690 };
0691 
0692 &pcie1_phy {
0693         status = "okay";
0694         vdda-phy-supply = <&vreg_l5a_0p88>;
0695         vdda-pll-supply = <&vreg_l9a_1p2>;
0696 };
0697 
0698 &pcie2 {
0699         status = "okay";
0700 };
0701 
0702 &pcie2_phy {
0703         status = "okay";
0704         vdda-phy-supply = <&vreg_l5a_0p88>;
0705         vdda-pll-supply = <&vreg_l9a_1p2>;
0706 };
0707 
0708 &pm8150_gpios {
0709         gpio-reserved-ranges = <1 1>, <3 2>, <7 1>;
0710         gpio-line-names =
0711                 "NC",
0712                 "OPTION2",
0713                 "PM_GPIO-F",
0714                 "PM_SLP_CLK_IN",
0715                 "OPTION1",
0716                 "VOL_UP_N",
0717                 "PM8250_GPIO7", /* Blue LED */
0718                 "SP_ARI_PWR_ALARM",
0719                 "GPIO_9_P", /* Yellow LED */
0720                 "GPIO_10_P"; /* Green LED */
0721 };
0722 
0723 &pm8150b_adc {
0724         conn-therm@4f {
0725                 reg = <ADC5_AMUX_THM3_100K_PU>;
0726                 qcom,ratiometric;
0727                 qcom,hw-settle-time = <200>;
0728         };
0729 };
0730 
0731 &pm8150b_adc_tm {
0732         status = "okay";
0733 
0734         conn-therm@0 {
0735                 reg = <0>;
0736                 io-channels = <&pm8150b_adc ADC5_AMUX_THM3_100K_PU>;
0737                 qcom,ratiometric;
0738                 qcom,hw-settle-time-us = <200>;
0739         };
0740 };
0741 
0742 &pm8150b_gpios {
0743         gpio-line-names =
0744                 "NC",
0745                 "NC",
0746                 "NC",
0747                 "NC",
0748                 "HAP_BOOST_EN", /* SOM */
0749                 "SMB_STAT", /* SOM */
0750                 "NC",
0751                 "NC",
0752                 "SDM_FORCE_USB_BOOT",
0753                 "NC",
0754                 "NC",
0755                 "NC";
0756 };
0757 
0758 &pm8150l_adc {
0759         skin-msm-therm@4e {
0760                 reg = <ADC5_AMUX_THM2_100K_PU>;
0761                 qcom,ratiometric;
0762                 qcom,hw-settle-time = <200>;
0763         };
0764 
0765         pm8150l-therm@4f {
0766                 reg = <ADC5_AMUX_THM3_100K_PU>;
0767                 qcom,ratiometric;
0768                 qcom,hw-settle-time = <200>;
0769         };
0770 };
0771 
0772 &pm8150l_adc_tm {
0773         status = "okay";
0774 
0775         skin-msm-therm@0 {
0776                 reg = <0>;
0777                 io-channels = <&pm8150l_adc ADC5_AMUX_THM2_100K_PU>;
0778                 qcom,ratiometric;
0779                 qcom,hw-settle-time-us = <200>;
0780         };
0781 
0782         pm8150l-therm@1 {
0783                 reg = <1>;
0784                 io-channels = <&pm8150l_adc ADC5_AMUX_THM3_100K_PU>;
0785                 qcom,ratiometric;
0786                 qcom,hw-settle-time-us = <200>;
0787         };
0788 };
0789 
0790 &pm8150l_gpios {
0791         gpio-line-names =
0792                 "NC",
0793                 "PM3003A_EN",
0794                 "NC",
0795                 "NC",
0796                 "PM_GPIO5", /* HDMI RST_N */
0797                 "PM_GPIO-A", /* PWM */
0798                 "PM_GPIO7",
0799                 "NC",
0800                 "NC",
0801                 "PM_GPIO-B",
0802                 "NC",
0803                 "PM3003A_MODE";
0804 
0805         lt9611_rst_pin: lt9611-rst-state {
0806                 pins = "gpio5";
0807                 function = "normal";
0808 
0809                 output-high;
0810                 input-disable;
0811                 power-source = <0>;
0812         };
0813 };
0814 
0815 &pm8150l_lpg {
0816         status = "okay";
0817 
0818         #address-cells = <1>;
0819         #size-cells = <0>;
0820 
0821         led@1 {
0822                 reg = <1>;
0823                 color = <LED_COLOR_ID_GREEN>;
0824                 function = LED_FUNCTION_HEARTBEAT;
0825                 function-enumerator = <3>;
0826 
0827                 linux,default-trigger = "heartbeat";
0828                 default-state = "on";
0829         };
0830 
0831         led@2 {
0832                 reg = <2>;
0833                 color = <LED_COLOR_ID_GREEN>;
0834                 function = LED_FUNCTION_INDICATOR;
0835                 function-enumerator = <2>;
0836                 default-state = "on";
0837         };
0838 
0839         led@3 {
0840                 reg = <3>;
0841                 color = <LED_COLOR_ID_GREEN>;
0842                 function = LED_FUNCTION_INDICATOR;
0843                 function-enumerator = <1>;
0844         };
0845 };
0846 
0847 &pon_pwrkey {
0848         status = "okay";
0849 };
0850 
0851 &pon_resin {
0852         status = "okay";
0853 
0854         linux,code = <KEY_VOLUMEDOWN>;
0855 };
0856 
0857 &qupv3_id_0 {
0858         status = "okay";
0859 };
0860 
0861 &qupv3_id_1 {
0862         status = "okay";
0863 };
0864 
0865 &qupv3_id_2 {
0866         status = "okay";
0867 };
0868 
0869 &q6afedai {
0870         qi2s@16 {
0871                 reg = <PRIMARY_MI2S_RX>;
0872                 qcom,sd-lines = <0 1 2 3>;
0873         };
0874 };
0875 
0876 /* TERT I2S Uses 1 I2S SD Lines for audio on LT9611 HDMI Bridge */
0877 &q6afedai {
0878         qi2s@20 {
0879                 reg = <TERTIARY_MI2S_RX>;
0880                 qcom,sd-lines = <0>;
0881         };
0882 };
0883 
0884 &q6asmdai {
0885         dai@0 {
0886                 reg = <0>;
0887         };
0888 
0889         dai@1 {
0890                 reg = <1>;
0891         };
0892 
0893         dai@2 {
0894                 reg = <2>;
0895         };
0896 };
0897 
0898 &sdhc_2 {
0899         status = "okay";
0900         pinctrl-names = "default";
0901         pinctrl-0 = <&sdc2_default_state &sdc2_card_det_n>;
0902         vmmc-supply = <&vreg_l9c_2p96>;
0903         vqmmc-supply = <&vreg_l6c_2p96>;
0904         cd-gpios = <&tlmm 77 GPIO_ACTIVE_LOW>;
0905         bus-width = <4>;
0906         no-sdio;
0907         no-emmc;
0908 };
0909 
0910 &sound {
0911         compatible = "qcom,qrb5165-rb5-sndcard";
0912         pinctrl-0 = <&tert_mi2s_active>;
0913         pinctrl-names = "default";
0914         model = "Qualcomm-RB5-WSA8815-Speakers-DMIC0";
0915         audio-routing =
0916                 "SpkrLeft IN", "WSA_SPK1 OUT",
0917                 "SpkrRight IN", "WSA_SPK2 OUT",
0918                 "VA DMIC0", "vdd-micb",
0919                 "VA DMIC1", "vdd-micb",
0920                 "MM_DL1",  "MultiMedia1 Playback",
0921                 "MM_DL2",  "MultiMedia2 Playback",
0922                 "MultiMedia3 Capture", "MM_UL3";
0923 
0924         mm1-dai-link {
0925                 link-name = "MultiMedia1";
0926                 cpu {
0927                         sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA1>;
0928                 };
0929         };
0930 
0931         mm2-dai-link {
0932                 link-name = "MultiMedia2";
0933                 cpu {
0934                         sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA2>;
0935                 };
0936         };
0937 
0938         mm3-dai-link {
0939                 link-name = "MultiMedia3";
0940                 cpu {
0941                         sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA3>;
0942                 };
0943         };
0944 
0945         hdmi-dai-link {
0946                 link-name = "HDMI Playback";
0947                 cpu {
0948                         sound-dai = <&q6afedai TERTIARY_MI2S_RX>;
0949                 };
0950 
0951                 platform {
0952                         sound-dai = <&q6routing>;
0953                 };
0954 
0955                 codec {
0956                         sound-dai = <&lt9611_codec 0>;
0957                 };
0958         };
0959 
0960         dma-dai-link {
0961                 link-name = "WSA Playback";
0962                 cpu {
0963                         sound-dai = <&q6afedai WSA_CODEC_DMA_RX_0>;
0964                 };
0965 
0966                 platform {
0967                         sound-dai = <&q6routing>;
0968                 };
0969 
0970                 codec {
0971                         sound-dai = <&left_spkr>, <&right_spkr>, <&swr0 0>, <&wsamacro 0>;
0972                 };
0973         };
0974 
0975         va-dai-link {
0976                 link-name = "VA Capture";
0977                 cpu {
0978                         sound-dai = <&q6afedai VA_CODEC_DMA_TX_0>;
0979                 };
0980 
0981                 platform {
0982                         sound-dai = <&q6routing>;
0983                 };
0984 
0985                 codec {
0986                         sound-dai = <&vamacro 0>;
0987                 };
0988         };
0989 };
0990 
0991 /* CAN */
0992 &spi0 {
0993         status = "okay";
0994         pinctrl-names = "default";
0995         pinctrl-0 = <&qup_spi0_data_clk>, <&qup_spi0_cs_gpio>;
0996         cs-gpios = <&tlmm 31 GPIO_ACTIVE_LOW>;
0997 
0998         can@0 {
0999                 compatible = "microchip,mcp2518fd";
1000                 reg = <0>;
1001                 clocks = <&clk40M>;
1002                 interrupts-extended = <&tlmm 15 IRQ_TYPE_LEVEL_LOW>;
1003                 spi-max-frequency = <10000000>;
1004                 vdd-supply = <&vdc_5v>;
1005                 xceiver-supply = <&vdc_5v>;
1006         };
1007 };
1008 
1009 &swr0 {
1010         left_spkr: wsa8810-left{
1011                 compatible = "sdw10217211000";
1012                 reg = <0 3>;
1013                 powerdown-gpios = <&tlmm 130 GPIO_ACTIVE_HIGH>;
1014                 #thermal-sensor-cells = <0>;
1015                 sound-name-prefix = "SpkrLeft";
1016                 #sound-dai-cells = <0>;
1017         };
1018 
1019         right_spkr: wsa8810-right{
1020                 compatible = "sdw10217211000";
1021                 reg = <0 4>;
1022                 powerdown-gpios = <&tlmm 130 GPIO_ACTIVE_HIGH>;
1023                 #thermal-sensor-cells = <0>;
1024                 sound-name-prefix = "SpkrRight";
1025                 #sound-dai-cells = <0>;
1026         };
1027 };
1028 
1029 &tlmm {
1030         gpio-reserved-ranges = <40 4>;
1031         gpio-line-names =
1032                 "GPIO-MM",
1033                 "GPIO-NN",
1034                 "GPIO-OO",
1035                 "GPIO-PP",
1036                 "GPIO-A",
1037                 "GPIO-C",
1038                 "GPIO-E",
1039                 "GPIO-D",
1040                 "I2C0-SDA",
1041                 "I2C0-SCL",
1042                 "GPIO-TT", /* GPIO_10 */
1043                 "NC",
1044                 "GPIO_12_I2C_SDA",
1045                 "GPIO_13_I2C_SCL",
1046                 "GPIO-X",
1047                 "GPIO_15_RGMII_INT",
1048                 "HST_BT_UART_CTS",
1049                 "HST_BT_UART_RFR",
1050                 "HST_BT_UART_TX",
1051                 "HST_BT_UART_RX",
1052                 "HST_WLAN_EN", /* GPIO_20 */
1053                 "HST_BT_EN",
1054                 "GPIO-AAA",
1055                 "GPIO-BBB",
1056                 "GPIO-CCC",
1057                 "GPIO-Z",
1058                 "GPIO-DDD",
1059                 "GPIO-BB",
1060                 "GPIO_28_CAN_SPI_MISO",
1061                 "GPIO_29_CAN_SPI_MOSI",
1062                 "GPIO_30_CAN_SPI_CLK", /* GPIO_30 */
1063                 "GPIO_31_CAN_SPI_CS",
1064                 "GPIO-UU",
1065                 "NC",
1066                 "UART1_TXD_SOM",
1067                 "UART1_RXD_SOM",
1068                 "UART0_CTS",
1069                 "UART0_RTS",
1070                 "UART0_TXD",
1071                 "UART0_RXD",
1072                 "SPI1_MISO", /* GPIO_40 */
1073                 "SPI1_MOSI",
1074                 "SPI1_CLK",
1075                 "SPI1_CS",
1076                 "I2C1_SDA",
1077                 "I2C1_SCL",
1078                 "GPIO-F",
1079                 "GPIO-JJ",
1080                 "Board_ID1",
1081                 "Board_ID2",
1082                 "NC", /* GPIO_50 */
1083                 "NC",
1084                 "SPI0_MISO",
1085                 "SPI0_MOSI",
1086                 "SPI0_SCLK",
1087                 "SPI0_CS",
1088                 "GPIO-QQ",
1089                 "GPIO-RR",
1090                 "USB2LAN_RESET",
1091                 "USB2LAN_EXTWAKE",
1092                 "NC", /* GPIO_60 */
1093                 "NC",
1094                 "NC",
1095                 "LT9611_INT",
1096                 "GPIO-AA",
1097                 "USB_CC_DIR",
1098                 "GPIO-G",
1099                 "GPIO-LL",
1100                 "USB_DP_HPD_1P8",
1101                 "NC",
1102                 "NC", /* GPIO_70 */
1103                 "SD_CMD",
1104                 "SD_DAT3",
1105                 "SD_SCLK",
1106                 "SD_DAT2",
1107                 "SD_DAT1",
1108                 "SD_DAT0", /* BOOT_CFG3 */
1109                 "SD_UFS_CARD_DET_N",
1110                 "GPIO-II",
1111                 "PCIE0_RST_N",
1112                 "PCIE0_CLK_REQ_N", /* GPIO_80 */
1113                 "PCIE0_WAKE_N",
1114                 "GPIO-CC",
1115                 "GPIO-DD",
1116                 "GPIO-EE",
1117                 "GPIO-FF",
1118                 "GPIO-GG",
1119                 "GPIO-HH",
1120                 "GPIO-VV",
1121                 "GPIO-WW",
1122                 "NC", /* GPIO_90 */
1123                 "NC",
1124                 "GPIO-K",
1125                 "GPIO-I",
1126                 "CSI0_MCLK",
1127                 "CSI1_MCLK",
1128                 "CSI2_MCLK",
1129                 "CSI3_MCLK",
1130                 "GPIO-AA", /* CSI4_MCLK */
1131                 "GPIO-BB", /* CSI5_MCLK */
1132                 "GPIO-KK", /* GPIO_100 */
1133                 "CCI_I2C_SDA0",
1134                 "CCI_I2C_SCL0",
1135                 "CCI_I2C_SDA1",
1136                 "CCI_I2C_SCL1",
1137                 "CCI_I2C_SDA2",
1138                 "CCI_I2C_SCL2",
1139                 "CCI_I2C_SDA3",
1140                 "CCI_I2C_SCL3",
1141                 "GPIO-L",
1142                 "NC", /* GPIO_110 */
1143                 "NC",
1144                 "ACCEL_INT",
1145                 "GYRO_INT",
1146                 "GPIO-J",
1147                 "GPIO-YY",
1148                 "GPIO-H",
1149                 "GPIO-ZZ",
1150                 "NC",
1151                 "NC",
1152                 "NC", /* GPIO_120 */
1153                 "NC",
1154                 "MAG_INT",
1155                 "MAG_DRDY_INT",
1156                 "HST_SW_CTRL",
1157                 "GPIO-M",
1158                 "GPIO-N",
1159                 "GPIO-O",
1160                 "GPIO-P",
1161                 "PS_INT",
1162                 "WSA1_EN", /* GPIO_130 */
1163                 "USB_HUB_RESET",
1164                 "SDM_FORCE_USB_BOOT",
1165                 "I2S1_CLK_HDMI",
1166                 "I2S1_DATA0_HDMI",
1167                 "I2S1_WS_HDMI",
1168                 "GPIO-B",
1169                 "GPIO_137", /* To LT9611_I2S_MCLK_3V3 */
1170                 "PCM_CLK",
1171                 "PCM_DI",
1172                 "PCM_DO", /* GPIO_140 */
1173                 "PCM_FS",
1174                 "HST_SLIM_CLK",
1175                 "HST_SLIM_DATA",
1176                 "GPIO-U",
1177                 "GPIO-Y",
1178                 "GPIO-R",
1179                 "GPIO-Q",
1180                 "GPIO-S",
1181                 "GPIO-T",
1182                 "GPIO-V", /* GPIO_150 */
1183                 "GPIO-W",
1184                 "DMIC_CLK1",
1185                 "DMIC_DATA1",
1186                 "DMIC_CLK2",
1187                 "DMIC_DATA2",
1188                 "WSA_SWR_CLK",
1189                 "WSA_SWR_DATA",
1190                 "DMIC_CLK3",
1191                 "DMIC_DATA3",
1192                 "I2C4_SDA", /* GPIO_160 */
1193                 "I2C4_SCL",
1194                 "SPI3_CS1",
1195                 "SPI3_CS2",
1196                 "SPI2_MISO_LS3",
1197                 "SPI2_MOSI_LS3",
1198                 "SPI2_CLK_LS3",
1199                 "SPI2_ACCEL_CS_LS3",
1200                 "SPI2_CS1",
1201                 "NC",
1202                 "GPIO-SS", /* GPIO_170 */
1203                 "GPIO-XX",
1204                 "SPI3_MISO",
1205                 "SPI3_MOSI",
1206                 "SPI3_CLK",
1207                 "SPI3_CS",
1208                 "HST_BLE_SNS_UART_TX",
1209                 "HST_BLE_SNS_UART_RX",
1210                 "HST_WLAN_UART_TX",
1211                 "HST_WLAN_UART_RX";
1212 
1213         lt9611_irq_pin: lt9611-irq {
1214                 pins = "gpio63";
1215                 function = "gpio";
1216                 bias-disable;
1217         };
1218 
1219         sdc2_default_state: sdc2-default {
1220                 clk {
1221                         pins = "sdc2_clk";
1222                         bias-disable;
1223                         drive-strength = <16>;
1224                 };
1225 
1226                 cmd {
1227                         pins = "sdc2_cmd";
1228                         bias-pull-up;
1229                         drive-strength = <10>;
1230                 };
1231 
1232                 data {
1233                         pins = "sdc2_data";
1234                         bias-pull-up;
1235                         drive-strength = <10>;
1236                 };
1237         };
1238 
1239         sdc2_card_det_n: sd-card-det-n {
1240                 pins = "gpio77";
1241                 function = "gpio";
1242                 bias-pull-up;
1243         };
1244 };
1245 
1246 &uart12 {
1247         status = "okay";
1248 };
1249 
1250 &ufs_mem_hc {
1251         status = "okay";
1252 
1253         vcc-supply = <&vreg_l17a_3p0>;
1254         vcc-max-microamp = <800000>;
1255         vccq-supply = <&vreg_l6a_1p2>;
1256         vccq-max-microamp = <800000>;
1257         vccq2-supply = <&vreg_s4a_1p8>;
1258         vccq2-max-microamp = <800000>;
1259 };
1260 
1261 &ufs_mem_phy {
1262         status = "okay";
1263 
1264         vdda-phy-supply = <&vreg_l5a_0p88>;
1265         vdda-pll-supply = <&vreg_l9a_1p2>;
1266 };
1267 
1268 &usb_1 {
1269         status = "okay";
1270 };
1271 
1272 &usb_1_dwc3 {
1273         dr_mode = "peripheral";
1274 };
1275 
1276 &usb_1_hsphy {
1277         status = "okay";
1278 
1279         vdda-pll-supply = <&vreg_l5a_0p88>;
1280         vdda33-supply = <&vreg_l2a_3p1>;
1281         vdda18-supply = <&vreg_l12a_1p8>;
1282 };
1283 
1284 &usb_1_qmpphy {
1285         status = "okay";
1286 
1287         vdda-phy-supply = <&vreg_l9a_1p2>;
1288         vdda-pll-supply = <&vreg_l18a_0p92>;
1289 };
1290 
1291 &usb_2 {
1292         status = "okay";
1293 };
1294 
1295 &usb_2_dwc3 {
1296         dr_mode = "host";
1297 };
1298 
1299 &usb_2_hsphy {
1300         status = "okay";
1301 
1302         vdda-pll-supply = <&vreg_l5a_0p88>;
1303         vdda33-supply = <&vreg_l2a_3p1>;
1304         vdda18-supply = <&vreg_l12a_1p8>;
1305 };
1306 
1307 &usb_2_qmpphy {
1308         status = "okay";
1309 
1310         vdda-phy-supply = <&vreg_l9a_1p2>;
1311         vdda-pll-supply = <&vreg_l18a_0p92>;
1312 };
1313 
1314 &vamacro {
1315         pinctrl-0 = <&dmic01_active>;
1316         pinctrl-names = "default";
1317         vdd-micb-supply = <&vreg_s4a_1p8>;
1318         qcom,dmic-sample-rate = <600000>;
1319 };
1320 
1321 &venus {
1322         status = "okay";
1323 };
1324 
1325 /* PINCTRL - additions to nodes defined in sm8250.dtsi */
1326 &qup_spi0_cs_gpio {
1327         drive-strength = <6>;
1328         bias-disable;
1329 };
1330 
1331 &qup_spi0_data_clk {
1332         drive-strength = <6>;
1333         bias-disable;
1334 };