18bab661aSEmmanuel Vadot// SPDX-License-Identifier: BSD-3-Clause 28bab661aSEmmanuel Vadot/* 38bab661aSEmmanuel Vadot * Copyright (c) 2016-2022, AngeloGioacchino Del Regno 48bab661aSEmmanuel Vadot * <angelogioacchino.delregno@collabora.com> 58bab661aSEmmanuel Vadot * Copyright (c) 2022, Konrad Dybcio <konrad.dybcio@somainline.org> 68bab661aSEmmanuel Vadot * Copyright (c) 2022, Marijn Suijten <marijn.suijten@somainline.org> 78bab661aSEmmanuel Vadot */ 88bab661aSEmmanuel Vadot 98bab661aSEmmanuel Vadot#include <dt-bindings/clock/qcom,gcc-msm8976.h> 108bab661aSEmmanuel Vadot#include <dt-bindings/clock/qcom,rpmcc.h> 118bab661aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 128bab661aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h> 138bab661aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h> 148bab661aSEmmanuel Vadot#include <dt-bindings/power/qcom-rpmpd.h> 158bab661aSEmmanuel Vadot 168bab661aSEmmanuel Vadot/ { 178bab661aSEmmanuel Vadot interrupt-parent = <&intc>; 188bab661aSEmmanuel Vadot #address-cells = <2>; 198bab661aSEmmanuel Vadot #size-cells = <2>; 208bab661aSEmmanuel Vadot 218bab661aSEmmanuel Vadot chosen { }; 228bab661aSEmmanuel Vadot 238bab661aSEmmanuel Vadot cpus { 248bab661aSEmmanuel Vadot #address-cells = <1>; 258bab661aSEmmanuel Vadot #size-cells = <0>; 268bab661aSEmmanuel Vadot 278bab661aSEmmanuel Vadot CPU0: cpu@0 { 288bab661aSEmmanuel Vadot device_type = "cpu"; 298bab661aSEmmanuel Vadot compatible = "arm,cortex-a53"; 308bab661aSEmmanuel Vadot reg = <0x0>; 318bab661aSEmmanuel Vadot enable-method = "psci"; 328bab661aSEmmanuel Vadot cpu-idle-states = <&little_cpu_sleep_0>; 338bab661aSEmmanuel Vadot capacity-dmips-mhz = <573>; 348bab661aSEmmanuel Vadot next-level-cache = <&l2_0>; 358bab661aSEmmanuel Vadot #cooling-cells = <2>; 368bab661aSEmmanuel Vadot }; 378bab661aSEmmanuel Vadot 388bab661aSEmmanuel Vadot CPU1: cpu@1 { 398bab661aSEmmanuel Vadot device_type = "cpu"; 408bab661aSEmmanuel Vadot compatible = "arm,cortex-a53"; 418bab661aSEmmanuel Vadot reg = <0x1>; 428bab661aSEmmanuel Vadot enable-method = "psci"; 438bab661aSEmmanuel Vadot cpu-idle-states = <&little_cpu_sleep_0>; 448bab661aSEmmanuel Vadot capacity-dmips-mhz = <573>; 458bab661aSEmmanuel Vadot next-level-cache = <&l2_0>; 468bab661aSEmmanuel Vadot #cooling-cells = <2>; 478bab661aSEmmanuel Vadot }; 488bab661aSEmmanuel Vadot 498bab661aSEmmanuel Vadot CPU2: cpu@2 { 508bab661aSEmmanuel Vadot device_type = "cpu"; 518bab661aSEmmanuel Vadot compatible = "arm,cortex-a53"; 528bab661aSEmmanuel Vadot reg = <0x2>; 538bab661aSEmmanuel Vadot enable-method = "psci"; 548bab661aSEmmanuel Vadot cpu-idle-states = <&little_cpu_sleep_0>; 558bab661aSEmmanuel Vadot capacity-dmips-mhz = <573>; 568bab661aSEmmanuel Vadot next-level-cache = <&l2_0>; 578bab661aSEmmanuel Vadot #cooling-cells = <2>; 588bab661aSEmmanuel Vadot }; 598bab661aSEmmanuel Vadot 608bab661aSEmmanuel Vadot CPU3: cpu@3 { 618bab661aSEmmanuel Vadot device_type = "cpu"; 628bab661aSEmmanuel Vadot compatible = "arm,cortex-a53"; 638bab661aSEmmanuel Vadot reg = <0x3>; 648bab661aSEmmanuel Vadot enable-method = "psci"; 658bab661aSEmmanuel Vadot cpu-idle-states = <&little_cpu_sleep_0>; 668bab661aSEmmanuel Vadot capacity-dmips-mhz = <573>; 678bab661aSEmmanuel Vadot next-level-cache = <&l2_0>; 688bab661aSEmmanuel Vadot #cooling-cells = <2>; 698bab661aSEmmanuel Vadot }; 708bab661aSEmmanuel Vadot 718bab661aSEmmanuel Vadot CPU4: cpu@100 { 728bab661aSEmmanuel Vadot device_type = "cpu"; 738bab661aSEmmanuel Vadot compatible = "arm,cortex-a72"; 748bab661aSEmmanuel Vadot reg = <0x100>; 758bab661aSEmmanuel Vadot enable-method = "psci"; 768bab661aSEmmanuel Vadot cpu-idle-states = <&big_cpu_sleep_0 &big_cpu_sleep_1>; 778bab661aSEmmanuel Vadot capacity-dmips-mhz = <1024>; 788bab661aSEmmanuel Vadot next-level-cache = <&l2_1>; 798bab661aSEmmanuel Vadot #cooling-cells = <2>; 808bab661aSEmmanuel Vadot }; 818bab661aSEmmanuel Vadot 828bab661aSEmmanuel Vadot CPU5: cpu@101 { 838bab661aSEmmanuel Vadot device_type = "cpu"; 848bab661aSEmmanuel Vadot compatible = "arm,cortex-a72"; 858bab661aSEmmanuel Vadot reg = <0x101>; 868bab661aSEmmanuel Vadot enable-method = "psci"; 878bab661aSEmmanuel Vadot cpu-idle-states = <&big_cpu_sleep_0 &big_cpu_sleep_1>; 888bab661aSEmmanuel Vadot capacity-dmips-mhz = <1024>; 898bab661aSEmmanuel Vadot next-level-cache = <&l2_1>; 908bab661aSEmmanuel Vadot #cooling-cells = <2>; 918bab661aSEmmanuel Vadot }; 928bab661aSEmmanuel Vadot 938bab661aSEmmanuel Vadot CPU6: cpu@102 { 948bab661aSEmmanuel Vadot device_type = "cpu"; 958bab661aSEmmanuel Vadot compatible = "arm,cortex-a72"; 968bab661aSEmmanuel Vadot reg = <0x102>; 978bab661aSEmmanuel Vadot enable-method = "psci"; 988bab661aSEmmanuel Vadot cpu-idle-states = <&big_cpu_sleep_0 &big_cpu_sleep_1>; 998bab661aSEmmanuel Vadot capacity-dmips-mhz = <1024>; 1008bab661aSEmmanuel Vadot next-level-cache = <&l2_1>; 1018bab661aSEmmanuel Vadot #cooling-cells = <2>; 1028bab661aSEmmanuel Vadot }; 1038bab661aSEmmanuel Vadot 1048bab661aSEmmanuel Vadot CPU7: cpu@103 { 1058bab661aSEmmanuel Vadot device_type = "cpu"; 1068bab661aSEmmanuel Vadot compatible = "arm,cortex-a72"; 1078bab661aSEmmanuel Vadot reg = <0x103>; 1088bab661aSEmmanuel Vadot enable-method = "psci"; 1098bab661aSEmmanuel Vadot cpu-idle-states = <&big_cpu_sleep_0 &big_cpu_sleep_1>; 1108bab661aSEmmanuel Vadot capacity-dmips-mhz = <1024>; 1118bab661aSEmmanuel Vadot next-level-cache = <&l2_1>; 1128bab661aSEmmanuel Vadot #cooling-cells = <2>; 1138bab661aSEmmanuel Vadot }; 1148bab661aSEmmanuel Vadot 1158bab661aSEmmanuel Vadot cpu-map { 1168bab661aSEmmanuel Vadot cluster0 { 1178bab661aSEmmanuel Vadot core0 { 1188bab661aSEmmanuel Vadot cpu = <&CPU0>; 1198bab661aSEmmanuel Vadot }; 1208bab661aSEmmanuel Vadot 1218bab661aSEmmanuel Vadot core1 { 1228bab661aSEmmanuel Vadot cpu = <&CPU1>; 1238bab661aSEmmanuel Vadot }; 1248bab661aSEmmanuel Vadot 1258bab661aSEmmanuel Vadot core2 { 1268bab661aSEmmanuel Vadot cpu = <&CPU2>; 1278bab661aSEmmanuel Vadot }; 1288bab661aSEmmanuel Vadot 1298bab661aSEmmanuel Vadot core3 { 1308bab661aSEmmanuel Vadot cpu = <&CPU3>; 1318bab661aSEmmanuel Vadot }; 1328bab661aSEmmanuel Vadot }; 1338bab661aSEmmanuel Vadot 1348bab661aSEmmanuel Vadot cluster1 { 1358bab661aSEmmanuel Vadot core0 { 1368bab661aSEmmanuel Vadot cpu = <&CPU4>; 1378bab661aSEmmanuel Vadot }; 1388bab661aSEmmanuel Vadot 1398bab661aSEmmanuel Vadot core1 { 1408bab661aSEmmanuel Vadot cpu = <&CPU5>; 1418bab661aSEmmanuel Vadot }; 1428bab661aSEmmanuel Vadot 1438bab661aSEmmanuel Vadot core2 { 1448bab661aSEmmanuel Vadot cpu = <&CPU6>; 1458bab661aSEmmanuel Vadot }; 1468bab661aSEmmanuel Vadot 1478bab661aSEmmanuel Vadot core3 { 1488bab661aSEmmanuel Vadot cpu = <&CPU7>; 1498bab661aSEmmanuel Vadot }; 1508bab661aSEmmanuel Vadot }; 1518bab661aSEmmanuel Vadot }; 1528bab661aSEmmanuel Vadot 1538bab661aSEmmanuel Vadot idle-states { 1548bab661aSEmmanuel Vadot entry-method = "psci"; 1558bab661aSEmmanuel Vadot 1568bab661aSEmmanuel Vadot little_cpu_sleep_0: cpu-sleep-0-0 { 1578bab661aSEmmanuel Vadot compatible = "arm,idle-state"; 1588bab661aSEmmanuel Vadot idle-state-name = "little-power-collapse"; 1598bab661aSEmmanuel Vadot arm,psci-suspend-param = <0x40000003>; 1608bab661aSEmmanuel Vadot entry-latency-us = <181>; 1618bab661aSEmmanuel Vadot exit-latency-us = <149>; 1628bab661aSEmmanuel Vadot min-residency-us = <703>; 1638bab661aSEmmanuel Vadot local-timer-stop; 1648bab661aSEmmanuel Vadot }; 1658bab661aSEmmanuel Vadot 1668bab661aSEmmanuel Vadot big_cpu_sleep_0: cpu-sleep-1-0 { 1678bab661aSEmmanuel Vadot compatible = "arm,idle-state"; 1688bab661aSEmmanuel Vadot idle-state-name = "big-retention"; 1698bab661aSEmmanuel Vadot arm,psci-suspend-param = <0x00000002>; 1708bab661aSEmmanuel Vadot entry-latency-us = <142>; 1718bab661aSEmmanuel Vadot exit-latency-us = <99>; 1728bab661aSEmmanuel Vadot min-residency-us = <242>; 1738bab661aSEmmanuel Vadot }; 1748bab661aSEmmanuel Vadot 1758bab661aSEmmanuel Vadot big_cpu_sleep_1: cpu-sleep-1-1 { 1768bab661aSEmmanuel Vadot compatible = "arm,idle-state"; 1778bab661aSEmmanuel Vadot idle-state-name = "big-power-collapse"; 1788bab661aSEmmanuel Vadot arm,psci-suspend-param = <0x40000003>; 1798bab661aSEmmanuel Vadot entry-latency-us = <158>; 1808bab661aSEmmanuel Vadot exit-latency-us = <144>; 1818bab661aSEmmanuel Vadot min-residency-us = <863>; 1828bab661aSEmmanuel Vadot local-timer-stop; 1838bab661aSEmmanuel Vadot }; 1848bab661aSEmmanuel Vadot }; 1858bab661aSEmmanuel Vadot 1868bab661aSEmmanuel Vadot l2_0: l2-cache0 { 1878bab661aSEmmanuel Vadot compatible = "cache"; 1888bab661aSEmmanuel Vadot cache-level = <2>; 1898bab661aSEmmanuel Vadot }; 1908bab661aSEmmanuel Vadot 1918bab661aSEmmanuel Vadot l2_1: l2-cache1 { 1928bab661aSEmmanuel Vadot compatible = "cache"; 1938bab661aSEmmanuel Vadot cache-level = <2>; 1948bab661aSEmmanuel Vadot }; 1958bab661aSEmmanuel Vadot }; 1968bab661aSEmmanuel Vadot 1978bab661aSEmmanuel Vadot firmware { 1988bab661aSEmmanuel Vadot scm: scm { 1998bab661aSEmmanuel Vadot compatible = "qcom,scm-msm8976", "qcom,scm"; 2008bab661aSEmmanuel Vadot clocks = <&gcc GCC_CRYPTO_CLK>, 2018bab661aSEmmanuel Vadot <&gcc GCC_CRYPTO_AXI_CLK>, 2028bab661aSEmmanuel Vadot <&gcc GCC_CRYPTO_AHB_CLK>; 2038bab661aSEmmanuel Vadot clock-names = "core", "bus", "iface"; 2048bab661aSEmmanuel Vadot #reset-cells = <1>; 2058bab661aSEmmanuel Vadot 2068bab661aSEmmanuel Vadot qcom,dload-mode = <&tcsr 0x6100>; 2078bab661aSEmmanuel Vadot }; 2088bab661aSEmmanuel Vadot }; 2098bab661aSEmmanuel Vadot 2108bab661aSEmmanuel Vadot memory@80000000 { 2118bab661aSEmmanuel Vadot device_type = "memory"; 2128bab661aSEmmanuel Vadot /* We expect the bootloader to fill in the size */ 2138bab661aSEmmanuel Vadot reg = <0x0 0x80000000 0x0 0x0>; 2148bab661aSEmmanuel Vadot }; 2158bab661aSEmmanuel Vadot 2168bab661aSEmmanuel Vadot pmu: pmu { 2178bab661aSEmmanuel Vadot compatible = "arm,armv8-pmuv3"; 2188bab661aSEmmanuel Vadot interrupts = <GIC_PPI 7 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_HIGH)>; 2198bab661aSEmmanuel Vadot }; 2208bab661aSEmmanuel Vadot 2218bab661aSEmmanuel Vadot psci { 2228bab661aSEmmanuel Vadot compatible = "arm,psci-1.0"; 2238bab661aSEmmanuel Vadot method = "smc"; 2248bab661aSEmmanuel Vadot }; 2258bab661aSEmmanuel Vadot 2268bab661aSEmmanuel Vadot reserved-memory { 2278bab661aSEmmanuel Vadot #address-cells = <2>; 2288bab661aSEmmanuel Vadot #size-cells = <2>; 2298bab661aSEmmanuel Vadot ranges; 2308bab661aSEmmanuel Vadot 2318bab661aSEmmanuel Vadot ext-region@85b00000 { 2328bab661aSEmmanuel Vadot reg = <0x0 0x85b00000 0x0 0x500000>; 2338bab661aSEmmanuel Vadot no-map; 2348bab661aSEmmanuel Vadot }; 2358bab661aSEmmanuel Vadot 2368bab661aSEmmanuel Vadot smem@86300000 { 2378bab661aSEmmanuel Vadot compatible = "qcom,smem"; 2388bab661aSEmmanuel Vadot reg = <0x0 0x86300000 0x0 0x100000>; 2398bab661aSEmmanuel Vadot no-map; 2408bab661aSEmmanuel Vadot 2418bab661aSEmmanuel Vadot hwlocks = <&tcsr_mutex 3>; 2428bab661aSEmmanuel Vadot qcom,rpm-msg-ram = <&rpm_msg_ram>; 2438bab661aSEmmanuel Vadot }; 2448bab661aSEmmanuel Vadot 2458bab661aSEmmanuel Vadot reserved@86400000 { 2468bab661aSEmmanuel Vadot reg = <0x0 0x86400000 0x0 0x800000>; 2478bab661aSEmmanuel Vadot no-map; 2488bab661aSEmmanuel Vadot }; 2498bab661aSEmmanuel Vadot 2508bab661aSEmmanuel Vadot mpss_mem: mpss@86c00000 { 2518bab661aSEmmanuel Vadot reg = <0x0 0x86c00000 0x0 0x5600000>; 2528bab661aSEmmanuel Vadot no-map; 2538bab661aSEmmanuel Vadot }; 2548bab661aSEmmanuel Vadot 2558bab661aSEmmanuel Vadot lpass_mem: lpass@8c200000 { 2568bab661aSEmmanuel Vadot reg = <0x0 0x8c200000 0x0 0x1800000>; 2578bab661aSEmmanuel Vadot no-map; 2588bab661aSEmmanuel Vadot }; 2598bab661aSEmmanuel Vadot 2608bab661aSEmmanuel Vadot venus_mem: memory@8da00000 { 2618bab661aSEmmanuel Vadot reg = <0x0 0x8da00000 0x0 0x2600000>; 2628bab661aSEmmanuel Vadot no-map; 2638bab661aSEmmanuel Vadot }; 2648bab661aSEmmanuel Vadot 2658bab661aSEmmanuel Vadot tz-apps@8dd00000 { 2668bab661aSEmmanuel Vadot reg = <0x0 0x8dd00000 0x0 0x1400000>; 2678bab661aSEmmanuel Vadot no-map; 2688bab661aSEmmanuel Vadot }; 2698bab661aSEmmanuel Vadot }; 2708bab661aSEmmanuel Vadot 2718bab661aSEmmanuel Vadot smp2p-hexagon { 2728bab661aSEmmanuel Vadot compatible = "qcom,smp2p"; 2738bab661aSEmmanuel Vadot interrupts = <GIC_SPI 291 IRQ_TYPE_EDGE_RISING>; 2748bab661aSEmmanuel Vadot qcom,ipc = <&apcs 8 10>; 2758bab661aSEmmanuel Vadot 2768bab661aSEmmanuel Vadot qcom,local-pid = <0>; 2778bab661aSEmmanuel Vadot qcom,remote-pid = <2>; 2788bab661aSEmmanuel Vadot qcom,smem = <443>, <429>; 2798bab661aSEmmanuel Vadot 2808bab661aSEmmanuel Vadot adsp_smp2p_out: master-kernel { 2818bab661aSEmmanuel Vadot qcom,entry-name = "master-kernel"; 2828bab661aSEmmanuel Vadot 2838bab661aSEmmanuel Vadot #qcom,smem-state-cells = <1>; 2848bab661aSEmmanuel Vadot }; 2858bab661aSEmmanuel Vadot 2868bab661aSEmmanuel Vadot adsp_smp2p_in: slave-kernel { 2878bab661aSEmmanuel Vadot qcom,entry-name = "slave-kernel"; 2888bab661aSEmmanuel Vadot 2898bab661aSEmmanuel Vadot interrupt-controller; 2908bab661aSEmmanuel Vadot #interrupt-cells = <2>; 2918bab661aSEmmanuel Vadot }; 2928bab661aSEmmanuel Vadot }; 2938bab661aSEmmanuel Vadot 2948bab661aSEmmanuel Vadot smp2p-modem { 2958bab661aSEmmanuel Vadot compatible = "qcom,smp2p"; 2968bab661aSEmmanuel Vadot interrupts = <GIC_SPI 27 IRQ_TYPE_EDGE_RISING>; 2978bab661aSEmmanuel Vadot qcom,ipc = <&apcs 8 13>; 2988bab661aSEmmanuel Vadot 2998bab661aSEmmanuel Vadot qcom,local-pid = <0>; 3008bab661aSEmmanuel Vadot qcom,remote-pid = <1>; 3018bab661aSEmmanuel Vadot qcom,smem = <435>, <428>; 3028bab661aSEmmanuel Vadot 3038bab661aSEmmanuel Vadot modem_smp2p_out: master-kernel { 3048bab661aSEmmanuel Vadot qcom,entry-name = "master-kernel"; 3058bab661aSEmmanuel Vadot 3068bab661aSEmmanuel Vadot #qcom,smem-state-cells = <1>; 3078bab661aSEmmanuel Vadot }; 3088bab661aSEmmanuel Vadot 3098bab661aSEmmanuel Vadot modem_smp2p_in: slave-kernel { 3108bab661aSEmmanuel Vadot qcom,entry-name = "slave-kernel"; 3118bab661aSEmmanuel Vadot 3128bab661aSEmmanuel Vadot interrupt-controller; 3138bab661aSEmmanuel Vadot #interrupt-cells = <2>; 3148bab661aSEmmanuel Vadot }; 3158bab661aSEmmanuel Vadot }; 3168bab661aSEmmanuel Vadot 3178bab661aSEmmanuel Vadot smp2p-wcnss { 3188bab661aSEmmanuel Vadot compatible = "qcom,smp2p"; 3198bab661aSEmmanuel Vadot interrupts = <GIC_SPI 143 IRQ_TYPE_EDGE_RISING>; 3208bab661aSEmmanuel Vadot qcom,ipc = <&apcs 8 17>; 3218bab661aSEmmanuel Vadot 3228bab661aSEmmanuel Vadot qcom,local-pid = <0>; 3238bab661aSEmmanuel Vadot qcom,remote-pid = <4>; 3248bab661aSEmmanuel Vadot qcom,smem = <451>, <431>; 3258bab661aSEmmanuel Vadot 3268bab661aSEmmanuel Vadot wcnss_smp2p_out: master-kernel { 3278bab661aSEmmanuel Vadot qcom,entry-name = "master-kernel"; 3288bab661aSEmmanuel Vadot 3298bab661aSEmmanuel Vadot #qcom,smem-state-cells = <1>; 3308bab661aSEmmanuel Vadot }; 3318bab661aSEmmanuel Vadot 3328bab661aSEmmanuel Vadot wcnss_smp2p_in: slave-kernel { 3338bab661aSEmmanuel Vadot qcom,entry-name = "slave-kernel"; 3348bab661aSEmmanuel Vadot 3358bab661aSEmmanuel Vadot interrupt-controller; 3368bab661aSEmmanuel Vadot #interrupt-cells = <2>; 3378bab661aSEmmanuel Vadot }; 3388bab661aSEmmanuel Vadot }; 3398bab661aSEmmanuel Vadot 3408bab661aSEmmanuel Vadot smd { 3418bab661aSEmmanuel Vadot compatible = "qcom,smd"; 3428bab661aSEmmanuel Vadot 3438bab661aSEmmanuel Vadot rpm { 3448bab661aSEmmanuel Vadot interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>; 3458bab661aSEmmanuel Vadot qcom,ipc = <&apcs 8 0>; 3468bab661aSEmmanuel Vadot qcom,smd-edge = <15>; 3478bab661aSEmmanuel Vadot 3488bab661aSEmmanuel Vadot rpm_requests: rpm-requests { 3498bab661aSEmmanuel Vadot compatible = "qcom,rpm-msm8976"; 3508bab661aSEmmanuel Vadot qcom,smd-channels = "rpm_requests"; 3518bab661aSEmmanuel Vadot 3528bab661aSEmmanuel Vadot rpmcc: clock-controller { 3538bab661aSEmmanuel Vadot compatible = "qcom,rpmcc-msm8976", "qcom,rpmcc"; 3548bab661aSEmmanuel Vadot #clock-cells = <1>; 3558bab661aSEmmanuel Vadot }; 3568bab661aSEmmanuel Vadot 3578bab661aSEmmanuel Vadot rpmpd: power-controller { 3588bab661aSEmmanuel Vadot compatible = "qcom,msm8976-rpmpd"; 3598bab661aSEmmanuel Vadot #power-domain-cells = <1>; 3608bab661aSEmmanuel Vadot operating-points-v2 = <&rpmpd_opp_table>; 3618bab661aSEmmanuel Vadot 3628bab661aSEmmanuel Vadot rpmpd_opp_table: opp-table { 3638bab661aSEmmanuel Vadot compatible = "operating-points-v2"; 3648bab661aSEmmanuel Vadot 3658bab661aSEmmanuel Vadot rpmpd_opp_ret: opp1 { 3668bab661aSEmmanuel Vadot opp-level = <RPM_SMD_LEVEL_RETENTION>; 3678bab661aSEmmanuel Vadot }; 3688bab661aSEmmanuel Vadot 3698bab661aSEmmanuel Vadot rpmpd_opp_ret_plus: opp2 { 3708bab661aSEmmanuel Vadot opp-level = <RPM_SMD_LEVEL_RETENTION_PLUS>; 3718bab661aSEmmanuel Vadot }; 3728bab661aSEmmanuel Vadot 3738bab661aSEmmanuel Vadot rpmpd_opp_min_svs: opp3 { 3748bab661aSEmmanuel Vadot opp-level = <RPM_SMD_LEVEL_MIN_SVS>; 3758bab661aSEmmanuel Vadot }; 3768bab661aSEmmanuel Vadot 3778bab661aSEmmanuel Vadot rpmpd_opp_low_svs: opp4 { 3788bab661aSEmmanuel Vadot opp-level = <RPM_SMD_LEVEL_LOW_SVS>; 3798bab661aSEmmanuel Vadot }; 3808bab661aSEmmanuel Vadot 3818bab661aSEmmanuel Vadot rpmpd_opp_svs: opp5 { 3828bab661aSEmmanuel Vadot opp-level = <RPM_SMD_LEVEL_SVS>; 3838bab661aSEmmanuel Vadot }; 3848bab661aSEmmanuel Vadot 3858bab661aSEmmanuel Vadot rpmpd_opp_svs_plus: opp6 { 3868bab661aSEmmanuel Vadot opp-level = <RPM_SMD_LEVEL_SVS_PLUS>; 3878bab661aSEmmanuel Vadot }; 3888bab661aSEmmanuel Vadot 3898bab661aSEmmanuel Vadot rpmpd_opp_nom: opp7 { 3908bab661aSEmmanuel Vadot opp-level = <RPM_SMD_LEVEL_NOM>; 3918bab661aSEmmanuel Vadot }; 3928bab661aSEmmanuel Vadot 3938bab661aSEmmanuel Vadot rpmpd_opp_nom_plus: opp8 { 3948bab661aSEmmanuel Vadot opp-level = <RPM_SMD_LEVEL_NOM_PLUS>; 3958bab661aSEmmanuel Vadot }; 3968bab661aSEmmanuel Vadot 3978bab661aSEmmanuel Vadot rpmpd_opp_turbo: opp9 { 3988bab661aSEmmanuel Vadot opp-level = <RPM_SMD_LEVEL_TURBO>; 3998bab661aSEmmanuel Vadot }; 4008bab661aSEmmanuel Vadot 4018bab661aSEmmanuel Vadot rpmpd_opp_turbo_no_cpr: opp10 { 4028bab661aSEmmanuel Vadot opp-level = <RPM_SMD_LEVEL_TURBO_NO_CPR>; 4038bab661aSEmmanuel Vadot }; 4048bab661aSEmmanuel Vadot 4058bab661aSEmmanuel Vadot rpmpd_opp_turbo_high: opp111 { 4068bab661aSEmmanuel Vadot opp-level = <RPM_SMD_LEVEL_TURBO_HIGH>; 4078bab661aSEmmanuel Vadot }; 4088bab661aSEmmanuel Vadot }; 4098bab661aSEmmanuel Vadot }; 4108bab661aSEmmanuel Vadot }; 4118bab661aSEmmanuel Vadot }; 4128bab661aSEmmanuel Vadot }; 4138bab661aSEmmanuel Vadot 4148bab661aSEmmanuel Vadot smsm { 4158bab661aSEmmanuel Vadot compatible = "qcom,smsm"; 4168bab661aSEmmanuel Vadot 4178bab661aSEmmanuel Vadot #address-cells = <1>; 4188bab661aSEmmanuel Vadot #size-cells = <0>; 4198bab661aSEmmanuel Vadot 4208bab661aSEmmanuel Vadot qcom,ipc-1 = <&apcs 8 12>; 4218bab661aSEmmanuel Vadot qcom,ipc-2 = <&apcs 8 9>; 4228bab661aSEmmanuel Vadot qcom,ipc-3 = <&apcs 8 18>; 4238bab661aSEmmanuel Vadot 4248bab661aSEmmanuel Vadot apps_smsm: apps@0 { 4258bab661aSEmmanuel Vadot reg = <0>; 4268bab661aSEmmanuel Vadot #qcom,smem-state-cells = <1>; 4278bab661aSEmmanuel Vadot }; 4288bab661aSEmmanuel Vadot 4298bab661aSEmmanuel Vadot hexagon_smsm: hexagon@1 { 4308bab661aSEmmanuel Vadot reg = <1>; 4318bab661aSEmmanuel Vadot interrupts = <0 290 IRQ_TYPE_EDGE_RISING>; 4328bab661aSEmmanuel Vadot 4338bab661aSEmmanuel Vadot interrupt-controller; 4348bab661aSEmmanuel Vadot #interrupt-cells = <2>; 4358bab661aSEmmanuel Vadot }; 4368bab661aSEmmanuel Vadot 4378bab661aSEmmanuel Vadot wcnss_smsm: wcnss@6 { 4388bab661aSEmmanuel Vadot reg = <6>; 4398bab661aSEmmanuel Vadot interrupts = <GIC_SPI 144 IRQ_TYPE_EDGE_RISING>; 4408bab661aSEmmanuel Vadot 4418bab661aSEmmanuel Vadot interrupt-controller; 4428bab661aSEmmanuel Vadot #interrupt-cells = <2>; 4438bab661aSEmmanuel Vadot }; 4448bab661aSEmmanuel Vadot }; 4458bab661aSEmmanuel Vadot 4468bab661aSEmmanuel Vadot soc: soc@0 { 4478bab661aSEmmanuel Vadot #address-cells = <1>; 4488bab661aSEmmanuel Vadot #size-cells = <1>; 4498bab661aSEmmanuel Vadot ranges = <0 0 0 0xffffffff>; 4508bab661aSEmmanuel Vadot compatible = "simple-bus"; 4518bab661aSEmmanuel Vadot 4528bab661aSEmmanuel Vadot rng@22000 { 4538bab661aSEmmanuel Vadot compatible = "qcom,prng"; 4548bab661aSEmmanuel Vadot reg = <0x00022000 0x140>; 4558bab661aSEmmanuel Vadot clocks = <&gcc GCC_PRNG_AHB_CLK>; 4568bab661aSEmmanuel Vadot clock-names = "core"; 4578bab661aSEmmanuel Vadot }; 4588bab661aSEmmanuel Vadot 4598bab661aSEmmanuel Vadot rpm_msg_ram: sram@60000 { 4608bab661aSEmmanuel Vadot compatible = "qcom,rpm-msg-ram"; 4618bab661aSEmmanuel Vadot reg = <0x00060000 0x8000>; 4628bab661aSEmmanuel Vadot }; 4638bab661aSEmmanuel Vadot 4648bab661aSEmmanuel Vadot usb_hs_phy: phy@6c000 { 4658bab661aSEmmanuel Vadot compatible = "qcom,usb-hs-28nm-femtophy"; 4668bab661aSEmmanuel Vadot reg = <0x0006c000 0x200>; 4678bab661aSEmmanuel Vadot #phy-cells = <0>; 4688bab661aSEmmanuel Vadot clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, 4698bab661aSEmmanuel Vadot <&gcc GCC_USB_HS_PHY_CFG_AHB_CLK>, 4708bab661aSEmmanuel Vadot <&gcc GCC_USB2A_PHY_SLEEP_CLK>; 4718bab661aSEmmanuel Vadot clock-names = "ref", "ahb", "sleep"; 4728bab661aSEmmanuel Vadot resets = <&gcc RST_QUSB2_PHY_BCR>, 4738bab661aSEmmanuel Vadot <&gcc RST_USB2_HS_PHY_ONLY_BCR>; 4748bab661aSEmmanuel Vadot reset-names = "phy", "por"; 4758bab661aSEmmanuel Vadot status = "disabled"; 4768bab661aSEmmanuel Vadot }; 4778bab661aSEmmanuel Vadot 4788bab661aSEmmanuel Vadot qfprom: qfprom@a4000 { 4798bab661aSEmmanuel Vadot compatible = "qcom,msm8976-qfprom", "qcom,qfprom"; 4808bab661aSEmmanuel Vadot reg = <0x000a4000 0x1000>; 4818bab661aSEmmanuel Vadot #address-cells = <1>; 4828bab661aSEmmanuel Vadot #size-cells = <1>; 4838bab661aSEmmanuel Vadot 484*cb7aa33aSEmmanuel Vadot tsens_base1: base1@218 { 485*cb7aa33aSEmmanuel Vadot reg = <0x218 1>; 486*cb7aa33aSEmmanuel Vadot bits = <0 8>; 487*cb7aa33aSEmmanuel Vadot }; 488*cb7aa33aSEmmanuel Vadot 489*cb7aa33aSEmmanuel Vadot tsens_s0_p1: s0-p1@219 { 490*cb7aa33aSEmmanuel Vadot reg = <0x219 0x1>; 491*cb7aa33aSEmmanuel Vadot bits = <0 6>; 492*cb7aa33aSEmmanuel Vadot }; 493*cb7aa33aSEmmanuel Vadot 494*cb7aa33aSEmmanuel Vadot tsens_s0_p2: s0-p2@219 { 495*cb7aa33aSEmmanuel Vadot reg = <0x219 0x2>; 496*cb7aa33aSEmmanuel Vadot bits = <6 6>; 497*cb7aa33aSEmmanuel Vadot }; 498*cb7aa33aSEmmanuel Vadot 499*cb7aa33aSEmmanuel Vadot tsens_s1_p1: s1-p1@21a { 500*cb7aa33aSEmmanuel Vadot reg = <0x21a 0x2>; 501*cb7aa33aSEmmanuel Vadot bits = <4 6>; 502*cb7aa33aSEmmanuel Vadot }; 503*cb7aa33aSEmmanuel Vadot 504*cb7aa33aSEmmanuel Vadot tsens_s1_p2: s1-p2@21b { 505*cb7aa33aSEmmanuel Vadot reg = <0x21b 0x1>; 506*cb7aa33aSEmmanuel Vadot bits = <2 6>; 507*cb7aa33aSEmmanuel Vadot }; 508*cb7aa33aSEmmanuel Vadot 509*cb7aa33aSEmmanuel Vadot tsens_s2_p1: s2-p1@21c { 510*cb7aa33aSEmmanuel Vadot reg = <0x21c 0x1>; 511*cb7aa33aSEmmanuel Vadot bits = <0 6>; 512*cb7aa33aSEmmanuel Vadot }; 513*cb7aa33aSEmmanuel Vadot 514*cb7aa33aSEmmanuel Vadot tsens_s2_p2: s2-p2@21c { 515*cb7aa33aSEmmanuel Vadot reg = <0x21c 0x2>; 516*cb7aa33aSEmmanuel Vadot bits = <6 6>; 517*cb7aa33aSEmmanuel Vadot }; 518*cb7aa33aSEmmanuel Vadot 519*cb7aa33aSEmmanuel Vadot tsens_s3_p1: s3-p1@21d { 520*cb7aa33aSEmmanuel Vadot reg = <0x21d 0x2>; 521*cb7aa33aSEmmanuel Vadot bits = <4 6>; 522*cb7aa33aSEmmanuel Vadot }; 523*cb7aa33aSEmmanuel Vadot 524*cb7aa33aSEmmanuel Vadot tsens_s3_p2: s3-p2@21e { 525*cb7aa33aSEmmanuel Vadot reg = <0x21e 0x1>; 526*cb7aa33aSEmmanuel Vadot bits = <2 6>; 527*cb7aa33aSEmmanuel Vadot }; 528*cb7aa33aSEmmanuel Vadot 529*cb7aa33aSEmmanuel Vadot tsens_base2: base2@220 { 530*cb7aa33aSEmmanuel Vadot reg = <0x220 1>; 531*cb7aa33aSEmmanuel Vadot bits = <0 8>; 532*cb7aa33aSEmmanuel Vadot }; 533*cb7aa33aSEmmanuel Vadot 534*cb7aa33aSEmmanuel Vadot tsens_s4_p1: s4-p1@221 { 535*cb7aa33aSEmmanuel Vadot reg = <0x221 0x1>; 536*cb7aa33aSEmmanuel Vadot bits = <0 6>; 537*cb7aa33aSEmmanuel Vadot }; 538*cb7aa33aSEmmanuel Vadot 539*cb7aa33aSEmmanuel Vadot tsens_s4_p2: s4-p2@221 { 540*cb7aa33aSEmmanuel Vadot reg = <0x221 0x2>; 541*cb7aa33aSEmmanuel Vadot bits = <6 6>; 542*cb7aa33aSEmmanuel Vadot }; 543*cb7aa33aSEmmanuel Vadot 544*cb7aa33aSEmmanuel Vadot tsens_s5_p1: s5-p1@222 { 545*cb7aa33aSEmmanuel Vadot reg = <0x222 0x2>; 546*cb7aa33aSEmmanuel Vadot bits = <4 6>; 547*cb7aa33aSEmmanuel Vadot }; 548*cb7aa33aSEmmanuel Vadot 549*cb7aa33aSEmmanuel Vadot tsens_s5_p2: s5-p2@223 { 550*cb7aa33aSEmmanuel Vadot reg = <0x224 0x1>; 551*cb7aa33aSEmmanuel Vadot bits = <2 6>; 552*cb7aa33aSEmmanuel Vadot }; 553*cb7aa33aSEmmanuel Vadot 554*cb7aa33aSEmmanuel Vadot tsens_s6_p1: s6-p1@224 { 555*cb7aa33aSEmmanuel Vadot reg = <0x224 0x1>; 556*cb7aa33aSEmmanuel Vadot bits = <0 6>; 557*cb7aa33aSEmmanuel Vadot }; 558*cb7aa33aSEmmanuel Vadot 559*cb7aa33aSEmmanuel Vadot tsens_s6_p2: s6-p2@224 { 560*cb7aa33aSEmmanuel Vadot reg = <0x224 0x2>; 561*cb7aa33aSEmmanuel Vadot bits = <6 6>; 562*cb7aa33aSEmmanuel Vadot }; 563*cb7aa33aSEmmanuel Vadot 564*cb7aa33aSEmmanuel Vadot tsens_s7_p1: s7-p1@225 { 565*cb7aa33aSEmmanuel Vadot reg = <0x225 0x2>; 566*cb7aa33aSEmmanuel Vadot bits = <4 6>; 567*cb7aa33aSEmmanuel Vadot }; 568*cb7aa33aSEmmanuel Vadot 569*cb7aa33aSEmmanuel Vadot tsens_s7_p2: s7-p2@226 { 570*cb7aa33aSEmmanuel Vadot reg = <0x226 0x2>; 571*cb7aa33aSEmmanuel Vadot bits = <2 6>; 572*cb7aa33aSEmmanuel Vadot }; 573*cb7aa33aSEmmanuel Vadot 574*cb7aa33aSEmmanuel Vadot tsens_mode: mode@228 { 575*cb7aa33aSEmmanuel Vadot reg = <0x228 1>; 576*cb7aa33aSEmmanuel Vadot bits = <0 3>; 577*cb7aa33aSEmmanuel Vadot }; 578*cb7aa33aSEmmanuel Vadot 579*cb7aa33aSEmmanuel Vadot tsens_s8_p1: s8-p1@228 { 580*cb7aa33aSEmmanuel Vadot reg = <0x228 0x2>; 581*cb7aa33aSEmmanuel Vadot bits = <3 6>; 582*cb7aa33aSEmmanuel Vadot }; 583*cb7aa33aSEmmanuel Vadot 584*cb7aa33aSEmmanuel Vadot tsens_s8_p2: s8-p2@229 { 585*cb7aa33aSEmmanuel Vadot reg = <0x229 0x1>; 586*cb7aa33aSEmmanuel Vadot bits = <1 6>; 587*cb7aa33aSEmmanuel Vadot }; 588*cb7aa33aSEmmanuel Vadot 589*cb7aa33aSEmmanuel Vadot tsens_s9_p1: s9-p1@229 { 590*cb7aa33aSEmmanuel Vadot reg = <0x229 0x2>; 591*cb7aa33aSEmmanuel Vadot bits = <7 6>; 592*cb7aa33aSEmmanuel Vadot }; 593*cb7aa33aSEmmanuel Vadot 594*cb7aa33aSEmmanuel Vadot tsens_s9_p2: s9-p2@22a { 595*cb7aa33aSEmmanuel Vadot reg = <0x22a 0x2>; 596*cb7aa33aSEmmanuel Vadot bits = <5 6>; 597*cb7aa33aSEmmanuel Vadot }; 598*cb7aa33aSEmmanuel Vadot 599*cb7aa33aSEmmanuel Vadot tsens_s10_p1: s10-p1@22b { 600*cb7aa33aSEmmanuel Vadot reg = <0x22b 0x2>; 601*cb7aa33aSEmmanuel Vadot bits = <3 6>; 602*cb7aa33aSEmmanuel Vadot }; 603*cb7aa33aSEmmanuel Vadot 604*cb7aa33aSEmmanuel Vadot tsens_s10_p2: s10-p2@22c { 605*cb7aa33aSEmmanuel Vadot reg = <0x22c 0x1>; 606*cb7aa33aSEmmanuel Vadot bits = <1 6>; 6078bab661aSEmmanuel Vadot }; 6088bab661aSEmmanuel Vadot }; 6098bab661aSEmmanuel Vadot 6108bab661aSEmmanuel Vadot tsens: thermal-sensor@4a9000 { 6118bab661aSEmmanuel Vadot compatible = "qcom,msm8976-tsens", "qcom,tsens-v1"; 6128bab661aSEmmanuel Vadot reg = <0x004a9000 0x1000>, /* TM */ 6138bab661aSEmmanuel Vadot <0x004a8000 0x1000>; /* SROT */ 6148bab661aSEmmanuel Vadot interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>; 6158bab661aSEmmanuel Vadot interrupt-names = "uplow"; 616*cb7aa33aSEmmanuel Vadot nvmem-cells = <&tsens_mode>, 617*cb7aa33aSEmmanuel Vadot <&tsens_base1>, <&tsens_base2>, 618*cb7aa33aSEmmanuel Vadot <&tsens_s0_p1>, <&tsens_s0_p2>, 619*cb7aa33aSEmmanuel Vadot <&tsens_s1_p1>, <&tsens_s1_p2>, 620*cb7aa33aSEmmanuel Vadot <&tsens_s2_p1>, <&tsens_s2_p2>, 621*cb7aa33aSEmmanuel Vadot <&tsens_s3_p1>, <&tsens_s3_p2>, 622*cb7aa33aSEmmanuel Vadot <&tsens_s4_p1>, <&tsens_s4_p2>, 623*cb7aa33aSEmmanuel Vadot <&tsens_s5_p1>, <&tsens_s5_p2>, 624*cb7aa33aSEmmanuel Vadot <&tsens_s6_p1>, <&tsens_s6_p2>, 625*cb7aa33aSEmmanuel Vadot <&tsens_s7_p1>, <&tsens_s7_p2>, 626*cb7aa33aSEmmanuel Vadot <&tsens_s8_p1>, <&tsens_s8_p2>, 627*cb7aa33aSEmmanuel Vadot <&tsens_s9_p1>, <&tsens_s9_p2>, 628*cb7aa33aSEmmanuel Vadot <&tsens_s10_p1>, <&tsens_s10_p2>; 629*cb7aa33aSEmmanuel Vadot nvmem-cell-names = "mode", 630*cb7aa33aSEmmanuel Vadot "base1", "base2", 631*cb7aa33aSEmmanuel Vadot "s0_p1", "s0_p2", 632*cb7aa33aSEmmanuel Vadot "s1_p1", "s1_p2", 633*cb7aa33aSEmmanuel Vadot "s2_p1", "s2_p2", 634*cb7aa33aSEmmanuel Vadot "s3_p1", "s3_p2", 635*cb7aa33aSEmmanuel Vadot "s4_p1", "s4_p2", 636*cb7aa33aSEmmanuel Vadot "s5_p1", "s5_p2", 637*cb7aa33aSEmmanuel Vadot "s6_p1", "s6_p2", 638*cb7aa33aSEmmanuel Vadot "s7_p1", "s7_p2", 639*cb7aa33aSEmmanuel Vadot "s8_p1", "s8_p2", 640*cb7aa33aSEmmanuel Vadot "s9_p1", "s9_p2", 641*cb7aa33aSEmmanuel Vadot "s10_p1", "s10_p2"; 6428bab661aSEmmanuel Vadot #qcom,sensors = <11>; 6438bab661aSEmmanuel Vadot #thermal-sensor-cells = <1>; 6448bab661aSEmmanuel Vadot }; 6458bab661aSEmmanuel Vadot 6468bab661aSEmmanuel Vadot tlmm: pinctrl@1000000 { 6478bab661aSEmmanuel Vadot compatible = "qcom,msm8976-pinctrl"; 6488bab661aSEmmanuel Vadot reg = <0x01000000 0x300000>; 6498bab661aSEmmanuel Vadot interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 6508bab661aSEmmanuel Vadot #gpio-cells = <2>; 6518bab661aSEmmanuel Vadot gpio-controller; 6528bab661aSEmmanuel Vadot gpio-ranges = <&tlmm 0 0 145>; 6538bab661aSEmmanuel Vadot interrupt-controller; 6548bab661aSEmmanuel Vadot #interrupt-cells = <2>; 6558bab661aSEmmanuel Vadot 6568bab661aSEmmanuel Vadot spi1_default: spi0-default-state { 6578bab661aSEmmanuel Vadot spi-pins { 6588bab661aSEmmanuel Vadot pins = "gpio0", "gpio1", "gpio3"; 6598bab661aSEmmanuel Vadot function = "blsp_spi1"; 6608bab661aSEmmanuel Vadot drive-strength = <12>; 6618bab661aSEmmanuel Vadot bias-disable; 6628bab661aSEmmanuel Vadot }; 6638bab661aSEmmanuel Vadot 6648bab661aSEmmanuel Vadot cs-pins { 6658bab661aSEmmanuel Vadot pins = "gpio2"; 6668bab661aSEmmanuel Vadot function = "blsp_spi1"; 6678bab661aSEmmanuel Vadot drive-strength = <2>; 6688bab661aSEmmanuel Vadot bias-disable; 6698bab661aSEmmanuel Vadot }; 6708bab661aSEmmanuel Vadot }; 6718bab661aSEmmanuel Vadot 6728bab661aSEmmanuel Vadot spi1_sleep: spi0-sleep-state { 6738bab661aSEmmanuel Vadot spi-pins { 6748bab661aSEmmanuel Vadot pins = "gpio0", "gpio1", "gpio3"; 6758bab661aSEmmanuel Vadot function = "gpio"; 6768bab661aSEmmanuel Vadot drive-strength = <2>; 6778bab661aSEmmanuel Vadot bias-pull-down; 6788bab661aSEmmanuel Vadot }; 6798bab661aSEmmanuel Vadot 6808bab661aSEmmanuel Vadot cs-pins { 6818bab661aSEmmanuel Vadot pins = "gpio2"; 6828bab661aSEmmanuel Vadot function = "gpio"; 6838bab661aSEmmanuel Vadot drive-strength = <2>; 6848bab661aSEmmanuel Vadot bias-disable; 6858bab661aSEmmanuel Vadot }; 6868bab661aSEmmanuel Vadot }; 6878bab661aSEmmanuel Vadot 6888bab661aSEmmanuel Vadot blsp1_i2c2_default: blsp1-i2c2-default-state { 6898bab661aSEmmanuel Vadot pins = "gpio6", "gpio7"; 6908bab661aSEmmanuel Vadot function = "blsp_i2c2"; 6918bab661aSEmmanuel Vadot drive-strength = <2>; 6928bab661aSEmmanuel Vadot bias-disable; 6938bab661aSEmmanuel Vadot }; 6948bab661aSEmmanuel Vadot 6958bab661aSEmmanuel Vadot blsp1_i2c2_sleep: blsp1-i2c2-sleep-state { 6968bab661aSEmmanuel Vadot pins = "gpio6", "gpio7"; 6978bab661aSEmmanuel Vadot function = "gpio"; 6988bab661aSEmmanuel Vadot drive-strength = <2>; 6998bab661aSEmmanuel Vadot bias-disable; 7008bab661aSEmmanuel Vadot }; 7018bab661aSEmmanuel Vadot 7028bab661aSEmmanuel Vadot blsp1_i2c4_default: blsp1-i2c4-default-state { 7038bab661aSEmmanuel Vadot pins = "gpio14", "gpio15"; 7048bab661aSEmmanuel Vadot function = "blsp_i2c4"; 7058bab661aSEmmanuel Vadot drive-strength = <2>; 7068bab661aSEmmanuel Vadot bias-disable; 7078bab661aSEmmanuel Vadot }; 7088bab661aSEmmanuel Vadot 7098bab661aSEmmanuel Vadot blsp1_i2c4_sleep: blsp1-i2c4-sleep-state { 7108bab661aSEmmanuel Vadot pins = "gpio14", "gpio15"; 7118bab661aSEmmanuel Vadot function = "gpio"; 7128bab661aSEmmanuel Vadot drive-strength = <2>; 7138bab661aSEmmanuel Vadot bias-disable; 7148bab661aSEmmanuel Vadot }; 7158bab661aSEmmanuel Vadot 7168bab661aSEmmanuel Vadot blsp2_uart2_active: blsp2-uart2-active-state { 7178bab661aSEmmanuel Vadot pins = "gpio20", "gpio21"; 7188bab661aSEmmanuel Vadot function = "blsp_uart6"; 7198bab661aSEmmanuel Vadot drive-strength = <4>; 7208bab661aSEmmanuel Vadot bias-disable; 7218bab661aSEmmanuel Vadot }; 7228bab661aSEmmanuel Vadot 7238bab661aSEmmanuel Vadot blsp2_uart2_sleep: blsp2-uart2-sleep-state { 7248bab661aSEmmanuel Vadot pins = "gpio20", "gpio21"; 7258bab661aSEmmanuel Vadot function = "gpio"; 7268bab661aSEmmanuel Vadot drive-strength = <2>; 7278bab661aSEmmanuel Vadot bias-disable; 7288bab661aSEmmanuel Vadot }; 7298bab661aSEmmanuel Vadot 7308bab661aSEmmanuel Vadot /* 4 (not 6!) interfaces per QUP, BLSP2 indexes are numbered (n)+4 */ 7318bab661aSEmmanuel Vadot blsp2_i2c2_default: blsp2-i2c2-default-state { 7328bab661aSEmmanuel Vadot pins = "gpio22", "gpio23"; 7338bab661aSEmmanuel Vadot function = "blsp_i2c6"; 7348bab661aSEmmanuel Vadot drive-strength = <2>; 7358bab661aSEmmanuel Vadot bias-disable; 7368bab661aSEmmanuel Vadot }; 7378bab661aSEmmanuel Vadot 7388bab661aSEmmanuel Vadot blsp2_i2c2_sleep: blsp2-i2c2-sleep-state { 7398bab661aSEmmanuel Vadot pins = "gpio22", "gpio23"; 7408bab661aSEmmanuel Vadot function = "gpio"; 7418bab661aSEmmanuel Vadot drive-strength = <2>; 7428bab661aSEmmanuel Vadot bias-disable; 7438bab661aSEmmanuel Vadot }; 7448bab661aSEmmanuel Vadot 7458bab661aSEmmanuel Vadot blsp2_i2c4_default: blsp2-i2c4-default-state { 7468bab661aSEmmanuel Vadot pins = "gpio18", "gpio19"; 7478bab661aSEmmanuel Vadot function = "blsp_i2c8"; 7488bab661aSEmmanuel Vadot drive-strength = <2>; 7498bab661aSEmmanuel Vadot bias-disable; 7508bab661aSEmmanuel Vadot }; 7518bab661aSEmmanuel Vadot 7528bab661aSEmmanuel Vadot blsp2_i2c4_sleep: blsp2-i2c4-sleep-state { 7538bab661aSEmmanuel Vadot pins = "gpio18", "gpio19"; 7548bab661aSEmmanuel Vadot function = "gpio"; 7558bab661aSEmmanuel Vadot drive-strength = <2>; 7568bab661aSEmmanuel Vadot bias-disable; 7578bab661aSEmmanuel Vadot }; 7588bab661aSEmmanuel Vadot }; 7598bab661aSEmmanuel Vadot 7608bab661aSEmmanuel Vadot gcc: clock-controller@1800000 { 7618bab661aSEmmanuel Vadot compatible = "qcom,gcc-msm8976"; 7628bab661aSEmmanuel Vadot reg = <0x01800000 0x80000>; 7638bab661aSEmmanuel Vadot #clock-cells = <1>; 7648bab661aSEmmanuel Vadot #reset-cells = <1>; 7658bab661aSEmmanuel Vadot #power-domain-cells = <1>; 7668bab661aSEmmanuel Vadot 7678bab661aSEmmanuel Vadot assigned-clocks = <&gcc GPLL3>; 7688bab661aSEmmanuel Vadot assigned-clock-rates = <1100000000>; 7698bab661aSEmmanuel Vadot 7708bab661aSEmmanuel Vadot clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, 7718bab661aSEmmanuel Vadot <&rpmcc RPM_SMD_XO_A_CLK_SRC>, 7728bab661aSEmmanuel Vadot <0>, 7738bab661aSEmmanuel Vadot <0>, 7748bab661aSEmmanuel Vadot <0>, 7758bab661aSEmmanuel Vadot <0>; 7768bab661aSEmmanuel Vadot clock-names = "xo", 7778bab661aSEmmanuel Vadot "xo_a", 7788bab661aSEmmanuel Vadot "dsi0pll", 7798bab661aSEmmanuel Vadot "dsi0pllbyte", 7808bab661aSEmmanuel Vadot "dsi1pll", 7818bab661aSEmmanuel Vadot "dsi1pllbyte"; 7828bab661aSEmmanuel Vadot }; 7838bab661aSEmmanuel Vadot 7848bab661aSEmmanuel Vadot tcsr_mutex: hwlock@1905000 { 7858bab661aSEmmanuel Vadot compatible = "qcom,tcsr-mutex"; 7868bab661aSEmmanuel Vadot reg = <0x01905000 0x20000>; 7878bab661aSEmmanuel Vadot #hwlock-cells = <1>; 7888bab661aSEmmanuel Vadot }; 7898bab661aSEmmanuel Vadot 7908bab661aSEmmanuel Vadot tcsr: syscon@1937000 { 7918bab661aSEmmanuel Vadot compatible = "qcom,msm8976-tcsr", "syscon"; 7928bab661aSEmmanuel Vadot reg = <0x01937000 0x30000>; 7938bab661aSEmmanuel Vadot }; 7948bab661aSEmmanuel Vadot 7958bab661aSEmmanuel Vadot spmi_bus: spmi@200f000 { 7968bab661aSEmmanuel Vadot compatible = "qcom,spmi-pmic-arb"; 7978bab661aSEmmanuel Vadot reg = <0x0200f000 0x1000>, 7988bab661aSEmmanuel Vadot <0x02400000 0x800000>, 7998bab661aSEmmanuel Vadot <0x02c00000 0x800000>, 8008bab661aSEmmanuel Vadot <0x03800000 0x200000>, 8018bab661aSEmmanuel Vadot <0x0200a000 0x2100>; 8028bab661aSEmmanuel Vadot reg-names = "core", "chnls", "obsrvr", "intr", "cnfg"; 8038bab661aSEmmanuel Vadot interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>; 8048bab661aSEmmanuel Vadot interrupt-names = "periph_irq"; 8058bab661aSEmmanuel Vadot qcom,channel = <0>; 8068bab661aSEmmanuel Vadot qcom,ee = <0>; 8078bab661aSEmmanuel Vadot 8088bab661aSEmmanuel Vadot #address-cells = <2>; 8098bab661aSEmmanuel Vadot #size-cells = <0>; 8108bab661aSEmmanuel Vadot interrupt-controller; 8118bab661aSEmmanuel Vadot #interrupt-cells = <4>; 8128bab661aSEmmanuel Vadot cell-index = <0>; 8138bab661aSEmmanuel Vadot }; 8148bab661aSEmmanuel Vadot 8158bab661aSEmmanuel Vadot sdhc_1: mmc@7824000 { 8168bab661aSEmmanuel Vadot compatible = "qcom,msm8976-sdhci", "qcom,sdhci-msm-v4"; 8178bab661aSEmmanuel Vadot reg = <0x07824900 0x500>, <0x07824000 0x800>; 8188bab661aSEmmanuel Vadot reg-names = "hc", "core"; 8198bab661aSEmmanuel Vadot 8208bab661aSEmmanuel Vadot interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>, 8218bab661aSEmmanuel Vadot <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>; 8228bab661aSEmmanuel Vadot interrupt-names = "hc_irq", "pwr_irq"; 8238bab661aSEmmanuel Vadot 8248bab661aSEmmanuel Vadot clocks = <&gcc GCC_SDCC1_AHB_CLK>, 8258bab661aSEmmanuel Vadot <&gcc GCC_SDCC1_APPS_CLK>, 8268bab661aSEmmanuel Vadot <&rpmcc RPM_SMD_XO_CLK_SRC>; 8278bab661aSEmmanuel Vadot clock-names = "iface", "core", "xo"; 8288bab661aSEmmanuel Vadot status = "disabled"; 8298bab661aSEmmanuel Vadot }; 8308bab661aSEmmanuel Vadot 8318bab661aSEmmanuel Vadot sdhc_2: mmc@7864000 { 8328bab661aSEmmanuel Vadot compatible = "qcom,msm8976-sdhci", "qcom,sdhci-msm-v4"; 8338bab661aSEmmanuel Vadot reg = <0x07864900 0x11c>, <0x07864000 0x800>; 8348bab661aSEmmanuel Vadot reg-names = "hc", "core"; 8358bab661aSEmmanuel Vadot 8368bab661aSEmmanuel Vadot interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>, 8378bab661aSEmmanuel Vadot <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>; 8388bab661aSEmmanuel Vadot interrupt-names = "hc_irq", "pwr_irq"; 8398bab661aSEmmanuel Vadot 8408bab661aSEmmanuel Vadot clocks = <&gcc GCC_SDCC2_AHB_CLK>, 8418bab661aSEmmanuel Vadot <&gcc GCC_SDCC2_APPS_CLK>, 8428bab661aSEmmanuel Vadot <&rpmcc RPM_SMD_XO_CLK_SRC>; 8438bab661aSEmmanuel Vadot clock-names = "iface", "core", "xo"; 8448bab661aSEmmanuel Vadot status = "disabled"; 8458bab661aSEmmanuel Vadot }; 8468bab661aSEmmanuel Vadot 8478bab661aSEmmanuel Vadot blsp1_dma: dma-controller@7884000 { 8488bab661aSEmmanuel Vadot compatible = "qcom,bam-v1.7.0"; 8498bab661aSEmmanuel Vadot reg = <0x07884000 0x1f000>; 8508bab661aSEmmanuel Vadot interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>; 8518bab661aSEmmanuel Vadot clocks = <&gcc GCC_BLSP1_AHB_CLK>; 8528bab661aSEmmanuel Vadot clock-names = "bam_clk"; 8538bab661aSEmmanuel Vadot #dma-cells = <1>; 8548bab661aSEmmanuel Vadot qcom,ee = <0>; 8558bab661aSEmmanuel Vadot }; 8568bab661aSEmmanuel Vadot 8578bab661aSEmmanuel Vadot blsp1_uart1: serial@78af000 { 8588bab661aSEmmanuel Vadot compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 8598bab661aSEmmanuel Vadot reg = <0x078af000 0x200>; 8608bab661aSEmmanuel Vadot interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; 8618bab661aSEmmanuel Vadot clocks = <&gcc GCC_BLSP1_UART1_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; 8628bab661aSEmmanuel Vadot clock-names = "core", "iface"; 8638bab661aSEmmanuel Vadot dmas = <&blsp1_dma 0>, <&blsp1_dma 1>; 8648bab661aSEmmanuel Vadot dma-names = "tx", "rx"; 8658bab661aSEmmanuel Vadot status = "disabled"; 8668bab661aSEmmanuel Vadot }; 8678bab661aSEmmanuel Vadot 8688bab661aSEmmanuel Vadot blsp1_uart2: serial@78b0000 { 8698bab661aSEmmanuel Vadot compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 8708bab661aSEmmanuel Vadot reg = <0x078b0000 0x200>; 8718bab661aSEmmanuel Vadot interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>; 8728bab661aSEmmanuel Vadot clocks = <&gcc GCC_BLSP1_UART2_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; 8738bab661aSEmmanuel Vadot clock-names = "core", "iface"; 8748bab661aSEmmanuel Vadot dmas = <&blsp1_dma 2>, <&blsp1_dma 3>; 8758bab661aSEmmanuel Vadot dma-names = "tx", "rx"; 8768bab661aSEmmanuel Vadot status = "disabled"; 8778bab661aSEmmanuel Vadot }; 8788bab661aSEmmanuel Vadot 8798bab661aSEmmanuel Vadot blsp1_spi1: spi@78b5000 { 8808bab661aSEmmanuel Vadot compatible = "qcom,spi-qup-v2.2.1"; 8818bab661aSEmmanuel Vadot reg = <0x078b5000 0x500>; 8828bab661aSEmmanuel Vadot interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 8838bab661aSEmmanuel Vadot clocks = <&gcc GCC_BLSP1_QUP1_SPI_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; 8848bab661aSEmmanuel Vadot clock-names = "core", "iface"; 8858bab661aSEmmanuel Vadot dmas = <&blsp1_dma 4>, <&blsp1_dma 5>; 8868bab661aSEmmanuel Vadot dma-names = "tx", "rx"; 8878bab661aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 8888bab661aSEmmanuel Vadot pinctrl-0 = <&spi1_default>; 8898bab661aSEmmanuel Vadot pinctrl-1 = <&spi1_sleep>; 8908bab661aSEmmanuel Vadot #address-cells = <1>; 8918bab661aSEmmanuel Vadot #size-cells = <0>; 8928bab661aSEmmanuel Vadot status = "disabled"; 8938bab661aSEmmanuel Vadot }; 8948bab661aSEmmanuel Vadot 8958bab661aSEmmanuel Vadot blsp1_i2c2: i2c@78b6000 { 8968bab661aSEmmanuel Vadot compatible = "qcom,i2c-qup-v2.2.1"; 8978bab661aSEmmanuel Vadot reg = <0x078b6000 0x500>; 8988bab661aSEmmanuel Vadot interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 8998bab661aSEmmanuel Vadot clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; 9008bab661aSEmmanuel Vadot clock-names = "core", "iface"; 9018bab661aSEmmanuel Vadot clock-frequency = <400000>; 9028bab661aSEmmanuel Vadot dmas = <&blsp1_dma 6>, <&blsp1_dma 7>; 9038bab661aSEmmanuel Vadot dma-names = "tx", "rx"; 9048bab661aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 9058bab661aSEmmanuel Vadot pinctrl-0 = <&blsp1_i2c2_default>; 9068bab661aSEmmanuel Vadot pinctrl-1 = <&blsp1_i2c2_default>; 9078bab661aSEmmanuel Vadot #address-cells = <1>; 9088bab661aSEmmanuel Vadot #size-cells = <0>; 9098bab661aSEmmanuel Vadot status = "disabled"; 9108bab661aSEmmanuel Vadot }; 9118bab661aSEmmanuel Vadot 9128bab661aSEmmanuel Vadot blsp1_i2c4: i2c@78b8000 { 9138bab661aSEmmanuel Vadot compatible = "qcom,i2c-qup-v2.2.1"; 9148bab661aSEmmanuel Vadot reg = <0x078b8000 0x500>; 9158bab661aSEmmanuel Vadot interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 9168bab661aSEmmanuel Vadot clocks = <&gcc GCC_BLSP1_QUP4_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; 9178bab661aSEmmanuel Vadot clock-names = "core", "iface"; 9188bab661aSEmmanuel Vadot clock-frequency = <400000>; 9198bab661aSEmmanuel Vadot dmas = <&blsp1_dma 10>, <&blsp1_dma 11>; 9208bab661aSEmmanuel Vadot dma-names = "tx", "rx"; 9218bab661aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 9228bab661aSEmmanuel Vadot pinctrl-0 = <&blsp1_i2c4_default>; 9238bab661aSEmmanuel Vadot pinctrl-1 = <&blsp1_i2c4_sleep>; 9248bab661aSEmmanuel Vadot #address-cells = <1>; 9258bab661aSEmmanuel Vadot #size-cells = <0>; 9268bab661aSEmmanuel Vadot status = "disabled"; 9278bab661aSEmmanuel Vadot }; 9288bab661aSEmmanuel Vadot 9298bab661aSEmmanuel Vadot otg: usb@78db000 { 9308bab661aSEmmanuel Vadot compatible = "qcom,ci-hdrc"; 9318bab661aSEmmanuel Vadot reg = <0x078db000 0x200>, 9328bab661aSEmmanuel Vadot <0x078db200 0x200>; 9338bab661aSEmmanuel Vadot interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>, 9348bab661aSEmmanuel Vadot <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>; 9358bab661aSEmmanuel Vadot clocks = <&gcc GCC_USB_HS_AHB_CLK>, <&gcc GCC_USB_HS_SYSTEM_CLK>; 9368bab661aSEmmanuel Vadot clock-names = "iface", "core"; 9378bab661aSEmmanuel Vadot assigned-clocks = <&gcc GCC_USB_HS_SYSTEM_CLK>; 9388bab661aSEmmanuel Vadot assigned-clock-rates = <80000000>; 9398bab661aSEmmanuel Vadot resets = <&gcc RST_USB_HS_BCR>; 9408bab661aSEmmanuel Vadot reset-names = "core"; 9418bab661aSEmmanuel Vadot ahb-burst-config = <0>; 9428bab661aSEmmanuel Vadot dr_mode = "peripheral"; 9438bab661aSEmmanuel Vadot phy_type = "ulpi"; 9448bab661aSEmmanuel Vadot phy-names = "usb-phy"; 9458bab661aSEmmanuel Vadot phys = <&usb_hs_phy>; 9468bab661aSEmmanuel Vadot status = "disabled"; 9478bab661aSEmmanuel Vadot #reset-cells = <1>; 9488bab661aSEmmanuel Vadot }; 9498bab661aSEmmanuel Vadot 9508bab661aSEmmanuel Vadot sdhc_3: mmc@7a24000 { 9518bab661aSEmmanuel Vadot compatible = "qcom,msm8976-sdhci", "qcom,sdhci-msm-v4"; 9528bab661aSEmmanuel Vadot reg = <0x07a24900 0x11c>, <0x07a24000 0x800>; 9538bab661aSEmmanuel Vadot reg-names = "hc", "core"; 9548bab661aSEmmanuel Vadot 9558bab661aSEmmanuel Vadot interrupts = <GIC_SPI 295 IRQ_TYPE_LEVEL_HIGH>, 9568bab661aSEmmanuel Vadot <GIC_SPI 297 IRQ_TYPE_LEVEL_HIGH>; 9578bab661aSEmmanuel Vadot interrupt-names = "hc_irq", "pwr_irq"; 9588bab661aSEmmanuel Vadot 9598bab661aSEmmanuel Vadot clocks = <&gcc GCC_SDCC3_AHB_CLK>, 9608bab661aSEmmanuel Vadot <&gcc GCC_SDCC3_APPS_CLK>, 9618bab661aSEmmanuel Vadot <&rpmcc RPM_SMD_XO_CLK_SRC>; 9628bab661aSEmmanuel Vadot clock-names = "iface", "core", "xo"; 9638bab661aSEmmanuel Vadot 9648bab661aSEmmanuel Vadot status = "disabled"; 9658bab661aSEmmanuel Vadot }; 9668bab661aSEmmanuel Vadot 9678bab661aSEmmanuel Vadot blsp2_dma: dma-controller@7ac4000 { 9688bab661aSEmmanuel Vadot compatible = "qcom,bam-v1.7.0"; 9698bab661aSEmmanuel Vadot reg = <0x07ac4000 0x1f000>; 9708bab661aSEmmanuel Vadot interrupts = <GIC_SPI 239 IRQ_TYPE_LEVEL_HIGH>; 9718bab661aSEmmanuel Vadot clocks = <&gcc GCC_BLSP2_AHB_CLK>; 9728bab661aSEmmanuel Vadot clock-names = "bam_clk"; 9738bab661aSEmmanuel Vadot #dma-cells = <1>; 9748bab661aSEmmanuel Vadot qcom,ee = <0>; 9758bab661aSEmmanuel Vadot }; 9768bab661aSEmmanuel Vadot 9778bab661aSEmmanuel Vadot blsp2_uart2: serial@7af0000 { 9788bab661aSEmmanuel Vadot compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 9798bab661aSEmmanuel Vadot reg = <0x07af0000 0x200>; 9808bab661aSEmmanuel Vadot interrupts = <GIC_SPI 307 IRQ_TYPE_LEVEL_HIGH>; 9818bab661aSEmmanuel Vadot clocks = <&gcc GCC_BLSP2_UART2_APPS_CLK>, <&gcc GCC_BLSP2_AHB_CLK>; 9828bab661aSEmmanuel Vadot clock-names = "core", "iface"; 9838bab661aSEmmanuel Vadot dmas = <&blsp2_dma 0>, <&blsp2_dma 1>; 9848bab661aSEmmanuel Vadot dma-names = "tx", "rx"; 9858bab661aSEmmanuel Vadot status = "disabled"; 9868bab661aSEmmanuel Vadot }; 9878bab661aSEmmanuel Vadot 9888bab661aSEmmanuel Vadot blsp2_i2c2: i2c@7af6000 { 9898bab661aSEmmanuel Vadot compatible = "qcom,i2c-qup-v2.2.1"; 9908bab661aSEmmanuel Vadot reg = <0x07af6000 0x600>; 9918bab661aSEmmanuel Vadot interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>; 9928bab661aSEmmanuel Vadot clocks = <&gcc GCC_BLSP2_QUP2_I2C_APPS_CLK>, <&gcc GCC_BLSP2_AHB_CLK>; 9938bab661aSEmmanuel Vadot clock-names = "core", "iface"; 9948bab661aSEmmanuel Vadot clock-frequency = <400000>; 9958bab661aSEmmanuel Vadot dmas = <&blsp2_dma 6>, <&blsp2_dma 7>; 9968bab661aSEmmanuel Vadot dma-names = "tx", "rx"; 9978bab661aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 9988bab661aSEmmanuel Vadot pinctrl-0 = <&blsp2_i2c2_default>; 9998bab661aSEmmanuel Vadot pinctrl-1 = <&blsp2_i2c2_sleep>; 10008bab661aSEmmanuel Vadot #address-cells = <1>; 10018bab661aSEmmanuel Vadot #size-cells = <0>; 10028bab661aSEmmanuel Vadot status = "disabled"; 10038bab661aSEmmanuel Vadot }; 10048bab661aSEmmanuel Vadot 10058bab661aSEmmanuel Vadot blsp2_i2c4: i2c@7af8000 { 10068bab661aSEmmanuel Vadot compatible = "qcom,i2c-qup-v2.2.1"; 10078bab661aSEmmanuel Vadot reg = <0x07af8000 0x600>; 10088bab661aSEmmanuel Vadot interrupts = <GIC_SPI 302 IRQ_TYPE_LEVEL_HIGH>; 10098bab661aSEmmanuel Vadot clocks = <&gcc GCC_BLSP2_QUP4_I2C_APPS_CLK>, <&gcc GCC_BLSP2_AHB_CLK>; 10108bab661aSEmmanuel Vadot clock-names = "core", "iface"; 10118bab661aSEmmanuel Vadot clock-frequency = <400000>; 10128bab661aSEmmanuel Vadot dmas = <&blsp2_dma 10>, <&blsp2_dma 11>; 10138bab661aSEmmanuel Vadot dma-names = "tx", "rx"; 10148bab661aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 10158bab661aSEmmanuel Vadot pinctrl-0 = <&blsp2_i2c4_default>; 10168bab661aSEmmanuel Vadot pinctrl-1 = <&blsp2_i2c4_sleep>; 10178bab661aSEmmanuel Vadot #address-cells = <1>; 10188bab661aSEmmanuel Vadot #size-cells = <0>; 10198bab661aSEmmanuel Vadot status = "disabled"; 10208bab661aSEmmanuel Vadot }; 10218bab661aSEmmanuel Vadot 10228bab661aSEmmanuel Vadot intc: interrupt-controller@b000000 { 10238bab661aSEmmanuel Vadot compatible = "qcom,msm-qgic2"; 10248bab661aSEmmanuel Vadot reg = <0x0b000000 0x1000>, <0x0b002000 0x1000>; 10258bab661aSEmmanuel Vadot interrupt-controller; 10268bab661aSEmmanuel Vadot #interrupt-cells = <3>; 10278bab661aSEmmanuel Vadot }; 10288bab661aSEmmanuel Vadot 10298bab661aSEmmanuel Vadot apcs: mailbox@b011000 { 10308bab661aSEmmanuel Vadot compatible = "qcom,msm8976-apcs-kpss-global", "syscon"; 10318bab661aSEmmanuel Vadot reg = <0x0b011000 0x1000>; 10328bab661aSEmmanuel Vadot #mbox-cells = <1>; 10338bab661aSEmmanuel Vadot }; 10348bab661aSEmmanuel Vadot 10358bab661aSEmmanuel Vadot timer@b120000 { 10368bab661aSEmmanuel Vadot compatible = "arm,armv7-timer-mem"; 10378bab661aSEmmanuel Vadot reg = <0x0b120000 0x1000>; 10388bab661aSEmmanuel Vadot #address-cells = <1>; 10398bab661aSEmmanuel Vadot #size-cells = <1>; 10408bab661aSEmmanuel Vadot ranges; 10418bab661aSEmmanuel Vadot clock-frequency = <19200000>; 10428bab661aSEmmanuel Vadot 10438bab661aSEmmanuel Vadot frame@b121000 { 10448bab661aSEmmanuel Vadot reg = <0x0b121000 0x1000>, <0x0b122000 0x1000>; 10458bab661aSEmmanuel Vadot interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, 10468bab661aSEmmanuel Vadot <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 10478bab661aSEmmanuel Vadot frame-number = <0>; 10488bab661aSEmmanuel Vadot }; 10498bab661aSEmmanuel Vadot 10508bab661aSEmmanuel Vadot frame@b123000 { 10518bab661aSEmmanuel Vadot reg = <0x0b123000 0x1000>; 10528bab661aSEmmanuel Vadot interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; 10538bab661aSEmmanuel Vadot frame-number = <1>; 10548bab661aSEmmanuel Vadot status = "disabled"; 10558bab661aSEmmanuel Vadot }; 10568bab661aSEmmanuel Vadot 10578bab661aSEmmanuel Vadot frame@b124000 { 10588bab661aSEmmanuel Vadot reg = <0x0b124000 0x1000>; 10598bab661aSEmmanuel Vadot interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 10608bab661aSEmmanuel Vadot frame-number = <2>; 10618bab661aSEmmanuel Vadot status = "disabled"; 10628bab661aSEmmanuel Vadot }; 10638bab661aSEmmanuel Vadot 10648bab661aSEmmanuel Vadot frame@b125000 { 10658bab661aSEmmanuel Vadot reg = <0x0b125000 0x1000>; 10668bab661aSEmmanuel Vadot interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 10678bab661aSEmmanuel Vadot frame-number = <3>; 10688bab661aSEmmanuel Vadot status = "disabled"; 10698bab661aSEmmanuel Vadot }; 10708bab661aSEmmanuel Vadot 10718bab661aSEmmanuel Vadot frame@b126000 { 10728bab661aSEmmanuel Vadot reg = <0x0b126000 0x1000>; 10738bab661aSEmmanuel Vadot interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 10748bab661aSEmmanuel Vadot frame-number = <4>; 10758bab661aSEmmanuel Vadot status = "disabled"; 10768bab661aSEmmanuel Vadot }; 10778bab661aSEmmanuel Vadot 10788bab661aSEmmanuel Vadot frame@b127000 { 10798bab661aSEmmanuel Vadot reg = <0x0b127000 0x1000>; 10808bab661aSEmmanuel Vadot interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 10818bab661aSEmmanuel Vadot frame-number = <5>; 10828bab661aSEmmanuel Vadot status = "disabled"; 10838bab661aSEmmanuel Vadot }; 10848bab661aSEmmanuel Vadot 10858bab661aSEmmanuel Vadot frame@b128000 { 10868bab661aSEmmanuel Vadot reg = <0x0b128000 0x1000>; 10878bab661aSEmmanuel Vadot interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 10888bab661aSEmmanuel Vadot frame-number = <6>; 10898bab661aSEmmanuel Vadot status = "disabled"; 10908bab661aSEmmanuel Vadot }; 10918bab661aSEmmanuel Vadot }; 10928bab661aSEmmanuel Vadot 10938bab661aSEmmanuel Vadot imem: sram@8600000 { 10948bab661aSEmmanuel Vadot compatible = "qcom,msm8976-imem", "syscon", "simple-mfd"; 10958bab661aSEmmanuel Vadot reg = <0x08600000 0x1000>; 10968bab661aSEmmanuel Vadot #address-cells = <1>; 10978bab661aSEmmanuel Vadot #size-cells = <1>; 10988bab661aSEmmanuel Vadot 10998bab661aSEmmanuel Vadot ranges = <0 0x08600000 0x1000>; 11008bab661aSEmmanuel Vadot 11018bab661aSEmmanuel Vadot pil-reloc@94c { 11028bab661aSEmmanuel Vadot compatible = "qcom,pil-reloc-info"; 11038bab661aSEmmanuel Vadot reg = <0x94c 0xc8>; 11048bab661aSEmmanuel Vadot }; 11058bab661aSEmmanuel Vadot }; 11068bab661aSEmmanuel Vadot }; 11078bab661aSEmmanuel Vadot 11088bab661aSEmmanuel Vadot thermal-zones { 11098bab661aSEmmanuel Vadot aoss0-thermal { 11108bab661aSEmmanuel Vadot polling-delay-passive = <250>; 11118bab661aSEmmanuel Vadot polling-delay = <1000>; 11128bab661aSEmmanuel Vadot 11138bab661aSEmmanuel Vadot thermal-sensors = <&tsens 0>; 11148bab661aSEmmanuel Vadot 11158bab661aSEmmanuel Vadot trips { 11168bab661aSEmmanuel Vadot aoss0_alert0: trip-point0 { 11178bab661aSEmmanuel Vadot temperature = <75000>; 11188bab661aSEmmanuel Vadot hysteresis = <2000>; 11198bab661aSEmmanuel Vadot type = "hot"; 11208bab661aSEmmanuel Vadot }; 11218bab661aSEmmanuel Vadot }; 11228bab661aSEmmanuel Vadot }; 11238bab661aSEmmanuel Vadot 11248bab661aSEmmanuel Vadot modem-thermal { 11258bab661aSEmmanuel Vadot polling-delay-passive = <250>; 11268bab661aSEmmanuel Vadot polling-delay = <1000>; 11278bab661aSEmmanuel Vadot 11288bab661aSEmmanuel Vadot thermal-sensors = <&tsens 1>; 11298bab661aSEmmanuel Vadot trips { 11308bab661aSEmmanuel Vadot modem_alert0: trip-point0 { 11318bab661aSEmmanuel Vadot temperature = <75000>; 11328bab661aSEmmanuel Vadot hysteresis = <2000>; 11338bab661aSEmmanuel Vadot type = "hot"; 11348bab661aSEmmanuel Vadot }; 11358bab661aSEmmanuel Vadot }; 11368bab661aSEmmanuel Vadot }; 11378bab661aSEmmanuel Vadot 11388bab661aSEmmanuel Vadot qdsp-thermal { 11398bab661aSEmmanuel Vadot polling-delay-passive = <250>; 11408bab661aSEmmanuel Vadot polling-delay = <1000>; 11418bab661aSEmmanuel Vadot 11428bab661aSEmmanuel Vadot thermal-sensors = <&tsens 2>; 11438bab661aSEmmanuel Vadot trips { 11448bab661aSEmmanuel Vadot qdsp_alert0: trip-point0 { 11458bab661aSEmmanuel Vadot temperature = <75000>; 11468bab661aSEmmanuel Vadot hysteresis = <2000>; 11478bab661aSEmmanuel Vadot type = "hot"; 11488bab661aSEmmanuel Vadot }; 11498bab661aSEmmanuel Vadot }; 11508bab661aSEmmanuel Vadot }; 11518bab661aSEmmanuel Vadot 11528bab661aSEmmanuel Vadot cam-isp-thermal { 11538bab661aSEmmanuel Vadot polling-delay-passive = <250>; 11548bab661aSEmmanuel Vadot polling-delay = <1000>; 11558bab661aSEmmanuel Vadot 11568bab661aSEmmanuel Vadot thermal-sensors = <&tsens 3>; 11578bab661aSEmmanuel Vadot trips { 11588bab661aSEmmanuel Vadot cam_isp_alert0: trip-point0 { 11598bab661aSEmmanuel Vadot temperature = <75000>; 11608bab661aSEmmanuel Vadot hysteresis = <2000>; 11618bab661aSEmmanuel Vadot type = "hot"; 11628bab661aSEmmanuel Vadot }; 11638bab661aSEmmanuel Vadot }; 11648bab661aSEmmanuel Vadot }; 11658bab661aSEmmanuel Vadot 11668bab661aSEmmanuel Vadot cpu4-thermal { 11678bab661aSEmmanuel Vadot polling-delay-passive = <250>; 11688bab661aSEmmanuel Vadot polling-delay = <1000>; 11698bab661aSEmmanuel Vadot thermal-sensors = <&tsens 4>; 11708bab661aSEmmanuel Vadot 11718bab661aSEmmanuel Vadot trips { 11728bab661aSEmmanuel Vadot cpu4_alert0: trip-point0 { 11738bab661aSEmmanuel Vadot temperature = <50000>; 11748bab661aSEmmanuel Vadot hysteresis = <2000>; 11758bab661aSEmmanuel Vadot type = "hot"; 11768bab661aSEmmanuel Vadot }; 11778bab661aSEmmanuel Vadot cpu4_alert1: trip-point1 { 11788bab661aSEmmanuel Vadot temperature = <55000>; 11798bab661aSEmmanuel Vadot hysteresis = <2000>; 11808bab661aSEmmanuel Vadot type = "passive"; 11818bab661aSEmmanuel Vadot }; 11828bab661aSEmmanuel Vadot cpu4_crit: cpu-crit { 11838bab661aSEmmanuel Vadot temperature = <75000>; 11848bab661aSEmmanuel Vadot hysteresis = <2000>; 11858bab661aSEmmanuel Vadot type = "critical"; 11868bab661aSEmmanuel Vadot }; 11878bab661aSEmmanuel Vadot }; 11888bab661aSEmmanuel Vadot }; 11898bab661aSEmmanuel Vadot 11908bab661aSEmmanuel Vadot cpu5-thermal { 11918bab661aSEmmanuel Vadot polling-delay-passive = <250>; 11928bab661aSEmmanuel Vadot polling-delay = <1000>; 11938bab661aSEmmanuel Vadot thermal-sensors = <&tsens 5>; 11948bab661aSEmmanuel Vadot 11958bab661aSEmmanuel Vadot trips { 11968bab661aSEmmanuel Vadot cpu5_alert0: trip-point0 { 11978bab661aSEmmanuel Vadot temperature = <50000>; 11988bab661aSEmmanuel Vadot hysteresis = <2000>; 11998bab661aSEmmanuel Vadot type = "hot"; 12008bab661aSEmmanuel Vadot }; 12018bab661aSEmmanuel Vadot cpu5_alert1: trip-point1 { 12028bab661aSEmmanuel Vadot temperature = <55000>; 12038bab661aSEmmanuel Vadot hysteresis = <2000>; 12048bab661aSEmmanuel Vadot type = "passive"; 12058bab661aSEmmanuel Vadot }; 12068bab661aSEmmanuel Vadot cpu5_crit: cpu-crit { 12078bab661aSEmmanuel Vadot temperature = <75000>; 12088bab661aSEmmanuel Vadot hysteresis = <2000>; 12098bab661aSEmmanuel Vadot type = "critical"; 12108bab661aSEmmanuel Vadot }; 12118bab661aSEmmanuel Vadot }; 12128bab661aSEmmanuel Vadot }; 12138bab661aSEmmanuel Vadot 12148bab661aSEmmanuel Vadot cpu6-thermal { 12158bab661aSEmmanuel Vadot polling-delay-passive = <250>; 12168bab661aSEmmanuel Vadot polling-delay = <1000>; 12178bab661aSEmmanuel Vadot thermal-sensors = <&tsens 6>; 12188bab661aSEmmanuel Vadot 12198bab661aSEmmanuel Vadot trips { 12208bab661aSEmmanuel Vadot cpu6_alert0: trip-point0 { 12218bab661aSEmmanuel Vadot temperature = <50000>; 12228bab661aSEmmanuel Vadot hysteresis = <2000>; 12238bab661aSEmmanuel Vadot type = "hot"; 12248bab661aSEmmanuel Vadot }; 12258bab661aSEmmanuel Vadot cpu6_alert1: trip-point1 { 12268bab661aSEmmanuel Vadot temperature = <55000>; 12278bab661aSEmmanuel Vadot hysteresis = <2000>; 12288bab661aSEmmanuel Vadot type = "passive"; 12298bab661aSEmmanuel Vadot }; 12308bab661aSEmmanuel Vadot cpu6_crit: cpu-crit { 12318bab661aSEmmanuel Vadot temperature = <75000>; 12328bab661aSEmmanuel Vadot hysteresis = <2000>; 12338bab661aSEmmanuel Vadot type = "critical"; 12348bab661aSEmmanuel Vadot }; 12358bab661aSEmmanuel Vadot }; 12368bab661aSEmmanuel Vadot }; 12378bab661aSEmmanuel Vadot 12388bab661aSEmmanuel Vadot cpu7-thermal { 12398bab661aSEmmanuel Vadot polling-delay-passive = <250>; 12408bab661aSEmmanuel Vadot polling-delay = <1000>; 12418bab661aSEmmanuel Vadot thermal-sensors = <&tsens 7>; 12428bab661aSEmmanuel Vadot 12438bab661aSEmmanuel Vadot trips { 12448bab661aSEmmanuel Vadot cpu7_alert0: trip-point0 { 12458bab661aSEmmanuel Vadot temperature = <50000>; 12468bab661aSEmmanuel Vadot hysteresis = <2000>; 12478bab661aSEmmanuel Vadot type = "hot"; 12488bab661aSEmmanuel Vadot }; 12498bab661aSEmmanuel Vadot cpu7_alert1: trip-point1 { 12508bab661aSEmmanuel Vadot temperature = <55000>; 12518bab661aSEmmanuel Vadot hysteresis = <2000>; 12528bab661aSEmmanuel Vadot type = "passive"; 12538bab661aSEmmanuel Vadot }; 12548bab661aSEmmanuel Vadot cpu7_crit: cpu-crit { 12558bab661aSEmmanuel Vadot temperature = <75000>; 12568bab661aSEmmanuel Vadot hysteresis = <2000>; 12578bab661aSEmmanuel Vadot type = "critical"; 12588bab661aSEmmanuel Vadot }; 12598bab661aSEmmanuel Vadot }; 12608bab661aSEmmanuel Vadot }; 12618bab661aSEmmanuel Vadot 12628bab661aSEmmanuel Vadot big-l2-thermal { 12638bab661aSEmmanuel Vadot polling-delay-passive = <250>; 12648bab661aSEmmanuel Vadot polling-delay = <1000>; 12658bab661aSEmmanuel Vadot thermal-sensors = <&tsens 8>; 12668bab661aSEmmanuel Vadot 12678bab661aSEmmanuel Vadot trips { 12688bab661aSEmmanuel Vadot l2_alert0: trip-point0 { 12698bab661aSEmmanuel Vadot temperature = <50000>; 12708bab661aSEmmanuel Vadot hysteresis = <2000>; 12718bab661aSEmmanuel Vadot type = "hot"; 12728bab661aSEmmanuel Vadot }; 12738bab661aSEmmanuel Vadot l2_alert1: trip-point1 { 12748bab661aSEmmanuel Vadot temperature = <55000>; 12758bab661aSEmmanuel Vadot hysteresis = <2000>; 12768bab661aSEmmanuel Vadot type = "passive"; 12778bab661aSEmmanuel Vadot }; 12788bab661aSEmmanuel Vadot l2_crit: l2-crit { 12798bab661aSEmmanuel Vadot temperature = <75000>; 12808bab661aSEmmanuel Vadot hysteresis = <2000>; 12818bab661aSEmmanuel Vadot type = "critical"; 12828bab661aSEmmanuel Vadot }; 12838bab661aSEmmanuel Vadot }; 12848bab661aSEmmanuel Vadot }; 12858bab661aSEmmanuel Vadot 12868bab661aSEmmanuel Vadot cpu0-thermal { 12878bab661aSEmmanuel Vadot polling-delay-passive = <250>; 12888bab661aSEmmanuel Vadot polling-delay = <1000>; 12898bab661aSEmmanuel Vadot thermal-sensors = <&tsens 9>; 12908bab661aSEmmanuel Vadot 12918bab661aSEmmanuel Vadot trips { 12928bab661aSEmmanuel Vadot cpu0_alert0: trip-point0 { 12938bab661aSEmmanuel Vadot temperature = <50000>; 12948bab661aSEmmanuel Vadot hysteresis = <2000>; 12958bab661aSEmmanuel Vadot type = "hot"; 12968bab661aSEmmanuel Vadot }; 12978bab661aSEmmanuel Vadot cpu0_alert1: trip-point1 { 12988bab661aSEmmanuel Vadot temperature = <55000>; 12998bab661aSEmmanuel Vadot hysteresis = <2000>; 13008bab661aSEmmanuel Vadot type = "passive"; 13018bab661aSEmmanuel Vadot }; 13028bab661aSEmmanuel Vadot cpu0_crit: cpu-crit { 13038bab661aSEmmanuel Vadot temperature = <75000>; 13048bab661aSEmmanuel Vadot hysteresis = <2000>; 13058bab661aSEmmanuel Vadot type = "critical"; 13068bab661aSEmmanuel Vadot }; 13078bab661aSEmmanuel Vadot }; 13088bab661aSEmmanuel Vadot }; 13098bab661aSEmmanuel Vadot 13108bab661aSEmmanuel Vadot gpu-thermal { 13118bab661aSEmmanuel Vadot polling-delay-passive = <250>; 13128bab661aSEmmanuel Vadot polling-delay = <1000>; 13138bab661aSEmmanuel Vadot thermal-sensors = <&tsens 10>; 13148bab661aSEmmanuel Vadot 13158bab661aSEmmanuel Vadot trips { 13168bab661aSEmmanuel Vadot gpu_alert0: trip-point0 { 13178bab661aSEmmanuel Vadot temperature = <50000>; 13188bab661aSEmmanuel Vadot hysteresis = <2000>; 13198bab661aSEmmanuel Vadot type = "hot"; 13208bab661aSEmmanuel Vadot }; 13218bab661aSEmmanuel Vadot gpu_alert1: trip-point1 { 13228bab661aSEmmanuel Vadot temperature = <55000>; 13238bab661aSEmmanuel Vadot hysteresis = <2000>; 13248bab661aSEmmanuel Vadot type = "passive"; 13258bab661aSEmmanuel Vadot }; 13268bab661aSEmmanuel Vadot gpu_crit: gpu-crit { 13278bab661aSEmmanuel Vadot temperature = <75000>; 13288bab661aSEmmanuel Vadot hysteresis = <2000>; 13298bab661aSEmmanuel Vadot type = "critical"; 13308bab661aSEmmanuel Vadot }; 13318bab661aSEmmanuel Vadot }; 13328bab661aSEmmanuel Vadot }; 13338bab661aSEmmanuel Vadot }; 13348bab661aSEmmanuel Vadot 13358bab661aSEmmanuel Vadot timer { 13368bab661aSEmmanuel Vadot compatible = "arm,armv8-timer"; 13378bab661aSEmmanuel Vadot interrupts = <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>, 13388bab661aSEmmanuel Vadot <GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>, 13398bab661aSEmmanuel Vadot <GIC_PPI 4 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>, 13408bab661aSEmmanuel Vadot <GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>; 13418bab661aSEmmanuel Vadot clock-frequency = <19200000>; 13428bab661aSEmmanuel Vadot }; 13438bab661aSEmmanuel Vadot}; 1344