1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0 2*4882a593Smuzhiyun// Copyright (c) 2018, Linaro Limited 3*4882a593Smuzhiyun 4*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/arm-gic.h> 5*4882a593Smuzhiyun#include <dt-bindings/clock/qcom,gcc-qcs404.h> 6*4882a593Smuzhiyun#include <dt-bindings/clock/qcom,turingcc-qcs404.h> 7*4882a593Smuzhiyun#include <dt-bindings/clock/qcom,rpmcc.h> 8*4882a593Smuzhiyun#include <dt-bindings/power/qcom-rpmpd.h> 9*4882a593Smuzhiyun#include <dt-bindings/thermal/thermal.h> 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun/ { 12*4882a593Smuzhiyun interrupt-parent = <&intc>; 13*4882a593Smuzhiyun 14*4882a593Smuzhiyun #address-cells = <2>; 15*4882a593Smuzhiyun #size-cells = <2>; 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun chosen { }; 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun clocks { 20*4882a593Smuzhiyun xo_board: xo-board { 21*4882a593Smuzhiyun compatible = "fixed-clock"; 22*4882a593Smuzhiyun #clock-cells = <0>; 23*4882a593Smuzhiyun clock-frequency = <19200000>; 24*4882a593Smuzhiyun }; 25*4882a593Smuzhiyun 26*4882a593Smuzhiyun sleep_clk: sleep-clk { 27*4882a593Smuzhiyun compatible = "fixed-clock"; 28*4882a593Smuzhiyun #clock-cells = <0>; 29*4882a593Smuzhiyun clock-frequency = <32768>; 30*4882a593Smuzhiyun }; 31*4882a593Smuzhiyun }; 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun cpus { 34*4882a593Smuzhiyun #address-cells = <1>; 35*4882a593Smuzhiyun #size-cells = <0>; 36*4882a593Smuzhiyun 37*4882a593Smuzhiyun CPU0: cpu@100 { 38*4882a593Smuzhiyun device_type = "cpu"; 39*4882a593Smuzhiyun compatible = "arm,cortex-a53"; 40*4882a593Smuzhiyun reg = <0x100>; 41*4882a593Smuzhiyun enable-method = "psci"; 42*4882a593Smuzhiyun cpu-idle-states = <&CPU_SLEEP_0>; 43*4882a593Smuzhiyun next-level-cache = <&L2_0>; 44*4882a593Smuzhiyun #cooling-cells = <2>; 45*4882a593Smuzhiyun clocks = <&apcs_glb>; 46*4882a593Smuzhiyun operating-points-v2 = <&cpu_opp_table>; 47*4882a593Smuzhiyun power-domains = <&cpr>; 48*4882a593Smuzhiyun power-domain-names = "cpr"; 49*4882a593Smuzhiyun }; 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun CPU1: cpu@101 { 52*4882a593Smuzhiyun device_type = "cpu"; 53*4882a593Smuzhiyun compatible = "arm,cortex-a53"; 54*4882a593Smuzhiyun reg = <0x101>; 55*4882a593Smuzhiyun enable-method = "psci"; 56*4882a593Smuzhiyun cpu-idle-states = <&CPU_SLEEP_0>; 57*4882a593Smuzhiyun next-level-cache = <&L2_0>; 58*4882a593Smuzhiyun #cooling-cells = <2>; 59*4882a593Smuzhiyun clocks = <&apcs_glb>; 60*4882a593Smuzhiyun operating-points-v2 = <&cpu_opp_table>; 61*4882a593Smuzhiyun power-domains = <&cpr>; 62*4882a593Smuzhiyun power-domain-names = "cpr"; 63*4882a593Smuzhiyun }; 64*4882a593Smuzhiyun 65*4882a593Smuzhiyun CPU2: cpu@102 { 66*4882a593Smuzhiyun device_type = "cpu"; 67*4882a593Smuzhiyun compatible = "arm,cortex-a53"; 68*4882a593Smuzhiyun reg = <0x102>; 69*4882a593Smuzhiyun enable-method = "psci"; 70*4882a593Smuzhiyun cpu-idle-states = <&CPU_SLEEP_0>; 71*4882a593Smuzhiyun next-level-cache = <&L2_0>; 72*4882a593Smuzhiyun #cooling-cells = <2>; 73*4882a593Smuzhiyun clocks = <&apcs_glb>; 74*4882a593Smuzhiyun operating-points-v2 = <&cpu_opp_table>; 75*4882a593Smuzhiyun power-domains = <&cpr>; 76*4882a593Smuzhiyun power-domain-names = "cpr"; 77*4882a593Smuzhiyun }; 78*4882a593Smuzhiyun 79*4882a593Smuzhiyun CPU3: cpu@103 { 80*4882a593Smuzhiyun device_type = "cpu"; 81*4882a593Smuzhiyun compatible = "arm,cortex-a53"; 82*4882a593Smuzhiyun reg = <0x103>; 83*4882a593Smuzhiyun enable-method = "psci"; 84*4882a593Smuzhiyun cpu-idle-states = <&CPU_SLEEP_0>; 85*4882a593Smuzhiyun next-level-cache = <&L2_0>; 86*4882a593Smuzhiyun #cooling-cells = <2>; 87*4882a593Smuzhiyun clocks = <&apcs_glb>; 88*4882a593Smuzhiyun operating-points-v2 = <&cpu_opp_table>; 89*4882a593Smuzhiyun power-domains = <&cpr>; 90*4882a593Smuzhiyun power-domain-names = "cpr"; 91*4882a593Smuzhiyun }; 92*4882a593Smuzhiyun 93*4882a593Smuzhiyun L2_0: l2-cache { 94*4882a593Smuzhiyun compatible = "cache"; 95*4882a593Smuzhiyun cache-level = <2>; 96*4882a593Smuzhiyun }; 97*4882a593Smuzhiyun 98*4882a593Smuzhiyun idle-states { 99*4882a593Smuzhiyun entry-method = "psci"; 100*4882a593Smuzhiyun 101*4882a593Smuzhiyun CPU_SLEEP_0: cpu-sleep-0 { 102*4882a593Smuzhiyun compatible = "arm,idle-state"; 103*4882a593Smuzhiyun idle-state-name = "standalone-power-collapse"; 104*4882a593Smuzhiyun arm,psci-suspend-param = <0x40000003>; 105*4882a593Smuzhiyun entry-latency-us = <125>; 106*4882a593Smuzhiyun exit-latency-us = <180>; 107*4882a593Smuzhiyun min-residency-us = <595>; 108*4882a593Smuzhiyun local-timer-stop; 109*4882a593Smuzhiyun }; 110*4882a593Smuzhiyun }; 111*4882a593Smuzhiyun }; 112*4882a593Smuzhiyun 113*4882a593Smuzhiyun cpu_opp_table: cpu-opp-table { 114*4882a593Smuzhiyun compatible = "operating-points-v2-kryo-cpu"; 115*4882a593Smuzhiyun opp-shared; 116*4882a593Smuzhiyun 117*4882a593Smuzhiyun opp-1094400000 { 118*4882a593Smuzhiyun opp-hz = /bits/ 64 <1094400000>; 119*4882a593Smuzhiyun required-opps = <&cpr_opp1>; 120*4882a593Smuzhiyun }; 121*4882a593Smuzhiyun opp-1248000000 { 122*4882a593Smuzhiyun opp-hz = /bits/ 64 <1248000000>; 123*4882a593Smuzhiyun required-opps = <&cpr_opp2>; 124*4882a593Smuzhiyun }; 125*4882a593Smuzhiyun opp-1401600000 { 126*4882a593Smuzhiyun opp-hz = /bits/ 64 <1401600000>; 127*4882a593Smuzhiyun required-opps = <&cpr_opp3>; 128*4882a593Smuzhiyun }; 129*4882a593Smuzhiyun }; 130*4882a593Smuzhiyun 131*4882a593Smuzhiyun cpr_opp_table: cpr-opp-table { 132*4882a593Smuzhiyun compatible = "operating-points-v2-qcom-level"; 133*4882a593Smuzhiyun 134*4882a593Smuzhiyun cpr_opp1: opp1 { 135*4882a593Smuzhiyun opp-level = <1>; 136*4882a593Smuzhiyun qcom,opp-fuse-level = <1>; 137*4882a593Smuzhiyun }; 138*4882a593Smuzhiyun cpr_opp2: opp2 { 139*4882a593Smuzhiyun opp-level = <2>; 140*4882a593Smuzhiyun qcom,opp-fuse-level = <2>; 141*4882a593Smuzhiyun }; 142*4882a593Smuzhiyun cpr_opp3: opp3 { 143*4882a593Smuzhiyun opp-level = <3>; 144*4882a593Smuzhiyun qcom,opp-fuse-level = <3>; 145*4882a593Smuzhiyun }; 146*4882a593Smuzhiyun }; 147*4882a593Smuzhiyun 148*4882a593Smuzhiyun firmware { 149*4882a593Smuzhiyun scm: scm { 150*4882a593Smuzhiyun compatible = "qcom,scm-qcs404", "qcom,scm"; 151*4882a593Smuzhiyun #reset-cells = <1>; 152*4882a593Smuzhiyun }; 153*4882a593Smuzhiyun }; 154*4882a593Smuzhiyun 155*4882a593Smuzhiyun memory@80000000 { 156*4882a593Smuzhiyun device_type = "memory"; 157*4882a593Smuzhiyun /* We expect the bootloader to fill in the size */ 158*4882a593Smuzhiyun reg = <0 0x80000000 0 0>; 159*4882a593Smuzhiyun }; 160*4882a593Smuzhiyun 161*4882a593Smuzhiyun psci { 162*4882a593Smuzhiyun compatible = "arm,psci-1.0"; 163*4882a593Smuzhiyun method = "smc"; 164*4882a593Smuzhiyun }; 165*4882a593Smuzhiyun 166*4882a593Smuzhiyun reserved-memory { 167*4882a593Smuzhiyun #address-cells = <2>; 168*4882a593Smuzhiyun #size-cells = <2>; 169*4882a593Smuzhiyun ranges; 170*4882a593Smuzhiyun 171*4882a593Smuzhiyun tz_apps_mem: memory@85900000 { 172*4882a593Smuzhiyun reg = <0 0x85900000 0 0x500000>; 173*4882a593Smuzhiyun no-map; 174*4882a593Smuzhiyun }; 175*4882a593Smuzhiyun 176*4882a593Smuzhiyun xbl_mem: memory@85e00000 { 177*4882a593Smuzhiyun reg = <0 0x85e00000 0 0x100000>; 178*4882a593Smuzhiyun no-map; 179*4882a593Smuzhiyun }; 180*4882a593Smuzhiyun 181*4882a593Smuzhiyun smem_region: memory@85f00000 { 182*4882a593Smuzhiyun reg = <0 0x85f00000 0 0x200000>; 183*4882a593Smuzhiyun no-map; 184*4882a593Smuzhiyun }; 185*4882a593Smuzhiyun 186*4882a593Smuzhiyun tz_mem: memory@86100000 { 187*4882a593Smuzhiyun reg = <0 0x86100000 0 0x300000>; 188*4882a593Smuzhiyun no-map; 189*4882a593Smuzhiyun }; 190*4882a593Smuzhiyun 191*4882a593Smuzhiyun wlan_fw_mem: memory@86400000 { 192*4882a593Smuzhiyun reg = <0 0x86400000 0 0x1100000>; 193*4882a593Smuzhiyun no-map; 194*4882a593Smuzhiyun }; 195*4882a593Smuzhiyun 196*4882a593Smuzhiyun adsp_fw_mem: memory@87500000 { 197*4882a593Smuzhiyun reg = <0 0x87500000 0 0x1a00000>; 198*4882a593Smuzhiyun no-map; 199*4882a593Smuzhiyun }; 200*4882a593Smuzhiyun 201*4882a593Smuzhiyun cdsp_fw_mem: memory@88f00000 { 202*4882a593Smuzhiyun reg = <0 0x88f00000 0 0x600000>; 203*4882a593Smuzhiyun no-map; 204*4882a593Smuzhiyun }; 205*4882a593Smuzhiyun 206*4882a593Smuzhiyun wlan_msa_mem: memory@89500000 { 207*4882a593Smuzhiyun reg = <0 0x89500000 0 0x100000>; 208*4882a593Smuzhiyun no-map; 209*4882a593Smuzhiyun }; 210*4882a593Smuzhiyun 211*4882a593Smuzhiyun uefi_mem: memory@9f800000 { 212*4882a593Smuzhiyun reg = <0 0x9f800000 0 0x800000>; 213*4882a593Smuzhiyun no-map; 214*4882a593Smuzhiyun }; 215*4882a593Smuzhiyun }; 216*4882a593Smuzhiyun 217*4882a593Smuzhiyun rpm-glink { 218*4882a593Smuzhiyun compatible = "qcom,glink-rpm"; 219*4882a593Smuzhiyun 220*4882a593Smuzhiyun interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>; 221*4882a593Smuzhiyun qcom,rpm-msg-ram = <&rpm_msg_ram>; 222*4882a593Smuzhiyun mboxes = <&apcs_glb 0>; 223*4882a593Smuzhiyun 224*4882a593Smuzhiyun rpm_requests: glink-channel { 225*4882a593Smuzhiyun compatible = "qcom,rpm-qcs404"; 226*4882a593Smuzhiyun qcom,glink-channels = "rpm_requests"; 227*4882a593Smuzhiyun 228*4882a593Smuzhiyun rpmcc: clock-controller { 229*4882a593Smuzhiyun compatible = "qcom,rpmcc-qcs404"; 230*4882a593Smuzhiyun #clock-cells = <1>; 231*4882a593Smuzhiyun }; 232*4882a593Smuzhiyun 233*4882a593Smuzhiyun rpmpd: power-controller { 234*4882a593Smuzhiyun compatible = "qcom,qcs404-rpmpd"; 235*4882a593Smuzhiyun #power-domain-cells = <1>; 236*4882a593Smuzhiyun operating-points-v2 = <&rpmpd_opp_table>; 237*4882a593Smuzhiyun 238*4882a593Smuzhiyun rpmpd_opp_table: opp-table { 239*4882a593Smuzhiyun compatible = "operating-points-v2"; 240*4882a593Smuzhiyun 241*4882a593Smuzhiyun rpmpd_opp_ret: opp1 { 242*4882a593Smuzhiyun opp-level = <16>; 243*4882a593Smuzhiyun }; 244*4882a593Smuzhiyun 245*4882a593Smuzhiyun rpmpd_opp_ret_plus: opp2 { 246*4882a593Smuzhiyun opp-level = <32>; 247*4882a593Smuzhiyun }; 248*4882a593Smuzhiyun 249*4882a593Smuzhiyun rpmpd_opp_min_svs: opp3 { 250*4882a593Smuzhiyun opp-level = <48>; 251*4882a593Smuzhiyun }; 252*4882a593Smuzhiyun 253*4882a593Smuzhiyun rpmpd_opp_low_svs: opp4 { 254*4882a593Smuzhiyun opp-level = <64>; 255*4882a593Smuzhiyun }; 256*4882a593Smuzhiyun 257*4882a593Smuzhiyun rpmpd_opp_svs: opp5 { 258*4882a593Smuzhiyun opp-level = <128>; 259*4882a593Smuzhiyun }; 260*4882a593Smuzhiyun 261*4882a593Smuzhiyun rpmpd_opp_svs_plus: opp6 { 262*4882a593Smuzhiyun opp-level = <192>; 263*4882a593Smuzhiyun }; 264*4882a593Smuzhiyun 265*4882a593Smuzhiyun rpmpd_opp_nom: opp7 { 266*4882a593Smuzhiyun opp-level = <256>; 267*4882a593Smuzhiyun }; 268*4882a593Smuzhiyun 269*4882a593Smuzhiyun rpmpd_opp_nom_plus: opp8 { 270*4882a593Smuzhiyun opp-level = <320>; 271*4882a593Smuzhiyun }; 272*4882a593Smuzhiyun 273*4882a593Smuzhiyun rpmpd_opp_turbo: opp9 { 274*4882a593Smuzhiyun opp-level = <384>; 275*4882a593Smuzhiyun }; 276*4882a593Smuzhiyun 277*4882a593Smuzhiyun rpmpd_opp_turbo_no_cpr: opp10 { 278*4882a593Smuzhiyun opp-level = <416>; 279*4882a593Smuzhiyun }; 280*4882a593Smuzhiyun 281*4882a593Smuzhiyun rpmpd_opp_turbo_plus: opp11 { 282*4882a593Smuzhiyun opp-level = <512>; 283*4882a593Smuzhiyun }; 284*4882a593Smuzhiyun }; 285*4882a593Smuzhiyun }; 286*4882a593Smuzhiyun }; 287*4882a593Smuzhiyun }; 288*4882a593Smuzhiyun 289*4882a593Smuzhiyun smem { 290*4882a593Smuzhiyun compatible = "qcom,smem"; 291*4882a593Smuzhiyun 292*4882a593Smuzhiyun memory-region = <&smem_region>; 293*4882a593Smuzhiyun qcom,rpm-msg-ram = <&rpm_msg_ram>; 294*4882a593Smuzhiyun 295*4882a593Smuzhiyun hwlocks = <&tcsr_mutex 3>; 296*4882a593Smuzhiyun }; 297*4882a593Smuzhiyun 298*4882a593Smuzhiyun tcsr_mutex: hwlock { 299*4882a593Smuzhiyun compatible = "qcom,tcsr-mutex"; 300*4882a593Smuzhiyun syscon = <&tcsr_mutex_regs 0 0x1000>; 301*4882a593Smuzhiyun #hwlock-cells = <1>; 302*4882a593Smuzhiyun }; 303*4882a593Smuzhiyun 304*4882a593Smuzhiyun soc: soc@0 { 305*4882a593Smuzhiyun #address-cells = <1>; 306*4882a593Smuzhiyun #size-cells = <1>; 307*4882a593Smuzhiyun ranges = <0 0 0 0xffffffff>; 308*4882a593Smuzhiyun compatible = "simple-bus"; 309*4882a593Smuzhiyun 310*4882a593Smuzhiyun turingcc: clock-controller@800000 { 311*4882a593Smuzhiyun compatible = "qcom,qcs404-turingcc"; 312*4882a593Smuzhiyun reg = <0x00800000 0x30000>; 313*4882a593Smuzhiyun clocks = <&gcc GCC_CDSP_CFG_AHB_CLK>; 314*4882a593Smuzhiyun 315*4882a593Smuzhiyun #clock-cells = <1>; 316*4882a593Smuzhiyun #reset-cells = <1>; 317*4882a593Smuzhiyun 318*4882a593Smuzhiyun status = "disabled"; 319*4882a593Smuzhiyun }; 320*4882a593Smuzhiyun 321*4882a593Smuzhiyun rpm_msg_ram: memory@60000 { 322*4882a593Smuzhiyun compatible = "qcom,rpm-msg-ram"; 323*4882a593Smuzhiyun reg = <0x00060000 0x6000>; 324*4882a593Smuzhiyun }; 325*4882a593Smuzhiyun 326*4882a593Smuzhiyun usb3_phy: phy@78000 { 327*4882a593Smuzhiyun compatible = "qcom,usb-ss-28nm-phy"; 328*4882a593Smuzhiyun reg = <0x00078000 0x400>; 329*4882a593Smuzhiyun #phy-cells = <0>; 330*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_LN_BB_CLK>, 331*4882a593Smuzhiyun <&gcc GCC_USB_HS_PHY_CFG_AHB_CLK>, 332*4882a593Smuzhiyun <&gcc GCC_USB3_PHY_PIPE_CLK>; 333*4882a593Smuzhiyun clock-names = "ref", "ahb", "pipe"; 334*4882a593Smuzhiyun resets = <&gcc GCC_USB3_PHY_BCR>, 335*4882a593Smuzhiyun <&gcc GCC_USB3PHY_PHY_BCR>; 336*4882a593Smuzhiyun reset-names = "com", "phy"; 337*4882a593Smuzhiyun status = "disabled"; 338*4882a593Smuzhiyun }; 339*4882a593Smuzhiyun 340*4882a593Smuzhiyun usb2_phy_prim: phy@7a000 { 341*4882a593Smuzhiyun compatible = "qcom,usb-hs-28nm-femtophy"; 342*4882a593Smuzhiyun reg = <0x0007a000 0x200>; 343*4882a593Smuzhiyun #phy-cells = <0>; 344*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_LN_BB_CLK>, 345*4882a593Smuzhiyun <&gcc GCC_USB_HS_PHY_CFG_AHB_CLK>, 346*4882a593Smuzhiyun <&gcc GCC_USB2A_PHY_SLEEP_CLK>; 347*4882a593Smuzhiyun clock-names = "ref", "ahb", "sleep"; 348*4882a593Smuzhiyun resets = <&gcc GCC_USB_HS_PHY_CFG_AHB_BCR>, 349*4882a593Smuzhiyun <&gcc GCC_USB2A_PHY_BCR>; 350*4882a593Smuzhiyun reset-names = "phy", "por"; 351*4882a593Smuzhiyun status = "disabled"; 352*4882a593Smuzhiyun }; 353*4882a593Smuzhiyun 354*4882a593Smuzhiyun usb2_phy_sec: phy@7c000 { 355*4882a593Smuzhiyun compatible = "qcom,usb-hs-28nm-femtophy"; 356*4882a593Smuzhiyun reg = <0x0007c000 0x200>; 357*4882a593Smuzhiyun #phy-cells = <0>; 358*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_LN_BB_CLK>, 359*4882a593Smuzhiyun <&gcc GCC_USB_HS_PHY_CFG_AHB_CLK>, 360*4882a593Smuzhiyun <&gcc GCC_USB2A_PHY_SLEEP_CLK>; 361*4882a593Smuzhiyun clock-names = "ref", "ahb", "sleep"; 362*4882a593Smuzhiyun resets = <&gcc GCC_QUSB2_PHY_BCR>, 363*4882a593Smuzhiyun <&gcc GCC_USB2_HS_PHY_ONLY_BCR>; 364*4882a593Smuzhiyun reset-names = "phy", "por"; 365*4882a593Smuzhiyun status = "disabled"; 366*4882a593Smuzhiyun }; 367*4882a593Smuzhiyun 368*4882a593Smuzhiyun qfprom: qfprom@a4000 { 369*4882a593Smuzhiyun compatible = "qcom,qfprom"; 370*4882a593Smuzhiyun reg = <0x000a4000 0x1000>; 371*4882a593Smuzhiyun #address-cells = <1>; 372*4882a593Smuzhiyun #size-cells = <1>; 373*4882a593Smuzhiyun tsens_caldata: caldata@d0 { 374*4882a593Smuzhiyun reg = <0x1f8 0x14>; 375*4882a593Smuzhiyun }; 376*4882a593Smuzhiyun cpr_efuse_speedbin: speedbin@13c { 377*4882a593Smuzhiyun reg = <0x13c 0x4>; 378*4882a593Smuzhiyun bits = <2 3>; 379*4882a593Smuzhiyun }; 380*4882a593Smuzhiyun cpr_efuse_quot_offset1: qoffset1@231 { 381*4882a593Smuzhiyun reg = <0x231 0x4>; 382*4882a593Smuzhiyun bits = <4 7>; 383*4882a593Smuzhiyun }; 384*4882a593Smuzhiyun cpr_efuse_quot_offset2: qoffset2@232 { 385*4882a593Smuzhiyun reg = <0x232 0x4>; 386*4882a593Smuzhiyun bits = <3 7>; 387*4882a593Smuzhiyun }; 388*4882a593Smuzhiyun cpr_efuse_quot_offset3: qoffset3@233 { 389*4882a593Smuzhiyun reg = <0x233 0x4>; 390*4882a593Smuzhiyun bits = <2 7>; 391*4882a593Smuzhiyun }; 392*4882a593Smuzhiyun cpr_efuse_init_voltage1: ivoltage1@229 { 393*4882a593Smuzhiyun reg = <0x229 0x4>; 394*4882a593Smuzhiyun bits = <4 6>; 395*4882a593Smuzhiyun }; 396*4882a593Smuzhiyun cpr_efuse_init_voltage2: ivoltage2@22a { 397*4882a593Smuzhiyun reg = <0x22a 0x4>; 398*4882a593Smuzhiyun bits = <2 6>; 399*4882a593Smuzhiyun }; 400*4882a593Smuzhiyun cpr_efuse_init_voltage3: ivoltage3@22b { 401*4882a593Smuzhiyun reg = <0x22b 0x4>; 402*4882a593Smuzhiyun bits = <0 6>; 403*4882a593Smuzhiyun }; 404*4882a593Smuzhiyun cpr_efuse_quot1: quot1@22b { 405*4882a593Smuzhiyun reg = <0x22b 0x4>; 406*4882a593Smuzhiyun bits = <6 12>; 407*4882a593Smuzhiyun }; 408*4882a593Smuzhiyun cpr_efuse_quot2: quot2@22d { 409*4882a593Smuzhiyun reg = <0x22d 0x4>; 410*4882a593Smuzhiyun bits = <2 12>; 411*4882a593Smuzhiyun }; 412*4882a593Smuzhiyun cpr_efuse_quot3: quot3@230 { 413*4882a593Smuzhiyun reg = <0x230 0x4>; 414*4882a593Smuzhiyun bits = <0 12>; 415*4882a593Smuzhiyun }; 416*4882a593Smuzhiyun cpr_efuse_ring1: ring1@228 { 417*4882a593Smuzhiyun reg = <0x228 0x4>; 418*4882a593Smuzhiyun bits = <0 3>; 419*4882a593Smuzhiyun }; 420*4882a593Smuzhiyun cpr_efuse_ring2: ring2@228 { 421*4882a593Smuzhiyun reg = <0x228 0x4>; 422*4882a593Smuzhiyun bits = <4 3>; 423*4882a593Smuzhiyun }; 424*4882a593Smuzhiyun cpr_efuse_ring3: ring3@229 { 425*4882a593Smuzhiyun reg = <0x229 0x4>; 426*4882a593Smuzhiyun bits = <0 3>; 427*4882a593Smuzhiyun }; 428*4882a593Smuzhiyun cpr_efuse_revision: revision@218 { 429*4882a593Smuzhiyun reg = <0x218 0x4>; 430*4882a593Smuzhiyun bits = <3 3>; 431*4882a593Smuzhiyun }; 432*4882a593Smuzhiyun }; 433*4882a593Smuzhiyun 434*4882a593Smuzhiyun rng: rng@e3000 { 435*4882a593Smuzhiyun compatible = "qcom,prng-ee"; 436*4882a593Smuzhiyun reg = <0x000e3000 0x1000>; 437*4882a593Smuzhiyun clocks = <&gcc GCC_PRNG_AHB_CLK>; 438*4882a593Smuzhiyun clock-names = "core"; 439*4882a593Smuzhiyun }; 440*4882a593Smuzhiyun 441*4882a593Smuzhiyun bimc: interconnect@400000 { 442*4882a593Smuzhiyun reg = <0x00400000 0x80000>; 443*4882a593Smuzhiyun compatible = "qcom,qcs404-bimc"; 444*4882a593Smuzhiyun #interconnect-cells = <1>; 445*4882a593Smuzhiyun clock-names = "bus", "bus_a"; 446*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_BIMC_CLK>, 447*4882a593Smuzhiyun <&rpmcc RPM_SMD_BIMC_A_CLK>; 448*4882a593Smuzhiyun }; 449*4882a593Smuzhiyun 450*4882a593Smuzhiyun tsens: thermal-sensor@4a9000 { 451*4882a593Smuzhiyun compatible = "qcom,qcs404-tsens", "qcom,tsens-v1"; 452*4882a593Smuzhiyun reg = <0x004a9000 0x1000>, /* TM */ 453*4882a593Smuzhiyun <0x004a8000 0x1000>; /* SROT */ 454*4882a593Smuzhiyun nvmem-cells = <&tsens_caldata>; 455*4882a593Smuzhiyun nvmem-cell-names = "calib"; 456*4882a593Smuzhiyun #qcom,sensors = <10>; 457*4882a593Smuzhiyun interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>; 458*4882a593Smuzhiyun interrupt-names = "uplow"; 459*4882a593Smuzhiyun #thermal-sensor-cells = <1>; 460*4882a593Smuzhiyun }; 461*4882a593Smuzhiyun 462*4882a593Smuzhiyun pcnoc: interconnect@500000 { 463*4882a593Smuzhiyun reg = <0x00500000 0x15080>; 464*4882a593Smuzhiyun compatible = "qcom,qcs404-pcnoc"; 465*4882a593Smuzhiyun #interconnect-cells = <1>; 466*4882a593Smuzhiyun clock-names = "bus", "bus_a"; 467*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_PNOC_CLK>, 468*4882a593Smuzhiyun <&rpmcc RPM_SMD_PNOC_A_CLK>; 469*4882a593Smuzhiyun }; 470*4882a593Smuzhiyun 471*4882a593Smuzhiyun snoc: interconnect@580000 { 472*4882a593Smuzhiyun reg = <0x00580000 0x23080>; 473*4882a593Smuzhiyun compatible = "qcom,qcs404-snoc"; 474*4882a593Smuzhiyun #interconnect-cells = <1>; 475*4882a593Smuzhiyun clock-names = "bus", "bus_a"; 476*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_SNOC_CLK>, 477*4882a593Smuzhiyun <&rpmcc RPM_SMD_SNOC_A_CLK>; 478*4882a593Smuzhiyun }; 479*4882a593Smuzhiyun 480*4882a593Smuzhiyun remoteproc_cdsp: remoteproc@b00000 { 481*4882a593Smuzhiyun compatible = "qcom,qcs404-cdsp-pas"; 482*4882a593Smuzhiyun reg = <0x00b00000 0x4040>; 483*4882a593Smuzhiyun 484*4882a593Smuzhiyun interrupts-extended = <&intc GIC_SPI 229 IRQ_TYPE_EDGE_RISING>, 485*4882a593Smuzhiyun <&cdsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 486*4882a593Smuzhiyun <&cdsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 487*4882a593Smuzhiyun <&cdsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 488*4882a593Smuzhiyun <&cdsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>; 489*4882a593Smuzhiyun interrupt-names = "wdog", "fatal", "ready", 490*4882a593Smuzhiyun "handover", "stop-ack"; 491*4882a593Smuzhiyun 492*4882a593Smuzhiyun clocks = <&xo_board>, 493*4882a593Smuzhiyun <&gcc GCC_CDSP_CFG_AHB_CLK>, 494*4882a593Smuzhiyun <&gcc GCC_CDSP_TBU_CLK>, 495*4882a593Smuzhiyun <&gcc GCC_BIMC_CDSP_CLK>, 496*4882a593Smuzhiyun <&turingcc TURING_WRAPPER_AON_CLK>, 497*4882a593Smuzhiyun <&turingcc TURING_Q6SS_AHBS_AON_CLK>, 498*4882a593Smuzhiyun <&turingcc TURING_Q6SS_AHBM_AON_CLK>, 499*4882a593Smuzhiyun <&turingcc TURING_Q6SS_Q6_AXIM_CLK>; 500*4882a593Smuzhiyun clock-names = "xo", 501*4882a593Smuzhiyun "sway", 502*4882a593Smuzhiyun "tbu", 503*4882a593Smuzhiyun "bimc", 504*4882a593Smuzhiyun "ahb_aon", 505*4882a593Smuzhiyun "q6ss_slave", 506*4882a593Smuzhiyun "q6ss_master", 507*4882a593Smuzhiyun "q6_axim"; 508*4882a593Smuzhiyun 509*4882a593Smuzhiyun resets = <&gcc GCC_CDSP_RESTART>; 510*4882a593Smuzhiyun reset-names = "restart"; 511*4882a593Smuzhiyun 512*4882a593Smuzhiyun qcom,halt-regs = <&tcsr 0x19004>; 513*4882a593Smuzhiyun 514*4882a593Smuzhiyun memory-region = <&cdsp_fw_mem>; 515*4882a593Smuzhiyun 516*4882a593Smuzhiyun qcom,smem-states = <&cdsp_smp2p_out 0>; 517*4882a593Smuzhiyun qcom,smem-state-names = "stop"; 518*4882a593Smuzhiyun 519*4882a593Smuzhiyun status = "disabled"; 520*4882a593Smuzhiyun 521*4882a593Smuzhiyun glink-edge { 522*4882a593Smuzhiyun interrupts = <GIC_SPI 141 IRQ_TYPE_EDGE_RISING>; 523*4882a593Smuzhiyun 524*4882a593Smuzhiyun qcom,remote-pid = <5>; 525*4882a593Smuzhiyun mboxes = <&apcs_glb 12>; 526*4882a593Smuzhiyun 527*4882a593Smuzhiyun label = "cdsp"; 528*4882a593Smuzhiyun }; 529*4882a593Smuzhiyun }; 530*4882a593Smuzhiyun 531*4882a593Smuzhiyun usb3: usb@7678800 { 532*4882a593Smuzhiyun compatible = "qcom,dwc3"; 533*4882a593Smuzhiyun reg = <0x07678800 0x400>; 534*4882a593Smuzhiyun #address-cells = <1>; 535*4882a593Smuzhiyun #size-cells = <1>; 536*4882a593Smuzhiyun ranges; 537*4882a593Smuzhiyun clocks = <&gcc GCC_USB30_MASTER_CLK>, 538*4882a593Smuzhiyun <&gcc GCC_SYS_NOC_USB3_CLK>, 539*4882a593Smuzhiyun <&gcc GCC_USB30_SLEEP_CLK>, 540*4882a593Smuzhiyun <&gcc GCC_USB30_MOCK_UTMI_CLK>; 541*4882a593Smuzhiyun clock-names = "core", "iface", "sleep", "mock_utmi"; 542*4882a593Smuzhiyun assigned-clocks = <&gcc GCC_USB20_MOCK_UTMI_CLK>, 543*4882a593Smuzhiyun <&gcc GCC_USB30_MASTER_CLK>; 544*4882a593Smuzhiyun assigned-clock-rates = <19200000>, <200000000>; 545*4882a593Smuzhiyun status = "disabled"; 546*4882a593Smuzhiyun 547*4882a593Smuzhiyun dwc3@7580000 { 548*4882a593Smuzhiyun compatible = "snps,dwc3"; 549*4882a593Smuzhiyun reg = <0x07580000 0xcd00>; 550*4882a593Smuzhiyun interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; 551*4882a593Smuzhiyun phys = <&usb2_phy_prim>, <&usb3_phy>; 552*4882a593Smuzhiyun phy-names = "usb2-phy", "usb3-phy"; 553*4882a593Smuzhiyun snps,has-lpm-erratum; 554*4882a593Smuzhiyun snps,hird-threshold = /bits/ 8 <0x10>; 555*4882a593Smuzhiyun snps,usb3_lpm_capable; 556*4882a593Smuzhiyun dr_mode = "otg"; 557*4882a593Smuzhiyun }; 558*4882a593Smuzhiyun }; 559*4882a593Smuzhiyun 560*4882a593Smuzhiyun usb2: usb@79b8800 { 561*4882a593Smuzhiyun compatible = "qcom,dwc3"; 562*4882a593Smuzhiyun reg = <0x079b8800 0x400>; 563*4882a593Smuzhiyun #address-cells = <1>; 564*4882a593Smuzhiyun #size-cells = <1>; 565*4882a593Smuzhiyun ranges; 566*4882a593Smuzhiyun clocks = <&gcc GCC_USB_HS_SYSTEM_CLK>, 567*4882a593Smuzhiyun <&gcc GCC_PCNOC_USB2_CLK>, 568*4882a593Smuzhiyun <&gcc GCC_USB_HS_INACTIVITY_TIMERS_CLK>, 569*4882a593Smuzhiyun <&gcc GCC_USB20_MOCK_UTMI_CLK>; 570*4882a593Smuzhiyun clock-names = "core", "iface", "sleep", "mock_utmi"; 571*4882a593Smuzhiyun assigned-clocks = <&gcc GCC_USB20_MOCK_UTMI_CLK>, 572*4882a593Smuzhiyun <&gcc GCC_USB_HS_SYSTEM_CLK>; 573*4882a593Smuzhiyun assigned-clock-rates = <19200000>, <133333333>; 574*4882a593Smuzhiyun status = "disabled"; 575*4882a593Smuzhiyun 576*4882a593Smuzhiyun dwc3@78c0000 { 577*4882a593Smuzhiyun compatible = "snps,dwc3"; 578*4882a593Smuzhiyun reg = <0x078c0000 0xcc00>; 579*4882a593Smuzhiyun interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>; 580*4882a593Smuzhiyun phys = <&usb2_phy_sec>; 581*4882a593Smuzhiyun phy-names = "usb2-phy"; 582*4882a593Smuzhiyun snps,has-lpm-erratum; 583*4882a593Smuzhiyun snps,hird-threshold = /bits/ 8 <0x10>; 584*4882a593Smuzhiyun snps,usb3_lpm_capable; 585*4882a593Smuzhiyun dr_mode = "peripheral"; 586*4882a593Smuzhiyun }; 587*4882a593Smuzhiyun }; 588*4882a593Smuzhiyun 589*4882a593Smuzhiyun tlmm: pinctrl@1000000 { 590*4882a593Smuzhiyun compatible = "qcom,qcs404-pinctrl"; 591*4882a593Smuzhiyun reg = <0x01000000 0x200000>, 592*4882a593Smuzhiyun <0x01300000 0x200000>, 593*4882a593Smuzhiyun <0x07b00000 0x200000>; 594*4882a593Smuzhiyun reg-names = "south", "north", "east"; 595*4882a593Smuzhiyun interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 596*4882a593Smuzhiyun gpio-ranges = <&tlmm 0 0 120>; 597*4882a593Smuzhiyun gpio-controller; 598*4882a593Smuzhiyun #gpio-cells = <2>; 599*4882a593Smuzhiyun interrupt-controller; 600*4882a593Smuzhiyun #interrupt-cells = <2>; 601*4882a593Smuzhiyun 602*4882a593Smuzhiyun blsp1_i2c0_default: blsp1-i2c0-default { 603*4882a593Smuzhiyun pins = "gpio32", "gpio33"; 604*4882a593Smuzhiyun function = "blsp_i2c0"; 605*4882a593Smuzhiyun }; 606*4882a593Smuzhiyun 607*4882a593Smuzhiyun blsp1_i2c1_default: blsp1-i2c1-default { 608*4882a593Smuzhiyun pins = "gpio24", "gpio25"; 609*4882a593Smuzhiyun function = "blsp_i2c1"; 610*4882a593Smuzhiyun }; 611*4882a593Smuzhiyun 612*4882a593Smuzhiyun blsp1_i2c2_default: blsp1-i2c2-default { 613*4882a593Smuzhiyun sda { 614*4882a593Smuzhiyun pins = "gpio19"; 615*4882a593Smuzhiyun function = "blsp_i2c_sda_a2"; 616*4882a593Smuzhiyun }; 617*4882a593Smuzhiyun 618*4882a593Smuzhiyun scl { 619*4882a593Smuzhiyun pins = "gpio20"; 620*4882a593Smuzhiyun function = "blsp_i2c_scl_a2"; 621*4882a593Smuzhiyun }; 622*4882a593Smuzhiyun }; 623*4882a593Smuzhiyun 624*4882a593Smuzhiyun blsp1_i2c3_default: blsp1-i2c3-default { 625*4882a593Smuzhiyun pins = "gpio84", "gpio85"; 626*4882a593Smuzhiyun function = "blsp_i2c3"; 627*4882a593Smuzhiyun }; 628*4882a593Smuzhiyun 629*4882a593Smuzhiyun blsp1_i2c4_default: blsp1-i2c4-default { 630*4882a593Smuzhiyun pins = "gpio117", "gpio118"; 631*4882a593Smuzhiyun function = "blsp_i2c4"; 632*4882a593Smuzhiyun }; 633*4882a593Smuzhiyun 634*4882a593Smuzhiyun blsp1_uart0_default: blsp1-uart0-default { 635*4882a593Smuzhiyun pins = "gpio30", "gpio31", "gpio32", "gpio33"; 636*4882a593Smuzhiyun function = "blsp_uart0"; 637*4882a593Smuzhiyun }; 638*4882a593Smuzhiyun 639*4882a593Smuzhiyun blsp1_uart1_default: blsp1-uart1-default { 640*4882a593Smuzhiyun pins = "gpio22", "gpio23"; 641*4882a593Smuzhiyun function = "blsp_uart1"; 642*4882a593Smuzhiyun }; 643*4882a593Smuzhiyun 644*4882a593Smuzhiyun blsp1_uart2_default: blsp1-uart2-default { 645*4882a593Smuzhiyun rx { 646*4882a593Smuzhiyun pins = "gpio18"; 647*4882a593Smuzhiyun function = "blsp_uart_rx_a2"; 648*4882a593Smuzhiyun }; 649*4882a593Smuzhiyun 650*4882a593Smuzhiyun tx { 651*4882a593Smuzhiyun pins = "gpio17"; 652*4882a593Smuzhiyun function = "blsp_uart_tx_a2"; 653*4882a593Smuzhiyun }; 654*4882a593Smuzhiyun }; 655*4882a593Smuzhiyun 656*4882a593Smuzhiyun blsp1_uart3_default: blsp1-uart3-default { 657*4882a593Smuzhiyun pins = "gpio82", "gpio83", "gpio84", "gpio85"; 658*4882a593Smuzhiyun function = "blsp_uart3"; 659*4882a593Smuzhiyun }; 660*4882a593Smuzhiyun 661*4882a593Smuzhiyun blsp2_i2c0_default: blsp2-i2c0-default { 662*4882a593Smuzhiyun pins = "gpio28", "gpio29"; 663*4882a593Smuzhiyun function = "blsp_i2c5"; 664*4882a593Smuzhiyun }; 665*4882a593Smuzhiyun 666*4882a593Smuzhiyun blsp1_spi0_default: blsp1-spi0-default { 667*4882a593Smuzhiyun pins = "gpio30", "gpio31", "gpio32", "gpio33"; 668*4882a593Smuzhiyun function = "blsp_spi0"; 669*4882a593Smuzhiyun }; 670*4882a593Smuzhiyun 671*4882a593Smuzhiyun blsp1_spi1_default: blsp1-spi1-default { 672*4882a593Smuzhiyun pins = "gpio22", "gpio23", "gpio24", "gpio25"; 673*4882a593Smuzhiyun function = "blsp_spi1"; 674*4882a593Smuzhiyun }; 675*4882a593Smuzhiyun 676*4882a593Smuzhiyun blsp1_spi2_default: blsp1-spi2-default { 677*4882a593Smuzhiyun pins = "gpio17", "gpio18", "gpio19", "gpio20"; 678*4882a593Smuzhiyun function = "blsp_spi2"; 679*4882a593Smuzhiyun }; 680*4882a593Smuzhiyun 681*4882a593Smuzhiyun blsp1_spi3_default: blsp1-spi3-default { 682*4882a593Smuzhiyun pins = "gpio82", "gpio83", "gpio84", "gpio85"; 683*4882a593Smuzhiyun function = "blsp_spi3"; 684*4882a593Smuzhiyun }; 685*4882a593Smuzhiyun 686*4882a593Smuzhiyun blsp1_spi4_default: blsp1-spi4-default { 687*4882a593Smuzhiyun pins = "gpio37", "gpio38", "gpio117", "gpio118"; 688*4882a593Smuzhiyun function = "blsp_spi4"; 689*4882a593Smuzhiyun }; 690*4882a593Smuzhiyun 691*4882a593Smuzhiyun blsp2_spi0_default: blsp2-spi0-default { 692*4882a593Smuzhiyun pins = "gpio26", "gpio27", "gpio28", "gpio29"; 693*4882a593Smuzhiyun function = "blsp_spi5"; 694*4882a593Smuzhiyun }; 695*4882a593Smuzhiyun 696*4882a593Smuzhiyun blsp2_uart0_default: blsp2-uart0-default { 697*4882a593Smuzhiyun pins = "gpio26", "gpio27", "gpio28", "gpio29"; 698*4882a593Smuzhiyun function = "blsp_uart5"; 699*4882a593Smuzhiyun }; 700*4882a593Smuzhiyun }; 701*4882a593Smuzhiyun 702*4882a593Smuzhiyun gcc: clock-controller@1800000 { 703*4882a593Smuzhiyun compatible = "qcom,gcc-qcs404"; 704*4882a593Smuzhiyun reg = <0x01800000 0x80000>; 705*4882a593Smuzhiyun #clock-cells = <1>; 706*4882a593Smuzhiyun #reset-cells = <1>; 707*4882a593Smuzhiyun 708*4882a593Smuzhiyun assigned-clocks = <&gcc GCC_APSS_AHB_CLK_SRC>; 709*4882a593Smuzhiyun assigned-clock-rates = <19200000>; 710*4882a593Smuzhiyun }; 711*4882a593Smuzhiyun 712*4882a593Smuzhiyun tcsr_mutex_regs: syscon@1905000 { 713*4882a593Smuzhiyun compatible = "syscon"; 714*4882a593Smuzhiyun reg = <0x01905000 0x20000>; 715*4882a593Smuzhiyun }; 716*4882a593Smuzhiyun 717*4882a593Smuzhiyun tcsr: syscon@1937000 { 718*4882a593Smuzhiyun compatible = "syscon"; 719*4882a593Smuzhiyun reg = <0x01937000 0x25000>; 720*4882a593Smuzhiyun }; 721*4882a593Smuzhiyun 722*4882a593Smuzhiyun spmi_bus: spmi@200f000 { 723*4882a593Smuzhiyun compatible = "qcom,spmi-pmic-arb"; 724*4882a593Smuzhiyun reg = <0x0200f000 0x001000>, 725*4882a593Smuzhiyun <0x02400000 0x800000>, 726*4882a593Smuzhiyun <0x02c00000 0x800000>, 727*4882a593Smuzhiyun <0x03800000 0x200000>, 728*4882a593Smuzhiyun <0x0200a000 0x002100>; 729*4882a593Smuzhiyun reg-names = "core", "chnls", "obsrvr", "intr", "cnfg"; 730*4882a593Smuzhiyun interrupt-names = "periph_irq"; 731*4882a593Smuzhiyun interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>; 732*4882a593Smuzhiyun qcom,ee = <0>; 733*4882a593Smuzhiyun qcom,channel = <0>; 734*4882a593Smuzhiyun #address-cells = <2>; 735*4882a593Smuzhiyun #size-cells = <0>; 736*4882a593Smuzhiyun interrupt-controller; 737*4882a593Smuzhiyun #interrupt-cells = <4>; 738*4882a593Smuzhiyun }; 739*4882a593Smuzhiyun 740*4882a593Smuzhiyun remoteproc_wcss: remoteproc@7400000 { 741*4882a593Smuzhiyun compatible = "qcom,qcs404-wcss-pas"; 742*4882a593Smuzhiyun reg = <0x07400000 0x4040>; 743*4882a593Smuzhiyun 744*4882a593Smuzhiyun interrupts-extended = <&intc GIC_SPI 153 IRQ_TYPE_EDGE_RISING>, 745*4882a593Smuzhiyun <&wcss_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 746*4882a593Smuzhiyun <&wcss_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 747*4882a593Smuzhiyun <&wcss_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 748*4882a593Smuzhiyun <&wcss_smp2p_in 3 IRQ_TYPE_EDGE_RISING>; 749*4882a593Smuzhiyun interrupt-names = "wdog", "fatal", "ready", 750*4882a593Smuzhiyun "handover", "stop-ack"; 751*4882a593Smuzhiyun 752*4882a593Smuzhiyun clocks = <&xo_board>; 753*4882a593Smuzhiyun clock-names = "xo"; 754*4882a593Smuzhiyun 755*4882a593Smuzhiyun memory-region = <&wlan_fw_mem>; 756*4882a593Smuzhiyun 757*4882a593Smuzhiyun qcom,smem-states = <&wcss_smp2p_out 0>; 758*4882a593Smuzhiyun qcom,smem-state-names = "stop"; 759*4882a593Smuzhiyun 760*4882a593Smuzhiyun status = "disabled"; 761*4882a593Smuzhiyun 762*4882a593Smuzhiyun glink-edge { 763*4882a593Smuzhiyun interrupts = <GIC_SPI 156 IRQ_TYPE_EDGE_RISING>; 764*4882a593Smuzhiyun 765*4882a593Smuzhiyun qcom,remote-pid = <1>; 766*4882a593Smuzhiyun mboxes = <&apcs_glb 16>; 767*4882a593Smuzhiyun 768*4882a593Smuzhiyun label = "wcss"; 769*4882a593Smuzhiyun }; 770*4882a593Smuzhiyun }; 771*4882a593Smuzhiyun 772*4882a593Smuzhiyun pcie_phy: phy@7786000 { 773*4882a593Smuzhiyun compatible = "qcom,qcs404-pcie2-phy", "qcom,pcie2-phy"; 774*4882a593Smuzhiyun reg = <0x07786000 0xb8>; 775*4882a593Smuzhiyun 776*4882a593Smuzhiyun clocks = <&gcc GCC_PCIE_0_PIPE_CLK>; 777*4882a593Smuzhiyun resets = <&gcc GCC_PCIEPHY_0_PHY_BCR>, 778*4882a593Smuzhiyun <&gcc 21>; 779*4882a593Smuzhiyun reset-names = "phy", "pipe"; 780*4882a593Smuzhiyun 781*4882a593Smuzhiyun clock-output-names = "pcie_0_pipe_clk"; 782*4882a593Smuzhiyun #phy-cells = <0>; 783*4882a593Smuzhiyun 784*4882a593Smuzhiyun status = "disabled"; 785*4882a593Smuzhiyun }; 786*4882a593Smuzhiyun 787*4882a593Smuzhiyun sdcc1: sdcc@7804000 { 788*4882a593Smuzhiyun compatible = "qcom,qcs404-sdhci", "qcom,sdhci-msm-v5"; 789*4882a593Smuzhiyun reg = <0x07804000 0x1000>, <0x7805000 0x1000>; 790*4882a593Smuzhiyun reg-names = "hc", "cqhci"; 791*4882a593Smuzhiyun 792*4882a593Smuzhiyun interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>, 793*4882a593Smuzhiyun <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>; 794*4882a593Smuzhiyun interrupt-names = "hc_irq", "pwr_irq"; 795*4882a593Smuzhiyun 796*4882a593Smuzhiyun clocks = <&gcc GCC_SDCC1_APPS_CLK>, 797*4882a593Smuzhiyun <&gcc GCC_SDCC1_AHB_CLK>, 798*4882a593Smuzhiyun <&xo_board>; 799*4882a593Smuzhiyun clock-names = "core", "iface", "xo"; 800*4882a593Smuzhiyun 801*4882a593Smuzhiyun status = "disabled"; 802*4882a593Smuzhiyun }; 803*4882a593Smuzhiyun 804*4882a593Smuzhiyun blsp1_dma: dma@7884000 { 805*4882a593Smuzhiyun compatible = "qcom,bam-v1.7.0"; 806*4882a593Smuzhiyun reg = <0x07884000 0x25000>; 807*4882a593Smuzhiyun interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>; 808*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_AHB_CLK>; 809*4882a593Smuzhiyun clock-names = "bam_clk"; 810*4882a593Smuzhiyun #dma-cells = <1>; 811*4882a593Smuzhiyun qcom,ee = <0>; 812*4882a593Smuzhiyun status = "okay"; 813*4882a593Smuzhiyun }; 814*4882a593Smuzhiyun 815*4882a593Smuzhiyun blsp1_uart0: serial@78af000 { 816*4882a593Smuzhiyun compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 817*4882a593Smuzhiyun reg = <0x078af000 0x200>; 818*4882a593Smuzhiyun interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; 819*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_UART0_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; 820*4882a593Smuzhiyun clock-names = "core", "iface"; 821*4882a593Smuzhiyun dmas = <&blsp1_dma 1>, <&blsp1_dma 0>; 822*4882a593Smuzhiyun dma-names = "rx", "tx"; 823*4882a593Smuzhiyun pinctrl-names = "default"; 824*4882a593Smuzhiyun pinctrl-0 = <&blsp1_uart0_default>; 825*4882a593Smuzhiyun status = "disabled"; 826*4882a593Smuzhiyun }; 827*4882a593Smuzhiyun 828*4882a593Smuzhiyun blsp1_uart1: serial@78b0000 { 829*4882a593Smuzhiyun compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 830*4882a593Smuzhiyun reg = <0x078b0000 0x200>; 831*4882a593Smuzhiyun interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>; 832*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_UART1_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; 833*4882a593Smuzhiyun clock-names = "core", "iface"; 834*4882a593Smuzhiyun dmas = <&blsp1_dma 3>, <&blsp1_dma 2>; 835*4882a593Smuzhiyun dma-names = "rx", "tx"; 836*4882a593Smuzhiyun pinctrl-names = "default"; 837*4882a593Smuzhiyun pinctrl-0 = <&blsp1_uart1_default>; 838*4882a593Smuzhiyun status = "disabled"; 839*4882a593Smuzhiyun }; 840*4882a593Smuzhiyun 841*4882a593Smuzhiyun blsp1_uart2: serial@78b1000 { 842*4882a593Smuzhiyun compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 843*4882a593Smuzhiyun reg = <0x078b1000 0x200>; 844*4882a593Smuzhiyun interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>; 845*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_UART2_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; 846*4882a593Smuzhiyun clock-names = "core", "iface"; 847*4882a593Smuzhiyun dmas = <&blsp1_dma 5>, <&blsp1_dma 4>; 848*4882a593Smuzhiyun dma-names = "rx", "tx"; 849*4882a593Smuzhiyun pinctrl-names = "default"; 850*4882a593Smuzhiyun pinctrl-0 = <&blsp1_uart2_default>; 851*4882a593Smuzhiyun status = "okay"; 852*4882a593Smuzhiyun }; 853*4882a593Smuzhiyun 854*4882a593Smuzhiyun ethernet: ethernet@7a80000 { 855*4882a593Smuzhiyun compatible = "qcom,qcs404-ethqos"; 856*4882a593Smuzhiyun reg = <0x07a80000 0x10000>, 857*4882a593Smuzhiyun <0x07a96000 0x100>; 858*4882a593Smuzhiyun reg-names = "stmmaceth", "rgmii"; 859*4882a593Smuzhiyun clock-names = "stmmaceth", "pclk", "ptp_ref", "rgmii"; 860*4882a593Smuzhiyun clocks = <&gcc GCC_ETH_AXI_CLK>, 861*4882a593Smuzhiyun <&gcc GCC_ETH_SLAVE_AHB_CLK>, 862*4882a593Smuzhiyun <&gcc GCC_ETH_PTP_CLK>, 863*4882a593Smuzhiyun <&gcc GCC_ETH_RGMII_CLK>; 864*4882a593Smuzhiyun interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>, 865*4882a593Smuzhiyun <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>; 866*4882a593Smuzhiyun interrupt-names = "macirq", "eth_lpi"; 867*4882a593Smuzhiyun 868*4882a593Smuzhiyun snps,tso; 869*4882a593Smuzhiyun rx-fifo-depth = <4096>; 870*4882a593Smuzhiyun tx-fifo-depth = <4096>; 871*4882a593Smuzhiyun 872*4882a593Smuzhiyun status = "disabled"; 873*4882a593Smuzhiyun }; 874*4882a593Smuzhiyun 875*4882a593Smuzhiyun wifi: wifi@a000000 { 876*4882a593Smuzhiyun compatible = "qcom,wcn3990-wifi"; 877*4882a593Smuzhiyun reg = <0xa000000 0x800000>; 878*4882a593Smuzhiyun reg-names = "membase"; 879*4882a593Smuzhiyun memory-region = <&wlan_msa_mem>; 880*4882a593Smuzhiyun interrupts = <GIC_SPI 277 IRQ_TYPE_LEVEL_HIGH>, 881*4882a593Smuzhiyun <GIC_SPI 278 IRQ_TYPE_LEVEL_HIGH>, 882*4882a593Smuzhiyun <GIC_SPI 279 IRQ_TYPE_LEVEL_HIGH>, 883*4882a593Smuzhiyun <GIC_SPI 280 IRQ_TYPE_LEVEL_HIGH>, 884*4882a593Smuzhiyun <GIC_SPI 281 IRQ_TYPE_LEVEL_HIGH>, 885*4882a593Smuzhiyun <GIC_SPI 282 IRQ_TYPE_LEVEL_HIGH>, 886*4882a593Smuzhiyun <GIC_SPI 283 IRQ_TYPE_LEVEL_HIGH>, 887*4882a593Smuzhiyun <GIC_SPI 284 IRQ_TYPE_LEVEL_HIGH>, 888*4882a593Smuzhiyun <GIC_SPI 285 IRQ_TYPE_LEVEL_HIGH>, 889*4882a593Smuzhiyun <GIC_SPI 286 IRQ_TYPE_LEVEL_HIGH>, 890*4882a593Smuzhiyun <GIC_SPI 287 IRQ_TYPE_LEVEL_HIGH>, 891*4882a593Smuzhiyun <GIC_SPI 288 IRQ_TYPE_LEVEL_HIGH>; 892*4882a593Smuzhiyun status = "disabled"; 893*4882a593Smuzhiyun }; 894*4882a593Smuzhiyun 895*4882a593Smuzhiyun blsp1_uart3: serial@78b2000 { 896*4882a593Smuzhiyun compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 897*4882a593Smuzhiyun reg = <0x078b2000 0x200>; 898*4882a593Smuzhiyun interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>; 899*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_UART3_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; 900*4882a593Smuzhiyun clock-names = "core", "iface"; 901*4882a593Smuzhiyun dmas = <&blsp1_dma 7>, <&blsp1_dma 6>; 902*4882a593Smuzhiyun dma-names = "rx", "tx"; 903*4882a593Smuzhiyun pinctrl-names = "default"; 904*4882a593Smuzhiyun pinctrl-0 = <&blsp1_uart3_default>; 905*4882a593Smuzhiyun status = "disabled"; 906*4882a593Smuzhiyun }; 907*4882a593Smuzhiyun 908*4882a593Smuzhiyun blsp1_i2c0: i2c@78b5000 { 909*4882a593Smuzhiyun compatible = "qcom,i2c-qup-v2.2.1"; 910*4882a593Smuzhiyun reg = <0x078b5000 0x600>; 911*4882a593Smuzhiyun interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 912*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_AHB_CLK>, 913*4882a593Smuzhiyun <&gcc GCC_BLSP1_QUP0_I2C_APPS_CLK>; 914*4882a593Smuzhiyun clock-names = "iface", "core"; 915*4882a593Smuzhiyun pinctrl-names = "default"; 916*4882a593Smuzhiyun pinctrl-0 = <&blsp1_i2c0_default>; 917*4882a593Smuzhiyun #address-cells = <1>; 918*4882a593Smuzhiyun #size-cells = <0>; 919*4882a593Smuzhiyun status = "disabled"; 920*4882a593Smuzhiyun }; 921*4882a593Smuzhiyun 922*4882a593Smuzhiyun blsp1_spi0: spi@78b5000 { 923*4882a593Smuzhiyun compatible = "qcom,spi-qup-v2.2.1"; 924*4882a593Smuzhiyun reg = <0x078b5000 0x600>; 925*4882a593Smuzhiyun interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 926*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_AHB_CLK>, 927*4882a593Smuzhiyun <&gcc GCC_BLSP1_QUP0_SPI_APPS_CLK>; 928*4882a593Smuzhiyun clock-names = "iface", "core"; 929*4882a593Smuzhiyun pinctrl-names = "default"; 930*4882a593Smuzhiyun pinctrl-0 = <&blsp1_spi0_default>; 931*4882a593Smuzhiyun #address-cells = <1>; 932*4882a593Smuzhiyun #size-cells = <0>; 933*4882a593Smuzhiyun status = "disabled"; 934*4882a593Smuzhiyun }; 935*4882a593Smuzhiyun 936*4882a593Smuzhiyun blsp1_i2c1: i2c@78b6000 { 937*4882a593Smuzhiyun compatible = "qcom,i2c-qup-v2.2.1"; 938*4882a593Smuzhiyun reg = <0x078b6000 0x600>; 939*4882a593Smuzhiyun interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 940*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_AHB_CLK>, 941*4882a593Smuzhiyun <&gcc GCC_BLSP1_QUP1_I2C_APPS_CLK>; 942*4882a593Smuzhiyun clock-names = "iface", "core"; 943*4882a593Smuzhiyun pinctrl-names = "default"; 944*4882a593Smuzhiyun pinctrl-0 = <&blsp1_i2c1_default>; 945*4882a593Smuzhiyun #address-cells = <1>; 946*4882a593Smuzhiyun #size-cells = <0>; 947*4882a593Smuzhiyun status = "disabled"; 948*4882a593Smuzhiyun }; 949*4882a593Smuzhiyun 950*4882a593Smuzhiyun blsp1_spi1: spi@78b6000 { 951*4882a593Smuzhiyun compatible = "qcom,spi-qup-v2.2.1"; 952*4882a593Smuzhiyun reg = <0x078b6000 0x600>; 953*4882a593Smuzhiyun interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 954*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_AHB_CLK>, 955*4882a593Smuzhiyun <&gcc GCC_BLSP1_QUP1_SPI_APPS_CLK>; 956*4882a593Smuzhiyun clock-names = "iface", "core"; 957*4882a593Smuzhiyun pinctrl-names = "default"; 958*4882a593Smuzhiyun pinctrl-0 = <&blsp1_spi1_default>; 959*4882a593Smuzhiyun #address-cells = <1>; 960*4882a593Smuzhiyun #size-cells = <0>; 961*4882a593Smuzhiyun status = "disabled"; 962*4882a593Smuzhiyun }; 963*4882a593Smuzhiyun 964*4882a593Smuzhiyun blsp1_i2c2: i2c@78b7000 { 965*4882a593Smuzhiyun compatible = "qcom,i2c-qup-v2.2.1"; 966*4882a593Smuzhiyun reg = <0x078b7000 0x600>; 967*4882a593Smuzhiyun interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 968*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_AHB_CLK>, 969*4882a593Smuzhiyun <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>; 970*4882a593Smuzhiyun clock-names = "iface", "core"; 971*4882a593Smuzhiyun pinctrl-names = "default"; 972*4882a593Smuzhiyun pinctrl-0 = <&blsp1_i2c2_default>; 973*4882a593Smuzhiyun #address-cells = <1>; 974*4882a593Smuzhiyun #size-cells = <0>; 975*4882a593Smuzhiyun status = "disabled"; 976*4882a593Smuzhiyun }; 977*4882a593Smuzhiyun 978*4882a593Smuzhiyun blsp1_spi2: spi@78b7000 { 979*4882a593Smuzhiyun compatible = "qcom,spi-qup-v2.2.1"; 980*4882a593Smuzhiyun reg = <0x078b7000 0x600>; 981*4882a593Smuzhiyun interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 982*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_AHB_CLK>, 983*4882a593Smuzhiyun <&gcc GCC_BLSP1_QUP2_SPI_APPS_CLK>; 984*4882a593Smuzhiyun clock-names = "iface", "core"; 985*4882a593Smuzhiyun pinctrl-names = "default"; 986*4882a593Smuzhiyun pinctrl-0 = <&blsp1_spi2_default>; 987*4882a593Smuzhiyun #address-cells = <1>; 988*4882a593Smuzhiyun #size-cells = <0>; 989*4882a593Smuzhiyun status = "disabled"; 990*4882a593Smuzhiyun }; 991*4882a593Smuzhiyun 992*4882a593Smuzhiyun blsp1_i2c3: i2c@78b8000 { 993*4882a593Smuzhiyun compatible = "qcom,i2c-qup-v2.2.1"; 994*4882a593Smuzhiyun reg = <0x078b8000 0x600>; 995*4882a593Smuzhiyun interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 996*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_AHB_CLK>, 997*4882a593Smuzhiyun <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>; 998*4882a593Smuzhiyun clock-names = "iface", "core"; 999*4882a593Smuzhiyun pinctrl-names = "default"; 1000*4882a593Smuzhiyun pinctrl-0 = <&blsp1_i2c3_default>; 1001*4882a593Smuzhiyun #address-cells = <1>; 1002*4882a593Smuzhiyun #size-cells = <0>; 1003*4882a593Smuzhiyun status = "disabled"; 1004*4882a593Smuzhiyun }; 1005*4882a593Smuzhiyun 1006*4882a593Smuzhiyun blsp1_spi3: spi@78b8000 { 1007*4882a593Smuzhiyun compatible = "qcom,spi-qup-v2.2.1"; 1008*4882a593Smuzhiyun reg = <0x078b8000 0x600>; 1009*4882a593Smuzhiyun interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 1010*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_AHB_CLK>, 1011*4882a593Smuzhiyun <&gcc GCC_BLSP1_QUP3_SPI_APPS_CLK>; 1012*4882a593Smuzhiyun clock-names = "iface", "core"; 1013*4882a593Smuzhiyun pinctrl-names = "default"; 1014*4882a593Smuzhiyun pinctrl-0 = <&blsp1_spi3_default>; 1015*4882a593Smuzhiyun #address-cells = <1>; 1016*4882a593Smuzhiyun #size-cells = <0>; 1017*4882a593Smuzhiyun status = "disabled"; 1018*4882a593Smuzhiyun }; 1019*4882a593Smuzhiyun 1020*4882a593Smuzhiyun blsp1_i2c4: i2c@78b9000 { 1021*4882a593Smuzhiyun compatible = "qcom,i2c-qup-v2.2.1"; 1022*4882a593Smuzhiyun reg = <0x078b9000 0x600>; 1023*4882a593Smuzhiyun interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 1024*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_AHB_CLK>, 1025*4882a593Smuzhiyun <&gcc GCC_BLSP1_QUP4_I2C_APPS_CLK>; 1026*4882a593Smuzhiyun clock-names = "iface", "core"; 1027*4882a593Smuzhiyun pinctrl-names = "default"; 1028*4882a593Smuzhiyun pinctrl-0 = <&blsp1_i2c4_default>; 1029*4882a593Smuzhiyun #address-cells = <1>; 1030*4882a593Smuzhiyun #size-cells = <0>; 1031*4882a593Smuzhiyun status = "disabled"; 1032*4882a593Smuzhiyun }; 1033*4882a593Smuzhiyun 1034*4882a593Smuzhiyun blsp1_spi4: spi@78b9000 { 1035*4882a593Smuzhiyun compatible = "qcom,spi-qup-v2.2.1"; 1036*4882a593Smuzhiyun reg = <0x078b9000 0x600>; 1037*4882a593Smuzhiyun interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 1038*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_AHB_CLK>, 1039*4882a593Smuzhiyun <&gcc GCC_BLSP1_QUP4_SPI_APPS_CLK>; 1040*4882a593Smuzhiyun clock-names = "iface", "core"; 1041*4882a593Smuzhiyun pinctrl-names = "default"; 1042*4882a593Smuzhiyun pinctrl-0 = <&blsp1_spi4_default>; 1043*4882a593Smuzhiyun #address-cells = <1>; 1044*4882a593Smuzhiyun #size-cells = <0>; 1045*4882a593Smuzhiyun status = "disabled"; 1046*4882a593Smuzhiyun }; 1047*4882a593Smuzhiyun 1048*4882a593Smuzhiyun blsp2_dma: dma@7ac4000 { 1049*4882a593Smuzhiyun compatible = "qcom,bam-v1.7.0"; 1050*4882a593Smuzhiyun reg = <0x07ac4000 0x17000>; 1051*4882a593Smuzhiyun interrupts = <GIC_SPI 239 IRQ_TYPE_LEVEL_HIGH>; 1052*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP2_AHB_CLK>; 1053*4882a593Smuzhiyun clock-names = "bam_clk"; 1054*4882a593Smuzhiyun #dma-cells = <1>; 1055*4882a593Smuzhiyun qcom,ee = <0>; 1056*4882a593Smuzhiyun status = "disabled"; 1057*4882a593Smuzhiyun }; 1058*4882a593Smuzhiyun 1059*4882a593Smuzhiyun blsp2_uart0: serial@7aef000 { 1060*4882a593Smuzhiyun compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 1061*4882a593Smuzhiyun reg = <0x07aef000 0x200>; 1062*4882a593Smuzhiyun interrupts = <GIC_SPI 297 IRQ_TYPE_LEVEL_HIGH>; 1063*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP2_UART0_APPS_CLK>, <&gcc GCC_BLSP2_AHB_CLK>; 1064*4882a593Smuzhiyun clock-names = "core", "iface"; 1065*4882a593Smuzhiyun dmas = <&blsp2_dma 1>, <&blsp2_dma 0>; 1066*4882a593Smuzhiyun dma-names = "rx", "tx"; 1067*4882a593Smuzhiyun pinctrl-names = "default"; 1068*4882a593Smuzhiyun pinctrl-0 = <&blsp2_uart0_default>; 1069*4882a593Smuzhiyun status = "disabled"; 1070*4882a593Smuzhiyun }; 1071*4882a593Smuzhiyun 1072*4882a593Smuzhiyun blsp2_i2c0: i2c@7af5000 { 1073*4882a593Smuzhiyun compatible = "qcom,i2c-qup-v2.2.1"; 1074*4882a593Smuzhiyun reg = <0x07af5000 0x600>; 1075*4882a593Smuzhiyun interrupts = <GIC_SPI 299 IRQ_TYPE_LEVEL_HIGH>; 1076*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP2_AHB_CLK>, 1077*4882a593Smuzhiyun <&gcc GCC_BLSP2_QUP0_I2C_APPS_CLK>; 1078*4882a593Smuzhiyun clock-names = "iface", "core"; 1079*4882a593Smuzhiyun pinctrl-names = "default"; 1080*4882a593Smuzhiyun pinctrl-0 = <&blsp2_i2c0_default>; 1081*4882a593Smuzhiyun #address-cells = <1>; 1082*4882a593Smuzhiyun #size-cells = <0>; 1083*4882a593Smuzhiyun status = "disabled"; 1084*4882a593Smuzhiyun }; 1085*4882a593Smuzhiyun 1086*4882a593Smuzhiyun blsp2_spi0: spi@7af5000 { 1087*4882a593Smuzhiyun compatible = "qcom,spi-qup-v2.2.1"; 1088*4882a593Smuzhiyun reg = <0x07af5000 0x600>; 1089*4882a593Smuzhiyun interrupts = <GIC_SPI 299 IRQ_TYPE_LEVEL_HIGH>; 1090*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP2_AHB_CLK>, 1091*4882a593Smuzhiyun <&gcc GCC_BLSP2_QUP0_SPI_APPS_CLK>; 1092*4882a593Smuzhiyun clock-names = "iface", "core"; 1093*4882a593Smuzhiyun pinctrl-names = "default"; 1094*4882a593Smuzhiyun pinctrl-0 = <&blsp2_spi0_default>; 1095*4882a593Smuzhiyun #address-cells = <1>; 1096*4882a593Smuzhiyun #size-cells = <0>; 1097*4882a593Smuzhiyun status = "disabled"; 1098*4882a593Smuzhiyun }; 1099*4882a593Smuzhiyun 1100*4882a593Smuzhiyun imem@8600000 { 1101*4882a593Smuzhiyun compatible = "simple-mfd"; 1102*4882a593Smuzhiyun reg = <0x08600000 0x1000>; 1103*4882a593Smuzhiyun 1104*4882a593Smuzhiyun #address-cells = <1>; 1105*4882a593Smuzhiyun #size-cells = <1>; 1106*4882a593Smuzhiyun 1107*4882a593Smuzhiyun ranges = <0 0x08600000 0x1000>; 1108*4882a593Smuzhiyun 1109*4882a593Smuzhiyun pil-reloc@94c { 1110*4882a593Smuzhiyun compatible = "qcom,pil-reloc-info"; 1111*4882a593Smuzhiyun reg = <0x94c 0xc8>; 1112*4882a593Smuzhiyun }; 1113*4882a593Smuzhiyun }; 1114*4882a593Smuzhiyun 1115*4882a593Smuzhiyun intc: interrupt-controller@b000000 { 1116*4882a593Smuzhiyun compatible = "qcom,msm-qgic2"; 1117*4882a593Smuzhiyun interrupt-controller; 1118*4882a593Smuzhiyun #interrupt-cells = <3>; 1119*4882a593Smuzhiyun reg = <0x0b000000 0x1000>, 1120*4882a593Smuzhiyun <0x0b002000 0x1000>; 1121*4882a593Smuzhiyun }; 1122*4882a593Smuzhiyun 1123*4882a593Smuzhiyun apcs_glb: mailbox@b011000 { 1124*4882a593Smuzhiyun compatible = "qcom,qcs404-apcs-apps-global", "syscon"; 1125*4882a593Smuzhiyun reg = <0x0b011000 0x1000>; 1126*4882a593Smuzhiyun #mbox-cells = <1>; 1127*4882a593Smuzhiyun clocks = <&apcs_hfpll>, <&gcc GCC_GPLL0_AO_OUT_MAIN>; 1128*4882a593Smuzhiyun clock-names = "pll", "aux"; 1129*4882a593Smuzhiyun #clock-cells = <0>; 1130*4882a593Smuzhiyun }; 1131*4882a593Smuzhiyun 1132*4882a593Smuzhiyun apcs_hfpll: clock-controller@b016000 { 1133*4882a593Smuzhiyun compatible = "qcom,hfpll"; 1134*4882a593Smuzhiyun reg = <0x0b016000 0x30>; 1135*4882a593Smuzhiyun #clock-cells = <0>; 1136*4882a593Smuzhiyun clock-output-names = "apcs_hfpll"; 1137*4882a593Smuzhiyun clocks = <&xo_board>; 1138*4882a593Smuzhiyun clock-names = "xo"; 1139*4882a593Smuzhiyun }; 1140*4882a593Smuzhiyun 1141*4882a593Smuzhiyun watchdog@b017000 { 1142*4882a593Smuzhiyun compatible = "qcom,apss-wdt-qcs404", "qcom,kpss-wdt"; 1143*4882a593Smuzhiyun reg = <0x0b017000 0x1000>; 1144*4882a593Smuzhiyun clocks = <&sleep_clk>; 1145*4882a593Smuzhiyun }; 1146*4882a593Smuzhiyun 1147*4882a593Smuzhiyun cpr: power-controller@b018000 { 1148*4882a593Smuzhiyun compatible = "qcom,qcs404-cpr", "qcom,cpr"; 1149*4882a593Smuzhiyun reg = <0x0b018000 0x1000>; 1150*4882a593Smuzhiyun interrupts = <0 15 IRQ_TYPE_EDGE_RISING>; 1151*4882a593Smuzhiyun clocks = <&xo_board>; 1152*4882a593Smuzhiyun clock-names = "ref"; 1153*4882a593Smuzhiyun vdd-apc-supply = <&pms405_s3>; 1154*4882a593Smuzhiyun #power-domain-cells = <0>; 1155*4882a593Smuzhiyun operating-points-v2 = <&cpr_opp_table>; 1156*4882a593Smuzhiyun acc-syscon = <&tcsr>; 1157*4882a593Smuzhiyun 1158*4882a593Smuzhiyun nvmem-cells = <&cpr_efuse_quot_offset1>, 1159*4882a593Smuzhiyun <&cpr_efuse_quot_offset2>, 1160*4882a593Smuzhiyun <&cpr_efuse_quot_offset3>, 1161*4882a593Smuzhiyun <&cpr_efuse_init_voltage1>, 1162*4882a593Smuzhiyun <&cpr_efuse_init_voltage2>, 1163*4882a593Smuzhiyun <&cpr_efuse_init_voltage3>, 1164*4882a593Smuzhiyun <&cpr_efuse_quot1>, 1165*4882a593Smuzhiyun <&cpr_efuse_quot2>, 1166*4882a593Smuzhiyun <&cpr_efuse_quot3>, 1167*4882a593Smuzhiyun <&cpr_efuse_ring1>, 1168*4882a593Smuzhiyun <&cpr_efuse_ring2>, 1169*4882a593Smuzhiyun <&cpr_efuse_ring3>, 1170*4882a593Smuzhiyun <&cpr_efuse_revision>; 1171*4882a593Smuzhiyun nvmem-cell-names = "cpr_quotient_offset1", 1172*4882a593Smuzhiyun "cpr_quotient_offset2", 1173*4882a593Smuzhiyun "cpr_quotient_offset3", 1174*4882a593Smuzhiyun "cpr_init_voltage1", 1175*4882a593Smuzhiyun "cpr_init_voltage2", 1176*4882a593Smuzhiyun "cpr_init_voltage3", 1177*4882a593Smuzhiyun "cpr_quotient1", 1178*4882a593Smuzhiyun "cpr_quotient2", 1179*4882a593Smuzhiyun "cpr_quotient3", 1180*4882a593Smuzhiyun "cpr_ring_osc1", 1181*4882a593Smuzhiyun "cpr_ring_osc2", 1182*4882a593Smuzhiyun "cpr_ring_osc3", 1183*4882a593Smuzhiyun "cpr_fuse_revision"; 1184*4882a593Smuzhiyun }; 1185*4882a593Smuzhiyun 1186*4882a593Smuzhiyun timer@b120000 { 1187*4882a593Smuzhiyun #address-cells = <1>; 1188*4882a593Smuzhiyun #size-cells = <1>; 1189*4882a593Smuzhiyun ranges; 1190*4882a593Smuzhiyun compatible = "arm,armv7-timer-mem"; 1191*4882a593Smuzhiyun reg = <0x0b120000 0x1000>; 1192*4882a593Smuzhiyun clock-frequency = <19200000>; 1193*4882a593Smuzhiyun 1194*4882a593Smuzhiyun frame@b121000 { 1195*4882a593Smuzhiyun frame-number = <0>; 1196*4882a593Smuzhiyun interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, 1197*4882a593Smuzhiyun <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 1198*4882a593Smuzhiyun reg = <0x0b121000 0x1000>, 1199*4882a593Smuzhiyun <0x0b122000 0x1000>; 1200*4882a593Smuzhiyun }; 1201*4882a593Smuzhiyun 1202*4882a593Smuzhiyun frame@b123000 { 1203*4882a593Smuzhiyun frame-number = <1>; 1204*4882a593Smuzhiyun interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; 1205*4882a593Smuzhiyun reg = <0x0b123000 0x1000>; 1206*4882a593Smuzhiyun status = "disabled"; 1207*4882a593Smuzhiyun }; 1208*4882a593Smuzhiyun 1209*4882a593Smuzhiyun frame@b124000 { 1210*4882a593Smuzhiyun frame-number = <2>; 1211*4882a593Smuzhiyun interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 1212*4882a593Smuzhiyun reg = <0x0b124000 0x1000>; 1213*4882a593Smuzhiyun status = "disabled"; 1214*4882a593Smuzhiyun }; 1215*4882a593Smuzhiyun 1216*4882a593Smuzhiyun frame@b125000 { 1217*4882a593Smuzhiyun frame-number = <3>; 1218*4882a593Smuzhiyun interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 1219*4882a593Smuzhiyun reg = <0x0b125000 0x1000>; 1220*4882a593Smuzhiyun status = "disabled"; 1221*4882a593Smuzhiyun }; 1222*4882a593Smuzhiyun 1223*4882a593Smuzhiyun frame@b126000 { 1224*4882a593Smuzhiyun frame-number = <4>; 1225*4882a593Smuzhiyun interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 1226*4882a593Smuzhiyun reg = <0x0b126000 0x1000>; 1227*4882a593Smuzhiyun status = "disabled"; 1228*4882a593Smuzhiyun }; 1229*4882a593Smuzhiyun 1230*4882a593Smuzhiyun frame@b127000 { 1231*4882a593Smuzhiyun frame-number = <5>; 1232*4882a593Smuzhiyun interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 1233*4882a593Smuzhiyun reg = <0xb127000 0x1000>; 1234*4882a593Smuzhiyun status = "disabled"; 1235*4882a593Smuzhiyun }; 1236*4882a593Smuzhiyun 1237*4882a593Smuzhiyun frame@b128000 { 1238*4882a593Smuzhiyun frame-number = <6>; 1239*4882a593Smuzhiyun interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 1240*4882a593Smuzhiyun reg = <0x0b128000 0x1000>; 1241*4882a593Smuzhiyun status = "disabled"; 1242*4882a593Smuzhiyun }; 1243*4882a593Smuzhiyun }; 1244*4882a593Smuzhiyun 1245*4882a593Smuzhiyun remoteproc_adsp: remoteproc@c700000 { 1246*4882a593Smuzhiyun compatible = "qcom,qcs404-adsp-pas"; 1247*4882a593Smuzhiyun reg = <0x0c700000 0x4040>; 1248*4882a593Smuzhiyun 1249*4882a593Smuzhiyun interrupts-extended = <&intc GIC_SPI 293 IRQ_TYPE_EDGE_RISING>, 1250*4882a593Smuzhiyun <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 1251*4882a593Smuzhiyun <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 1252*4882a593Smuzhiyun <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 1253*4882a593Smuzhiyun <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>; 1254*4882a593Smuzhiyun interrupt-names = "wdog", "fatal", "ready", 1255*4882a593Smuzhiyun "handover", "stop-ack"; 1256*4882a593Smuzhiyun 1257*4882a593Smuzhiyun clocks = <&xo_board>; 1258*4882a593Smuzhiyun clock-names = "xo"; 1259*4882a593Smuzhiyun 1260*4882a593Smuzhiyun memory-region = <&adsp_fw_mem>; 1261*4882a593Smuzhiyun 1262*4882a593Smuzhiyun qcom,smem-states = <&adsp_smp2p_out 0>; 1263*4882a593Smuzhiyun qcom,smem-state-names = "stop"; 1264*4882a593Smuzhiyun 1265*4882a593Smuzhiyun status = "disabled"; 1266*4882a593Smuzhiyun 1267*4882a593Smuzhiyun glink-edge { 1268*4882a593Smuzhiyun interrupts = <GIC_SPI 289 IRQ_TYPE_EDGE_RISING>; 1269*4882a593Smuzhiyun 1270*4882a593Smuzhiyun qcom,remote-pid = <2>; 1271*4882a593Smuzhiyun mboxes = <&apcs_glb 8>; 1272*4882a593Smuzhiyun 1273*4882a593Smuzhiyun label = "adsp"; 1274*4882a593Smuzhiyun }; 1275*4882a593Smuzhiyun }; 1276*4882a593Smuzhiyun 1277*4882a593Smuzhiyun pcie: pci@10000000 { 1278*4882a593Smuzhiyun compatible = "qcom,pcie-qcs404", "snps,dw-pcie"; 1279*4882a593Smuzhiyun reg = <0x10000000 0xf1d>, 1280*4882a593Smuzhiyun <0x10000f20 0xa8>, 1281*4882a593Smuzhiyun <0x07780000 0x2000>, 1282*4882a593Smuzhiyun <0x10001000 0x2000>; 1283*4882a593Smuzhiyun reg-names = "dbi", "elbi", "parf", "config"; 1284*4882a593Smuzhiyun device_type = "pci"; 1285*4882a593Smuzhiyun linux,pci-domain = <0>; 1286*4882a593Smuzhiyun bus-range = <0x00 0xff>; 1287*4882a593Smuzhiyun num-lanes = <1>; 1288*4882a593Smuzhiyun #address-cells = <3>; 1289*4882a593Smuzhiyun #size-cells = <2>; 1290*4882a593Smuzhiyun 1291*4882a593Smuzhiyun ranges = <0x81000000 0 0 0x10003000 0 0x00010000>, /* I/O */ 1292*4882a593Smuzhiyun <0x82000000 0 0x10013000 0x10013000 0 0x007ed000>; /* memory */ 1293*4882a593Smuzhiyun 1294*4882a593Smuzhiyun interrupts = <GIC_SPI 266 IRQ_TYPE_LEVEL_HIGH>; 1295*4882a593Smuzhiyun interrupt-names = "msi"; 1296*4882a593Smuzhiyun #interrupt-cells = <1>; 1297*4882a593Smuzhiyun interrupt-map-mask = <0 0 0 0x7>; 1298*4882a593Smuzhiyun interrupt-map = <0 0 0 1 &intc GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>, /* int_a */ 1299*4882a593Smuzhiyun <0 0 0 2 &intc GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>, /* int_b */ 1300*4882a593Smuzhiyun <0 0 0 3 &intc GIC_SPI 267 IRQ_TYPE_LEVEL_HIGH>, /* int_c */ 1301*4882a593Smuzhiyun <0 0 0 4 &intc GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>; /* int_d */ 1302*4882a593Smuzhiyun clocks = <&gcc GCC_PCIE_0_CFG_AHB_CLK>, 1303*4882a593Smuzhiyun <&gcc GCC_PCIE_0_AUX_CLK>, 1304*4882a593Smuzhiyun <&gcc GCC_PCIE_0_MSTR_AXI_CLK>, 1305*4882a593Smuzhiyun <&gcc GCC_PCIE_0_SLV_AXI_CLK>; 1306*4882a593Smuzhiyun clock-names = "iface", "aux", "master_bus", "slave_bus"; 1307*4882a593Smuzhiyun 1308*4882a593Smuzhiyun resets = <&gcc 18>, 1309*4882a593Smuzhiyun <&gcc 17>, 1310*4882a593Smuzhiyun <&gcc 15>, 1311*4882a593Smuzhiyun <&gcc 19>, 1312*4882a593Smuzhiyun <&gcc GCC_PCIE_0_BCR>, 1313*4882a593Smuzhiyun <&gcc 16>; 1314*4882a593Smuzhiyun reset-names = "axi_m", 1315*4882a593Smuzhiyun "axi_s", 1316*4882a593Smuzhiyun "axi_m_sticky", 1317*4882a593Smuzhiyun "pipe_sticky", 1318*4882a593Smuzhiyun "pwr", 1319*4882a593Smuzhiyun "ahb"; 1320*4882a593Smuzhiyun 1321*4882a593Smuzhiyun phys = <&pcie_phy>; 1322*4882a593Smuzhiyun phy-names = "pciephy"; 1323*4882a593Smuzhiyun 1324*4882a593Smuzhiyun status = "disabled"; 1325*4882a593Smuzhiyun }; 1326*4882a593Smuzhiyun }; 1327*4882a593Smuzhiyun 1328*4882a593Smuzhiyun timer { 1329*4882a593Smuzhiyun compatible = "arm,armv8-timer"; 1330*4882a593Smuzhiyun interrupts = <GIC_PPI 2 0xff08>, 1331*4882a593Smuzhiyun <GIC_PPI 3 0xff08>, 1332*4882a593Smuzhiyun <GIC_PPI 4 0xff08>, 1333*4882a593Smuzhiyun <GIC_PPI 1 0xff08>; 1334*4882a593Smuzhiyun }; 1335*4882a593Smuzhiyun 1336*4882a593Smuzhiyun smp2p-adsp { 1337*4882a593Smuzhiyun compatible = "qcom,smp2p"; 1338*4882a593Smuzhiyun qcom,smem = <443>, <429>; 1339*4882a593Smuzhiyun interrupts = <GIC_SPI 291 IRQ_TYPE_EDGE_RISING>; 1340*4882a593Smuzhiyun mboxes = <&apcs_glb 10>; 1341*4882a593Smuzhiyun qcom,local-pid = <0>; 1342*4882a593Smuzhiyun qcom,remote-pid = <2>; 1343*4882a593Smuzhiyun 1344*4882a593Smuzhiyun adsp_smp2p_out: master-kernel { 1345*4882a593Smuzhiyun qcom,entry-name = "master-kernel"; 1346*4882a593Smuzhiyun #qcom,smem-state-cells = <1>; 1347*4882a593Smuzhiyun }; 1348*4882a593Smuzhiyun 1349*4882a593Smuzhiyun adsp_smp2p_in: slave-kernel { 1350*4882a593Smuzhiyun qcom,entry-name = "slave-kernel"; 1351*4882a593Smuzhiyun interrupt-controller; 1352*4882a593Smuzhiyun #interrupt-cells = <2>; 1353*4882a593Smuzhiyun }; 1354*4882a593Smuzhiyun }; 1355*4882a593Smuzhiyun 1356*4882a593Smuzhiyun smp2p-cdsp { 1357*4882a593Smuzhiyun compatible = "qcom,smp2p"; 1358*4882a593Smuzhiyun qcom,smem = <94>, <432>; 1359*4882a593Smuzhiyun interrupts = <GIC_SPI 143 IRQ_TYPE_EDGE_RISING>; 1360*4882a593Smuzhiyun mboxes = <&apcs_glb 14>; 1361*4882a593Smuzhiyun qcom,local-pid = <0>; 1362*4882a593Smuzhiyun qcom,remote-pid = <5>; 1363*4882a593Smuzhiyun 1364*4882a593Smuzhiyun cdsp_smp2p_out: master-kernel { 1365*4882a593Smuzhiyun qcom,entry-name = "master-kernel"; 1366*4882a593Smuzhiyun #qcom,smem-state-cells = <1>; 1367*4882a593Smuzhiyun }; 1368*4882a593Smuzhiyun 1369*4882a593Smuzhiyun cdsp_smp2p_in: slave-kernel { 1370*4882a593Smuzhiyun qcom,entry-name = "slave-kernel"; 1371*4882a593Smuzhiyun interrupt-controller; 1372*4882a593Smuzhiyun #interrupt-cells = <2>; 1373*4882a593Smuzhiyun }; 1374*4882a593Smuzhiyun }; 1375*4882a593Smuzhiyun 1376*4882a593Smuzhiyun smp2p-wcss { 1377*4882a593Smuzhiyun compatible = "qcom,smp2p"; 1378*4882a593Smuzhiyun qcom,smem = <435>, <428>; 1379*4882a593Smuzhiyun interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>; 1380*4882a593Smuzhiyun mboxes = <&apcs_glb 18>; 1381*4882a593Smuzhiyun qcom,local-pid = <0>; 1382*4882a593Smuzhiyun qcom,remote-pid = <1>; 1383*4882a593Smuzhiyun 1384*4882a593Smuzhiyun wcss_smp2p_out: master-kernel { 1385*4882a593Smuzhiyun qcom,entry-name = "master-kernel"; 1386*4882a593Smuzhiyun #qcom,smem-state-cells = <1>; 1387*4882a593Smuzhiyun }; 1388*4882a593Smuzhiyun 1389*4882a593Smuzhiyun wcss_smp2p_in: slave-kernel { 1390*4882a593Smuzhiyun qcom,entry-name = "slave-kernel"; 1391*4882a593Smuzhiyun interrupt-controller; 1392*4882a593Smuzhiyun #interrupt-cells = <2>; 1393*4882a593Smuzhiyun }; 1394*4882a593Smuzhiyun }; 1395*4882a593Smuzhiyun 1396*4882a593Smuzhiyun thermal-zones { 1397*4882a593Smuzhiyun aoss-thermal { 1398*4882a593Smuzhiyun polling-delay-passive = <250>; 1399*4882a593Smuzhiyun polling-delay = <1000>; 1400*4882a593Smuzhiyun 1401*4882a593Smuzhiyun thermal-sensors = <&tsens 0>; 1402*4882a593Smuzhiyun 1403*4882a593Smuzhiyun trips { 1404*4882a593Smuzhiyun aoss_alert0: trip-point0 { 1405*4882a593Smuzhiyun temperature = <105000>; 1406*4882a593Smuzhiyun hysteresis = <2000>; 1407*4882a593Smuzhiyun type = "hot"; 1408*4882a593Smuzhiyun }; 1409*4882a593Smuzhiyun }; 1410*4882a593Smuzhiyun }; 1411*4882a593Smuzhiyun 1412*4882a593Smuzhiyun q6-hvx-thermal { 1413*4882a593Smuzhiyun polling-delay-passive = <250>; 1414*4882a593Smuzhiyun polling-delay = <1000>; 1415*4882a593Smuzhiyun 1416*4882a593Smuzhiyun thermal-sensors = <&tsens 1>; 1417*4882a593Smuzhiyun 1418*4882a593Smuzhiyun trips { 1419*4882a593Smuzhiyun q6_hvx_alert0: trip-point0 { 1420*4882a593Smuzhiyun temperature = <105000>; 1421*4882a593Smuzhiyun hysteresis = <2000>; 1422*4882a593Smuzhiyun type = "hot"; 1423*4882a593Smuzhiyun }; 1424*4882a593Smuzhiyun }; 1425*4882a593Smuzhiyun }; 1426*4882a593Smuzhiyun 1427*4882a593Smuzhiyun lpass-thermal { 1428*4882a593Smuzhiyun polling-delay-passive = <250>; 1429*4882a593Smuzhiyun polling-delay = <1000>; 1430*4882a593Smuzhiyun 1431*4882a593Smuzhiyun thermal-sensors = <&tsens 2>; 1432*4882a593Smuzhiyun 1433*4882a593Smuzhiyun trips { 1434*4882a593Smuzhiyun lpass_alert0: trip-point0 { 1435*4882a593Smuzhiyun temperature = <105000>; 1436*4882a593Smuzhiyun hysteresis = <2000>; 1437*4882a593Smuzhiyun type = "hot"; 1438*4882a593Smuzhiyun }; 1439*4882a593Smuzhiyun }; 1440*4882a593Smuzhiyun }; 1441*4882a593Smuzhiyun 1442*4882a593Smuzhiyun wlan-thermal { 1443*4882a593Smuzhiyun polling-delay-passive = <250>; 1444*4882a593Smuzhiyun polling-delay = <1000>; 1445*4882a593Smuzhiyun 1446*4882a593Smuzhiyun thermal-sensors = <&tsens 3>; 1447*4882a593Smuzhiyun 1448*4882a593Smuzhiyun trips { 1449*4882a593Smuzhiyun wlan_alert0: trip-point0 { 1450*4882a593Smuzhiyun temperature = <105000>; 1451*4882a593Smuzhiyun hysteresis = <2000>; 1452*4882a593Smuzhiyun type = "hot"; 1453*4882a593Smuzhiyun }; 1454*4882a593Smuzhiyun }; 1455*4882a593Smuzhiyun }; 1456*4882a593Smuzhiyun 1457*4882a593Smuzhiyun cluster-thermal { 1458*4882a593Smuzhiyun polling-delay-passive = <250>; 1459*4882a593Smuzhiyun polling-delay = <1000>; 1460*4882a593Smuzhiyun 1461*4882a593Smuzhiyun thermal-sensors = <&tsens 4>; 1462*4882a593Smuzhiyun 1463*4882a593Smuzhiyun trips { 1464*4882a593Smuzhiyun cluster_alert0: trip-point0 { 1465*4882a593Smuzhiyun temperature = <95000>; 1466*4882a593Smuzhiyun hysteresis = <2000>; 1467*4882a593Smuzhiyun type = "hot"; 1468*4882a593Smuzhiyun }; 1469*4882a593Smuzhiyun cluster_alert1: trip-point1 { 1470*4882a593Smuzhiyun temperature = <105000>; 1471*4882a593Smuzhiyun hysteresis = <2000>; 1472*4882a593Smuzhiyun type = "passive"; 1473*4882a593Smuzhiyun }; 1474*4882a593Smuzhiyun cluster_crit: cluster_crit { 1475*4882a593Smuzhiyun temperature = <120000>; 1476*4882a593Smuzhiyun hysteresis = <2000>; 1477*4882a593Smuzhiyun type = "critical"; 1478*4882a593Smuzhiyun }; 1479*4882a593Smuzhiyun }; 1480*4882a593Smuzhiyun cooling-maps { 1481*4882a593Smuzhiyun map0 { 1482*4882a593Smuzhiyun trip = <&cluster_alert1>; 1483*4882a593Smuzhiyun cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1484*4882a593Smuzhiyun <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1485*4882a593Smuzhiyun <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1486*4882a593Smuzhiyun <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 1487*4882a593Smuzhiyun }; 1488*4882a593Smuzhiyun }; 1489*4882a593Smuzhiyun }; 1490*4882a593Smuzhiyun 1491*4882a593Smuzhiyun cpu0-thermal { 1492*4882a593Smuzhiyun polling-delay-passive = <250>; 1493*4882a593Smuzhiyun polling-delay = <1000>; 1494*4882a593Smuzhiyun 1495*4882a593Smuzhiyun thermal-sensors = <&tsens 5>; 1496*4882a593Smuzhiyun 1497*4882a593Smuzhiyun trips { 1498*4882a593Smuzhiyun cpu0_alert0: trip-point0 { 1499*4882a593Smuzhiyun temperature = <95000>; 1500*4882a593Smuzhiyun hysteresis = <2000>; 1501*4882a593Smuzhiyun type = "hot"; 1502*4882a593Smuzhiyun }; 1503*4882a593Smuzhiyun cpu0_alert1: trip-point1 { 1504*4882a593Smuzhiyun temperature = <105000>; 1505*4882a593Smuzhiyun hysteresis = <2000>; 1506*4882a593Smuzhiyun type = "passive"; 1507*4882a593Smuzhiyun }; 1508*4882a593Smuzhiyun cpu0_crit: cpu_crit { 1509*4882a593Smuzhiyun temperature = <120000>; 1510*4882a593Smuzhiyun hysteresis = <2000>; 1511*4882a593Smuzhiyun type = "critical"; 1512*4882a593Smuzhiyun }; 1513*4882a593Smuzhiyun }; 1514*4882a593Smuzhiyun cooling-maps { 1515*4882a593Smuzhiyun map0 { 1516*4882a593Smuzhiyun trip = <&cpu0_alert1>; 1517*4882a593Smuzhiyun cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1518*4882a593Smuzhiyun <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1519*4882a593Smuzhiyun <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1520*4882a593Smuzhiyun <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 1521*4882a593Smuzhiyun }; 1522*4882a593Smuzhiyun }; 1523*4882a593Smuzhiyun }; 1524*4882a593Smuzhiyun 1525*4882a593Smuzhiyun cpu1-thermal { 1526*4882a593Smuzhiyun polling-delay-passive = <250>; 1527*4882a593Smuzhiyun polling-delay = <1000>; 1528*4882a593Smuzhiyun 1529*4882a593Smuzhiyun thermal-sensors = <&tsens 6>; 1530*4882a593Smuzhiyun 1531*4882a593Smuzhiyun trips { 1532*4882a593Smuzhiyun cpu1_alert0: trip-point0 { 1533*4882a593Smuzhiyun temperature = <95000>; 1534*4882a593Smuzhiyun hysteresis = <2000>; 1535*4882a593Smuzhiyun type = "hot"; 1536*4882a593Smuzhiyun }; 1537*4882a593Smuzhiyun cpu1_alert1: trip-point1 { 1538*4882a593Smuzhiyun temperature = <105000>; 1539*4882a593Smuzhiyun hysteresis = <2000>; 1540*4882a593Smuzhiyun type = "passive"; 1541*4882a593Smuzhiyun }; 1542*4882a593Smuzhiyun cpu1_crit: cpu_crit { 1543*4882a593Smuzhiyun temperature = <120000>; 1544*4882a593Smuzhiyun hysteresis = <2000>; 1545*4882a593Smuzhiyun type = "critical"; 1546*4882a593Smuzhiyun }; 1547*4882a593Smuzhiyun }; 1548*4882a593Smuzhiyun cooling-maps { 1549*4882a593Smuzhiyun map0 { 1550*4882a593Smuzhiyun trip = <&cpu1_alert1>; 1551*4882a593Smuzhiyun cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1552*4882a593Smuzhiyun <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1553*4882a593Smuzhiyun <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1554*4882a593Smuzhiyun <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 1555*4882a593Smuzhiyun }; 1556*4882a593Smuzhiyun }; 1557*4882a593Smuzhiyun }; 1558*4882a593Smuzhiyun 1559*4882a593Smuzhiyun cpu2-thermal { 1560*4882a593Smuzhiyun polling-delay-passive = <250>; 1561*4882a593Smuzhiyun polling-delay = <1000>; 1562*4882a593Smuzhiyun 1563*4882a593Smuzhiyun thermal-sensors = <&tsens 7>; 1564*4882a593Smuzhiyun 1565*4882a593Smuzhiyun trips { 1566*4882a593Smuzhiyun cpu2_alert0: trip-point0 { 1567*4882a593Smuzhiyun temperature = <95000>; 1568*4882a593Smuzhiyun hysteresis = <2000>; 1569*4882a593Smuzhiyun type = "hot"; 1570*4882a593Smuzhiyun }; 1571*4882a593Smuzhiyun cpu2_alert1: trip-point1 { 1572*4882a593Smuzhiyun temperature = <105000>; 1573*4882a593Smuzhiyun hysteresis = <2000>; 1574*4882a593Smuzhiyun type = "passive"; 1575*4882a593Smuzhiyun }; 1576*4882a593Smuzhiyun cpu2_crit: cpu_crit { 1577*4882a593Smuzhiyun temperature = <120000>; 1578*4882a593Smuzhiyun hysteresis = <2000>; 1579*4882a593Smuzhiyun type = "critical"; 1580*4882a593Smuzhiyun }; 1581*4882a593Smuzhiyun }; 1582*4882a593Smuzhiyun cooling-maps { 1583*4882a593Smuzhiyun map0 { 1584*4882a593Smuzhiyun trip = <&cpu2_alert1>; 1585*4882a593Smuzhiyun cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1586*4882a593Smuzhiyun <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1587*4882a593Smuzhiyun <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1588*4882a593Smuzhiyun <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 1589*4882a593Smuzhiyun }; 1590*4882a593Smuzhiyun }; 1591*4882a593Smuzhiyun }; 1592*4882a593Smuzhiyun 1593*4882a593Smuzhiyun cpu3-thermal { 1594*4882a593Smuzhiyun polling-delay-passive = <250>; 1595*4882a593Smuzhiyun polling-delay = <1000>; 1596*4882a593Smuzhiyun 1597*4882a593Smuzhiyun thermal-sensors = <&tsens 8>; 1598*4882a593Smuzhiyun 1599*4882a593Smuzhiyun trips { 1600*4882a593Smuzhiyun cpu3_alert0: trip-point0 { 1601*4882a593Smuzhiyun temperature = <95000>; 1602*4882a593Smuzhiyun hysteresis = <2000>; 1603*4882a593Smuzhiyun type = "hot"; 1604*4882a593Smuzhiyun }; 1605*4882a593Smuzhiyun cpu3_alert1: trip-point1 { 1606*4882a593Smuzhiyun temperature = <105000>; 1607*4882a593Smuzhiyun hysteresis = <2000>; 1608*4882a593Smuzhiyun type = "passive"; 1609*4882a593Smuzhiyun }; 1610*4882a593Smuzhiyun cpu3_crit: cpu_crit { 1611*4882a593Smuzhiyun temperature = <120000>; 1612*4882a593Smuzhiyun hysteresis = <2000>; 1613*4882a593Smuzhiyun type = "critical"; 1614*4882a593Smuzhiyun }; 1615*4882a593Smuzhiyun }; 1616*4882a593Smuzhiyun cooling-maps { 1617*4882a593Smuzhiyun map0 { 1618*4882a593Smuzhiyun trip = <&cpu3_alert1>; 1619*4882a593Smuzhiyun cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1620*4882a593Smuzhiyun <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1621*4882a593Smuzhiyun <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1622*4882a593Smuzhiyun <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 1623*4882a593Smuzhiyun }; 1624*4882a593Smuzhiyun }; 1625*4882a593Smuzhiyun }; 1626*4882a593Smuzhiyun 1627*4882a593Smuzhiyun gpu-thermal { 1628*4882a593Smuzhiyun polling-delay-passive = <250>; 1629*4882a593Smuzhiyun polling-delay = <1000>; 1630*4882a593Smuzhiyun 1631*4882a593Smuzhiyun thermal-sensors = <&tsens 9>; 1632*4882a593Smuzhiyun 1633*4882a593Smuzhiyun trips { 1634*4882a593Smuzhiyun gpu_alert0: trip-point0 { 1635*4882a593Smuzhiyun temperature = <95000>; 1636*4882a593Smuzhiyun hysteresis = <2000>; 1637*4882a593Smuzhiyun type = "hot"; 1638*4882a593Smuzhiyun }; 1639*4882a593Smuzhiyun }; 1640*4882a593Smuzhiyun }; 1641*4882a593Smuzhiyun }; 1642*4882a593Smuzhiyun}; 1643