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/msm8998.dtsi

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: GPL-2.0
    2 /* Copyright (c) 2016, The Linux Foundation. All rights reserved. */
    3 
    4 #include <dt-bindings/interrupt-controller/arm-gic.h>
    5 #include <dt-bindings/clock/qcom,gcc-msm8998.h>
    6 #include <dt-bindings/clock/qcom,gpucc-msm8998.h>
    7 #include <dt-bindings/clock/qcom,mmcc-msm8998.h>
    8 #include <dt-bindings/clock/qcom,rpmcc.h>
    9 #include <dt-bindings/power/qcom-rpmpd.h>
   10 #include <dt-bindings/gpio/gpio.h>
   11 
   12 / {
   13         interrupt-parent = <&intc>;
   14 
   15         qcom,msm-id = <292 0x0>;
   16 
   17         #address-cells = <2>;
   18         #size-cells = <2>;
   19 
   20         chosen { };
   21 
   22         memory@80000000 {
   23                 device_type = "memory";
   24                 /* We expect the bootloader to fill in the reg */
   25                 reg = <0x0 0x80000000 0x0 0x0>;
   26         };
   27 
   28         reserved-memory {
   29                 #address-cells = <2>;
   30                 #size-cells = <2>;
   31                 ranges;
   32 
   33                 hyp_mem: memory@85800000 {
   34                         reg = <0x0 0x85800000 0x0 0x600000>;
   35                         no-map;
   36                 };
   37 
   38                 xbl_mem: memory@85e00000 {
   39                         reg = <0x0 0x85e00000 0x0 0x100000>;
   40                         no-map;
   41                 };
   42 
   43                 smem_mem: smem-mem@86000000 {
   44                         reg = <0x0 0x86000000 0x0 0x200000>;
   45                         no-map;
   46                 };
   47 
   48                 tz_mem: memory@86200000 {
   49                         reg = <0x0 0x86200000 0x0 0x2d00000>;
   50                         no-map;
   51                 };
   52 
   53                 rmtfs_mem: memory@88f00000 {
   54                         compatible = "qcom,rmtfs-mem";
   55                         reg = <0x0 0x88f00000 0x0 0x200000>;
   56                         no-map;
   57 
   58                         qcom,client-id = <1>;
   59                         qcom,vmid = <15>;
   60                 };
   61 
   62                 spss_mem: memory@8ab00000 {
   63                         reg = <0x0 0x8ab00000 0x0 0x700000>;
   64                         no-map;
   65                 };
   66 
   67                 adsp_mem: memory@8b200000 {
   68                         reg = <0x0 0x8b200000 0x0 0x1a00000>;
   69                         no-map;
   70                 };
   71 
   72                 mpss_mem: memory@8cc00000 {
   73                         reg = <0x0 0x8cc00000 0x0 0x7000000>;
   74                         no-map;
   75                 };
   76 
   77                 venus_mem: memory@93c00000 {
   78                         reg = <0x0 0x93c00000 0x0 0x500000>;
   79                         no-map;
   80                 };
   81 
   82                 mba_mem: memory@94100000 {
   83                         reg = <0x0 0x94100000 0x0 0x200000>;
   84                         no-map;
   85                 };
   86 
   87                 slpi_mem: memory@94300000 {
   88                         reg = <0x0 0x94300000 0x0 0xf00000>;
   89                         no-map;
   90                 };
   91 
   92                 ipa_fw_mem: memory@95200000 {
   93                         reg = <0x0 0x95200000 0x0 0x10000>;
   94                         no-map;
   95                 };
   96 
   97                 ipa_gsi_mem: memory@95210000 {
   98                         reg = <0x0 0x95210000 0x0 0x5000>;
   99                         no-map;
  100                 };
  101 
  102                 gpu_mem: memory@95600000 {
  103                         reg = <0x0 0x95600000 0x0 0x100000>;
  104                         no-map;
  105                 };
  106 
  107                 wlan_msa_mem: memory@95700000 {
  108                         reg = <0x0 0x95700000 0x0 0x100000>;
  109                         no-map;
  110                 };
  111         };
  112 
  113         clocks {
  114                 xo: xo-board {
  115                         compatible = "fixed-clock";
  116                         #clock-cells = <0>;
  117                         clock-frequency = <19200000>;
  118                         clock-output-names = "xo_board";
  119                 };
  120 
  121                 sleep_clk: sleep-clk {
  122                         compatible = "fixed-clock";
  123                         #clock-cells = <0>;
  124                         clock-frequency = <32764>;
  125                 };
  126         };
  127 
  128         cpus {
  129                 #address-cells = <2>;
  130                 #size-cells = <0>;
  131 
  132                 CPU0: cpu@0 {
  133                         device_type = "cpu";
  134                         compatible = "qcom,kryo280";
  135                         reg = <0x0 0x0>;
  136                         enable-method = "psci";
  137                         capacity-dmips-mhz = <1024>;
  138                         cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>;
  139                         next-level-cache = <&L2_0>;
  140                         L2_0: l2-cache {
  141                                 compatible = "cache";
  142                                 cache-level = <2>;
  143                         };
  144                 };
  145 
  146                 CPU1: cpu@1 {
  147                         device_type = "cpu";
  148                         compatible = "qcom,kryo280";
  149                         reg = <0x0 0x1>;
  150                         enable-method = "psci";
  151                         capacity-dmips-mhz = <1024>;
  152                         cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>;
  153                         next-level-cache = <&L2_0>;
  154                 };
  155 
  156                 CPU2: cpu@2 {
  157                         device_type = "cpu";
  158                         compatible = "qcom,kryo280";
  159                         reg = <0x0 0x2>;
  160                         enable-method = "psci";
  161                         capacity-dmips-mhz = <1024>;
  162                         cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>;
  163                         next-level-cache = <&L2_0>;
  164                 };
  165 
  166                 CPU3: cpu@3 {
  167                         device_type = "cpu";
  168                         compatible = "qcom,kryo280";
  169                         reg = <0x0 0x3>;
  170                         enable-method = "psci";
  171                         capacity-dmips-mhz = <1024>;
  172                         cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>;
  173                         next-level-cache = <&L2_0>;
  174                 };
  175 
  176                 CPU4: cpu@100 {
  177                         device_type = "cpu";
  178                         compatible = "qcom,kryo280";
  179                         reg = <0x0 0x100>;
  180                         enable-method = "psci";
  181                         capacity-dmips-mhz = <1536>;
  182                         cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>;
  183                         next-level-cache = <&L2_1>;
  184                         L2_1: l2-cache {
  185                                 compatible = "cache";
  186                                 cache-level = <2>;
  187                         };
  188                 };
  189 
  190                 CPU5: cpu@101 {
  191                         device_type = "cpu";
  192                         compatible = "qcom,kryo280";
  193                         reg = <0x0 0x101>;
  194                         enable-method = "psci";
  195                         capacity-dmips-mhz = <1536>;
  196                         cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>;
  197                         next-level-cache = <&L2_1>;
  198                 };
  199 
  200                 CPU6: cpu@102 {
  201                         device_type = "cpu";
  202                         compatible = "qcom,kryo280";
  203                         reg = <0x0 0x102>;
  204                         enable-method = "psci";
  205                         capacity-dmips-mhz = <1536>;
  206                         cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>;
  207                         next-level-cache = <&L2_1>;
  208                 };
  209 
  210                 CPU7: cpu@103 {
  211                         device_type = "cpu";
  212                         compatible = "qcom,kryo280";
  213                         reg = <0x0 0x103>;
  214                         enable-method = "psci";
  215                         capacity-dmips-mhz = <1536>;
  216                         cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>;
  217                         next-level-cache = <&L2_1>;
  218                 };
  219 
  220                 cpu-map {
  221                         cluster0 {
  222                                 core0 {
  223                                         cpu = <&CPU0>;
  224                                 };
  225 
  226                                 core1 {
  227                                         cpu = <&CPU1>;
  228                                 };
  229 
  230                                 core2 {
  231                                         cpu = <&CPU2>;
  232                                 };
  233 
  234                                 core3 {
  235                                         cpu = <&CPU3>;
  236                                 };
  237                         };
  238 
  239                         cluster1 {
  240                                 core0 {
  241                                         cpu = <&CPU4>;
  242                                 };
  243 
  244                                 core1 {
  245                                         cpu = <&CPU5>;
  246                                 };
  247 
  248                                 core2 {
  249                                         cpu = <&CPU6>;
  250                                 };
  251 
  252                                 core3 {
  253                                         cpu = <&CPU7>;
  254                                 };
  255                         };
  256                 };
  257 
  258                 idle-states {
  259                         entry-method = "psci";
  260 
  261                         LITTLE_CPU_SLEEP_0: cpu-sleep-0-0 {
  262                                 compatible = "arm,idle-state";
  263                                 idle-state-name = "little-retention";
  264                                 /* CPU Retention (C2D), L2 Active */
  265                                 arm,psci-suspend-param = <0x00000002>;
  266                                 entry-latency-us = <81>;
  267                                 exit-latency-us = <86>;
  268                                 min-residency-us = <504>;
  269                         };
  270 
  271                         LITTLE_CPU_SLEEP_1: cpu-sleep-0-1 {
  272                                 compatible = "arm,idle-state";
  273                                 idle-state-name = "little-power-collapse";
  274                                 /* CPU + L2 Power Collapse (C3, D4) */
  275                                 arm,psci-suspend-param = <0x40000003>;
  276                                 entry-latency-us = <814>;
  277                                 exit-latency-us = <4562>;
  278                                 min-residency-us = <9183>;
  279                                 local-timer-stop;
  280                         };
  281 
  282                         BIG_CPU_SLEEP_0: cpu-sleep-1-0 {
  283                                 compatible = "arm,idle-state";
  284                                 idle-state-name = "big-retention";
  285                                 /* CPU Retention (C2D), L2 Active */
  286                                 arm,psci-suspend-param = <0x00000002>;
  287                                 entry-latency-us = <79>;
  288                                 exit-latency-us = <82>;
  289                                 min-residency-us = <1302>;
  290                         };
  291 
  292                         BIG_CPU_SLEEP_1: cpu-sleep-1-1 {
  293                                 compatible = "arm,idle-state";
  294                                 idle-state-name = "big-power-collapse";
  295                                 /* CPU + L2 Power Collapse (C3, D4) */
  296                                 arm,psci-suspend-param = <0x40000003>;
  297                                 entry-latency-us = <724>;
  298                                 exit-latency-us = <2027>;
  299                                 min-residency-us = <9419>;
  300                                 local-timer-stop;
  301                         };
  302                 };
  303         };
  304 
  305         firmware {
  306                 scm {
  307                         compatible = "qcom,scm-msm8998", "qcom,scm";
  308                 };
  309         };
  310 
  311         tcsr_mutex: hwlock {
  312                 compatible = "qcom,tcsr-mutex";
  313                 syscon = <&tcsr_mutex_regs 0 0x1000>;
  314                 #hwlock-cells = <1>;
  315         };
  316 
  317         psci {
  318                 compatible = "arm,psci-1.0";
  319                 method = "smc";
  320         };
  321 
  322         rpm-glink {
  323                 compatible = "qcom,glink-rpm";
  324 
  325                 interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
  326                 qcom,rpm-msg-ram = <&rpm_msg_ram>;
  327                 mboxes = <&apcs_glb 0>;
  328 
  329                 rpm_requests: rpm-requests {
  330                         compatible = "qcom,rpm-msm8998";
  331                         qcom,glink-channels = "rpm_requests";
  332 
  333                         rpmcc: clock-controller {
  334                                 compatible = "qcom,rpmcc-msm8998", "qcom,rpmcc";
  335                                 #clock-cells = <1>;
  336                         };
  337 
  338                         rpmpd: power-controller {
  339                                 compatible = "qcom,msm8998-rpmpd";
  340                                 #power-domain-cells = <1>;
  341                                 operating-points-v2 = <&rpmpd_opp_table>;
  342 
  343                                 rpmpd_opp_table: opp-table {
  344                                         compatible = "operating-points-v2";
  345 
  346                                         rpmpd_opp_ret: opp1 {
  347                                                 opp-level = <RPM_SMD_LEVEL_RETENTION>;
  348                                         };
  349 
  350                                         rpmpd_opp_ret_plus: opp2 {
  351                                                 opp-level = <RPM_SMD_LEVEL_RETENTION_PLUS>;
  352                                         };
  353 
  354                                         rpmpd_opp_min_svs: opp3 {
  355                                                 opp-level = <RPM_SMD_LEVEL_MIN_SVS>;
  356                                         };
  357 
  358                                         rpmpd_opp_low_svs: opp4 {
  359                                                 opp-level = <RPM_SMD_LEVEL_LOW_SVS>;
  360                                         };
  361 
  362                                         rpmpd_opp_svs: opp5 {
  363                                                 opp-level = <RPM_SMD_LEVEL_SVS>;
  364                                         };
  365 
  366                                         rpmpd_opp_svs_plus: opp6 {
  367                                                 opp-level = <RPM_SMD_LEVEL_SVS_PLUS>;
  368                                         };
  369 
  370                                         rpmpd_opp_nom: opp7 {
  371                                                 opp-level = <RPM_SMD_LEVEL_NOM>;
  372                                         };
  373 
  374                                         rpmpd_opp_nom_plus: opp8 {
  375                                                 opp-level = <RPM_SMD_LEVEL_NOM_PLUS>;
  376                                         };
  377 
  378                                         rpmpd_opp_turbo: opp9 {
  379                                                 opp-level = <RPM_SMD_LEVEL_TURBO>;
  380                                         };
  381 
  382                                         rpmpd_opp_turbo_plus: opp10 {
  383                                                 opp-level = <RPM_SMD_LEVEL_BINNING>;
  384                                         };
  385                                 };
  386                         };
  387                 };
  388         };
  389 
  390         smem {
  391                 compatible = "qcom,smem";
  392                 memory-region = <&smem_mem>;
  393                 hwlocks = <&tcsr_mutex 3>;
  394         };
  395 
  396         smp2p-lpass {
  397                 compatible = "qcom,smp2p";
  398                 qcom,smem = <443>, <429>;
  399 
  400                 interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>;
  401 
  402                 mboxes = <&apcs_glb 10>;
  403 
  404                 qcom,local-pid = <0>;
  405                 qcom,remote-pid = <2>;
  406 
  407                 adsp_smp2p_out: master-kernel {
  408                         qcom,entry-name = "master-kernel";
  409                         #qcom,smem-state-cells = <1>;
  410                 };
  411 
  412                 adsp_smp2p_in: slave-kernel {
  413                         qcom,entry-name = "slave-kernel";
  414 
  415                         interrupt-controller;
  416                         #interrupt-cells = <2>;
  417                 };
  418         };
  419 
  420         smp2p-mpss {
  421                 compatible = "qcom,smp2p";
  422                 qcom,smem = <435>, <428>;
  423                 interrupts = <GIC_SPI 451 IRQ_TYPE_EDGE_RISING>;
  424                 mboxes = <&apcs_glb 14>;
  425                 qcom,local-pid = <0>;
  426                 qcom,remote-pid = <1>;
  427 
  428                 modem_smp2p_out: master-kernel {
  429                         qcom,entry-name = "master-kernel";
  430                         #qcom,smem-state-cells = <1>;
  431                 };
  432 
  433                 modem_smp2p_in: slave-kernel {
  434                         qcom,entry-name = "slave-kernel";
  435                         interrupt-controller;
  436                         #interrupt-cells = <2>;
  437                 };
  438         };
  439 
  440         smp2p-slpi {
  441                 compatible = "qcom,smp2p";
  442                 qcom,smem = <481>, <430>;
  443                 interrupts = <GIC_SPI 178 IRQ_TYPE_EDGE_RISING>;
  444                 mboxes = <&apcs_glb 26>;
  445                 qcom,local-pid = <0>;
  446                 qcom,remote-pid = <3>;
  447 
  448                 slpi_smp2p_out: master-kernel {
  449                         qcom,entry-name = "master-kernel";
  450                         #qcom,smem-state-cells = <1>;
  451                 };
  452 
  453                 slpi_smp2p_in: slave-kernel {
  454                         qcom,entry-name = "slave-kernel";
  455                         interrupt-controller;
  456                         #interrupt-cells = <2>;
  457                 };
  458         };
  459 
  460         thermal-zones {
  461                 cpu0-thermal {
  462                         polling-delay-passive = <250>;
  463                         polling-delay = <1000>;
  464 
  465                         thermal-sensors = <&tsens0 1>;
  466 
  467                         trips {
  468                                 cpu0_alert0: trip-point0 {
  469                                         temperature = <75000>;
  470                                         hysteresis = <2000>;
  471                                         type = "passive";
  472                                 };
  473 
  474                                 cpu0_crit: cpu_crit {
  475                                         temperature = <110000>;
  476                                         hysteresis = <2000>;
  477                                         type = "critical";
  478                                 };
  479                         };
  480                 };
  481 
  482                 cpu1-thermal {
  483                         polling-delay-passive = <250>;
  484                         polling-delay = <1000>;
  485 
  486                         thermal-sensors = <&tsens0 2>;
  487 
  488                         trips {
  489                                 cpu1_alert0: trip-point0 {
  490                                         temperature = <75000>;
  491                                         hysteresis = <2000>;
  492                                         type = "passive";
  493                                 };
  494 
  495                                 cpu1_crit: cpu_crit {
  496                                         temperature = <110000>;
  497                                         hysteresis = <2000>;
  498                                         type = "critical";
  499                                 };
  500                         };
  501                 };
  502 
  503                 cpu2-thermal {
  504                         polling-delay-passive = <250>;
  505                         polling-delay = <1000>;
  506 
  507                         thermal-sensors = <&tsens0 3>;
  508 
  509                         trips {
  510                                 cpu2_alert0: trip-point0 {
  511                                         temperature = <75000>;
  512                                         hysteresis = <2000>;
  513                                         type = "passive";
  514                                 };
  515 
  516                                 cpu2_crit: cpu_crit {
  517                                         temperature = <110000>;
  518                                         hysteresis = <2000>;
  519                                         type = "critical";
  520                                 };
  521                         };
  522                 };
  523 
  524                 cpu3-thermal {
  525                         polling-delay-passive = <250>;
  526                         polling-delay = <1000>;
  527 
  528                         thermal-sensors = <&tsens0 4>;
  529 
  530                         trips {
  531                                 cpu3_alert0: trip-point0 {
  532                                         temperature = <75000>;
  533                                         hysteresis = <2000>;
  534                                         type = "passive";
  535                                 };
  536 
  537                                 cpu3_crit: cpu_crit {
  538                                         temperature = <110000>;
  539                                         hysteresis = <2000>;
  540                                         type = "critical";
  541                                 };
  542                         };
  543                 };
  544 
  545                 cpu4-thermal {
  546                         polling-delay-passive = <250>;
  547                         polling-delay = <1000>;
  548 
  549                         thermal-sensors = <&tsens0 7>;
  550 
  551                         trips {
  552                                 cpu4_alert0: trip-point0 {
  553                                         temperature = <75000>;
  554                                         hysteresis = <2000>;
  555                                         type = "passive";
  556                                 };
  557 
  558                                 cpu4_crit: cpu_crit {
  559                                         temperature = <110000>;
  560                                         hysteresis = <2000>;
  561                                         type = "critical";
  562                                 };
  563                         };
  564                 };
  565 
  566                 cpu5-thermal {
  567                         polling-delay-passive = <250>;
  568                         polling-delay = <1000>;
  569 
  570                         thermal-sensors = <&tsens0 8>;
  571 
  572                         trips {
  573                                 cpu5_alert0: trip-point0 {
  574                                         temperature = <75000>;
  575                                         hysteresis = <2000>;
  576                                         type = "passive";
  577                                 };
  578 
  579                                 cpu5_crit: cpu_crit {
  580                                         temperature = <110000>;
  581                                         hysteresis = <2000>;
  582                                         type = "critical";
  583                                 };
  584                         };
  585                 };
  586 
  587                 cpu6-thermal {
  588                         polling-delay-passive = <250>;
  589                         polling-delay = <1000>;
  590 
  591                         thermal-sensors = <&tsens0 9>;
  592 
  593                         trips {
  594                                 cpu6_alert0: trip-point0 {
  595                                         temperature = <75000>;
  596                                         hysteresis = <2000>;
  597                                         type = "passive";
  598                                 };
  599 
  600                                 cpu6_crit: cpu_crit {
  601                                         temperature = <110000>;
  602                                         hysteresis = <2000>;
  603                                         type = "critical";
  604                                 };
  605                         };
  606                 };
  607 
  608                 cpu7-thermal {
  609                         polling-delay-passive = <250>;
  610                         polling-delay = <1000>;
  611 
  612                         thermal-sensors = <&tsens0 10>;
  613 
  614                         trips {
  615                                 cpu7_alert0: trip-point0 {
  616                                         temperature = <75000>;
  617                                         hysteresis = <2000>;
  618                                         type = "passive";
  619                                 };
  620 
  621                                 cpu7_crit: cpu_crit {
  622                                         temperature = <110000>;
  623                                         hysteresis = <2000>;
  624                                         type = "critical";
  625                                 };
  626                         };
  627                 };
  628 
  629                 gpu-bottom-thermal {
  630                         polling-delay-passive = <250>;
  631                         polling-delay = <1000>;
  632 
  633                         thermal-sensors = <&tsens0 12>;
  634 
  635                         trips {
  636                                 gpu1_alert0: trip-point0 {
  637                                         temperature = <90000>;
  638                                         hysteresis = <2000>;
  639                                         type = "hot";
  640                                 };
  641                         };
  642                 };
  643 
  644                 gpu-top-thermal {
  645                         polling-delay-passive = <250>;
  646                         polling-delay = <1000>;
  647 
  648                         thermal-sensors = <&tsens0 13>;
  649 
  650                         trips {
  651                                 gpu2_alert0: trip-point0 {
  652                                         temperature = <90000>;
  653                                         hysteresis = <2000>;
  654                                         type = "hot";
  655                                 };
  656                         };
  657                 };
  658 
  659                 clust0-mhm-thermal {
  660                         polling-delay-passive = <250>;
  661                         polling-delay = <1000>;
  662 
  663                         thermal-sensors = <&tsens0 5>;
  664 
  665                         trips {
  666                                 cluster0_mhm_alert0: trip-point0 {
  667                                         temperature = <90000>;
  668                                         hysteresis = <2000>;
  669                                         type = "hot";
  670                                 };
  671                         };
  672                 };
  673 
  674                 clust1-mhm-thermal {
  675                         polling-delay-passive = <250>;
  676                         polling-delay = <1000>;
  677 
  678                         thermal-sensors = <&tsens0 6>;
  679 
  680                         trips {
  681                                 cluster1_mhm_alert0: trip-point0 {
  682                                         temperature = <90000>;
  683                                         hysteresis = <2000>;
  684                                         type = "hot";
  685                                 };
  686                         };
  687                 };
  688 
  689                 cluster1-l2-thermal {
  690                         polling-delay-passive = <250>;
  691                         polling-delay = <1000>;
  692 
  693                         thermal-sensors = <&tsens0 11>;
  694 
  695                         trips {
  696                                 cluster1_l2_alert0: trip-point0 {
  697                                         temperature = <90000>;
  698                                         hysteresis = <2000>;
  699                                         type = "hot";
  700                                 };
  701                         };
  702                 };
  703 
  704                 modem-thermal {
  705                         polling-delay-passive = <250>;
  706                         polling-delay = <1000>;
  707 
  708                         thermal-sensors = <&tsens1 1>;
  709 
  710                         trips {
  711                                 modem_alert0: trip-point0 {
  712                                         temperature = <90000>;
  713                                         hysteresis = <2000>;
  714                                         type = "hot";
  715                                 };
  716                         };
  717                 };
  718 
  719                 mem-thermal {
  720                         polling-delay-passive = <250>;
  721                         polling-delay = <1000>;
  722 
  723                         thermal-sensors = <&tsens1 2>;
  724 
  725                         trips {
  726                                 mem_alert0: trip-point0 {
  727                                         temperature = <90000>;
  728                                         hysteresis = <2000>;
  729                                         type = "hot";
  730                                 };
  731                         };
  732                 };
  733 
  734                 wlan-thermal {
  735                         polling-delay-passive = <250>;
  736                         polling-delay = <1000>;
  737 
  738                         thermal-sensors = <&tsens1 3>;
  739 
  740                         trips {
  741                                 wlan_alert0: trip-point0 {
  742                                         temperature = <90000>;
  743                                         hysteresis = <2000>;
  744                                         type = "hot";
  745                                 };
  746                         };
  747                 };
  748 
  749                 q6-dsp-thermal {
  750                         polling-delay-passive = <250>;
  751                         polling-delay = <1000>;
  752 
  753                         thermal-sensors = <&tsens1 4>;
  754 
  755                         trips {
  756                                 q6_dsp_alert0: trip-point0 {
  757                                         temperature = <90000>;
  758                                         hysteresis = <2000>;
  759                                         type = "hot";
  760                                 };
  761                         };
  762                 };
  763 
  764                 camera-thermal {
  765                         polling-delay-passive = <250>;
  766                         polling-delay = <1000>;
  767 
  768                         thermal-sensors = <&tsens1 5>;
  769 
  770                         trips {
  771                                 camera_alert0: trip-point0 {
  772                                         temperature = <90000>;
  773                                         hysteresis = <2000>;
  774                                         type = "hot";
  775                                 };
  776                         };
  777                 };
  778 
  779                 multimedia-thermal {
  780                         polling-delay-passive = <250>;
  781                         polling-delay = <1000>;
  782 
  783                         thermal-sensors = <&tsens1 6>;
  784 
  785                         trips {
  786                                 multimedia_alert0: trip-point0 {
  787                                         temperature = <90000>;
  788                                         hysteresis = <2000>;
  789                                         type = "hot";
  790                                 };
  791                         };
  792                 };
  793         };
  794 
  795         timer {
  796                 compatible = "arm,armv8-timer";
  797                 interrupts = <GIC_PPI 1 IRQ_TYPE_LEVEL_LOW>,
  798                              <GIC_PPI 2 IRQ_TYPE_LEVEL_LOW>,
  799                              <GIC_PPI 3 IRQ_TYPE_LEVEL_LOW>,
  800                              <GIC_PPI 0 IRQ_TYPE_LEVEL_LOW>;
  801         };
  802 
  803         soc: soc {
  804                 #address-cells = <1>;
  805                 #size-cells = <1>;
  806                 ranges = <0 0 0 0xffffffff>;
  807                 compatible = "simple-bus";
  808 
  809                 gcc: clock-controller@100000 {
  810                         compatible = "qcom,gcc-msm8998";
  811                         #clock-cells = <1>;
  812                         #reset-cells = <1>;
  813                         #power-domain-cells = <1>;
  814                         reg = <0x00100000 0xb0000>;
  815 
  816                         clock-names = "xo", "sleep_clk";
  817                         clocks = <&xo>, <&sleep_clk>;
  818 
  819                         /*
  820                          * The hypervisor typically configures the memory region where these clocks
  821                          * reside as read-only for the HLOS. If the HLOS tried to enable or disable
  822                          * these clocks on a device with such configuration (e.g. because they are
  823                          * enabled but unused during boot-up), the device will most likely decide
  824                          * to reboot.
  825                          * In light of that, we are conservative here and we list all such clocks
  826                          * as protected. The board dts (or a user-supplied dts) can override the
  827                          * list of protected clocks if it differs from the norm, and it is in fact
  828                          * desired for the HLOS to manage these clocks
  829                          */
  830                         protected-clocks = <AGGRE2_SNOC_NORTH_AXI>,
  831                                            <SSC_XO>,
  832                                            <SSC_CNOC_AHBS_CLK>;
  833                 };
  834 
  835                 rpm_msg_ram: sram@778000 {
  836                         compatible = "qcom,rpm-msg-ram";
  837                         reg = <0x00778000 0x7000>;
  838                 };
  839 
  840                 qfprom: qfprom@784000 {
  841                         compatible = "qcom,msm8998-qfprom", "qcom,qfprom";
  842                         reg = <0x00784000 0x621c>;
  843                         #address-cells = <1>;
  844                         #size-cells = <1>;
  845 
  846                         qusb2_hstx_trim: hstx-trim@23a {
  847                                 reg = <0x23a 0x1>;
  848                                 bits = <0 4>;
  849                         };
  850                 };
  851 
  852                 tsens0: thermal@10ab000 {
  853                         compatible = "qcom,msm8998-tsens", "qcom,tsens-v2";
  854                         reg = <0x010ab000 0x1000>, /* TM */
  855                               <0x010aa000 0x1000>; /* SROT */
  856                         #qcom,sensors = <14>;
  857                         interrupts = <GIC_SPI 458 IRQ_TYPE_LEVEL_HIGH>,
  858                                      <GIC_SPI 445 IRQ_TYPE_LEVEL_HIGH>;
  859                         interrupt-names = "uplow", "critical";
  860                         #thermal-sensor-cells = <1>;
  861                 };
  862 
  863                 tsens1: thermal@10ae000 {
  864                         compatible = "qcom,msm8998-tsens", "qcom,tsens-v2";
  865                         reg = <0x010ae000 0x1000>, /* TM */
  866                               <0x010ad000 0x1000>; /* SROT */
  867                         #qcom,sensors = <8>;
  868                         interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>,
  869                                      <GIC_SPI 430 IRQ_TYPE_LEVEL_HIGH>;
  870                         interrupt-names = "uplow", "critical";
  871                         #thermal-sensor-cells = <1>;
  872                 };
  873 
  874                 anoc1_smmu: iommu@1680000 {
  875                         compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2";
  876                         reg = <0x01680000 0x10000>;
  877                         #iommu-cells = <1>;
  878 
  879                         #global-interrupts = <0>;
  880                         interrupts =
  881                                 <GIC_SPI 364 IRQ_TYPE_EDGE_RISING>,
  882                                 <GIC_SPI 365 IRQ_TYPE_EDGE_RISING>,
  883                                 <GIC_SPI 366 IRQ_TYPE_EDGE_RISING>,
  884                                 <GIC_SPI 367 IRQ_TYPE_EDGE_RISING>,
  885                                 <GIC_SPI 368 IRQ_TYPE_EDGE_RISING>,
  886                                 <GIC_SPI 369 IRQ_TYPE_EDGE_RISING>;
  887                 };
  888 
  889                 anoc2_smmu: iommu@16c0000 {
  890                         compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2";
  891                         reg = <0x016c0000 0x40000>;
  892                         #iommu-cells = <1>;
  893 
  894                         #global-interrupts = <0>;
  895                         interrupts =
  896                                 <GIC_SPI 373 IRQ_TYPE_EDGE_RISING>,
  897                                 <GIC_SPI 374 IRQ_TYPE_EDGE_RISING>,
  898                                 <GIC_SPI 375 IRQ_TYPE_EDGE_RISING>,
  899                                 <GIC_SPI 376 IRQ_TYPE_EDGE_RISING>,
  900                                 <GIC_SPI 377 IRQ_TYPE_EDGE_RISING>,
  901                                 <GIC_SPI 378 IRQ_TYPE_EDGE_RISING>,
  902                                 <GIC_SPI 462 IRQ_TYPE_EDGE_RISING>,
  903                                 <GIC_SPI 463 IRQ_TYPE_EDGE_RISING>,
  904                                 <GIC_SPI 464 IRQ_TYPE_EDGE_RISING>,
  905                                 <GIC_SPI 465 IRQ_TYPE_EDGE_RISING>;
  906                 };
  907 
  908                 pcie0: pci@1c00000 {
  909                         compatible = "qcom,pcie-msm8996";
  910                         reg =   <0x01c00000 0x2000>,
  911                                 <0x1b000000 0xf1d>,
  912                                 <0x1b000f20 0xa8>,
  913                                 <0x1b100000 0x100000>;
  914                         reg-names = "parf", "dbi", "elbi", "config";
  915                         device_type = "pci";
  916                         linux,pci-domain = <0>;
  917                         bus-range = <0x00 0xff>;
  918                         #address-cells = <3>;
  919                         #size-cells = <2>;
  920                         num-lanes = <1>;
  921                         phys = <&pciephy>;
  922                         phy-names = "pciephy";
  923                         status = "disabled";
  924 
  925                         ranges = <0x01000000 0x0 0x1b200000 0x1b200000 0x0 0x100000>,
  926                                  <0x02000000 0x0 0x1b300000 0x1b300000 0x0 0xd00000>;
  927 
  928                         #interrupt-cells = <1>;
  929                         interrupts = <GIC_SPI 405 IRQ_TYPE_LEVEL_HIGH>;
  930                         interrupt-names = "msi";
  931                         interrupt-map-mask = <0 0 0 0x7>;
  932                         interrupt-map = <0 0 0 1 &intc 0 0 135 IRQ_TYPE_LEVEL_HIGH>,
  933                                         <0 0 0 2 &intc 0 0 136 IRQ_TYPE_LEVEL_HIGH>,
  934                                         <0 0 0 3 &intc 0 0 138 IRQ_TYPE_LEVEL_HIGH>,
  935                                         <0 0 0 4 &intc 0 0 139 IRQ_TYPE_LEVEL_HIGH>;
  936 
  937                         clocks = <&gcc GCC_PCIE_0_PIPE_CLK>,
  938                                  <&gcc GCC_PCIE_0_MSTR_AXI_CLK>,
  939                                  <&gcc GCC_PCIE_0_SLV_AXI_CLK>,
  940                                  <&gcc GCC_PCIE_0_CFG_AHB_CLK>,
  941                                  <&gcc GCC_PCIE_0_AUX_CLK>;
  942                         clock-names = "pipe", "bus_master", "bus_slave", "cfg", "aux";
  943 
  944                         power-domains = <&gcc PCIE_0_GDSC>;
  945                         iommu-map = <0x100 &anoc1_smmu 0x1480 1>;
  946                         perst-gpios = <&tlmm 35 GPIO_ACTIVE_LOW>;
  947                 };
  948 
  949                 pcie_phy: phy@1c06000 {
  950                         compatible = "qcom,msm8998-qmp-pcie-phy";
  951                         reg = <0x01c06000 0x18c>;
  952                         #address-cells = <1>;
  953                         #size-cells = <1>;
  954                         status = "disabled";
  955                         ranges;
  956 
  957                         clocks = <&gcc GCC_PCIE_PHY_AUX_CLK>,
  958                                  <&gcc GCC_PCIE_0_CFG_AHB_CLK>,
  959                                  <&gcc GCC_PCIE_CLKREF_CLK>;
  960                         clock-names = "aux", "cfg_ahb", "ref";
  961 
  962                         resets = <&gcc GCC_PCIE_0_PHY_BCR>, <&gcc GCC_PCIE_PHY_BCR>;
  963                         reset-names = "phy", "common";
  964 
  965                         vdda-phy-supply = <&vreg_l1a_0p875>;
  966                         vdda-pll-supply = <&vreg_l2a_1p2>;
  967 
  968                         pciephy: phy@1c06800 {
  969                                 reg = <0x01c06200 0x128>, <0x01c06400 0x1fc>, <0x01c06800 0x20c>;
  970                                 #phy-cells = <0>;
  971 
  972                                 clocks = <&gcc GCC_PCIE_0_PIPE_CLK>;
  973                                 clock-names = "pipe0";
  974                                 clock-output-names = "pcie_0_pipe_clk_src";
  975                                 #clock-cells = <0>;
  976                         };
  977                 };
  978 
  979                 ufshc: ufshc@1da4000 {
  980                         compatible = "qcom,msm8998-ufshc", "qcom,ufshc", "jedec,ufs-2.0";
  981                         reg = <0x01da4000 0x2500>;
  982                         interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>;
  983                         phys = <&ufsphy_lanes>;
  984                         phy-names = "ufsphy";
  985                         lanes-per-direction = <2>;
  986                         power-domains = <&gcc UFS_GDSC>;
  987                         status = "disabled";
  988                         #reset-cells = <1>;
  989 
  990                         clock-names =
  991                                 "core_clk",
  992                                 "bus_aggr_clk",
  993                                 "iface_clk",
  994                                 "core_clk_unipro",
  995                                 "ref_clk",
  996                                 "tx_lane0_sync_clk",
  997                                 "rx_lane0_sync_clk",
  998                                 "rx_lane1_sync_clk";
  999                         clocks =
 1000                                 <&gcc GCC_UFS_AXI_CLK>,
 1001                                 <&gcc GCC_AGGRE1_UFS_AXI_CLK>,
 1002                                 <&gcc GCC_UFS_AHB_CLK>,
 1003                                 <&gcc GCC_UFS_UNIPRO_CORE_CLK>,
 1004                                 <&rpmcc RPM_SMD_LN_BB_CLK1>,
 1005                                 <&gcc GCC_UFS_TX_SYMBOL_0_CLK>,
 1006                                 <&gcc GCC_UFS_RX_SYMBOL_0_CLK>,
 1007                                 <&gcc GCC_UFS_RX_SYMBOL_1_CLK>;
 1008                         freq-table-hz =
 1009                                 <50000000 200000000>,
 1010                                 <0 0>,
 1011                                 <0 0>,
 1012                                 <37500000 150000000>,
 1013                                 <0 0>,
 1014                                 <0 0>,
 1015                                 <0 0>,
 1016                                 <0 0>;
 1017 
 1018                         resets = <&gcc GCC_UFS_BCR>;
 1019                         reset-names = "rst";
 1020                 };
 1021 
 1022                 ufsphy: phy@1da7000 {
 1023                         compatible = "qcom,msm8998-qmp-ufs-phy";
 1024                         reg = <0x01da7000 0x18c>;
 1025                         #address-cells = <1>;
 1026                         #size-cells = <1>;
 1027                         status = "disabled";
 1028                         ranges;
 1029 
 1030                         clock-names =
 1031                                 "ref",
 1032                                 "ref_aux";
 1033                         clocks =
 1034                                 <&gcc GCC_UFS_CLKREF_CLK>,
 1035                                 <&gcc GCC_UFS_PHY_AUX_CLK>;
 1036 
 1037                         reset-names = "ufsphy";
 1038                         resets = <&ufshc 0>;
 1039 
 1040                         ufsphy_lanes: phy@1da7400 {
 1041                                 reg = <0x01da7400 0x128>,
 1042                                       <0x01da7600 0x1fc>,
 1043                                       <0x01da7c00 0x1dc>,
 1044                                       <0x01da7800 0x128>,
 1045                                       <0x01da7a00 0x1fc>;
 1046                                 #phy-cells = <0>;
 1047                         };
 1048                 };
 1049 
 1050                 tcsr_mutex_regs: syscon@1f40000 {
 1051                         compatible = "syscon";
 1052                         reg = <0x01f40000 0x40000>;
 1053                 };
 1054 
 1055                 tlmm: pinctrl@3400000 {
 1056                         compatible = "qcom,msm8998-pinctrl";
 1057                         reg = <0x03400000 0xc00000>;
 1058                         interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
 1059                         gpio-controller;
 1060                         #gpio-cells = <2>;
 1061                         interrupt-controller;
 1062                         #interrupt-cells = <2>;
 1063 
 1064                         sdc2_on: sdc2-on {
 1065                                 clk {
 1066                                         pins = "sdc2_clk";
 1067                                         drive-strength = <16>;
 1068                                         bias-disable;
 1069                                 };
 1070 
 1071                                 cmd {
 1072                                         pins = "sdc2_cmd";
 1073                                         drive-strength = <10>;
 1074                                         bias-pull-up;
 1075                                 };
 1076 
 1077                                 data {
 1078                                         pins = "sdc2_data";
 1079                                         drive-strength = <10>;
 1080                                         bias-pull-up;
 1081                                 };
 1082                         };
 1083 
 1084                         sdc2_off: sdc2-off {
 1085                                 clk {
 1086                                         pins = "sdc2_clk";
 1087                                         drive-strength = <2>;
 1088                                         bias-disable;
 1089                                 };
 1090 
 1091                                 cmd {
 1092                                         pins = "sdc2_cmd";
 1093                                         drive-strength = <2>;
 1094                                         bias-pull-up;
 1095                                 };
 1096 
 1097                                 data {
 1098                                         pins = "sdc2_data";
 1099                                         drive-strength = <2>;
 1100                                         bias-pull-up;
 1101                                 };
 1102                         };
 1103 
 1104                         sdc2_cd: sdc2-cd {
 1105                                 pins = "gpio95";
 1106                                 function = "gpio";
 1107                                 bias-pull-up;
 1108                                 drive-strength = <2>;
 1109                         };
 1110 
 1111                         blsp1_uart3_on: blsp1-uart3-on {
 1112                                 tx {
 1113                                         pins = "gpio45";
 1114                                         function = "blsp_uart3_a";
 1115                                         drive-strength = <2>;
 1116                                         bias-disable;
 1117                                 };
 1118 
 1119                                 rx {
 1120                                         pins = "gpio46";
 1121                                         function = "blsp_uart3_a";
 1122                                         drive-strength = <2>;
 1123                                         bias-disable;
 1124                                 };
 1125 
 1126                                 cts {
 1127                                         pins = "gpio47";
 1128                                         function = "blsp_uart3_a";
 1129                                         drive-strength = <2>;
 1130                                         bias-disable;
 1131                                 };
 1132 
 1133                                 rfr {
 1134                                         pins = "gpio48";
 1135                                         function = "blsp_uart3_a";
 1136                                         drive-strength = <2>;
 1137                                         bias-disable;
 1138                                 };
 1139                         };
 1140 
 1141                         blsp1_i2c1_default: blsp1-i2c1-default {
 1142                                 pins = "gpio2", "gpio3";
 1143                                 function = "blsp_i2c1";
 1144                                 drive-strength = <2>;
 1145                                 bias-disable;
 1146                         };
 1147 
 1148                         blsp1_i2c1_sleep: blsp1-i2c1-sleep {
 1149                                 pins = "gpio2", "gpio3";
 1150                                 function = "blsp_i2c1";
 1151                                 drive-strength = <2>;
 1152                                 bias-pull-up;
 1153                         };
 1154 
 1155                         blsp1_i2c2_default: blsp1-i2c2-default {
 1156                                 pins = "gpio32", "gpio33";
 1157                                 function = "blsp_i2c2";
 1158                                 drive-strength = <2>;
 1159                                 bias-disable;
 1160                         };
 1161 
 1162                         blsp1_i2c2_sleep: blsp1-i2c2-sleep {
 1163                                 pins = "gpio32", "gpio33";
 1164                                 function = "blsp_i2c2";
 1165                                 drive-strength = <2>;
 1166                                 bias-pull-up;
 1167                         };
 1168 
 1169                         blsp1_i2c3_default: blsp1-i2c3-default {
 1170                                 pins = "gpio47", "gpio48";
 1171                                 function = "blsp_i2c3";
 1172                                 drive-strength = <2>;
 1173                                 bias-disable;
 1174                         };
 1175 
 1176                         blsp1_i2c3_sleep: blsp1-i2c3-sleep {
 1177                                 pins = "gpio47", "gpio48";
 1178                                 function = "blsp_i2c3";
 1179                                 drive-strength = <2>;
 1180                                 bias-pull-up;
 1181                         };
 1182 
 1183                         blsp1_i2c4_default: blsp1-i2c4-default {
 1184                                 pins = "gpio10", "gpio11";
 1185                                 function = "blsp_i2c4";
 1186                                 drive-strength = <2>;
 1187                                 bias-disable;
 1188                         };
 1189 
 1190                         blsp1_i2c4_sleep: blsp1-i2c4-sleep {
 1191                                 pins = "gpio10", "gpio11";
 1192                                 function = "blsp_i2c4";
 1193                                 drive-strength = <2>;
 1194                                 bias-pull-up;
 1195                         };
 1196 
 1197                         blsp1_i2c5_default: blsp1-i2c5-default {
 1198                                 pins = "gpio87", "gpio88";
 1199                                 function = "blsp_i2c5";
 1200                                 drive-strength = <2>;
 1201                                 bias-disable;
 1202                         };
 1203 
 1204                         blsp1_i2c5_sleep: blsp1-i2c5-sleep {
 1205                                 pins = "gpio87", "gpio88";
 1206                                 function = "blsp_i2c5";
 1207                                 drive-strength = <2>;
 1208                                 bias-pull-up;
 1209                         };
 1210 
 1211                         blsp1_i2c6_default: blsp1-i2c6-default {
 1212                                 pins = "gpio43", "gpio44";
 1213                                 function = "blsp_i2c6";
 1214                                 drive-strength = <2>;
 1215                                 bias-disable;
 1216                         };
 1217 
 1218                         blsp1_i2c6_sleep: blsp1-i2c6-sleep {
 1219                                 pins = "gpio43", "gpio44";
 1220                                 function = "blsp_i2c6";
 1221                                 drive-strength = <2>;
 1222                                 bias-pull-up;
 1223                         };
 1224                         /* 6 interfaces per QUP, BLSP2 indexes are numbered (n)+6 */
 1225                         blsp2_i2c1_default: blsp2-i2c1-default {
 1226                                 pins = "gpio55", "gpio56";
 1227                                 function = "blsp_i2c7";
 1228                                 drive-strength = <2>;
 1229                                 bias-disable;
 1230                         };
 1231 
 1232                         blsp2_i2c1_sleep: blsp2-i2c1-sleep {
 1233                                 pins = "gpio55", "gpio56";
 1234                                 function = "blsp_i2c7";
 1235                                 drive-strength = <2>;
 1236                                 bias-pull-up;
 1237                         };
 1238 
 1239                         blsp2_i2c2_default: blsp2-i2c2-default {
 1240                                 pins = "gpio6", "gpio7";
 1241                                 function = "blsp_i2c8";
 1242                                 drive-strength = <2>;
 1243                                 bias-disable;
 1244                         };
 1245 
 1246                         blsp2_i2c2_sleep: blsp2-i2c2-sleep {
 1247                                 pins = "gpio6", "gpio7";
 1248                                 function = "blsp_i2c8";
 1249                                 drive-strength = <2>;
 1250                                 bias-pull-up;
 1251                         };
 1252 
 1253                         blsp2_i2c3_default: blsp2-i2c3-default {
 1254                                 pins = "gpio51", "gpio52";
 1255                                 function = "blsp_i2c9";
 1256                                 drive-strength = <2>;
 1257                                 bias-disable;
 1258                         };
 1259 
 1260                         blsp2_i2c3_sleep: blsp2-i2c3-sleep {
 1261                                 pins = "gpio51", "gpio52";
 1262                                 function = "blsp_i2c9";
 1263                                 drive-strength = <2>;
 1264                                 bias-pull-up;
 1265                         };
 1266 
 1267                         blsp2_i2c4_default: blsp2-i2c4-default {
 1268                                 pins = "gpio67", "gpio68";
 1269                                 function = "blsp_i2c10";
 1270                                 drive-strength = <2>;
 1271                                 bias-disable;
 1272                         };
 1273 
 1274                         blsp2_i2c4_sleep: blsp2-i2c4-sleep {
 1275                                 pins = "gpio67", "gpio68";
 1276                                 function = "blsp_i2c10";
 1277                                 drive-strength = <2>;
 1278                                 bias-pull-up;
 1279                         };
 1280 
 1281                         blsp2_i2c5_default: blsp2-i2c5-default {
 1282                                 pins = "gpio60", "gpio61";
 1283                                 function = "blsp_i2c11";
 1284                                 drive-strength = <2>;
 1285                                 bias-disable;
 1286                         };
 1287 
 1288                         blsp2_i2c5_sleep: blsp2-i2c5-sleep {
 1289                                 pins = "gpio60", "gpio61";
 1290                                 function = "blsp_i2c11";
 1291                                 drive-strength = <2>;
 1292                                 bias-pull-up;
 1293                         };
 1294 
 1295                         blsp2_i2c6_default: blsp2-i2c6-default {
 1296                                 pins = "gpio83", "gpio84";
 1297                                 function = "blsp_i2c12";
 1298                                 drive-strength = <2>;
 1299                                 bias-disable;
 1300                         };
 1301 
 1302                         blsp2_i2c6_sleep: blsp2-i2c6-sleep {
 1303                                 pins = "gpio83", "gpio84";
 1304                                 function = "blsp_i2c12";
 1305                                 drive-strength = <2>;
 1306                                 bias-pull-up;
 1307                         };
 1308                 };
 1309 
 1310                 remoteproc_mss: remoteproc@4080000 {
 1311                         compatible = "qcom,msm8998-mss-pil";
 1312                         reg = <0x04080000 0x100>, <0x04180000 0x20>;
 1313                         reg-names = "qdsp6", "rmb";
 1314 
 1315                         interrupts-extended =
 1316                                 <&intc GIC_SPI 448 IRQ_TYPE_EDGE_RISING>,
 1317                                 <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
 1318                                 <&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
 1319                                 <&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
 1320                                 <&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>,
 1321                                 <&modem_smp2p_in 7 IRQ_TYPE_EDGE_RISING>;
 1322                         interrupt-names = "wdog", "fatal", "ready",
 1323                                           "handover", "stop-ack",
 1324                                           "shutdown-ack";
 1325 
 1326                         clocks = <&gcc GCC_MSS_CFG_AHB_CLK>,
 1327                                  <&gcc GCC_BIMC_MSS_Q6_AXI_CLK>,
 1328                                  <&gcc GCC_BOOT_ROM_AHB_CLK>,
 1329                                  <&gcc GCC_MSS_GPLL0_DIV_CLK_SRC>,
 1330                                  <&gcc GCC_MSS_SNOC_AXI_CLK>,
 1331                                  <&gcc GCC_MSS_MNOC_BIMC_AXI_CLK>,
 1332                                  <&rpmcc RPM_SMD_QDSS_CLK>,
 1333                                  <&rpmcc RPM_SMD_XO_CLK_SRC>;
 1334                         clock-names = "iface", "bus", "mem", "gpll0_mss",
 1335                                       "snoc_axi", "mnoc_axi", "qdss", "xo";
 1336 
 1337                         qcom,smem-states = <&modem_smp2p_out 0>;
 1338                         qcom,smem-state-names = "stop";
 1339 
 1340                         resets = <&gcc GCC_MSS_RESTART>;
 1341                         reset-names = "mss_restart";
 1342 
 1343                         qcom,halt-regs = <&tcsr_mutex_regs 0x23000 0x25000 0x24000>;
 1344 
 1345                         power-domains = <&rpmpd MSM8998_VDDCX>,
 1346                                         <&rpmpd MSM8998_VDDMX>;
 1347                         power-domain-names = "cx", "mx";
 1348 
 1349                         status = "disabled";
 1350 
 1351                         mba {
 1352                                 memory-region = <&mba_mem>;
 1353                         };
 1354 
 1355                         mpss {
 1356                                 memory-region = <&mpss_mem>;
 1357                         };
 1358 
 1359                         glink-edge {
 1360                                 interrupts = <GIC_SPI 452 IRQ_TYPE_EDGE_RISING>;
 1361                                 label = "modem";
 1362                                 qcom,remote-pid = <1>;
 1363                                 mboxes = <&apcs_glb 15>;
 1364                         };
 1365                 };
 1366 
 1367                 adreno_gpu: gpu@5000000 {
 1368                         compatible = "qcom,adreno-540.1", "qcom,adreno";
 1369                         reg = <0x05000000 0x40000>;
 1370                         reg-names = "kgsl_3d0_reg_memory";
 1371 
 1372                         clocks = <&gcc GCC_GPU_CFG_AHB_CLK>,
 1373                                 <&gpucc RBBMTIMER_CLK>,
 1374                                 <&gcc GCC_BIMC_GFX_CLK>,
 1375                                 <&gcc GCC_GPU_BIMC_GFX_CLK>,
 1376                                 <&gpucc RBCPR_CLK>,
 1377                                 <&gpucc GFX3D_CLK>;
 1378                         clock-names = "iface",
 1379                                 "rbbmtimer",
 1380                                 "mem",
 1381                                 "mem_iface",
 1382                                 "rbcpr",
 1383                                 "core";
 1384 
 1385                         interrupts = <0 300 IRQ_TYPE_LEVEL_HIGH>;
 1386                         iommus = <&adreno_smmu 0>;
 1387                         operating-points-v2 = <&gpu_opp_table>;
 1388                         power-domains = <&rpmpd MSM8998_VDDMX>;
 1389                         status = "disabled";
 1390 
 1391                         gpu_opp_table: opp-table {
 1392                                 compatible = "operating-points-v2";
 1393                                 opp-710000097 {
 1394                                         opp-hz = /bits/ 64 <710000097>;
 1395                                         opp-level = <RPM_SMD_LEVEL_TURBO>;
 1396                                         opp-supported-hw = <0xFF>;
 1397                                 };
 1398 
 1399                                 opp-670000048 {
 1400                                         opp-hz = /bits/ 64 <670000048>;
 1401                                         opp-level = <RPM_SMD_LEVEL_NOM_PLUS>;
 1402                                         opp-supported-hw = <0xFF>;
 1403                                 };
 1404 
 1405                                 opp-596000097 {
 1406                                         opp-hz = /bits/ 64 <596000097>;
 1407                                         opp-level = <RPM_SMD_LEVEL_NOM>;
 1408                                         opp-supported-hw = <0xFF>;
 1409                                 };
 1410 
 1411                                 opp-515000097 {
 1412                                         opp-hz = /bits/ 64 <515000097>;
 1413                                         opp-level = <RPM_SMD_LEVEL_SVS_PLUS>;
 1414                                         opp-supported-hw = <0xFF>;
 1415                                 };
 1416 
 1417                                 opp-414000000 {
 1418                                         opp-hz = /bits/ 64 <414000000>;
 1419                                         opp-level = <RPM_SMD_LEVEL_SVS>;
 1420                                         opp-supported-hw = <0xFF>;
 1421                                 };
 1422 
 1423                                 opp-342000000 {
 1424                                         opp-hz = /bits/ 64 <342000000>;
 1425                                         opp-level = <RPM_SMD_LEVEL_LOW_SVS>;
 1426                                         opp-supported-hw = <0xFF>;
 1427                                 };
 1428 
 1429                                 opp-257000000 {
 1430                                         opp-hz = /bits/ 64 <257000000>;
 1431                                         opp-level = <RPM_SMD_LEVEL_MIN_SVS>;
 1432                                         opp-supported-hw = <0xFF>;
 1433                                 };
 1434                         };
 1435                 };
 1436 
 1437                 adreno_smmu: iommu@5040000 {
 1438                         compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2";
 1439                         reg = <0x05040000 0x10000>;
 1440                         clocks = <&gcc GCC_GPU_CFG_AHB_CLK>,
 1441                                  <&gcc GCC_BIMC_GFX_CLK>,
 1442                                  <&gcc GCC_GPU_BIMC_GFX_CLK>;
 1443                         clock-names = "iface", "mem", "mem_iface";
 1444 
 1445                         #global-interrupts = <0>;
 1446                         #iommu-cells = <1>;
 1447                         interrupts =
 1448                                 <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>,
 1449                                 <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>,
 1450                                 <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>;
 1451                         /*
 1452                          * GPU-GX GDSC's parent is GPU-CX. We need to bring up the
 1453                          * GPU-CX for SMMU but we need both of them up for Adreno.
 1454                          * Contemporarily, we also need to manage the VDDMX rpmpd
 1455                          * domain in the Adreno driver.
 1456                          * Enable GPU CX/GX GDSCs here so that we can manage the
 1457                          * SoC VDDMX RPM Power Domain in the Adreno driver.
 1458                          */
 1459                         power-domains = <&gpucc GPU_GX_GDSC>;
 1460                         status = "disabled";
 1461                 };
 1462 
 1463                 gpucc: clock-controller@5065000 {
 1464                         compatible = "qcom,msm8998-gpucc";
 1465                         #clock-cells = <1>;
 1466                         #reset-cells = <1>;
 1467                         #power-domain-cells = <1>;
 1468                         reg = <0x05065000 0x9000>;
 1469 
 1470                         clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
 1471                                  <&gcc GPLL0_OUT_MAIN>;
 1472                         clock-names = "xo",
 1473                                       "gpll0";
 1474                 };
 1475 
 1476                 remoteproc_slpi: remoteproc@5800000 {
 1477                         compatible = "qcom,msm8998-slpi-pas";
 1478                         reg = <0x05800000 0x4040>;
 1479 
 1480                         interrupts-extended = <&intc GIC_SPI 390 IRQ_TYPE_EDGE_RISING>,
 1481                                               <&slpi_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
 1482                                               <&slpi_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
 1483                                               <&slpi_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
 1484                                               <&slpi_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
 1485                         interrupt-names = "wdog", "fatal", "ready",
 1486                                           "handover", "stop-ack";
 1487 
 1488                         px-supply = <&vreg_lvs2a_1p8>;
 1489 
 1490                         clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
 1491                                  <&rpmcc RPM_SMD_AGGR2_NOC_CLK>;
 1492                         clock-names = "xo", "aggre2";
 1493 
 1494                         memory-region = <&slpi_mem>;
 1495 
 1496                         qcom,smem-states = <&slpi_smp2p_out 0>;
 1497                         qcom,smem-state-names = "stop";
 1498 
 1499                         power-domains = <&rpmpd MSM8998_SSCCX>;
 1500                         power-domain-names = "ssc_cx";
 1501 
 1502                         status = "disabled";
 1503 
 1504                         glink-edge {
 1505                                 interrupts = <GIC_SPI 179 IRQ_TYPE_EDGE_RISING>;
 1506                                 label = "dsps";
 1507                                 qcom,remote-pid = <3>;
 1508                                 mboxes = <&apcs_glb 27>;
 1509                         };
 1510                 };
 1511 
 1512                 stm: stm@6002000 {
 1513                         compatible = "arm,coresight-stm", "arm,primecell";
 1514                         reg = <0x06002000 0x1000>,
 1515                               <0x16280000 0x180000>;
 1516                         reg-names = "stm-base", "stm-data-base";
 1517                         status = "disabled";
 1518 
 1519                         clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
 1520                         clock-names = "apb_pclk", "atclk";
 1521 
 1522                         out-ports {
 1523                                 port {
 1524                                         stm_out: endpoint {
 1525                                                 remote-endpoint = <&funnel0_in7>;
 1526                                         };
 1527                                 };
 1528                         };
 1529                 };
 1530 
 1531                 funnel1: funnel@6041000 {
 1532                         compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
 1533                         reg = <0x06041000 0x1000>;
 1534                         status = "disabled";
 1535 
 1536                         clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
 1537                         clock-names = "apb_pclk", "atclk";
 1538 
 1539                         out-ports {
 1540                                 port {
 1541                                         funnel0_out: endpoint {
 1542                                                 remote-endpoint =
 1543                                                   <&merge_funnel_in0>;
 1544                                         };
 1545                                 };
 1546                         };
 1547 
 1548                         in-ports {
 1549                                 #address-cells = <1>;
 1550                                 #size-cells = <0>;
 1551 
 1552                                 port@7 {
 1553                                         reg = <7>;
 1554                                         funnel0_in7: endpoint {
 1555                                                 remote-endpoint = <&stm_out>;
 1556                                         };
 1557                                 };
 1558                         };
 1559                 };
 1560 
 1561                 funnel2: funnel@6042000 {
 1562                         compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
 1563                         reg = <0x06042000 0x1000>;
 1564                         status = "disabled";
 1565 
 1566                         clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
 1567                         clock-names = "apb_pclk", "atclk";
 1568 
 1569                         out-ports {
 1570                                 port {
 1571                                         funnel1_out: endpoint {
 1572                                                 remote-endpoint =
 1573                                                   <&merge_funnel_in1>;
 1574                                         };
 1575                                 };
 1576                         };
 1577 
 1578                         in-ports {
 1579                                 #address-cells = <1>;
 1580                                 #size-cells = <0>;
 1581 
 1582                                 port@6 {
 1583                                         reg = <6>;
 1584                                         funnel1_in6: endpoint {
 1585                                                 remote-endpoint =
 1586                                                   <&apss_merge_funnel_out>;
 1587                                         };
 1588                                 };
 1589                         };
 1590                 };
 1591 
 1592                 funnel3: funnel@6045000 {
 1593                         compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
 1594                         reg = <0x06045000 0x1000>;
 1595                         status = "disabled";
 1596 
 1597                         clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
 1598                         clock-names = "apb_pclk", "atclk";
 1599 
 1600                         out-ports {
 1601                                 port {
 1602                                         merge_funnel_out: endpoint {
 1603                                                 remote-endpoint =
 1604                                                   <&etf_in>;
 1605                                         };
 1606                                 };
 1607                         };
 1608 
 1609                         in-ports {
 1610                                 #address-cells = <1>;
 1611                                 #size-cells = <0>;
 1612 
 1613                                 port@0 {
 1614                                         reg = <0>;
 1615                                         merge_funnel_in0: endpoint {
 1616                                                 remote-endpoint =
 1617                                                   <&funnel0_out>;
 1618                                         };
 1619                                 };
 1620 
 1621                                 port@1 {
 1622                                         reg = <1>;
 1623                                         merge_funnel_in1: endpoint {
 1624                                                 remote-endpoint =
 1625                                                   <&funnel1_out>;
 1626                                         };
 1627                                 };
 1628                         };
 1629                 };
 1630 
 1631                 replicator1: replicator@6046000 {
 1632                         compatible = "arm,coresight-dynamic-replicator", "arm,primecell";
 1633                         reg = <0x06046000 0x1000>;
 1634                         status = "disabled";
 1635 
 1636                         clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
 1637                         clock-names = "apb_pclk", "atclk";
 1638 
 1639                         out-ports {
 1640                                 port {
 1641                                         replicator_out: endpoint {
 1642                                                 remote-endpoint = <&etr_in>;
 1643                                         };
 1644                                 };
 1645                         };
 1646 
 1647                         in-ports {
 1648                                 port {
 1649                                         replicator_in: endpoint {
 1650                                                 remote-endpoint = <&etf_out>;
 1651                                         };
 1652                                 };
 1653                         };
 1654                 };
 1655 
 1656                 etf: etf@6047000 {
 1657                         compatible = "arm,coresight-tmc", "arm,primecell";
 1658                         reg = <0x06047000 0x1000>;
 1659                         status = "disabled";
 1660 
 1661                         clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
 1662                         clock-names = "apb_pclk", "atclk";
 1663 
 1664                         out-ports {
 1665                                 port {
 1666                                         etf_out: endpoint {
 1667                                                 remote-endpoint =
 1668                                                   <&replicator_in>;
 1669                                         };
 1670                                 };
 1671                         };
 1672 
 1673                         in-ports {
 1674                                 port {
 1675                                         etf_in: endpoint {
 1676                                                 remote-endpoint =
 1677                                                   <&merge_funnel_out>;
 1678                                         };
 1679                                 };
 1680                         };
 1681                 };
 1682 
 1683                 etr: etr@6048000 {
 1684                         compatible = "arm,coresight-tmc", "arm,primecell";
 1685                         reg = <0x06048000 0x1000>;
 1686                         status = "disabled";
 1687 
 1688                         clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
 1689                         clock-names = "apb_pclk", "atclk";
 1690                         arm,scatter-gather;
 1691 
 1692                         in-ports {
 1693                                 port {
 1694                                         etr_in: endpoint {
 1695                                                 remote-endpoint =
 1696                                                   <&replicator_out>;
 1697                                         };
 1698                                 };
 1699                         };
 1700                 };
 1701 
 1702                 etm1: etm@7840000 {
 1703                         compatible = "arm,coresight-etm4x", "arm,primecell";
 1704                         reg = <0x07840000 0x1000>;
 1705                         status = "disabled";
 1706 
 1707                         clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
 1708                         clock-names = "apb_pclk", "atclk";
 1709 
 1710                         cpu = <&CPU0>;
 1711 
 1712                         out-ports {
 1713                                 port {
 1714                                         etm0_out: endpoint {
 1715                                                 remote-endpoint =
 1716                                                   <&apss_funnel_in0>;
 1717                                         };
 1718                                 };
 1719                         };
 1720                 };
 1721 
 1722                 etm2: etm@7940000 {
 1723                         compatible = "arm,coresight-etm4x", "arm,primecell";
 1724                         reg = <0x07940000 0x1000>;
 1725                         status = "disabled";
 1726 
 1727                         clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
 1728                         clock-names = "apb_pclk", "atclk";
 1729 
 1730                         cpu = <&CPU1>;
 1731 
 1732                         out-ports {
 1733                                 port {
 1734                                         etm1_out: endpoint {
 1735                                                 remote-endpoint =
 1736                                                   <&apss_funnel_in1>;
 1737                                         };
 1738                                 };
 1739                         };
 1740                 };
 1741 
 1742                 etm3: etm@7a40000 {
 1743                         compatible = "arm,coresight-etm4x", "arm,primecell";
 1744                         reg = <0x07a40000 0x1000>;
 1745                         status = "disabled";
 1746 
 1747                         clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
 1748                         clock-names = "apb_pclk", "atclk";
 1749 
 1750                         cpu = <&CPU2>;
 1751 
 1752                         out-ports {
 1753                                 port {
 1754                                         etm2_out: endpoint {
 1755                                                 remote-endpoint =
 1756                                                   <&apss_funnel_in2>;
 1757                                         };
 1758                                 };
 1759                         };
 1760                 };
 1761 
 1762                 etm4: etm@7b40000 {
 1763                         compatible = "arm,coresight-etm4x", "arm,primecell";
 1764                         reg = <0x07b40000 0x1000>;
 1765                         status = "disabled";
 1766 
 1767                         clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
 1768                         clock-names = "apb_pclk", "atclk";
 1769 
 1770                         cpu = <&CPU3>;
 1771 
 1772                         out-ports {
 1773                                 port {
 1774                                         etm3_out: endpoint {
 1775                                                 remote-endpoint =
 1776                                                   <&apss_funnel_in3>;
 1777                                         };
 1778                                 };
 1779                         };
 1780                 };
 1781 
 1782                 funnel4: funnel@7b60000 { /* APSS Funnel */
 1783                         compatible = "arm,coresight-etm4x", "arm,primecell";
 1784                         reg = <0x07b60000 0x1000>;
 1785                         status = "disabled";
 1786 
 1787                         clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
 1788                         clock-names = "apb_pclk", "atclk";
 1789 
 1790                         out-ports {
 1791                                 port {
 1792                                         apss_funnel_out: endpoint {
 1793                                                 remote-endpoint =
 1794                                                   <&apss_merge_funnel_in>;
 1795                                         };
 1796                                 };
 1797                         };
 1798 
 1799                         in-ports {
 1800                                 #address-cells = <1>;
 1801                                 #size-cells = <0>;
 1802 
 1803                                 port@0 {
 1804                                         reg = <0>;
 1805                                         apss_funnel_in0: endpoint {
 1806                                                 remote-endpoint =
 1807                                                   <&etm0_out>;
 1808                                         };
 1809                                 };
 1810 
 1811                                 port@1 {
 1812                                         reg = <1>;
 1813                                         apss_funnel_in1: endpoint {
 1814                                                 remote-endpoint =
 1815                                                   <&etm1_out>;
 1816                                         };
 1817                                 };
 1818 
 1819                                 port@2 {
 1820                                         reg = <2>;
 1821                                         apss_funnel_in2: endpoint {
 1822                                                 remote-endpoint =
 1823                                                   <&etm2_out>;
 1824                                         };
 1825                                 };
 1826 
 1827                                 port@3 {
 1828                                         reg = <3>;
 1829                                         apss_funnel_in3: endpoint {
 1830                                                 remote-endpoint =
 1831                                                   <&etm3_out>;
 1832                                         };
 1833                                 };
 1834 
 1835                                 port@4 {
 1836                                         reg = <4>;
 1837                                         apss_funnel_in4: endpoint {
 1838                                                 remote-endpoint =
 1839                                                   <&etm4_out>;
 1840                                         };
 1841                                 };
 1842 
 1843                                 port@5 {
 1844                                         reg = <5>;
 1845                                         apss_funnel_in5: endpoint {
 1846                                                 remote-endpoint =
 1847                                                   <&etm5_out>;
 1848                                         };
 1849                                 };
 1850 
 1851                                 port@6 {
 1852                                         reg = <6>;
 1853                                         apss_funnel_in6: endpoint {
 1854                                                 remote-endpoint =
 1855                                                   <&etm6_out>;
 1856                                         };
 1857                                 };
 1858 
 1859                                 port@7 {
 1860                                         reg = <7>;
 1861                                         apss_funnel_in7: endpoint {
 1862                                                 remote-endpoint =
 1863                                                   <&etm7_out>;
 1864                                         };
 1865                                 };
 1866                         };
 1867                 };
 1868 
 1869                 funnel5: funnel@7b70000 {
 1870                         compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
 1871                         reg = <0x07b70000 0x1000>;
 1872                         status = "disabled";
 1873 
 1874                         clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
 1875                         clock-names = "apb_pclk", "atclk";
 1876 
 1877                         out-ports {
 1878                                 port {
 1879                                         apss_merge_funnel_out: endpoint {
 1880                                                 remote-endpoint =
 1881                                                   <&funnel1_in6>;
 1882                                         };
 1883                                 };
 1884                         };
 1885 
 1886                         in-ports {
 1887                                 port {
 1888                                         apss_merge_funnel_in: endpoint {
 1889                                                 remote-endpoint =
 1890                                                   <&apss_funnel_out>;
 1891                                         };
 1892                                 };
 1893                         };
 1894                 };
 1895 
 1896                 etm5: etm@7c40000 {
 1897                         compatible = "arm,coresight-etm4x", "arm,primecell";
 1898                         reg = <0x07c40000 0x1000>;
 1899                         status = "disabled";
 1900 
 1901                         clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
 1902                         clock-names = "apb_pclk", "atclk";
 1903 
 1904                         cpu = <&CPU4>;
 1905 
 1906                         port{
 1907                                 etm4_out: endpoint {
 1908                                         remote-endpoint = <&apss_funnel_in4>;
 1909                                 };
 1910                         };
 1911                 };
 1912 
 1913                 etm6: etm@7d40000 {
 1914                         compatible = "arm,coresight-etm4x", "arm,primecell";
 1915                         reg = <0x07d40000 0x1000>;
 1916                         status = "disabled";
 1917 
 1918                         clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
 1919                         clock-names = "apb_pclk", "atclk";
 1920 
 1921                         cpu = <&CPU5>;
 1922 
 1923                         port{
 1924                                 etm5_out: endpoint {
 1925                                         remote-endpoint = <&apss_funnel_in5>;
 1926                                 };
 1927                         };
 1928                 };
 1929 
 1930                 etm7: etm@7e40000 {
 1931                         compatible = "arm,coresight-etm4x", "arm,primecell";
 1932                         reg = <0x07e40000 0x1000>;
 1933                         status = "disabled";
 1934 
 1935                         clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
 1936                         clock-names = "apb_pclk", "atclk";
 1937 
 1938                         cpu = <&CPU6>;
 1939 
 1940                         port{
 1941                                 etm6_out: endpoint {
 1942                                         remote-endpoint = <&apss_funnel_in6>;
 1943                                 };
 1944                         };
 1945                 };
 1946 
 1947                 etm8: etm@7f40000 {
 1948                         compatible = "arm,coresight-etm4x", "arm,primecell";
 1949                         reg = <0x07f40000 0x1000>;
 1950                         status = "disabled";
 1951 
 1952                         clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
 1953                         clock-names = "apb_pclk", "atclk";
 1954 
 1955                         cpu = <&CPU7>;
 1956 
 1957                         port{
 1958                                 etm7_out: endpoint {
 1959                                         remote-endpoint = <&apss_funnel_in7>;
 1960                                 };
 1961                         };
 1962                 };
 1963 
 1964                 sram@290000 {
 1965                         compatible = "qcom,rpm-stats";
 1966                         reg = <0x00290000 0x10000>;
 1967                 };
 1968 
 1969                 spmi_bus: spmi@800f000 {
 1970                         compatible = "qcom,spmi-pmic-arb";
 1971                         reg =   <0x0800f000 0x1000>,
 1972                                 <0x08400000 0x1000000>,
 1973                                 <0x09400000 0x1000000>,
 1974                                 <0x0a400000 0x220000>,
 1975                                 <0x0800a000 0x3000>;
 1976                         reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
 1977                         interrupt-names = "periph_irq";
 1978                         interrupts = <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>;
 1979                         qcom,ee = <0>;
 1980                         qcom,channel = <0>;
 1981                         #address-cells = <2>;
 1982                         #size-cells = <0>;
 1983                         interrupt-controller;
 1984                         #interrupt-cells = <4>;
 1985                         cell-index = <0>;
 1986                 };
 1987 
 1988                 usb3: usb@a8f8800 {
 1989                         compatible = "qcom,msm8998-dwc3", "qcom,dwc3";
 1990                         reg = <0x0a8f8800 0x400>;
 1991                         status = "disabled";
 1992                         #address-cells = <1>;
 1993                         #size-cells = <1>;
 1994                         ranges;
 1995 
 1996                         clocks = <&gcc GCC_CFG_NOC_USB3_AXI_CLK>,
 1997                                  <&gcc GCC_USB30_MASTER_CLK>,
 1998                                  <&gcc GCC_AGGRE1_USB3_AXI_CLK>,
 1999                                  <&gcc GCC_USB30_SLEEP_CLK>,
 2000                                  <&gcc GCC_USB30_MOCK_UTMI_CLK>;
 2001                         clock-names = "cfg_noc",
 2002                                       "core",
 2003                                       "iface",
 2004                                       "sleep",
 2005                                       "mock_utmi";
 2006 
 2007                         assigned-clocks = <&gcc GCC_USB30_MOCK_UTMI_CLK>,
 2008                                           <&gcc GCC_USB30_MASTER_CLK>;
 2009                         assigned-clock-rates = <19200000>, <120000000>;
 2010 
 2011                         interrupts = <GIC_SPI 347 IRQ_TYPE_LEVEL_HIGH>,
 2012                                      <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH>;
 2013                         interrupt-names = "hs_phy_irq", "ss_phy_irq";
 2014 
 2015                         power-domains = <&gcc USB_30_GDSC>;
 2016 
 2017                         resets = <&gcc GCC_USB_30_BCR>;
 2018 
 2019                         usb3_dwc3: usb@a800000 {
 2020                                 compatible = "snps,dwc3";
 2021                                 reg = <0x0a800000 0xcd00>;
 2022                                 interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
 2023                                 snps,dis_u2_susphy_quirk;
 2024                                 snps,dis_enblslpm_quirk;
 2025                                 phys = <&qusb2phy>, <&usb1_ssphy>;
 2026                                 phy-names = "usb2-phy", "usb3-phy";
 2027                                 snps,has-lpm-erratum;
 2028                                 snps,hird-threshold = /bits/ 8 <0x10>;
 2029                         };
 2030                 };
 2031 
 2032                 usb3phy: phy@c010000 {
 2033                         compatible = "qcom,msm8998-qmp-usb3-phy";
 2034                         reg = <0x0c010000 0x18c>;
 2035                         status = "disabled";
 2036                         #address-cells = <1>;
 2037                         #size-cells = <1>;
 2038                         ranges;
 2039 
 2040                         clocks = <&gcc GCC_USB3_PHY_AUX_CLK>,
 2041                                  <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
 2042                                  <&gcc GCC_USB3_CLKREF_CLK>;
 2043                         clock-names = "aux", "cfg_ahb", "ref";
 2044 
 2045                         resets = <&gcc GCC_USB3_PHY_BCR>,
 2046                                  <&gcc GCC_USB3PHY_PHY_BCR>;
 2047                         reset-names = "phy", "common";
 2048 
 2049                         usb1_ssphy: phy@c010200 {
 2050                                 reg = <0xc010200 0x128>,
 2051                                       <0xc010400 0x200>,
 2052                                       <0xc010c00 0x20c>,
 2053                                       <0xc010600 0x128>,
 2054                                       <0xc010800 0x200>;
 2055                                 #phy-cells = <0>;
 2056                                 #clock-cells = <0>;
 2057                                 clocks = <&gcc GCC_USB3_PHY_PIPE_CLK>;
 2058                                 clock-names = "pipe0";
 2059                                 clock-output-names = "usb3_phy_pipe_clk_src";
 2060                         };
 2061                 };
 2062 
 2063                 qusb2phy: phy@c012000 {
 2064                         compatible = "qcom,msm8998-qusb2-phy";
 2065                         reg = <0x0c012000 0x2a8>;
 2066                         status = "disabled";
 2067                         #phy-cells = <0>;
 2068 
 2069                         clocks = <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
 2070                                  <&gcc GCC_RX1_USB2_CLKREF_CLK>;
 2071                         clock-names = "cfg_ahb", "ref";
 2072 
 2073                         resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>;
 2074 
 2075                         nvmem-cells = <&qusb2_hstx_trim>;
 2076                 };
 2077 
 2078                 sdhc2: mmc@c0a4900 {
 2079                         compatible = "qcom,sdhci-msm-v4";
 2080                         reg = <0x0c0a4900 0x314>, <0x0c0a4000 0x800>;
 2081                         reg-names = "hc_mem", "core_mem";
 2082 
 2083                         interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
 2084                                      <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
 2085                         interrupt-names = "hc_irq", "pwr_irq";
 2086 
 2087                         clock-names = "iface", "core", "xo";
 2088                         clocks = <&gcc GCC_SDCC2_AHB_CLK>,
 2089                                  <&gcc GCC_SDCC2_APPS_CLK>,
 2090                                  <&xo>;
 2091                         bus-width = <4>;
 2092                         status = "disabled";
 2093                 };
 2094 
 2095                 blsp1_dma: dma-controller@c144000 {
 2096                         compatible = "qcom,bam-v1.7.0";
 2097                         reg = <0x0c144000 0x25000>;
 2098                         interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>;
 2099                         clocks = <&gcc GCC_BLSP1_AHB_CLK>;
 2100                         clock-names = "bam_clk";
 2101                         #dma-cells = <1>;
 2102                         qcom,ee = <0>;
 2103                         qcom,controlled-remotely;
 2104                         num-channels = <18>;
 2105                         qcom,num-ees = <4>;
 2106                 };
 2107 
 2108                 blsp1_uart3: serial@c171000 {
 2109                         compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
 2110                         reg = <0x0c171000 0x1000>;
 2111                         interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
 2112                         clocks = <&gcc GCC_BLSP1_UART3_APPS_CLK>,
 2113                                  <&gcc GCC_BLSP1_AHB_CLK>;
 2114                         clock-names = "core", "iface";
 2115                         dmas = <&blsp1_dma 4>, <&blsp1_dma 5>;
 2116                         dma-names = "tx", "rx";
 2117                         pinctrl-names = "default";
 2118                         pinctrl-0 = <&blsp1_uart3_on>;
 2119                         status = "disabled";
 2120                 };
 2121 
 2122                 blsp1_i2c1: i2c@c175000 {
 2123                         compatible = "qcom,i2c-qup-v2.2.1";
 2124                         reg = <0x0c175000 0x600>;
 2125                         interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
 2126 
 2127                         clocks = <&gcc GCC_BLSP1_QUP1_I2C_APPS_CLK>,
 2128                                  <&gcc GCC_BLSP1_AHB_CLK>;
 2129                         clock-names = "core", "iface";
 2130                         dmas = <&blsp1_dma 6>, <&blsp1_dma 7>;
 2131                         dma-names = "tx", "rx";
 2132                         pinctrl-names = "default", "sleep";
 2133                         pinctrl-0 = <&blsp1_i2c1_default>;
 2134                         pinctrl-1 = <&blsp1_i2c1_sleep>;
 2135                         clock-frequency = <400000>;
 2136 
 2137                         status = "disabled";
 2138                         #address-cells = <1>;
 2139                         #size-cells = <0>;
 2140                 };
 2141 
 2142                 blsp1_i2c2: i2c@c176000 {
 2143                         compatible = "qcom,i2c-qup-v2.2.1";
 2144                         reg = <0x0c176000 0x600>;
 2145                         interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
 2146 
 2147                         clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>,
 2148                                  <&gcc GCC_BLSP1_AHB_CLK>;
 2149                         clock-names = "core", "iface";
 2150                         dmas = <&blsp1_dma 8>, <&blsp1_dma 9>;
 2151                         dma-names = "tx", "rx";
 2152                         pinctrl-names = "default", "sleep";
 2153                         pinctrl-0 = <&blsp1_i2c2_default>;
 2154                         pinctrl-1 = <&blsp1_i2c2_sleep>;
 2155                         clock-frequency = <400000>;
 2156 
 2157                         status = "disabled";
 2158                         #address-cells = <1>;
 2159                         #size-cells = <0>;
 2160                 };
 2161 
 2162                 blsp1_i2c3: i2c@c177000 {
 2163                         compatible = "qcom,i2c-qup-v2.2.1";
 2164                         reg = <0x0c177000 0x600>;
 2165                         interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
 2166 
 2167                         clocks = <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>,
 2168                                  <&gcc GCC_BLSP1_AHB_CLK>;
 2169                         clock-names = "core", "iface";
 2170                         dmas = <&blsp1_dma 10>, <&blsp1_dma 11>;
 2171                         dma-names = "tx", "rx";
 2172                         pinctrl-names = "default", "sleep";
 2173                         pinctrl-0 = <&blsp1_i2c3_default>;
 2174                         pinctrl-1 = <&blsp1_i2c3_sleep>;
 2175                         clock-frequency = <400000>;
 2176 
 2177                         status = "disabled";
 2178                         #address-cells = <1>;
 2179                         #size-cells = <0>;
 2180                 };
 2181 
 2182                 blsp1_i2c4: i2c@c178000 {
 2183                         compatible = "qcom,i2c-qup-v2.2.1";
 2184                         reg = <0x0c178000 0x600>;
 2185                         interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
 2186 
 2187                         clocks = <&gcc GCC_BLSP1_QUP4_I2C_APPS_CLK>,
 2188                                  <&gcc GCC_BLSP1_AHB_CLK>;
 2189                         clock-names = "core", "iface";
 2190                         dmas = <&blsp1_dma 12>, <&blsp1_dma 13>;
 2191                         dma-names = "tx", "rx";
 2192                         pinctrl-names = "default", "sleep";
 2193                         pinctrl-0 = <&blsp1_i2c4_default>;
 2194                         pinctrl-1 = <&blsp1_i2c4_sleep>;
 2195                         clock-frequency = <400000>;
 2196 
 2197                         status = "disabled";
 2198                         #address-cells = <1>;
 2199                         #size-cells = <0>;
 2200                 };
 2201 
 2202                 blsp1_i2c5: i2c@c179000 {
 2203                         compatible = "qcom,i2c-qup-v2.2.1";
 2204                         reg = <0x0c179000 0x600>;
 2205                         interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
 2206 
 2207                         clocks = <&gcc GCC_BLSP1_QUP5_I2C_APPS_CLK>,
 2208                                  <&gcc GCC_BLSP1_AHB_CLK>;
 2209                         clock-names = "core", "iface";
 2210                         dmas = <&blsp1_dma 14>, <&blsp1_dma 15>;
 2211                         dma-names = "tx", "rx";
 2212                         pinctrl-names = "default", "sleep";
 2213                         pinctrl-0 = <&blsp1_i2c5_default>;
 2214                         pinctrl-1 = <&blsp1_i2c5_sleep>;
 2215                         clock-frequency = <400000>;
 2216 
 2217                         status = "disabled";
 2218                         #address-cells = <1>;
 2219                         #size-cells = <0>;
 2220                 };
 2221 
 2222                 blsp1_i2c6: i2c@c17a000 {
 2223                         compatible = "qcom,i2c-qup-v2.2.1";
 2224                         reg = <0x0c17a000 0x600>;
 2225                         interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
 2226 
 2227                         clocks = <&gcc GCC_BLSP1_QUP6_I2C_APPS_CLK>,
 2228                                  <&gcc GCC_BLSP1_AHB_CLK>;
 2229                         clock-names = "core", "iface";
 2230                         dmas = <&blsp1_dma 16>, <&blsp1_dma 17>;
 2231                         dma-names = "tx", "rx";
 2232                         pinctrl-names = "default", "sleep";
 2233                         pinctrl-0 = <&blsp1_i2c6_default>;
 2234                         pinctrl-1 = <&blsp1_i2c6_sleep>;
 2235                         clock-frequency = <400000>;
 2236 
 2237                         status = "disabled";
 2238                         #address-cells = <1>;
 2239                         #size-cells = <0>;
 2240                 };
 2241 
 2242                 blsp2_dma: dma-controller@c184000 {
 2243                         compatible = "qcom,bam-v1.7.0";
 2244                         reg = <0x0c184000 0x25000>;
 2245                         interrupts = <GIC_SPI 239 IRQ_TYPE_LEVEL_HIGH>;
 2246                         clocks = <&gcc GCC_BLSP2_AHB_CLK>;
 2247                         clock-names = "bam_clk";
 2248                         #dma-cells = <1>;
 2249                         qcom,ee = <0>;
 2250                         qcom,controlled-remotely;
 2251                         num-channels = <18>;
 2252                         qcom,num-ees = <4>;
 2253                 };
 2254 
 2255                 blsp2_uart1: serial@c1b0000 {
 2256                         compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
 2257                         reg = <0x0c1b0000 0x1000>;
 2258                         interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
 2259                         clocks = <&gcc GCC_BLSP2_UART2_APPS_CLK>,
 2260                                  <&gcc GCC_BLSP2_AHB_CLK>;
 2261                         clock-names = "core", "iface";
 2262                         status = "disabled";
 2263                 };
 2264 
 2265                 blsp2_i2c1: i2c@c1b5000 {
 2266                         compatible = "qcom,i2c-qup-v2.2.1";
 2267                         reg = <0x0c1b5000 0x600>;
 2268                         interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
 2269 
 2270                         clocks = <&gcc GCC_BLSP2_QUP1_I2C_APPS_CLK>,
 2271                                  <&gcc GCC_BLSP2_AHB_CLK>;
 2272                         clock-names = "core", "iface";
 2273                         dmas = <&blsp2_dma 6>, <&blsp2_dma 7>;
 2274                         dma-names = "tx", "rx";
 2275                         pinctrl-names = "default", "sleep";
 2276                         pinctrl-0 = <&blsp2_i2c1_default>;
 2277                         pinctrl-1 = <&blsp2_i2c1_sleep>;
 2278                         clock-frequency = <400000>;
 2279 
 2280                         status = "disabled";
 2281                         #address-cells = <1>;
 2282                         #size-cells = <0>;
 2283                 };
 2284 
 2285                 blsp2_i2c2: i2c@c1b6000 {
 2286                         compatible = "qcom,i2c-qup-v2.2.1";
 2287                         reg = <0x0c1b6000 0x600>;
 2288                         interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
 2289 
 2290                         clocks = <&gcc GCC_BLSP2_QUP2_I2C_APPS_CLK>,
 2291                                  <&gcc GCC_BLSP2_AHB_CLK>;
 2292                         clock-names = "core", "iface";
 2293                         dmas = <&blsp2_dma 8>, <&blsp2_dma 9>;
 2294                         dma-names = "tx", "rx";
 2295                         pinctrl-names = "default", "sleep";
 2296                         pinctrl-0 = <&blsp2_i2c2_default>;
 2297                         pinctrl-1 = <&blsp2_i2c2_sleep>;
 2298                         clock-frequency = <400000>;
 2299 
 2300                         status = "disabled";
 2301                         #address-cells = <1>;
 2302                         #size-cells = <0>;
 2303                 };
 2304 
 2305                 blsp2_i2c3: i2c@c1b7000 {
 2306                         compatible = "qcom,i2c-qup-v2.2.1";
 2307                         reg = <0x0c1b7000 0x600>;
 2308                         interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
 2309 
 2310                         clocks = <&gcc GCC_BLSP2_QUP3_I2C_APPS_CLK>,
 2311                                  <&gcc GCC_BLSP2_AHB_CLK>;
 2312                         clock-names = "core", "iface";
 2313                         dmas = <&blsp2_dma 10>, <&blsp2_dma 11>;
 2314                         dma-names = "tx", "rx";
 2315                         pinctrl-names = "default", "sleep";
 2316                         pinctrl-0 = <&blsp2_i2c3_default>;
 2317                         pinctrl-1 = <&blsp2_i2c3_sleep>;
 2318                         clock-frequency = <400000>;
 2319 
 2320                         status = "disabled";
 2321                         #address-cells = <1>;
 2322                         #size-cells = <0>;
 2323                 };
 2324 
 2325                 blsp2_i2c4: i2c@c1b8000 {
 2326                         compatible = "qcom,i2c-qup-v2.2.1";
 2327                         reg = <0x0c1b8000 0x600>;
 2328                         interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
 2329 
 2330                         clocks = <&gcc GCC_BLSP2_QUP4_I2C_APPS_CLK>,
 2331                                  <&gcc GCC_BLSP2_AHB_CLK>;
 2332                         clock-names = "core", "iface";
 2333                         dmas = <&blsp2_dma 12>, <&blsp2_dma 13>;
 2334                         dma-names = "tx", "rx";
 2335                         pinctrl-names = "default", "sleep";
 2336                         pinctrl-0 = <&blsp2_i2c4_default>;
 2337                         pinctrl-1 = <&blsp2_i2c4_sleep>;
 2338                         clock-frequency = <400000>;
 2339 
 2340                         status = "disabled";
 2341                         #address-cells = <1>;
 2342                         #size-cells = <0>;
 2343                 };
 2344 
 2345                 blsp2_i2c5: i2c@c1b9000 {
 2346                         compatible = "qcom,i2c-qup-v2.2.1";
 2347                         reg = <0x0c1b9000 0x600>;
 2348                         interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
 2349 
 2350                         clocks = <&gcc GCC_BLSP2_QUP5_I2C_APPS_CLK>,
 2351                                  <&gcc GCC_BLSP2_AHB_CLK>;
 2352                         clock-names = "core", "iface";
 2353                         dmas = <&blsp2_dma 14>, <&blsp2_dma 15>;
 2354                         dma-names = "tx", "rx";
 2355                         pinctrl-names = "default", "sleep";
 2356                         pinctrl-0 = <&blsp2_i2c5_default>;
 2357                         pinctrl-1 = <&blsp2_i2c5_sleep>;
 2358                         clock-frequency = <400000>;
 2359 
 2360                         status = "disabled";
 2361                         #address-cells = <1>;
 2362                         #size-cells = <0>;
 2363                 };
 2364 
 2365                 blsp2_i2c6: i2c@c1ba000 {
 2366                         compatible = "qcom,i2c-qup-v2.2.1";
 2367                         reg = <0x0c1ba000 0x600>;
 2368                         interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
 2369 
 2370                         clocks = <&gcc GCC_BLSP2_QUP6_I2C_APPS_CLK>,
 2371                                  <&gcc GCC_BLSP2_AHB_CLK>;
 2372                         clock-names = "core", "iface";
 2373                         dmas = <&blsp2_dma 16>, <&blsp2_dma 17>;
 2374                         dma-names = "tx", "rx";
 2375                         pinctrl-names = "default", "sleep";
 2376                         pinctrl-0 = <&blsp2_i2c6_default>;
 2377                         pinctrl-1 = <&blsp2_i2c6_sleep>;
 2378                         clock-frequency = <400000>;
 2379 
 2380                         status = "disabled";
 2381                         #address-cells = <1>;
 2382                         #size-cells = <0>;
 2383                 };
 2384 
 2385                 mmcc: clock-controller@c8c0000 {
 2386                         compatible = "qcom,mmcc-msm8998";
 2387                         #clock-cells = <1>;
 2388                         #reset-cells = <1>;
 2389                         #power-domain-cells = <1>;
 2390                         reg = <0xc8c0000 0x40000>;
 2391 
 2392                         clock-names = "xo",
 2393                                       "gpll0",
 2394                                       "dsi0dsi",
 2395                                       "dsi0byte",
 2396                                       "dsi1dsi",
 2397                                       "dsi1byte",
 2398                                       "hdmipll",
 2399                                       "dplink",
 2400                                       "dpvco",
 2401                                       "core_bi_pll_test_se";
 2402                         clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
 2403                                  <&gcc GCC_MMSS_GPLL0_CLK>,
 2404                                  <0>,
 2405                                  <0>,
 2406                                  <0>,
 2407                                  <0>,
 2408                                  <0>,
 2409                                  <0>,
 2410                                  <0>,
 2411                                  <0>;
 2412                 };
 2413 
 2414                 mmss_smmu: iommu@cd00000 {
 2415                         compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2";
 2416                         reg = <0x0cd00000 0x40000>;
 2417                         #iommu-cells = <1>;
 2418 
 2419                         clocks = <&mmcc MNOC_AHB_CLK>,
 2420                                  <&mmcc BIMC_SMMU_AHB_CLK>,
 2421                                  <&rpmcc RPM_SMD_MMAXI_CLK>,
 2422                                  <&mmcc BIMC_SMMU_AXI_CLK>;
 2423                         clock-names = "iface-mm", "iface-smmu",
 2424                                       "bus-mm", "bus-smmu";
 2425 
 2426                         #global-interrupts = <0>;
 2427                         interrupts =
 2428                                 <GIC_SPI 263 IRQ_TYPE_LEVEL_HIGH>,
 2429                                 <GIC_SPI 266 IRQ_TYPE_LEVEL_HIGH>,
 2430                                 <GIC_SPI 267 IRQ_TYPE_LEVEL_HIGH>,
 2431                                 <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>,
 2432                                 <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>,
 2433                                 <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>,
 2434                                 <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>,
 2435                                 <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>,
 2436                                 <GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>,
 2437                                 <GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>,
 2438                                 <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>,
 2439                                 <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>,
 2440                                 <GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>,
 2441                                 <GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>,
 2442                                 <GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>,
 2443                                 <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>,
 2444                                 <GIC_SPI 260 IRQ_TYPE_LEVEL_HIGH>,
 2445                                 <GIC_SPI 261 IRQ_TYPE_LEVEL_HIGH>,
 2446                                 <GIC_SPI 262 IRQ_TYPE_LEVEL_HIGH>,
 2447                                 <GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>;
 2448                 };
 2449 
 2450                 remoteproc_adsp: remoteproc@17300000 {
 2451                         compatible = "qcom,msm8998-adsp-pas";
 2452                         reg = <0x17300000 0x4040>;
 2453 
 2454                         interrupts-extended = <&intc GIC_SPI 162 IRQ_TYPE_EDGE_RISING>,
 2455                                               <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
 2456                                               <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
 2457                                               <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
 2458                                               <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
 2459                         interrupt-names = "wdog", "fatal", "ready",
 2460                                           "handover", "stop-ack";
 2461 
 2462                         clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>;
 2463                         clock-names = "xo";
 2464 
 2465                         memory-region = <&adsp_mem>;
 2466 
 2467                         qcom,smem-states = <&adsp_smp2p_out 0>;
 2468                         qcom,smem-state-names = "stop";
 2469 
 2470                         power-domains = <&rpmpd MSM8998_VDDCX>;
 2471                         power-domain-names = "cx";
 2472 
 2473                         status = "disabled";
 2474 
 2475                         glink-edge {
 2476                                 interrupts = <GIC_SPI 157 IRQ_TYPE_EDGE_RISING>;
 2477                                 label = "lpass";
 2478                                 qcom,remote-pid = <2>;
 2479                                 mboxes = <&apcs_glb 9>;
 2480                         };
 2481                 };
 2482 
 2483                 apcs_glb: mailbox@17911000 {
 2484                         compatible = "qcom,msm8998-apcs-hmss-global";
 2485                         reg = <0x17911000 0x1000>;
 2486 
 2487                         #mbox-cells = <1>;
 2488                 };
 2489 
 2490                 timer@17920000 {
 2491                         #address-cells = <1>;
 2492                         #size-cells = <1>;
 2493                         ranges;
 2494                         compatible = "arm,armv7-timer-mem";
 2495                         reg = <0x17920000 0x1000>;
 2496 
 2497                         frame@17921000 {
 2498                                 frame-number = <0>;
 2499                                 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
 2500                                              <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
 2501                                 reg = <0x17921000 0x1000>,
 2502                                       <0x17922000 0x1000>;
 2503                         };
 2504 
 2505                         frame@17923000 {
 2506                                 frame-number = <1>;
 2507                                 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
 2508                                 reg = <0x17923000 0x1000>;
 2509                                 status = "disabled";
 2510                         };
 2511 
 2512                         frame@17924000 {
 2513                                 frame-number = <2>;
 2514                                 interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
 2515                                 reg = <0x17924000 0x1000>;
 2516                                 status = "disabled";
 2517                         };
 2518 
 2519                         frame@17925000 {
 2520                                 frame-number = <3>;
 2521                                 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
 2522                                 reg = <0x17925000 0x1000>;
 2523                                 status = "disabled";
 2524                         };
 2525 
 2526                         frame@17926000 {
 2527                                 frame-number = <4>;
 2528                                 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
 2529                                 reg = <0x17926000 0x1000>;
 2530                                 status = "disabled";
 2531                         };
 2532 
 2533                         frame@17927000 {
 2534                                 frame-number = <5>;
 2535                                 interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
 2536                                 reg = <0x17927000 0x1000>;
 2537                                 status = "disabled";
 2538                         };
 2539 
 2540                         frame@17928000 {
 2541                                 frame-number = <6>;
 2542                                 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
 2543                                 reg = <0x17928000 0x1000>;
 2544                                 status = "disabled";
 2545                         };
 2546                 };
 2547 
 2548                 intc: interrupt-controller@17a00000 {
 2549                         compatible = "arm,gic-v3";
 2550                         reg = <0x17a00000 0x10000>,       /* GICD */
 2551                               <0x17b00000 0x100000>;      /* GICR * 8 */
 2552                         #interrupt-cells = <3>;
 2553                         #address-cells = <1>;
 2554                         #size-cells = <1>;
 2555                         ranges;
 2556                         interrupt-controller;
 2557                         #redistributor-regions = <1>;
 2558                         redistributor-stride = <0x0 0x20000>;
 2559                         interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
 2560                 };
 2561 
 2562                 wifi: wifi@18800000 {
 2563                         compatible = "qcom,wcn3990-wifi";
 2564                         status = "disabled";
 2565                         reg = <0x18800000 0x800000>;
 2566                         reg-names = "membase";
 2567                         memory-region = <&wlan_msa_mem>;
 2568                         clocks = <&rpmcc RPM_SMD_RF_CLK2_PIN>;
 2569                         clock-names = "cxo_ref_clk_pin";
 2570                         interrupts =
 2571                                 <GIC_SPI 413 IRQ_TYPE_LEVEL_HIGH>,
 2572                                 <GIC_SPI 414 IRQ_TYPE_LEVEL_HIGH>,
 2573                                 <GIC_SPI 415 IRQ_TYPE_LEVEL_HIGH>,
 2574                                 <GIC_SPI 416 IRQ_TYPE_LEVEL_HIGH>,
 2575                                 <GIC_SPI 417 IRQ_TYPE_LEVEL_HIGH>,
 2576                                 <GIC_SPI 418 IRQ_TYPE_LEVEL_HIGH>,
 2577                                 <GIC_SPI 420 IRQ_TYPE_LEVEL_HIGH>,
 2578                                 <GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>,
 2579                                 <GIC_SPI 422 IRQ_TYPE_LEVEL_HIGH>,
 2580                                 <GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>,
 2581                                 <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>,
 2582                                 <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>;
 2583                         iommus = <&anoc2_smmu 0x1900>,
 2584                                  <&anoc2_smmu 0x1901>;
 2585                         qcom,snoc-host-cap-8bit-quirk;
 2586                 };
 2587         };
 2588 };

Cache object: 35530fc4b7870edbba93b1e30dc30a76


[ 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.