The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/src/arm64/qcom/sm8350-microsoft-surface-duo2.dts

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 // SPDX-License-Identifier: BSD-3-Clause
    2 /*
    3  * Copyright (C) 2021, Microsoft Corporation
    4  */
    5 
    6 /dts-v1/;
    7 
    8 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
    9 #include "sm8350.dtsi"
   10 #include "pm8350.dtsi"
   11 #include "pm8350b.dtsi"
   12 #include "pm8350c.dtsi"
   13 #include "pmk8350.dtsi"
   14 #include "pmr735a.dtsi"
   15 #include "pmr735b.dtsi"
   16 
   17 / {
   18         model = "Microsoft Surface Duo 2";
   19         compatible = "microsoft,surface-duo2", "qcom,sm8350";
   20         chassis-type = "handset";
   21 
   22         aliases {
   23                 serial0 = &uart2;
   24         };
   25 
   26         chosen {
   27                 stdout-path = "serial0:115200n8";
   28         };
   29 
   30         vph_pwr: vph-pwr-regulator {
   31                 compatible = "regulator-fixed";
   32                 regulator-name = "vph_pwr";
   33                 regulator-min-microvolt = <3700000>;
   34                 regulator-max-microvolt = <3700000>;
   35 
   36                 regulator-always-on;
   37                 regulator-boot-on;
   38         };
   39 };
   40 
   41 &adsp {
   42         status = "okay";
   43         firmware-name = "qcom/sm8350/microsoft/adsp.mbn";
   44 };
   45 
   46 &apps_rsc {
   47         pm8350-rpmh-regulators {
   48                 compatible = "qcom,pm8350-rpmh-regulators";
   49                 qcom,pmic-id = "b";
   50 
   51                 vdd-s1-supply = <&vph_pwr>;
   52                 vdd-s2-supply = <&vph_pwr>;
   53                 vdd-s3-supply = <&vph_pwr>;
   54                 vdd-s4-supply = <&vph_pwr>;
   55                 vdd-s5-supply = <&vph_pwr>;
   56                 vdd-s6-supply = <&vph_pwr>;
   57                 vdd-s7-supply = <&vph_pwr>;
   58                 vdd-s8-supply = <&vph_pwr>;
   59                 vdd-s9-supply = <&vph_pwr>;
   60                 vdd-s10-supply = <&vph_pwr>;
   61                 vdd-s11-supply = <&vph_pwr>;
   62                 vdd-s12-supply = <&vph_pwr>;
   63 
   64                 vdd-l1-l4-supply = <&vreg_s11b_0p95>;
   65                 vdd-l2-l7-supply = <&vreg_bob>;
   66                 vdd-l3-l5-supply = <&vreg_bob>;
   67                 vdd-l6-l9-l10-supply = <&vreg_s11b_0p95>;
   68                 vdd-l8-supply = <&vreg_s2c_0p8>;
   69 
   70                 vreg_s10b_1p8: smps10 {
   71                         regulator-name = "vreg_s10b_1p8";
   72                         regulator-min-microvolt = <1800000>;
   73                         regulator-max-microvolt = <1800000>;
   74                 };
   75 
   76                 vreg_s11b_0p95: smps11 {
   77                         regulator-name = "vreg_s11b_0p95";
   78                         regulator-min-microvolt = <752000>;
   79                         regulator-max-microvolt = <1000000>;
   80                 };
   81 
   82                 vreg_s12b_1p25: smps12 {
   83                         regulator-name = "vreg_s12b_1p25";
   84                         regulator-min-microvolt = <1224000>;
   85                         regulator-max-microvolt = <1360000>;
   86                 };
   87 
   88                 vreg_l1b_0p88: ldo1 {
   89                         regulator-name = "vreg_l1b_0p88";
   90                         regulator-min-microvolt = <912000>;
   91                         regulator-max-microvolt = <920000>;
   92                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
   93                 };
   94 
   95                 vreg_l2b_3p07: ldo2 {
   96                         regulator-name = "vreg_l2b_3p07";
   97                         regulator-min-microvolt = <3072000>;
   98                         regulator-max-microvolt = <3072000>;
   99                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  100                 };
  101 
  102                 vreg_l3b_0p9: ldo3 {
  103                         regulator-name = "vreg_l3b_0p9";
  104                         regulator-min-microvolt = <904000>;
  105                         regulator-max-microvolt = <904000>;
  106                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  107                 };
  108 
  109                 vreg_l5b_0p88: ldo5 {
  110                         regulator-name = "vreg_l3b_0p9";
  111                         regulator-min-microvolt = <880000>;
  112                         regulator-max-microvolt = <888000>;
  113                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  114                 };
  115 
  116                 vreg_l6b_1p2: ldo6 {
  117                         regulator-name = "vreg_l6b_1p2";
  118                         regulator-min-microvolt = <1200000>;
  119                         regulator-max-microvolt = <1208000>;
  120                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  121                 };
  122 
  123                 vreg_l7b_2p96: ldo7 {
  124                         regulator-name = "vreg_l7b_2p96";
  125                         regulator-min-microvolt = <2400000>;
  126                         regulator-max-microvolt = <3008000>;
  127                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  128                 };
  129 
  130                 vreg_l9b_1p2: ldo9 {
  131                         regulator-name = "vreg_l9b_1p2";
  132                         regulator-min-microvolt = <1200000>;
  133                         regulator-max-microvolt = <1200000>;
  134                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  135                 };
  136         };
  137 
  138         pm8350c-rpmh-regulators {
  139                 compatible = "qcom,pm8350c-rpmh-regulators";
  140                 qcom,pmic-id = "c";
  141 
  142                 vdd-s1-supply = <&vph_pwr>;
  143                 vdd-s2-supply = <&vph_pwr>;
  144                 vdd-s3-supply = <&vph_pwr>;
  145                 vdd-s4-supply = <&vph_pwr>;
  146                 vdd-s5-supply = <&vph_pwr>;
  147                 vdd-s6-supply = <&vph_pwr>;
  148                 vdd-s7-supply = <&vph_pwr>;
  149                 vdd-s8-supply = <&vph_pwr>;
  150                 vdd-s9-supply = <&vph_pwr>;
  151                 vdd-s10-supply = <&vph_pwr>;
  152 
  153                 vdd-l1-l12-supply = <&vreg_s1c_1p86>;
  154                 vdd-l2-l8-supply = <&vreg_s1c_1p86>;
  155                 vdd-l3-l4-l5-l7-l13-supply = <&vreg_bob>;
  156                 vdd-l6-l9-l11-supply = <&vreg_bob>;
  157                 vdd-l10-supply = <&vreg_s12b_1p25>;
  158 
  159                 vdd-bob-supply = <&vph_pwr>;
  160 
  161                 vreg_s1c_1p86: smps1 {
  162                         regulator-name = "vreg_s1c_1p86";
  163                         regulator-min-microvolt = <1800000>;
  164                         regulator-max-microvolt = <1952000>;
  165                 };
  166 
  167                 vreg_s2c_0p8: smps2 {
  168                         regulator-name = "vreg_s2c_0p8";
  169                         regulator-min-microvolt = <640000>;
  170                         regulator-max-microvolt = <1000000>;
  171                 };
  172 
  173                 vreg_s10c_1p05: smps10 {
  174                         regulator-name = "vreg_s10c_1p05";
  175                         regulator-min-microvolt = <1048000>;
  176                         regulator-max-microvolt = <1128000>;
  177                 };
  178 
  179                 vreg_bob: bob {
  180                         regulator-name = "vreg_bob";
  181                         regulator-min-microvolt = <3008000>;
  182                         regulator-max-microvolt = <3960000>;
  183                         regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
  184                 };
  185 
  186                 vreg_l1c_1p8: ldo1 {
  187                         regulator-name = "vreg_l1c_1p8";
  188                         regulator-min-microvolt = <1800000>;
  189                         regulator-max-microvolt = <1800000>;
  190                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  191                 };
  192 
  193                 vreg_l2c_1p8: ldo2 {
  194                         regulator-name = "vreg_l2c_1p8";
  195                         regulator-min-microvolt = <1800000>;
  196                         regulator-max-microvolt = <1800000>;
  197                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  198                 };
  199 
  200                 vreg_l3c_3p0: ldo3 {
  201                         regulator-name = "vreg_l3c_3p0";
  202                         regulator-min-microvolt = <3008000>;
  203                         regulator-max-microvolt = <3008000>;
  204                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  205                 };
  206 
  207                 vreg_l4c_uim1: ldo4 {
  208                         regulator-name = "vreg_l4c_uim1";
  209                         regulator-min-microvolt = <1704000>;
  210                         regulator-max-microvolt = <3000000>;
  211                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  212                 };
  213 
  214                 vreg_l5c_uim2: ldo5 {
  215                         regulator-name = "vreg_l5c_uim2";
  216                         regulator-min-microvolt = <1704000>;
  217                         regulator-max-microvolt = <3000000>;
  218                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  219                 };
  220 
  221                 vreg_l6c_1p8: ldo6 {
  222                         regulator-name = "vreg_l6c_1p8";
  223                         regulator-min-microvolt = <1800000>;
  224                         regulator-max-microvolt = <2960000>;
  225                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  226                 };
  227 
  228                 vreg_l7c_3p0: ldo7 {
  229                         regulator-name = "vreg_l7c_3p0";
  230                         regulator-min-microvolt = <3008000>;
  231                         regulator-max-microvolt = <3008000>;
  232                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  233                 };
  234 
  235                 vreg_l8c_1p8: ldo8 {
  236                         regulator-name = "vreg_l8c_1p8";
  237                         regulator-min-microvolt = <1800000>;
  238                         regulator-max-microvolt = <1800000>;
  239                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  240                 };
  241 
  242                 vreg_l9c_2p96: ldo9 {
  243                         regulator-name = "vreg_l9c_2p96";
  244                         regulator-min-microvolt = <2960000>;
  245                         regulator-max-microvolt = <3008000>;
  246                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  247                 };
  248 
  249                 vreg_l10c_1p2: ldo10 {
  250                         regulator-name = "vreg_l10c_1p2";
  251                         regulator-min-microvolt = <1200000>;
  252                         regulator-max-microvolt = <1200000>;
  253                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  254                 };
  255 
  256                 vreg_l11c_2p96: ldo11 {
  257                         regulator-name = "vreg_l11c_2p96";
  258                         regulator-min-microvolt = <2400000>;
  259                         regulator-max-microvolt = <3008000>;
  260                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  261                 };
  262 
  263                 vreg_l12c_1p8: ldo12 {
  264                         regulator-name = "vreg_l12c_1p8";
  265                         regulator-min-microvolt = <1800000>;
  266                         regulator-max-microvolt = <2000000>;
  267                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  268                 };
  269 
  270                 vreg_l13c_3p0: ldo13 {
  271                         regulator-name = "vreg_l13c_3p0";
  272                         regulator-min-microvolt = <3000000>;
  273                         regulator-max-microvolt = <3000000>;
  274                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  275                 };
  276         };
  277 };
  278 
  279 &cdsp {
  280         status = "okay";
  281         firmware-name = "qcom/sm8350/microsoft/cdsp.mbn";
  282 };
  283 
  284 &i2c10 {
  285         status = "okay";
  286 };
  287 
  288 &i2c11 {
  289         status = "okay";
  290 };
  291 
  292 &ipa {
  293         status = "okay";
  294 
  295         memory-region = <&pil_ipa_fw_mem>;
  296 };
  297 
  298 &mpss {
  299         status = "okay";
  300         firmware-name = "qcom/sm8350/microsoft/modem.mbn";
  301 };
  302 
  303 &qupv3_id_0 {
  304         status = "okay";
  305 };
  306 
  307 &qupv3_id_1 {
  308         status = "okay";
  309 };
  310 
  311 &slpi {
  312         status = "okay";
  313         firmware-name = "qcom/sm8350/microsoft/slpi.mbn";
  314 };
  315 
  316 &tlmm {
  317         gpio-reserved-ranges = <4 4>, <12 4>, <56 4>, <76 4>;
  318 };
  319 
  320 &uart2 {
  321         status = "okay";
  322 };
  323 
  324 &ufs_mem_hc {
  325         status = "okay";
  326 
  327         reset-gpios = <&tlmm 203 GPIO_ACTIVE_LOW>;
  328 
  329         vcc-supply = <&vreg_l7b_2p96>;
  330         vcc-max-microamp = <800000>;
  331         vccq-supply = <&vreg_l9b_1p2>;
  332         vccq-max-microamp = <900000>;
  333 };
  334 
  335 &ufs_mem_phy {
  336         status = "okay";
  337 
  338         vdda-phy-supply = <&vreg_l5b_0p88>;
  339         vdda-pll-supply = <&vreg_l6b_1p2>;
  340 };
  341 
  342 &usb_1 {
  343         status = "okay";
  344         dr_mode = "peripheral";
  345 };
  346 
  347 &usb_1_hsphy {
  348         status = "okay";
  349 
  350         vdda-pll-supply = <&vreg_l5b_0p88>;
  351         vdda18-supply = <&vreg_l1c_1p8>;
  352         vdda33-supply = <&vreg_l2b_3p07>;
  353 };
  354 
  355 &usb_1_qmpphy {
  356         status = "okay";
  357 
  358         vdda-phy-supply = <&vreg_l6b_1p2>;
  359         vdda-pll-supply = <&vreg_l1b_0p88>;
  360 };
  361 
  362 &usb_2 {
  363         status = "okay";
  364 };
  365 
  366 &usb_2_hsphy {
  367         status = "okay";
  368 
  369         vdda-pll-supply = <&vreg_l5b_0p88>;
  370         vdda18-supply = <&vreg_l1c_1p8>;
  371         vdda33-supply = <&vreg_l2b_3p07>;
  372 };
  373 
  374 &usb_2_qmpphy {
  375         status = "okay";
  376 
  377         vdda-phy-supply = <&vreg_l6b_1p2>;
  378         vdda-pll-supply = <&vreg_l5b_0p88>;
  379 };

Cache object: 170c9849a1c9aba6def74b5a19c263b4


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.