107c8ded6SRichard Acayan// SPDX-License-Identifier: GPL-2.0 207c8ded6SRichard Acayan/* 307c8ded6SRichard Acayan * SDM670 SoC device tree source, adapted from SDM845 SoC device tree 407c8ded6SRichard Acayan * 507c8ded6SRichard Acayan * Copyright (c) 2018, The Linux Foundation. All rights reserved. 607c8ded6SRichard Acayan * Copyright (c) 2022, Richard Acayan. All rights reserved. 707c8ded6SRichard Acayan */ 807c8ded6SRichard Acayan 9*441ef858SRichard Acayan#include <dt-bindings/clock/qcom,camcc-sdm845.h> 105f8ba4f2SRichard Acayan#include <dt-bindings/clock/qcom,dispcc-sdm845.h> 11dc489ba0SKrzysztof Kozlowski#include <dt-bindings/clock/qcom,dsi-phy-28nm.h> 1207c8ded6SRichard Acayan#include <dt-bindings/clock/qcom,gcc-sdm845.h> 13cd89483aSRichard Acayan#include <dt-bindings/clock/qcom,gpucc-sdm845.h> 1407c8ded6SRichard Acayan#include <dt-bindings/clock/qcom,rpmh.h> 1507c8ded6SRichard Acayan#include <dt-bindings/dma/qcom-gpi.h> 1607c8ded6SRichard Acayan#include <dt-bindings/gpio/gpio.h> 170c665213SRichard Acayan#include <dt-bindings/interconnect/qcom,osm-l3.h> 1817289c01SRichard Acayan#include <dt-bindings/interconnect/qcom,sdm670-rpmh.h> 1907c8ded6SRichard Acayan#include <dt-bindings/interrupt-controller/arm-gic.h> 2007c8ded6SRichard Acayan#include <dt-bindings/phy/phy-qcom-qusb2.h> 2107c8ded6SRichard Acayan#include <dt-bindings/power/qcom-rpmpd.h> 2207c8ded6SRichard Acayan#include <dt-bindings/soc/qcom,rpmh-rsc.h> 2307c8ded6SRichard Acayan 2407c8ded6SRichard Acayan/ { 2507c8ded6SRichard Acayan interrupt-parent = <&intc>; 2607c8ded6SRichard Acayan 2707c8ded6SRichard Acayan #address-cells = <2>; 2807c8ded6SRichard Acayan #size-cells = <2>; 2907c8ded6SRichard Acayan 3007c8ded6SRichard Acayan aliases { }; 3107c8ded6SRichard Acayan 3207c8ded6SRichard Acayan chosen { }; 3307c8ded6SRichard Acayan 3455cc39c7SDmitry Baryshkov clocks { 3555cc39c7SDmitry Baryshkov sleep_clk: sleep-clk { 3655cc39c7SDmitry Baryshkov compatible = "fixed-clock"; 3755cc39c7SDmitry Baryshkov #clock-cells = <0>; 3855cc39c7SDmitry Baryshkov clock-frequency = <32764>; 3955cc39c7SDmitry Baryshkov }; 4055cc39c7SDmitry Baryshkov 4155cc39c7SDmitry Baryshkov xo_board: xo-board { 4255cc39c7SDmitry Baryshkov compatible = "fixed-clock"; 4355cc39c7SDmitry Baryshkov #clock-cells = <0>; 4455cc39c7SDmitry Baryshkov clock-frequency = <38400000>; 4555cc39c7SDmitry Baryshkov }; 4655cc39c7SDmitry Baryshkov }; 4755cc39c7SDmitry Baryshkov 4807c8ded6SRichard Acayan cpus { 4907c8ded6SRichard Acayan #address-cells = <2>; 5007c8ded6SRichard Acayan #size-cells = <0>; 5107c8ded6SRichard Acayan 524c047c47SKrzysztof Kozlowski cpu0: cpu@0 { 5307c8ded6SRichard Acayan device_type = "cpu"; 5407c8ded6SRichard Acayan compatible = "qcom,kryo360"; 5507c8ded6SRichard Acayan reg = <0x0 0x0>; 5607c8ded6SRichard Acayan enable-method = "psci"; 57605a981eSRichard Acayan capacity-dmips-mhz = <610>; 58605a981eSRichard Acayan dynamic-power-coefficient = <203>; 590c665213SRichard Acayan qcom,freq-domain = <&cpufreq_hw 0>; 600c665213SRichard Acayan operating-points-v2 = <&cpu0_opp_table>; 610c665213SRichard Acayan interconnects = <&gladiator_noc MASTER_AMPSS_M0 3 &mem_noc SLAVE_EBI_CH0 3>, 620c665213SRichard Acayan <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; 634c047c47SKrzysztof Kozlowski power-domains = <&cpu_pd0>; 6407c8ded6SRichard Acayan power-domain-names = "psci"; 654c047c47SKrzysztof Kozlowski next-level-cache = <&l2_0>; 664c047c47SKrzysztof Kozlowski l2_0: l2-cache { 6707c8ded6SRichard Acayan compatible = "cache"; 684c047c47SKrzysztof Kozlowski next-level-cache = <&l3_0>; 699c6e72fbSKrzysztof Kozlowski cache-level = <2>; 709c6e72fbSKrzysztof Kozlowski cache-unified; 714c047c47SKrzysztof Kozlowski l3_0: l3-cache { 7207c8ded6SRichard Acayan compatible = "cache"; 739c6e72fbSKrzysztof Kozlowski cache-level = <3>; 749c6e72fbSKrzysztof Kozlowski cache-unified; 7507c8ded6SRichard Acayan }; 7607c8ded6SRichard Acayan }; 7707c8ded6SRichard Acayan }; 7807c8ded6SRichard Acayan 794c047c47SKrzysztof Kozlowski cpu1: cpu@100 { 8007c8ded6SRichard Acayan device_type = "cpu"; 8107c8ded6SRichard Acayan compatible = "qcom,kryo360"; 8207c8ded6SRichard Acayan reg = <0x0 0x100>; 8307c8ded6SRichard Acayan enable-method = "psci"; 84605a981eSRichard Acayan capacity-dmips-mhz = <610>; 85605a981eSRichard Acayan dynamic-power-coefficient = <203>; 860c665213SRichard Acayan qcom,freq-domain = <&cpufreq_hw 0>; 870c665213SRichard Acayan operating-points-v2 = <&cpu0_opp_table>; 880c665213SRichard Acayan interconnects = <&gladiator_noc MASTER_AMPSS_M0 3 &mem_noc SLAVE_EBI_CH0 3>, 890c665213SRichard Acayan <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; 904c047c47SKrzysztof Kozlowski power-domains = <&cpu_pd1>; 9107c8ded6SRichard Acayan power-domain-names = "psci"; 924c047c47SKrzysztof Kozlowski next-level-cache = <&l2_100>; 934c047c47SKrzysztof Kozlowski l2_100: l2-cache { 9407c8ded6SRichard Acayan compatible = "cache"; 959c6e72fbSKrzysztof Kozlowski cache-level = <2>; 969c6e72fbSKrzysztof Kozlowski cache-unified; 974c047c47SKrzysztof Kozlowski next-level-cache = <&l3_0>; 9807c8ded6SRichard Acayan }; 9907c8ded6SRichard Acayan }; 10007c8ded6SRichard Acayan 1014c047c47SKrzysztof Kozlowski cpu2: cpu@200 { 10207c8ded6SRichard Acayan device_type = "cpu"; 10307c8ded6SRichard Acayan compatible = "qcom,kryo360"; 10407c8ded6SRichard Acayan reg = <0x0 0x200>; 10507c8ded6SRichard Acayan enable-method = "psci"; 106605a981eSRichard Acayan capacity-dmips-mhz = <610>; 107605a981eSRichard Acayan dynamic-power-coefficient = <203>; 1080c665213SRichard Acayan qcom,freq-domain = <&cpufreq_hw 0>; 1090c665213SRichard Acayan operating-points-v2 = <&cpu0_opp_table>; 1100c665213SRichard Acayan interconnects = <&gladiator_noc MASTER_AMPSS_M0 3 &mem_noc SLAVE_EBI_CH0 3>, 1110c665213SRichard Acayan <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; 1124c047c47SKrzysztof Kozlowski power-domains = <&cpu_pd2>; 11307c8ded6SRichard Acayan power-domain-names = "psci"; 1144c047c47SKrzysztof Kozlowski next-level-cache = <&l2_200>; 1154c047c47SKrzysztof Kozlowski l2_200: l2-cache { 11607c8ded6SRichard Acayan compatible = "cache"; 1179c6e72fbSKrzysztof Kozlowski cache-level = <2>; 1189c6e72fbSKrzysztof Kozlowski cache-unified; 1194c047c47SKrzysztof Kozlowski next-level-cache = <&l3_0>; 12007c8ded6SRichard Acayan }; 12107c8ded6SRichard Acayan }; 12207c8ded6SRichard Acayan 1234c047c47SKrzysztof Kozlowski cpu3: cpu@300 { 12407c8ded6SRichard Acayan device_type = "cpu"; 12507c8ded6SRichard Acayan compatible = "qcom,kryo360"; 12607c8ded6SRichard Acayan reg = <0x0 0x300>; 12707c8ded6SRichard Acayan enable-method = "psci"; 128605a981eSRichard Acayan capacity-dmips-mhz = <610>; 129605a981eSRichard Acayan dynamic-power-coefficient = <203>; 1300c665213SRichard Acayan qcom,freq-domain = <&cpufreq_hw 0>; 1310c665213SRichard Acayan operating-points-v2 = <&cpu0_opp_table>; 1320c665213SRichard Acayan interconnects = <&gladiator_noc MASTER_AMPSS_M0 3 &mem_noc SLAVE_EBI_CH0 3>, 1330c665213SRichard Acayan <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; 1344c047c47SKrzysztof Kozlowski power-domains = <&cpu_pd3>; 13507c8ded6SRichard Acayan power-domain-names = "psci"; 1364c047c47SKrzysztof Kozlowski next-level-cache = <&l2_300>; 1374c047c47SKrzysztof Kozlowski l2_300: l2-cache { 13807c8ded6SRichard Acayan compatible = "cache"; 1399c6e72fbSKrzysztof Kozlowski cache-level = <2>; 1409c6e72fbSKrzysztof Kozlowski cache-unified; 1414c047c47SKrzysztof Kozlowski next-level-cache = <&l3_0>; 14207c8ded6SRichard Acayan }; 14307c8ded6SRichard Acayan }; 14407c8ded6SRichard Acayan 1454c047c47SKrzysztof Kozlowski cpu4: cpu@400 { 14607c8ded6SRichard Acayan device_type = "cpu"; 14707c8ded6SRichard Acayan compatible = "qcom,kryo360"; 14807c8ded6SRichard Acayan reg = <0x0 0x400>; 14907c8ded6SRichard Acayan enable-method = "psci"; 150605a981eSRichard Acayan capacity-dmips-mhz = <610>; 151605a981eSRichard Acayan dynamic-power-coefficient = <203>; 1520c665213SRichard Acayan qcom,freq-domain = <&cpufreq_hw 0>; 1530c665213SRichard Acayan operating-points-v2 = <&cpu0_opp_table>; 1540c665213SRichard Acayan interconnects = <&gladiator_noc MASTER_AMPSS_M0 3 &mem_noc SLAVE_EBI_CH0 3>, 1550c665213SRichard Acayan <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; 1564c047c47SKrzysztof Kozlowski power-domains = <&cpu_pd4>; 15707c8ded6SRichard Acayan power-domain-names = "psci"; 1584c047c47SKrzysztof Kozlowski next-level-cache = <&l2_400>; 1594c047c47SKrzysztof Kozlowski l2_400: l2-cache { 16007c8ded6SRichard Acayan compatible = "cache"; 1619c6e72fbSKrzysztof Kozlowski cache-level = <2>; 1629c6e72fbSKrzysztof Kozlowski cache-unified; 1634c047c47SKrzysztof Kozlowski next-level-cache = <&l3_0>; 16407c8ded6SRichard Acayan }; 16507c8ded6SRichard Acayan }; 16607c8ded6SRichard Acayan 1674c047c47SKrzysztof Kozlowski cpu5: cpu@500 { 16807c8ded6SRichard Acayan device_type = "cpu"; 16907c8ded6SRichard Acayan compatible = "qcom,kryo360"; 17007c8ded6SRichard Acayan reg = <0x0 0x500>; 17107c8ded6SRichard Acayan enable-method = "psci"; 172605a981eSRichard Acayan capacity-dmips-mhz = <610>; 173605a981eSRichard Acayan dynamic-power-coefficient = <203>; 1740c665213SRichard Acayan qcom,freq-domain = <&cpufreq_hw 0>; 1750c665213SRichard Acayan operating-points-v2 = <&cpu0_opp_table>; 1760c665213SRichard Acayan interconnects = <&gladiator_noc MASTER_AMPSS_M0 3 &mem_noc SLAVE_EBI_CH0 3>, 1770c665213SRichard Acayan <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; 1784c047c47SKrzysztof Kozlowski power-domains = <&cpu_pd5>; 17907c8ded6SRichard Acayan power-domain-names = "psci"; 1804c047c47SKrzysztof Kozlowski next-level-cache = <&l2_500>; 1814c047c47SKrzysztof Kozlowski l2_500: l2-cache { 18207c8ded6SRichard Acayan compatible = "cache"; 1839c6e72fbSKrzysztof Kozlowski cache-level = <2>; 1849c6e72fbSKrzysztof Kozlowski cache-unified; 1854c047c47SKrzysztof Kozlowski next-level-cache = <&l3_0>; 18607c8ded6SRichard Acayan }; 18707c8ded6SRichard Acayan }; 18807c8ded6SRichard Acayan 1894c047c47SKrzysztof Kozlowski cpu6: cpu@600 { 19007c8ded6SRichard Acayan device_type = "cpu"; 19107c8ded6SRichard Acayan compatible = "qcom,kryo360"; 19207c8ded6SRichard Acayan reg = <0x0 0x600>; 19307c8ded6SRichard Acayan enable-method = "psci"; 194605a981eSRichard Acayan capacity-dmips-mhz = <1024>; 195605a981eSRichard Acayan dynamic-power-coefficient = <393>; 1960c665213SRichard Acayan qcom,freq-domain = <&cpufreq_hw 1>; 1970c665213SRichard Acayan operating-points-v2 = <&cpu6_opp_table>; 1980c665213SRichard Acayan interconnects = <&gladiator_noc MASTER_AMPSS_M0 3 &mem_noc SLAVE_EBI_CH0 3>, 1990c665213SRichard Acayan <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; 2004c047c47SKrzysztof Kozlowski power-domains = <&cpu_pd6>; 20107c8ded6SRichard Acayan power-domain-names = "psci"; 2024c047c47SKrzysztof Kozlowski next-level-cache = <&l2_600>; 2034c047c47SKrzysztof Kozlowski l2_600: l2-cache { 20407c8ded6SRichard Acayan compatible = "cache"; 2059c6e72fbSKrzysztof Kozlowski cache-level = <2>; 2069c6e72fbSKrzysztof Kozlowski cache-unified; 2074c047c47SKrzysztof Kozlowski next-level-cache = <&l3_0>; 20807c8ded6SRichard Acayan }; 20907c8ded6SRichard Acayan }; 21007c8ded6SRichard Acayan 2114c047c47SKrzysztof Kozlowski cpu7: cpu@700 { 21207c8ded6SRichard Acayan device_type = "cpu"; 21307c8ded6SRichard Acayan compatible = "qcom,kryo360"; 21407c8ded6SRichard Acayan reg = <0x0 0x700>; 21507c8ded6SRichard Acayan enable-method = "psci"; 216605a981eSRichard Acayan capacity-dmips-mhz = <1024>; 217605a981eSRichard Acayan dynamic-power-coefficient = <393>; 2180c665213SRichard Acayan qcom,freq-domain = <&cpufreq_hw 1>; 2190c665213SRichard Acayan operating-points-v2 = <&cpu6_opp_table>; 2200c665213SRichard Acayan interconnects = <&gladiator_noc MASTER_AMPSS_M0 3 &mem_noc SLAVE_EBI_CH0 3>, 2210c665213SRichard Acayan <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; 2224c047c47SKrzysztof Kozlowski power-domains = <&cpu_pd7>; 22307c8ded6SRichard Acayan power-domain-names = "psci"; 2244c047c47SKrzysztof Kozlowski next-level-cache = <&l2_700>; 2254c047c47SKrzysztof Kozlowski l2_700: l2-cache { 22607c8ded6SRichard Acayan compatible = "cache"; 2279c6e72fbSKrzysztof Kozlowski cache-level = <2>; 2289c6e72fbSKrzysztof Kozlowski cache-unified; 2294c047c47SKrzysztof Kozlowski next-level-cache = <&l3_0>; 23007c8ded6SRichard Acayan }; 23107c8ded6SRichard Acayan }; 23207c8ded6SRichard Acayan 23307c8ded6SRichard Acayan cpu-map { 23407c8ded6SRichard Acayan cluster0 { 23507c8ded6SRichard Acayan core0 { 2364c047c47SKrzysztof Kozlowski cpu = <&cpu0>; 23707c8ded6SRichard Acayan }; 23807c8ded6SRichard Acayan 23907c8ded6SRichard Acayan core1 { 2404c047c47SKrzysztof Kozlowski cpu = <&cpu1>; 24107c8ded6SRichard Acayan }; 24207c8ded6SRichard Acayan 24307c8ded6SRichard Acayan core2 { 2444c047c47SKrzysztof Kozlowski cpu = <&cpu2>; 24507c8ded6SRichard Acayan }; 24607c8ded6SRichard Acayan 24707c8ded6SRichard Acayan core3 { 2484c047c47SKrzysztof Kozlowski cpu = <&cpu3>; 24907c8ded6SRichard Acayan }; 25007c8ded6SRichard Acayan 25107c8ded6SRichard Acayan core4 { 2524c047c47SKrzysztof Kozlowski cpu = <&cpu4>; 25307c8ded6SRichard Acayan }; 25407c8ded6SRichard Acayan 25507c8ded6SRichard Acayan core5 { 2564c047c47SKrzysztof Kozlowski cpu = <&cpu5>; 25707c8ded6SRichard Acayan }; 25807c8ded6SRichard Acayan 25907c8ded6SRichard Acayan core6 { 2604c047c47SKrzysztof Kozlowski cpu = <&cpu6>; 26107c8ded6SRichard Acayan }; 26207c8ded6SRichard Acayan 26307c8ded6SRichard Acayan core7 { 2644c047c47SKrzysztof Kozlowski cpu = <&cpu7>; 26507c8ded6SRichard Acayan }; 26607c8ded6SRichard Acayan }; 26707c8ded6SRichard Acayan }; 26807c8ded6SRichard Acayan 26907c8ded6SRichard Acayan idle-states { 27007c8ded6SRichard Acayan entry-method = "psci"; 27107c8ded6SRichard Acayan 2724c047c47SKrzysztof Kozlowski little_cpu_sleep_0: cpu-sleep-0-0 { 27307c8ded6SRichard Acayan compatible = "arm,idle-state"; 27407c8ded6SRichard Acayan idle-state-name = "little-rail-power-collapse"; 27507c8ded6SRichard Acayan arm,psci-suspend-param = <0x40000004>; 27607c8ded6SRichard Acayan entry-latency-us = <702>; 27707c8ded6SRichard Acayan exit-latency-us = <915>; 27807c8ded6SRichard Acayan min-residency-us = <1617>; 27907c8ded6SRichard Acayan local-timer-stop; 28007c8ded6SRichard Acayan }; 28107c8ded6SRichard Acayan 2824c047c47SKrzysztof Kozlowski big_cpu_sleep_0: cpu-sleep-1-0 { 28307c8ded6SRichard Acayan compatible = "arm,idle-state"; 28407c8ded6SRichard Acayan idle-state-name = "big-rail-power-collapse"; 28507c8ded6SRichard Acayan arm,psci-suspend-param = <0x40000004>; 28607c8ded6SRichard Acayan entry-latency-us = <526>; 28707c8ded6SRichard Acayan exit-latency-us = <1854>; 28807c8ded6SRichard Acayan min-residency-us = <2380>; 28907c8ded6SRichard Acayan local-timer-stop; 29007c8ded6SRichard Acayan }; 29107c8ded6SRichard Acayan }; 29207c8ded6SRichard Acayan 29307c8ded6SRichard Acayan domain-idle-states { 2944c047c47SKrzysztof Kozlowski cluster_sleep_0: cluster-sleep-0 { 29507c8ded6SRichard Acayan compatible = "domain-idle-state"; 29607c8ded6SRichard Acayan arm,psci-suspend-param = <0x4100c244>; 29707c8ded6SRichard Acayan entry-latency-us = <3263>; 29807c8ded6SRichard Acayan exit-latency-us = <6562>; 29907c8ded6SRichard Acayan min-residency-us = <9825>; 30007c8ded6SRichard Acayan }; 30107c8ded6SRichard Acayan }; 30207c8ded6SRichard Acayan }; 30307c8ded6SRichard Acayan 30407c8ded6SRichard Acayan firmware { 30507c8ded6SRichard Acayan scm { 30607c8ded6SRichard Acayan compatible = "qcom,scm-sdm670", "qcom,scm"; 30707c8ded6SRichard Acayan }; 30807c8ded6SRichard Acayan }; 30907c8ded6SRichard Acayan 31007c8ded6SRichard Acayan memory@80000000 { 31107c8ded6SRichard Acayan device_type = "memory"; 31207c8ded6SRichard Acayan /* We expect the bootloader to fill in the size */ 31307c8ded6SRichard Acayan reg = <0x0 0x80000000 0x0 0x0>; 31407c8ded6SRichard Acayan }; 31507c8ded6SRichard Acayan 3160c665213SRichard Acayan cpu0_opp_table: opp-table-cpu0 { 3170c665213SRichard Acayan compatible = "operating-points-v2"; 3180c665213SRichard Acayan opp-shared; 3190c665213SRichard Acayan 3200c665213SRichard Acayan cpu0_opp1: opp-300000000 { 3210c665213SRichard Acayan opp-hz = /bits/ 64 <300000000>; 3220c665213SRichard Acayan opp-peak-kBps = <400000 4800000>; 3230c665213SRichard Acayan }; 3240c665213SRichard Acayan 3250c665213SRichard Acayan cpu0_opp2: opp-576000000 { 3260c665213SRichard Acayan opp-hz = /bits/ 64 <576000000>; 3270c665213SRichard Acayan opp-peak-kBps = <400000 4800000>; 3280c665213SRichard Acayan }; 3290c665213SRichard Acayan 3300c665213SRichard Acayan cpu0_opp3: opp-748800000 { 3310c665213SRichard Acayan opp-hz = /bits/ 64 <748800000>; 3320c665213SRichard Acayan opp-peak-kBps = <1200000 4800000>; 3330c665213SRichard Acayan }; 3340c665213SRichard Acayan 3350c665213SRichard Acayan cpu0_opp4: opp-998400000 { 3360c665213SRichard Acayan opp-hz = /bits/ 64 <998400000>; 3370c665213SRichard Acayan opp-peak-kBps = <1804000 8908800>; 3380c665213SRichard Acayan }; 3390c665213SRichard Acayan 3400c665213SRichard Acayan cpu0_opp5: opp-1209600000 { 3410c665213SRichard Acayan opp-hz = /bits/ 64 <1209600000>; 3420c665213SRichard Acayan opp-peak-kBps = <2188000 8908800>; 3430c665213SRichard Acayan }; 3440c665213SRichard Acayan 3450c665213SRichard Acayan cpu0_opp6: opp-1324800000 { 3460c665213SRichard Acayan opp-hz = /bits/ 64 <1324800000>; 3470c665213SRichard Acayan opp-peak-kBps = <2188000 13516800>; 3480c665213SRichard Acayan }; 3490c665213SRichard Acayan 3500c665213SRichard Acayan cpu0_opp7: opp-1516800000 { 3510c665213SRichard Acayan opp-hz = /bits/ 64 <1516800000>; 3520c665213SRichard Acayan opp-peak-kBps = <3072000 15052800>; 3530c665213SRichard Acayan }; 3540c665213SRichard Acayan 3550c665213SRichard Acayan cpu0_opp8: opp-1612800000 { 3560c665213SRichard Acayan opp-hz = /bits/ 64 <1612800000>; 3570c665213SRichard Acayan opp-peak-kBps = <3072000 22118400>; 3580c665213SRichard Acayan }; 3590c665213SRichard Acayan 3600c665213SRichard Acayan cpu0_opp9: opp-1708800000 { 3610c665213SRichard Acayan opp-hz = /bits/ 64 <1708800000>; 3620c665213SRichard Acayan opp-peak-kBps = <4068000 23040000>; 3630c665213SRichard Acayan }; 3640c665213SRichard Acayan }; 3650c665213SRichard Acayan 3660c665213SRichard Acayan cpu6_opp_table: opp-table-cpu6 { 3670c665213SRichard Acayan compatible = "operating-points-v2"; 3680c665213SRichard Acayan opp-shared; 3690c665213SRichard Acayan 3700c665213SRichard Acayan cpu6_opp1: opp-300000000 { 3710c665213SRichard Acayan opp-hz = /bits/ 64 <300000000>; 3720c665213SRichard Acayan opp-peak-kBps = <400000 4800000>; 3730c665213SRichard Acayan }; 3740c665213SRichard Acayan 3750c665213SRichard Acayan cpu6_opp2: opp-652800000 { 3760c665213SRichard Acayan opp-hz = /bits/ 64 <652800000>; 3770c665213SRichard Acayan opp-peak-kBps = <400000 4800000>; 3780c665213SRichard Acayan }; 3790c665213SRichard Acayan 3800c665213SRichard Acayan cpu6_opp3: opp-825600000 { 3810c665213SRichard Acayan opp-hz = /bits/ 64 <825600000>; 3820c665213SRichard Acayan opp-peak-kBps = <1200000 4800000>; 3830c665213SRichard Acayan }; 3840c665213SRichard Acayan 3850c665213SRichard Acayan cpu6_opp4: opp-979200000 { 3860c665213SRichard Acayan opp-hz = /bits/ 64 <979200000>; 3870c665213SRichard Acayan opp-peak-kBps = <1200000 4800000>; 3880c665213SRichard Acayan }; 3890c665213SRichard Acayan 3900c665213SRichard Acayan cpu6_opp5: opp-1132800000 { 3910c665213SRichard Acayan opp-hz = /bits/ 64 <1132800000>; 3920c665213SRichard Acayan opp-peak-kBps = <2188000 8908800>; 3930c665213SRichard Acayan }; 3940c665213SRichard Acayan 3950c665213SRichard Acayan cpu6_opp6: opp-1363200000 { 3960c665213SRichard Acayan opp-hz = /bits/ 64 <1363200000>; 3970c665213SRichard Acayan opp-peak-kBps = <4068000 12902400>; 3980c665213SRichard Acayan }; 3990c665213SRichard Acayan 4000c665213SRichard Acayan cpu6_opp7: opp-1536000000 { 4010c665213SRichard Acayan opp-hz = /bits/ 64 <1536000000>; 4020c665213SRichard Acayan opp-peak-kBps = <4068000 12902400>; 4030c665213SRichard Acayan }; 4040c665213SRichard Acayan 4050c665213SRichard Acayan cpu6_opp8: opp-1747200000 { 4060c665213SRichard Acayan opp-hz = /bits/ 64 <1747200000>; 4070c665213SRichard Acayan opp-peak-kBps = <4068000 15052800>; 4080c665213SRichard Acayan }; 4090c665213SRichard Acayan 4100c665213SRichard Acayan cpu6_opp9: opp-1843200000 { 4110c665213SRichard Acayan opp-hz = /bits/ 64 <1843200000>; 4120c665213SRichard Acayan opp-peak-kBps = <4068000 15052800>; 4130c665213SRichard Acayan }; 4140c665213SRichard Acayan 4150c665213SRichard Acayan cpu6_opp10: opp-1996800000 { 4160c665213SRichard Acayan opp-hz = /bits/ 64 <1996800000>; 4170c665213SRichard Acayan opp-peak-kBps = <6220000 19046400>; 4180c665213SRichard Acayan }; 4190c665213SRichard Acayan }; 4200c665213SRichard Acayan 4215f8ba4f2SRichard Acayan dsi_opp_table: opp-table-dsi { 4225f8ba4f2SRichard Acayan compatible = "operating-points-v2"; 4235f8ba4f2SRichard Acayan 4245f8ba4f2SRichard Acayan opp-19200000 { 4255f8ba4f2SRichard Acayan opp-hz = /bits/ 64 <19200000>; 4265f8ba4f2SRichard Acayan required-opps = <&rpmhpd_opp_min_svs>; 4275f8ba4f2SRichard Acayan }; 4285f8ba4f2SRichard Acayan 4295f8ba4f2SRichard Acayan opp-180000000 { 4305f8ba4f2SRichard Acayan opp-hz = /bits/ 64 <180000000>; 4315f8ba4f2SRichard Acayan required-opps = <&rpmhpd_opp_low_svs>; 4325f8ba4f2SRichard Acayan }; 4335f8ba4f2SRichard Acayan 4345f8ba4f2SRichard Acayan opp-275000000 { 4355f8ba4f2SRichard Acayan opp-hz = /bits/ 64 <275000000>; 4365f8ba4f2SRichard Acayan required-opps = <&rpmhpd_opp_svs>; 4375f8ba4f2SRichard Acayan }; 4385f8ba4f2SRichard Acayan 4395f8ba4f2SRichard Acayan opp-358000000 { 4405f8ba4f2SRichard Acayan opp-hz = /bits/ 64 <358000000>; 4415f8ba4f2SRichard Acayan required-opps = <&rpmhpd_opp_svs_l1>; 4425f8ba4f2SRichard Acayan }; 4435f8ba4f2SRichard Acayan }; 4445f8ba4f2SRichard Acayan 44507c8ded6SRichard Acayan psci { 44607c8ded6SRichard Acayan compatible = "arm,psci-1.0"; 44707c8ded6SRichard Acayan method = "smc"; 44807c8ded6SRichard Acayan 4494c047c47SKrzysztof Kozlowski cpu_pd0: power-domain-cpu0 { 45007c8ded6SRichard Acayan #power-domain-cells = <0>; 4514c047c47SKrzysztof Kozlowski power-domains = <&cluster_pd>; 4524c047c47SKrzysztof Kozlowski domain-idle-states = <&little_cpu_sleep_0>; 45307c8ded6SRichard Acayan }; 45407c8ded6SRichard Acayan 4554c047c47SKrzysztof Kozlowski cpu_pd1: power-domain-cpu1 { 45607c8ded6SRichard Acayan #power-domain-cells = <0>; 4574c047c47SKrzysztof Kozlowski power-domains = <&cluster_pd>; 4584c047c47SKrzysztof Kozlowski domain-idle-states = <&little_cpu_sleep_0>; 45907c8ded6SRichard Acayan }; 46007c8ded6SRichard Acayan 4614c047c47SKrzysztof Kozlowski cpu_pd2: power-domain-cpu2 { 46207c8ded6SRichard Acayan #power-domain-cells = <0>; 4634c047c47SKrzysztof Kozlowski power-domains = <&cluster_pd>; 4644c047c47SKrzysztof Kozlowski domain-idle-states = <&little_cpu_sleep_0>; 46507c8ded6SRichard Acayan }; 46607c8ded6SRichard Acayan 4674c047c47SKrzysztof Kozlowski cpu_pd3: power-domain-cpu3 { 46807c8ded6SRichard Acayan #power-domain-cells = <0>; 4694c047c47SKrzysztof Kozlowski power-domains = <&cluster_pd>; 4704c047c47SKrzysztof Kozlowski domain-idle-states = <&little_cpu_sleep_0>; 47107c8ded6SRichard Acayan }; 47207c8ded6SRichard Acayan 4734c047c47SKrzysztof Kozlowski cpu_pd4: power-domain-cpu4 { 47407c8ded6SRichard Acayan #power-domain-cells = <0>; 4754c047c47SKrzysztof Kozlowski power-domains = <&cluster_pd>; 4764c047c47SKrzysztof Kozlowski domain-idle-states = <&little_cpu_sleep_0>; 47707c8ded6SRichard Acayan }; 47807c8ded6SRichard Acayan 4794c047c47SKrzysztof Kozlowski cpu_pd5: power-domain-cpu5 { 48007c8ded6SRichard Acayan #power-domain-cells = <0>; 4814c047c47SKrzysztof Kozlowski power-domains = <&cluster_pd>; 4824c047c47SKrzysztof Kozlowski domain-idle-states = <&little_cpu_sleep_0>; 48307c8ded6SRichard Acayan }; 48407c8ded6SRichard Acayan 4854c047c47SKrzysztof Kozlowski cpu_pd6: power-domain-cpu6 { 48607c8ded6SRichard Acayan #power-domain-cells = <0>; 4874c047c47SKrzysztof Kozlowski power-domains = <&cluster_pd>; 4884c047c47SKrzysztof Kozlowski domain-idle-states = <&big_cpu_sleep_0>; 48907c8ded6SRichard Acayan }; 49007c8ded6SRichard Acayan 4914c047c47SKrzysztof Kozlowski cpu_pd7: power-domain-cpu7 { 49207c8ded6SRichard Acayan #power-domain-cells = <0>; 4934c047c47SKrzysztof Kozlowski power-domains = <&cluster_pd>; 4944c047c47SKrzysztof Kozlowski domain-idle-states = <&big_cpu_sleep_0>; 49507c8ded6SRichard Acayan }; 49607c8ded6SRichard Acayan 4974c047c47SKrzysztof Kozlowski cluster_pd: power-domain-cluster { 49807c8ded6SRichard Acayan #power-domain-cells = <0>; 4994c047c47SKrzysztof Kozlowski domain-idle-states = <&cluster_sleep_0>; 50007c8ded6SRichard Acayan }; 50107c8ded6SRichard Acayan }; 50207c8ded6SRichard Acayan 50307c8ded6SRichard Acayan reserved-memory { 50407c8ded6SRichard Acayan #address-cells = <2>; 50507c8ded6SRichard Acayan #size-cells = <2>; 50607c8ded6SRichard Acayan ranges; 50707c8ded6SRichard Acayan 50807c8ded6SRichard Acayan hyp_mem: hyp-mem@85700000 { 50907c8ded6SRichard Acayan reg = <0 0x85700000 0 0x600000>; 51007c8ded6SRichard Acayan no-map; 51107c8ded6SRichard Acayan }; 51207c8ded6SRichard Acayan 51307c8ded6SRichard Acayan xbl_mem: xbl-mem@85e00000 { 51407c8ded6SRichard Acayan reg = <0 0x85e00000 0 0x100000>; 51507c8ded6SRichard Acayan no-map; 51607c8ded6SRichard Acayan }; 51707c8ded6SRichard Acayan 51807c8ded6SRichard Acayan aop_mem: aop-mem@85fc0000 { 51907c8ded6SRichard Acayan reg = <0 0x85fc0000 0 0x20000>; 52007c8ded6SRichard Acayan no-map; 52107c8ded6SRichard Acayan }; 52207c8ded6SRichard Acayan 52307c8ded6SRichard Acayan aop_cmd_db_mem: aop-cmd-db-mem@85fe0000 { 52407c8ded6SRichard Acayan compatible = "qcom,cmd-db"; 52507c8ded6SRichard Acayan reg = <0 0x85fe0000 0 0x20000>; 52607c8ded6SRichard Acayan no-map; 52707c8ded6SRichard Acayan }; 52807c8ded6SRichard Acayan 529265d9989SRichard Acayan smem@86000000 { 530265d9989SRichard Acayan compatible = "qcom,smem"; 531265d9989SRichard Acayan reg = <0 0x86000000 0 0x200000>; 532265d9989SRichard Acayan no-map; 533265d9989SRichard Acayan hwlocks = <&tcsr_mutex 3>; 534265d9989SRichard Acayan }; 535265d9989SRichard Acayan 536265d9989SRichard Acayan tz_mem: tz@86200000 { 537265d9989SRichard Acayan reg = <0 0x86200000 0 0x2d00000>; 538265d9989SRichard Acayan no-map; 539265d9989SRichard Acayan }; 540265d9989SRichard Acayan 54107c8ded6SRichard Acayan camera_mem: camera-mem@8ab00000 { 54207c8ded6SRichard Acayan reg = <0 0x8ab00000 0 0x500000>; 54307c8ded6SRichard Acayan no-map; 54407c8ded6SRichard Acayan }; 54507c8ded6SRichard Acayan 54607c8ded6SRichard Acayan mpss_region: mpss@8b000000 { 54707c8ded6SRichard Acayan reg = <0 0x8b000000 0 0x7e00000>; 54807c8ded6SRichard Acayan no-map; 54907c8ded6SRichard Acayan }; 55007c8ded6SRichard Acayan 55107c8ded6SRichard Acayan venus_mem: venus@92e00000 { 55207c8ded6SRichard Acayan reg = <0 0x92e00000 0 0x500000>; 55307c8ded6SRichard Acayan no-map; 55407c8ded6SRichard Acayan }; 55507c8ded6SRichard Acayan 55607c8ded6SRichard Acayan wlan_msa_mem: wlan-msa@93300000 { 55707c8ded6SRichard Acayan reg = <0 0x93300000 0 0x100000>; 55807c8ded6SRichard Acayan no-map; 55907c8ded6SRichard Acayan }; 56007c8ded6SRichard Acayan 56107c8ded6SRichard Acayan cdsp_mem: cdsp@93400000 { 56207c8ded6SRichard Acayan reg = <0 0x93400000 0 0x800000>; 56307c8ded6SRichard Acayan no-map; 56407c8ded6SRichard Acayan }; 56507c8ded6SRichard Acayan 56607c8ded6SRichard Acayan mba_region: mba@93c00000 { 56707c8ded6SRichard Acayan reg = <0 0x93c00000 0 0x200000>; 56807c8ded6SRichard Acayan no-map; 56907c8ded6SRichard Acayan }; 57007c8ded6SRichard Acayan 57107c8ded6SRichard Acayan adsp_mem: adsp@93e00000 { 57207c8ded6SRichard Acayan reg = <0 0x93e00000 0 0x1e00000>; 57307c8ded6SRichard Acayan no-map; 57407c8ded6SRichard Acayan }; 57507c8ded6SRichard Acayan 57607c8ded6SRichard Acayan ipa_fw_mem: ipa-fw@95c00000 { 57707c8ded6SRichard Acayan reg = <0 0x95c00000 0 0x10000>; 57807c8ded6SRichard Acayan no-map; 57907c8ded6SRichard Acayan }; 58007c8ded6SRichard Acayan 58107c8ded6SRichard Acayan ipa_gsi_mem: ipa-gsi@95c10000 { 58207c8ded6SRichard Acayan reg = <0 0x95c10000 0 0x5000>; 58307c8ded6SRichard Acayan no-map; 58407c8ded6SRichard Acayan }; 58507c8ded6SRichard Acayan 58607c8ded6SRichard Acayan gpu_mem: gpu@95c15000 { 58707c8ded6SRichard Acayan reg = <0 0x95c15000 0 0x2000>; 58807c8ded6SRichard Acayan no-map; 58907c8ded6SRichard Acayan }; 59007c8ded6SRichard Acayan 59107c8ded6SRichard Acayan spss_mem: spss@97b00000 { 59207c8ded6SRichard Acayan reg = <0 0x97b00000 0 0x100000>; 59307c8ded6SRichard Acayan no-map; 59407c8ded6SRichard Acayan }; 59507c8ded6SRichard Acayan 59607c8ded6SRichard Acayan qseecom_mem: qseecom@9e400000 { 59707c8ded6SRichard Acayan reg = <0 0x9e400000 0 0x1400000>; 59807c8ded6SRichard Acayan no-map; 59907c8ded6SRichard Acayan }; 60007c8ded6SRichard Acayan }; 60107c8ded6SRichard Acayan 60207c8ded6SRichard Acayan timer { 60307c8ded6SRichard Acayan compatible = "arm,armv8-timer"; 60407c8ded6SRichard Acayan interrupts = <GIC_PPI 1 IRQ_TYPE_LEVEL_LOW>, 60507c8ded6SRichard Acayan <GIC_PPI 2 IRQ_TYPE_LEVEL_LOW>, 60607c8ded6SRichard Acayan <GIC_PPI 3 IRQ_TYPE_LEVEL_LOW>, 60707c8ded6SRichard Acayan <GIC_PPI 0 IRQ_TYPE_LEVEL_LOW>; 60807c8ded6SRichard Acayan }; 60907c8ded6SRichard Acayan 61007c8ded6SRichard Acayan soc: soc@0 { 61107c8ded6SRichard Acayan #address-cells = <2>; 61207c8ded6SRichard Acayan #size-cells = <2>; 61307c8ded6SRichard Acayan ranges = <0 0 0 0 0x10 0>; 61407c8ded6SRichard Acayan dma-ranges = <0 0 0 0 0x10 0>; 61507c8ded6SRichard Acayan compatible = "simple-bus"; 61607c8ded6SRichard Acayan 61707c8ded6SRichard Acayan gcc: clock-controller@100000 { 61807c8ded6SRichard Acayan compatible = "qcom,gcc-sdm670"; 61907c8ded6SRichard Acayan reg = <0 0x00100000 0 0x1f0000>; 62007c8ded6SRichard Acayan clocks = <&rpmhcc RPMH_CXO_CLK>, 62107c8ded6SRichard Acayan <&rpmhcc RPMH_CXO_CLK_A>, 62207c8ded6SRichard Acayan <&sleep_clk>; 62307c8ded6SRichard Acayan clock-names = "bi_tcxo", 62407c8ded6SRichard Acayan "bi_tcxo_ao", 62507c8ded6SRichard Acayan "sleep_clk"; 62607c8ded6SRichard Acayan #clock-cells = <1>; 62707c8ded6SRichard Acayan #reset-cells = <1>; 62807c8ded6SRichard Acayan #power-domain-cells = <1>; 62907c8ded6SRichard Acayan }; 63007c8ded6SRichard Acayan 6317bff6f43SRichard Acayan qfprom: qfprom@784000 { 6327bff6f43SRichard Acayan compatible = "qcom,sdm670-qfprom", "qcom,qfprom"; 6337bff6f43SRichard Acayan reg = <0 0x00784000 0 0x1000>; 6347bff6f43SRichard Acayan #address-cells = <1>; 6357bff6f43SRichard Acayan #size-cells = <1>; 636cb98187aSRichard Acayan 637cd89483aSRichard Acayan gpu_speed_bin: gpu_speed_bin@1a2 { 638cd89483aSRichard Acayan reg = <0x1a2 0x2>; 639cd89483aSRichard Acayan bits = <5 8>; 640cd89483aSRichard Acayan }; 641cd89483aSRichard Acayan 642cb98187aSRichard Acayan qusb2_hstx_trim: hstx-trim@1eb { 643cb98187aSRichard Acayan reg = <0x1eb 0x1>; 644cb98187aSRichard Acayan bits = <1 4>; 645cb98187aSRichard Acayan }; 6467bff6f43SRichard Acayan }; 6477bff6f43SRichard Acayan 64807c8ded6SRichard Acayan sdhc_1: mmc@7c4000 { 64907c8ded6SRichard Acayan compatible = "qcom,sdm670-sdhci", "qcom,sdhci-msm-v5"; 65007c8ded6SRichard Acayan reg = <0 0x007c4000 0 0x1000>, 65107c8ded6SRichard Acayan <0 0x007c5000 0 0x1000>, 65207c8ded6SRichard Acayan <0 0x007c8000 0 0x8000>; 65307c8ded6SRichard Acayan reg-names = "hc", "cqhci", "ice"; 65407c8ded6SRichard Acayan 65507c8ded6SRichard Acayan interrupts = <GIC_SPI 641 IRQ_TYPE_LEVEL_HIGH>, 65607c8ded6SRichard Acayan <GIC_SPI 644 IRQ_TYPE_LEVEL_HIGH>; 65707c8ded6SRichard Acayan interrupt-names = "hc_irq", "pwr_irq"; 65807c8ded6SRichard Acayan 65907c8ded6SRichard Acayan clocks = <&gcc GCC_SDCC1_AHB_CLK>, 66007c8ded6SRichard Acayan <&gcc GCC_SDCC1_APPS_CLK>, 66107c8ded6SRichard Acayan <&rpmhcc RPMH_CXO_CLK>, 66207c8ded6SRichard Acayan <&gcc GCC_SDCC1_ICE_CORE_CLK>, 66307c8ded6SRichard Acayan <&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>; 66407c8ded6SRichard Acayan clock-names = "iface", "core", "xo", "ice", "bus"; 66517289c01SRichard Acayan interconnects = <&aggre1_noc MASTER_EMMC 0 &aggre1_noc SLAVE_A1NOC_SNOC 0>, 66617289c01SRichard Acayan <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_EMMC_CFG 0>; 66717289c01SRichard Acayan interconnect-names = "sdhc-ddr", "cpu-sdhc"; 66817289c01SRichard Acayan operating-points-v2 = <&sdhc1_opp_table>; 66907c8ded6SRichard Acayan 67007c8ded6SRichard Acayan iommus = <&apps_smmu 0x140 0xf>; 67107c8ded6SRichard Acayan 67207c8ded6SRichard Acayan pinctrl-names = "default", "sleep"; 67307c8ded6SRichard Acayan pinctrl-0 = <&sdc1_state_on>; 67407c8ded6SRichard Acayan pinctrl-1 = <&sdc1_state_off>; 67507c8ded6SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 67607c8ded6SRichard Acayan 67707c8ded6SRichard Acayan bus-width = <8>; 67807c8ded6SRichard Acayan non-removable; 67907c8ded6SRichard Acayan 68007c8ded6SRichard Acayan status = "disabled"; 68117289c01SRichard Acayan 68217289c01SRichard Acayan sdhc1_opp_table: opp-table { 68317289c01SRichard Acayan compatible = "operating-points-v2"; 68417289c01SRichard Acayan 68517289c01SRichard Acayan opp-20000000 { 68617289c01SRichard Acayan opp-hz = /bits/ 64 <20000000>; 68717289c01SRichard Acayan required-opps = <&rpmhpd_opp_min_svs>; 68817289c01SRichard Acayan opp-peak-kBps = <80000 80000>; 68917289c01SRichard Acayan opp-avg-kBps = <52286 80000>; 69017289c01SRichard Acayan }; 69117289c01SRichard Acayan 69217289c01SRichard Acayan opp-50000000 { 69317289c01SRichard Acayan opp-hz = /bits/ 64 <50000000>; 69417289c01SRichard Acayan required-opps = <&rpmhpd_opp_low_svs>; 69517289c01SRichard Acayan opp-peak-kBps = <200000 100000>; 69617289c01SRichard Acayan opp-avg-kBps = <130718 100000>; 69717289c01SRichard Acayan }; 69817289c01SRichard Acayan 69917289c01SRichard Acayan opp-100000000 { 70017289c01SRichard Acayan opp-hz = /bits/ 64 <100000000>; 70117289c01SRichard Acayan required-opps = <&rpmhpd_opp_svs>; 70217289c01SRichard Acayan opp-peak-kBps = <200000 130000>; 70317289c01SRichard Acayan opp-avg-kBps = <130718 130000>; 70417289c01SRichard Acayan }; 70517289c01SRichard Acayan 70617289c01SRichard Acayan opp-384000000 { 70717289c01SRichard Acayan opp-hz = /bits/ 64 <384000000>; 70817289c01SRichard Acayan required-opps = <&rpmhpd_opp_nom>; 70917289c01SRichard Acayan opp-peak-kBps = <4096000 4096000>; 71017289c01SRichard Acayan opp-avg-kBps = <1338562 1338562>; 71117289c01SRichard Acayan }; 71217289c01SRichard Acayan }; 71307c8ded6SRichard Acayan }; 71407c8ded6SRichard Acayan 71507c8ded6SRichard Acayan gpi_dma0: dma-controller@800000 { 71607c8ded6SRichard Acayan #dma-cells = <3>; 71707c8ded6SRichard Acayan compatible = "qcom,sdm670-gpi-dma", "qcom,sdm845-gpi-dma"; 71807c8ded6SRichard Acayan reg = <0 0x00800000 0 0x60000>; 71907c8ded6SRichard Acayan interrupts = <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>, 72007c8ded6SRichard Acayan <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>, 72107c8ded6SRichard Acayan <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>, 72207c8ded6SRichard Acayan <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>, 72307c8ded6SRichard Acayan <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>, 72407c8ded6SRichard Acayan <GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>, 72507c8ded6SRichard Acayan <GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>, 72607c8ded6SRichard Acayan <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>, 72707c8ded6SRichard Acayan <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>, 72807c8ded6SRichard Acayan <GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>, 72907c8ded6SRichard Acayan <GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>, 73007c8ded6SRichard Acayan <GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>, 73107c8ded6SRichard Acayan <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>; 73207c8ded6SRichard Acayan dma-channels = <13>; 73307c8ded6SRichard Acayan dma-channel-mask = <0xfa>; 73407c8ded6SRichard Acayan iommus = <&apps_smmu 0x16 0x0>; 73507c8ded6SRichard Acayan status = "disabled"; 73607c8ded6SRichard Acayan }; 73707c8ded6SRichard Acayan 73807c8ded6SRichard Acayan qupv3_id_0: geniqup@8c0000 { 73907c8ded6SRichard Acayan compatible = "qcom,geni-se-qup"; 74007c8ded6SRichard Acayan reg = <0 0x008c0000 0 0x6000>; 74107c8ded6SRichard Acayan clock-names = "m-ahb", "s-ahb"; 74207c8ded6SRichard Acayan clocks = <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>, 74307c8ded6SRichard Acayan <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>; 74407c8ded6SRichard Acayan iommus = <&apps_smmu 0x3 0x0>; 74507c8ded6SRichard Acayan #address-cells = <2>; 74607c8ded6SRichard Acayan #size-cells = <2>; 74707c8ded6SRichard Acayan ranges; 74817289c01SRichard Acayan interconnects = <&aggre1_noc MASTER_BLSP_1 0 &config_noc SLAVE_BLSP_1 0>; 74917289c01SRichard Acayan interconnect-names = "qup-core"; 75007c8ded6SRichard Acayan status = "disabled"; 75107c8ded6SRichard Acayan 75207c8ded6SRichard Acayan i2c0: i2c@880000 { 75307c8ded6SRichard Acayan compatible = "qcom,geni-i2c"; 75407c8ded6SRichard Acayan reg = <0 0x00880000 0 0x4000>; 75507c8ded6SRichard Acayan clock-names = "se"; 75607c8ded6SRichard Acayan clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>; 75707c8ded6SRichard Acayan pinctrl-names = "default"; 75807c8ded6SRichard Acayan pinctrl-0 = <&qup_i2c0_default>; 75907c8ded6SRichard Acayan interrupts = <GIC_SPI 601 IRQ_TYPE_LEVEL_HIGH>; 76007c8ded6SRichard Acayan #address-cells = <1>; 76107c8ded6SRichard Acayan #size-cells = <0>; 76207c8ded6SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 76317289c01SRichard Acayan interconnects = <&aggre1_noc MASTER_BLSP_1 0 &config_noc SLAVE_BLSP_1 0>, 76417289c01SRichard Acayan <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_1 0>, 76517289c01SRichard Acayan <&aggre1_noc MASTER_BLSP_1 0 &mem_noc SLAVE_EBI_CH0 0>; 76617289c01SRichard Acayan interconnect-names = "qup-core", "qup-config", "qup-memory"; 76707c8ded6SRichard Acayan dmas = <&gpi_dma0 0 0 QCOM_GPI_I2C>, 76807c8ded6SRichard Acayan <&gpi_dma0 1 0 QCOM_GPI_I2C>; 76907c8ded6SRichard Acayan dma-names = "tx", "rx"; 77007c8ded6SRichard Acayan status = "disabled"; 77107c8ded6SRichard Acayan }; 77207c8ded6SRichard Acayan 77307c8ded6SRichard Acayan i2c1: i2c@884000 { 77407c8ded6SRichard Acayan compatible = "qcom,geni-i2c"; 77507c8ded6SRichard Acayan reg = <0 0x00884000 0 0x4000>; 77607c8ded6SRichard Acayan clock-names = "se"; 77707c8ded6SRichard Acayan clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>; 77807c8ded6SRichard Acayan pinctrl-names = "default"; 77907c8ded6SRichard Acayan pinctrl-0 = <&qup_i2c1_default>; 78007c8ded6SRichard Acayan interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>; 78107c8ded6SRichard Acayan #address-cells = <1>; 78207c8ded6SRichard Acayan #size-cells = <0>; 78307c8ded6SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 78417289c01SRichard Acayan interconnects = <&aggre1_noc MASTER_BLSP_1 0 &config_noc SLAVE_BLSP_1 0>, 78517289c01SRichard Acayan <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_1 0>, 78617289c01SRichard Acayan <&aggre1_noc MASTER_BLSP_1 0 &mem_noc SLAVE_EBI_CH0 0>; 78717289c01SRichard Acayan interconnect-names = "qup-core", "qup-config", "qup-memory"; 78807c8ded6SRichard Acayan dmas = <&gpi_dma0 0 1 QCOM_GPI_I2C>, 78907c8ded6SRichard Acayan <&gpi_dma0 1 1 QCOM_GPI_I2C>; 79007c8ded6SRichard Acayan dma-names = "tx", "rx"; 79107c8ded6SRichard Acayan status = "disabled"; 79207c8ded6SRichard Acayan }; 79307c8ded6SRichard Acayan 79407c8ded6SRichard Acayan i2c2: i2c@888000 { 79507c8ded6SRichard Acayan compatible = "qcom,geni-i2c"; 79607c8ded6SRichard Acayan reg = <0 0x00888000 0 0x4000>; 79707c8ded6SRichard Acayan clock-names = "se"; 79807c8ded6SRichard Acayan clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>; 79907c8ded6SRichard Acayan pinctrl-names = "default"; 80007c8ded6SRichard Acayan pinctrl-0 = <&qup_i2c2_default>; 80107c8ded6SRichard Acayan interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>; 80207c8ded6SRichard Acayan #address-cells = <1>; 80307c8ded6SRichard Acayan #size-cells = <0>; 80407c8ded6SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 80517289c01SRichard Acayan interconnects = <&aggre1_noc MASTER_BLSP_1 0 &config_noc SLAVE_BLSP_1 0>, 80617289c01SRichard Acayan <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_1 0>, 80717289c01SRichard Acayan <&aggre1_noc MASTER_BLSP_1 0 &mem_noc SLAVE_EBI_CH0 0>; 80817289c01SRichard Acayan interconnect-names = "qup-core", "qup-config", "qup-memory"; 80907c8ded6SRichard Acayan dmas = <&gpi_dma0 0 2 QCOM_GPI_I2C>, 81007c8ded6SRichard Acayan <&gpi_dma0 1 2 QCOM_GPI_I2C>; 81107c8ded6SRichard Acayan dma-names = "tx", "rx"; 81207c8ded6SRichard Acayan status = "disabled"; 81307c8ded6SRichard Acayan }; 81407c8ded6SRichard Acayan 81507c8ded6SRichard Acayan i2c3: i2c@88c000 { 81607c8ded6SRichard Acayan compatible = "qcom,geni-i2c"; 81707c8ded6SRichard Acayan reg = <0 0x0088c000 0 0x4000>; 81807c8ded6SRichard Acayan clock-names = "se"; 81907c8ded6SRichard Acayan clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>; 82007c8ded6SRichard Acayan pinctrl-names = "default"; 82107c8ded6SRichard Acayan pinctrl-0 = <&qup_i2c3_default>; 82207c8ded6SRichard Acayan interrupts = <GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>; 82307c8ded6SRichard Acayan #address-cells = <1>; 82407c8ded6SRichard Acayan #size-cells = <0>; 82507c8ded6SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 82617289c01SRichard Acayan interconnects = <&aggre1_noc MASTER_BLSP_1 0 &config_noc SLAVE_BLSP_1 0>, 82717289c01SRichard Acayan <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_1 0>, 82817289c01SRichard Acayan <&aggre1_noc MASTER_BLSP_1 0 &mem_noc SLAVE_EBI_CH0 0>; 82917289c01SRichard Acayan interconnect-names = "qup-core", "qup-config", "qup-memory"; 83007c8ded6SRichard Acayan dmas = <&gpi_dma0 0 3 QCOM_GPI_I2C>, 83107c8ded6SRichard Acayan <&gpi_dma0 1 3 QCOM_GPI_I2C>; 83207c8ded6SRichard Acayan dma-names = "tx", "rx"; 83307c8ded6SRichard Acayan status = "disabled"; 83407c8ded6SRichard Acayan }; 83507c8ded6SRichard Acayan 83607c8ded6SRichard Acayan i2c4: i2c@890000 { 83707c8ded6SRichard Acayan compatible = "qcom,geni-i2c"; 83807c8ded6SRichard Acayan reg = <0 0x00890000 0 0x4000>; 83907c8ded6SRichard Acayan clock-names = "se"; 84007c8ded6SRichard Acayan clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>; 84107c8ded6SRichard Acayan pinctrl-names = "default"; 84207c8ded6SRichard Acayan pinctrl-0 = <&qup_i2c4_default>; 84307c8ded6SRichard Acayan interrupts = <GIC_SPI 605 IRQ_TYPE_LEVEL_HIGH>; 84407c8ded6SRichard Acayan #address-cells = <1>; 84507c8ded6SRichard Acayan #size-cells = <0>; 84607c8ded6SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 84717289c01SRichard Acayan interconnects = <&aggre1_noc MASTER_BLSP_1 0 &config_noc SLAVE_BLSP_1 0>, 84817289c01SRichard Acayan <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_1 0>, 84917289c01SRichard Acayan <&aggre1_noc MASTER_BLSP_1 0 &mem_noc SLAVE_EBI_CH0 0>; 85017289c01SRichard Acayan interconnect-names = "qup-core", "qup-config", "qup-memory"; 85107c8ded6SRichard Acayan dmas = <&gpi_dma0 0 4 QCOM_GPI_I2C>, 85207c8ded6SRichard Acayan <&gpi_dma0 1 4 QCOM_GPI_I2C>; 85307c8ded6SRichard Acayan dma-names = "tx", "rx"; 85407c8ded6SRichard Acayan status = "disabled"; 85507c8ded6SRichard Acayan }; 85607c8ded6SRichard Acayan 85707c8ded6SRichard Acayan i2c5: i2c@894000 { 85807c8ded6SRichard Acayan compatible = "qcom,geni-i2c"; 85907c8ded6SRichard Acayan reg = <0 0x00894000 0 0x4000>; 86007c8ded6SRichard Acayan clock-names = "se"; 86107c8ded6SRichard Acayan clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>; 86207c8ded6SRichard Acayan pinctrl-names = "default"; 86307c8ded6SRichard Acayan pinctrl-0 = <&qup_i2c5_default>; 86407c8ded6SRichard Acayan interrupts = <GIC_SPI 606 IRQ_TYPE_LEVEL_HIGH>; 86507c8ded6SRichard Acayan #address-cells = <1>; 86607c8ded6SRichard Acayan #size-cells = <0>; 86707c8ded6SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 86817289c01SRichard Acayan interconnects = <&aggre1_noc MASTER_BLSP_1 0 &config_noc SLAVE_BLSP_1 0>, 86917289c01SRichard Acayan <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_1 0>, 87017289c01SRichard Acayan <&aggre1_noc MASTER_BLSP_1 0 &mem_noc SLAVE_EBI_CH0 0>; 87117289c01SRichard Acayan interconnect-names = "qup-core", "qup-config", "qup-memory"; 87207c8ded6SRichard Acayan dmas = <&gpi_dma0 0 5 QCOM_GPI_I2C>, 87307c8ded6SRichard Acayan <&gpi_dma0 1 5 QCOM_GPI_I2C>; 87407c8ded6SRichard Acayan dma-names = "tx", "rx"; 87507c8ded6SRichard Acayan status = "disabled"; 87607c8ded6SRichard Acayan }; 87707c8ded6SRichard Acayan 87807c8ded6SRichard Acayan i2c6: i2c@898000 { 87907c8ded6SRichard Acayan compatible = "qcom,geni-i2c"; 88007c8ded6SRichard Acayan reg = <0 0x00898000 0 0x4000>; 88107c8ded6SRichard Acayan clock-names = "se"; 88207c8ded6SRichard Acayan clocks = <&gcc GCC_QUPV3_WRAP0_S6_CLK>; 88307c8ded6SRichard Acayan pinctrl-names = "default"; 88407c8ded6SRichard Acayan pinctrl-0 = <&qup_i2c6_default>; 88507c8ded6SRichard Acayan interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>; 88607c8ded6SRichard Acayan #address-cells = <1>; 88707c8ded6SRichard Acayan #size-cells = <0>; 88807c8ded6SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 88917289c01SRichard Acayan interconnects = <&aggre1_noc MASTER_BLSP_1 0 &config_noc SLAVE_BLSP_1 0>, 89017289c01SRichard Acayan <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_1 0>, 89117289c01SRichard Acayan <&aggre1_noc MASTER_BLSP_1 0 &mem_noc SLAVE_EBI_CH0 0>; 89217289c01SRichard Acayan interconnect-names = "qup-core", "qup-config", "qup-memory"; 89307c8ded6SRichard Acayan dmas = <&gpi_dma0 0 6 QCOM_GPI_I2C>, 89407c8ded6SRichard Acayan <&gpi_dma0 1 6 QCOM_GPI_I2C>; 89507c8ded6SRichard Acayan dma-names = "tx", "rx"; 89607c8ded6SRichard Acayan status = "disabled"; 89707c8ded6SRichard Acayan }; 89807c8ded6SRichard Acayan 89907c8ded6SRichard Acayan i2c7: i2c@89c000 { 90007c8ded6SRichard Acayan compatible = "qcom,geni-i2c"; 90107c8ded6SRichard Acayan reg = <0 0x0089c000 0 0x4000>; 90207c8ded6SRichard Acayan clock-names = "se"; 90307c8ded6SRichard Acayan clocks = <&gcc GCC_QUPV3_WRAP0_S7_CLK>; 90407c8ded6SRichard Acayan pinctrl-names = "default"; 90507c8ded6SRichard Acayan pinctrl-0 = <&qup_i2c7_default>; 90607c8ded6SRichard Acayan interrupts = <GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH>; 90707c8ded6SRichard Acayan #address-cells = <1>; 90807c8ded6SRichard Acayan #size-cells = <0>; 90907c8ded6SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 91017289c01SRichard Acayan interconnects = <&aggre1_noc MASTER_BLSP_1 0 &config_noc SLAVE_BLSP_1 0>, 91117289c01SRichard Acayan <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_1 0>, 91217289c01SRichard Acayan <&aggre1_noc MASTER_BLSP_1 0 &mem_noc SLAVE_EBI_CH0 0>; 91317289c01SRichard Acayan interconnect-names = "qup-core", "qup-config", "qup-memory"; 91407c8ded6SRichard Acayan dmas = <&gpi_dma0 0 7 QCOM_GPI_I2C>, 91507c8ded6SRichard Acayan <&gpi_dma0 1 7 QCOM_GPI_I2C>; 91607c8ded6SRichard Acayan dma-names = "tx", "rx"; 91707c8ded6SRichard Acayan status = "disabled"; 91807c8ded6SRichard Acayan }; 91907c8ded6SRichard Acayan }; 92007c8ded6SRichard Acayan 92107c8ded6SRichard Acayan gpi_dma1: dma-controller@a00000 { 92207c8ded6SRichard Acayan #dma-cells = <3>; 92307c8ded6SRichard Acayan compatible = "qcom,sdm670-gpi-dma", "qcom,sdm845-gpi-dma"; 92407c8ded6SRichard Acayan reg = <0 0x00a00000 0 0x60000>; 92507c8ded6SRichard Acayan interrupts = <GIC_SPI 279 IRQ_TYPE_LEVEL_HIGH>, 92607c8ded6SRichard Acayan <GIC_SPI 280 IRQ_TYPE_LEVEL_HIGH>, 92707c8ded6SRichard Acayan <GIC_SPI 281 IRQ_TYPE_LEVEL_HIGH>, 92807c8ded6SRichard Acayan <GIC_SPI 282 IRQ_TYPE_LEVEL_HIGH>, 92907c8ded6SRichard Acayan <GIC_SPI 283 IRQ_TYPE_LEVEL_HIGH>, 93007c8ded6SRichard Acayan <GIC_SPI 284 IRQ_TYPE_LEVEL_HIGH>, 93107c8ded6SRichard Acayan <GIC_SPI 293 IRQ_TYPE_LEVEL_HIGH>, 93207c8ded6SRichard Acayan <GIC_SPI 294 IRQ_TYPE_LEVEL_HIGH>, 93307c8ded6SRichard Acayan <GIC_SPI 295 IRQ_TYPE_LEVEL_HIGH>, 93407c8ded6SRichard Acayan <GIC_SPI 296 IRQ_TYPE_LEVEL_HIGH>, 93507c8ded6SRichard Acayan <GIC_SPI 297 IRQ_TYPE_LEVEL_HIGH>, 93607c8ded6SRichard Acayan <GIC_SPI 298 IRQ_TYPE_LEVEL_HIGH>, 93707c8ded6SRichard Acayan <GIC_SPI 299 IRQ_TYPE_LEVEL_HIGH>; 93807c8ded6SRichard Acayan dma-channels = <13>; 93907c8ded6SRichard Acayan dma-channel-mask = <0xfa>; 94007c8ded6SRichard Acayan iommus = <&apps_smmu 0x6d6 0x0>; 94107c8ded6SRichard Acayan status = "disabled"; 94207c8ded6SRichard Acayan }; 94307c8ded6SRichard Acayan 94407c8ded6SRichard Acayan qupv3_id_1: geniqup@ac0000 { 94507c8ded6SRichard Acayan compatible = "qcom,geni-se-qup"; 94607c8ded6SRichard Acayan reg = <0 0x00ac0000 0 0x6000>; 94707c8ded6SRichard Acayan clock-names = "m-ahb", "s-ahb"; 94807c8ded6SRichard Acayan clocks = <&gcc GCC_QUPV3_WRAP_1_M_AHB_CLK>, 94907c8ded6SRichard Acayan <&gcc GCC_QUPV3_WRAP_1_S_AHB_CLK>; 95007c8ded6SRichard Acayan iommus = <&apps_smmu 0x6c3 0x0>; 95107c8ded6SRichard Acayan #address-cells = <2>; 95207c8ded6SRichard Acayan #size-cells = <2>; 95307c8ded6SRichard Acayan ranges; 95417289c01SRichard Acayan interconnects = <&aggre2_noc MASTER_BLSP_2 0 &config_noc SLAVE_BLSP_2 0>; 95517289c01SRichard Acayan interconnect-names = "qup-core"; 95607c8ded6SRichard Acayan status = "disabled"; 95707c8ded6SRichard Acayan 95807c8ded6SRichard Acayan i2c8: i2c@a80000 { 95907c8ded6SRichard Acayan compatible = "qcom,geni-i2c"; 96007c8ded6SRichard Acayan reg = <0 0x00a80000 0 0x4000>; 96107c8ded6SRichard Acayan clock-names = "se"; 96207c8ded6SRichard Acayan clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>; 96307c8ded6SRichard Acayan pinctrl-names = "default"; 96407c8ded6SRichard Acayan pinctrl-0 = <&qup_i2c8_default>; 96507c8ded6SRichard Acayan interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>; 96607c8ded6SRichard Acayan #address-cells = <1>; 96707c8ded6SRichard Acayan #size-cells = <0>; 96807c8ded6SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 96917289c01SRichard Acayan interconnects = <&aggre2_noc MASTER_BLSP_2 0 &config_noc SLAVE_BLSP_2 0>, 97017289c01SRichard Acayan <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_2 0>, 97117289c01SRichard Acayan <&aggre2_noc MASTER_BLSP_2 0 &mem_noc SLAVE_EBI_CH0 0>; 97217289c01SRichard Acayan interconnect-names = "qup-core", "qup-config", "qup-memory"; 97307c8ded6SRichard Acayan dmas = <&gpi_dma1 0 0 QCOM_GPI_I2C>, 97407c8ded6SRichard Acayan <&gpi_dma1 1 0 QCOM_GPI_I2C>; 97507c8ded6SRichard Acayan dma-names = "tx", "rx"; 97607c8ded6SRichard Acayan status = "disabled"; 97707c8ded6SRichard Acayan }; 97807c8ded6SRichard Acayan 97907c8ded6SRichard Acayan i2c9: i2c@a84000 { 98007c8ded6SRichard Acayan compatible = "qcom,geni-i2c"; 98107c8ded6SRichard Acayan reg = <0 0x00a84000 0 0x4000>; 98207c8ded6SRichard Acayan clock-names = "se"; 98307c8ded6SRichard Acayan clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>; 98407c8ded6SRichard Acayan pinctrl-names = "default"; 98507c8ded6SRichard Acayan pinctrl-0 = <&qup_i2c9_default>; 98607c8ded6SRichard Acayan interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>; 98707c8ded6SRichard Acayan #address-cells = <1>; 98807c8ded6SRichard Acayan #size-cells = <0>; 98907c8ded6SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 99017289c01SRichard Acayan interconnects = <&aggre2_noc MASTER_BLSP_2 0 &config_noc SLAVE_BLSP_2 0>, 99117289c01SRichard Acayan <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_2 0>, 99217289c01SRichard Acayan <&aggre2_noc MASTER_BLSP_2 0 &mem_noc SLAVE_EBI_CH0 0>; 99317289c01SRichard Acayan interconnect-names = "qup-core", "qup-config", "qup-memory"; 99407c8ded6SRichard Acayan dmas = <&gpi_dma1 0 1 QCOM_GPI_I2C>, 99507c8ded6SRichard Acayan <&gpi_dma1 1 1 QCOM_GPI_I2C>; 99607c8ded6SRichard Acayan dma-names = "tx", "rx"; 99707c8ded6SRichard Acayan status = "disabled"; 99807c8ded6SRichard Acayan }; 99907c8ded6SRichard Acayan 100007c8ded6SRichard Acayan i2c10: i2c@a88000 { 100107c8ded6SRichard Acayan compatible = "qcom,geni-i2c"; 100207c8ded6SRichard Acayan reg = <0 0x00a88000 0 0x4000>; 100307c8ded6SRichard Acayan clock-names = "se"; 100407c8ded6SRichard Acayan clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>; 100507c8ded6SRichard Acayan pinctrl-names = "default"; 100607c8ded6SRichard Acayan pinctrl-0 = <&qup_i2c10_default>; 100707c8ded6SRichard Acayan interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>; 100807c8ded6SRichard Acayan #address-cells = <1>; 100907c8ded6SRichard Acayan #size-cells = <0>; 101007c8ded6SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 101117289c01SRichard Acayan interconnects = <&aggre2_noc MASTER_BLSP_2 0 &config_noc SLAVE_BLSP_2 0>, 101217289c01SRichard Acayan <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_2 0>, 101317289c01SRichard Acayan <&aggre2_noc MASTER_BLSP_2 0 &mem_noc SLAVE_EBI_CH0 0>; 101417289c01SRichard Acayan interconnect-names = "qup-core", "qup-config", "qup-memory"; 101507c8ded6SRichard Acayan dmas = <&gpi_dma1 0 2 QCOM_GPI_I2C>, 101607c8ded6SRichard Acayan <&gpi_dma1 1 2 QCOM_GPI_I2C>; 101707c8ded6SRichard Acayan dma-names = "tx", "rx"; 101807c8ded6SRichard Acayan status = "disabled"; 101907c8ded6SRichard Acayan }; 102007c8ded6SRichard Acayan 102107c8ded6SRichard Acayan i2c11: i2c@a8c000 { 102207c8ded6SRichard Acayan compatible = "qcom,geni-i2c"; 102307c8ded6SRichard Acayan reg = <0 0x00a8c000 0 0x4000>; 102407c8ded6SRichard Acayan clock-names = "se"; 102507c8ded6SRichard Acayan clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>; 102607c8ded6SRichard Acayan pinctrl-names = "default"; 102707c8ded6SRichard Acayan pinctrl-0 = <&qup_i2c11_default>; 102807c8ded6SRichard Acayan interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>; 102907c8ded6SRichard Acayan #address-cells = <1>; 103007c8ded6SRichard Acayan #size-cells = <0>; 103107c8ded6SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 103217289c01SRichard Acayan interconnects = <&aggre2_noc MASTER_BLSP_2 0 &config_noc SLAVE_BLSP_2 0>, 103317289c01SRichard Acayan <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_2 0>, 103417289c01SRichard Acayan <&aggre2_noc MASTER_BLSP_2 0 &mem_noc SLAVE_EBI_CH0 0>; 103517289c01SRichard Acayan interconnect-names = "qup-core", "qup-config", "qup-memory"; 103607c8ded6SRichard Acayan dmas = <&gpi_dma1 0 3 QCOM_GPI_I2C>, 103707c8ded6SRichard Acayan <&gpi_dma1 1 3 QCOM_GPI_I2C>; 103807c8ded6SRichard Acayan dma-names = "tx", "rx"; 103907c8ded6SRichard Acayan status = "disabled"; 104007c8ded6SRichard Acayan }; 104107c8ded6SRichard Acayan 104207c8ded6SRichard Acayan i2c12: i2c@a90000 { 104307c8ded6SRichard Acayan compatible = "qcom,geni-i2c"; 104407c8ded6SRichard Acayan reg = <0 0x00a90000 0 0x4000>; 104507c8ded6SRichard Acayan clock-names = "se"; 104607c8ded6SRichard Acayan clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>; 104707c8ded6SRichard Acayan pinctrl-names = "default"; 104807c8ded6SRichard Acayan pinctrl-0 = <&qup_i2c12_default>; 104907c8ded6SRichard Acayan interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>; 105007c8ded6SRichard Acayan #address-cells = <1>; 105107c8ded6SRichard Acayan #size-cells = <0>; 105207c8ded6SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 105317289c01SRichard Acayan interconnects = <&aggre2_noc MASTER_BLSP_2 0 &config_noc SLAVE_BLSP_2 0>, 105417289c01SRichard Acayan <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_2 0>, 105517289c01SRichard Acayan <&aggre2_noc MASTER_BLSP_2 0 &mem_noc SLAVE_EBI_CH0 0>; 105617289c01SRichard Acayan interconnect-names = "qup-core", "qup-config", "qup-memory"; 105707c8ded6SRichard Acayan dmas = <&gpi_dma1 0 4 QCOM_GPI_I2C>, 105807c8ded6SRichard Acayan <&gpi_dma1 1 4 QCOM_GPI_I2C>; 105907c8ded6SRichard Acayan dma-names = "tx", "rx"; 106007c8ded6SRichard Acayan status = "disabled"; 106107c8ded6SRichard Acayan }; 106207c8ded6SRichard Acayan 106307c8ded6SRichard Acayan i2c13: i2c@a94000 { 106407c8ded6SRichard Acayan compatible = "qcom,geni-i2c"; 106507c8ded6SRichard Acayan reg = <0 0x00a94000 0 0x4000>; 106607c8ded6SRichard Acayan clock-names = "se"; 106707c8ded6SRichard Acayan clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>; 106807c8ded6SRichard Acayan pinctrl-names = "default"; 106907c8ded6SRichard Acayan pinctrl-0 = <&qup_i2c13_default>; 107007c8ded6SRichard Acayan interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>; 107107c8ded6SRichard Acayan #address-cells = <1>; 107207c8ded6SRichard Acayan #size-cells = <0>; 107307c8ded6SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 107417289c01SRichard Acayan interconnects = <&aggre2_noc MASTER_BLSP_2 0 &config_noc SLAVE_BLSP_2 0>, 107517289c01SRichard Acayan <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_2 0>, 107617289c01SRichard Acayan <&aggre2_noc MASTER_BLSP_2 0 &mem_noc SLAVE_EBI_CH0 0>; 107717289c01SRichard Acayan interconnect-names = "qup-core", "qup-config", "qup-memory"; 107807c8ded6SRichard Acayan dmas = <&gpi_dma1 0 5 QCOM_GPI_I2C>, 107907c8ded6SRichard Acayan <&gpi_dma1 1 5 QCOM_GPI_I2C>; 108007c8ded6SRichard Acayan dma-names = "tx", "rx"; 108107c8ded6SRichard Acayan status = "disabled"; 108207c8ded6SRichard Acayan }; 108307c8ded6SRichard Acayan 108407c8ded6SRichard Acayan i2c14: i2c@a98000 { 108507c8ded6SRichard Acayan compatible = "qcom,geni-i2c"; 108607c8ded6SRichard Acayan reg = <0 0x00a98000 0 0x4000>; 108707c8ded6SRichard Acayan clock-names = "se"; 108807c8ded6SRichard Acayan clocks = <&gcc GCC_QUPV3_WRAP1_S6_CLK>; 108907c8ded6SRichard Acayan pinctrl-names = "default"; 109007c8ded6SRichard Acayan pinctrl-0 = <&qup_i2c14_default>; 109107c8ded6SRichard Acayan interrupts = <GIC_SPI 359 IRQ_TYPE_LEVEL_HIGH>; 109207c8ded6SRichard Acayan #address-cells = <1>; 109307c8ded6SRichard Acayan #size-cells = <0>; 109407c8ded6SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 109517289c01SRichard Acayan interconnects = <&aggre2_noc MASTER_BLSP_2 0 &config_noc SLAVE_BLSP_2 0>, 109617289c01SRichard Acayan <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_2 0>, 109717289c01SRichard Acayan <&aggre2_noc MASTER_BLSP_2 0 &mem_noc SLAVE_EBI_CH0 0>; 109817289c01SRichard Acayan interconnect-names = "qup-core", "qup-config", "qup-memory"; 109907c8ded6SRichard Acayan dmas = <&gpi_dma1 0 6 QCOM_GPI_I2C>, 110007c8ded6SRichard Acayan <&gpi_dma1 1 6 QCOM_GPI_I2C>; 110107c8ded6SRichard Acayan dma-names = "tx", "rx"; 110207c8ded6SRichard Acayan status = "disabled"; 110307c8ded6SRichard Acayan }; 110407c8ded6SRichard Acayan 110507c8ded6SRichard Acayan i2c15: i2c@a9c000 { 110607c8ded6SRichard Acayan compatible = "qcom,geni-i2c"; 110707c8ded6SRichard Acayan reg = <0 0x00a9c000 0 0x4000>; 110807c8ded6SRichard Acayan clock-names = "se"; 110907c8ded6SRichard Acayan clocks = <&gcc GCC_QUPV3_WRAP1_S7_CLK>; 111007c8ded6SRichard Acayan pinctrl-names = "default"; 111107c8ded6SRichard Acayan pinctrl-0 = <&qup_i2c15_default>; 111207c8ded6SRichard Acayan interrupts = <GIC_SPI 360 IRQ_TYPE_LEVEL_HIGH>; 111307c8ded6SRichard Acayan #address-cells = <1>; 111407c8ded6SRichard Acayan #size-cells = <0>; 111507c8ded6SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 111617289c01SRichard Acayan interconnects = <&aggre2_noc MASTER_BLSP_2 0 &config_noc SLAVE_BLSP_2 0>, 111717289c01SRichard Acayan <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_2 0>, 111817289c01SRichard Acayan <&aggre2_noc MASTER_BLSP_2 0 &mem_noc SLAVE_EBI_CH0 0>; 111917289c01SRichard Acayan interconnect-names = "qup-core", "qup-config", "qup-memory"; 112007c8ded6SRichard Acayan dmas = <&gpi_dma1 0 7 QCOM_GPI_I2C>, 112107c8ded6SRichard Acayan <&gpi_dma1 1 7 QCOM_GPI_I2C>; 112207c8ded6SRichard Acayan dma-names = "tx", "rx"; 112307c8ded6SRichard Acayan status = "disabled"; 112407c8ded6SRichard Acayan }; 112507c8ded6SRichard Acayan }; 112607c8ded6SRichard Acayan 11270daef104SRichard Acayan mem_noc: interconnect@1380000 { 11280daef104SRichard Acayan compatible = "qcom,sdm670-mem-noc"; 11290daef104SRichard Acayan reg = <0 0x01380000 0 0x27200>; 11300daef104SRichard Acayan #interconnect-cells = <2>; 11310daef104SRichard Acayan qcom,bcm-voters = <&apps_bcm_voter>; 11320daef104SRichard Acayan }; 11330daef104SRichard Acayan 11340daef104SRichard Acayan dc_noc: interconnect@14e0000 { 11350daef104SRichard Acayan compatible = "qcom,sdm670-dc-noc"; 11360daef104SRichard Acayan reg = <0 0x014e0000 0 0x400>; 11370daef104SRichard Acayan #interconnect-cells = <2>; 11380daef104SRichard Acayan qcom,bcm-voters = <&apps_bcm_voter>; 11390daef104SRichard Acayan }; 11400daef104SRichard Acayan 11410daef104SRichard Acayan config_noc: interconnect@1500000 { 11420daef104SRichard Acayan compatible = "qcom,sdm670-config-noc"; 11430daef104SRichard Acayan reg = <0 0x01500000 0 0x5080>; 11440daef104SRichard Acayan #interconnect-cells = <2>; 11450daef104SRichard Acayan qcom,bcm-voters = <&apps_bcm_voter>; 11460daef104SRichard Acayan }; 11470daef104SRichard Acayan 11480daef104SRichard Acayan system_noc: interconnect@1620000 { 11490daef104SRichard Acayan compatible = "qcom,sdm670-system-noc"; 11500daef104SRichard Acayan reg = <0 0x01620000 0 0x18080>; 11510daef104SRichard Acayan #interconnect-cells = <2>; 11520daef104SRichard Acayan qcom,bcm-voters = <&apps_bcm_voter>; 11530daef104SRichard Acayan }; 11540daef104SRichard Acayan 11550daef104SRichard Acayan aggre1_noc: interconnect@16e0000 { 11560daef104SRichard Acayan compatible = "qcom,sdm670-aggre1-noc"; 11570daef104SRichard Acayan reg = <0 0x016e0000 0 0x15080>; 11580daef104SRichard Acayan #interconnect-cells = <2>; 11590daef104SRichard Acayan qcom,bcm-voters = <&apps_bcm_voter>; 11600daef104SRichard Acayan }; 11610daef104SRichard Acayan 11620daef104SRichard Acayan aggre2_noc: interconnect@1700000 { 11630daef104SRichard Acayan compatible = "qcom,sdm670-aggre2-noc"; 11640daef104SRichard Acayan reg = <0 0x01700000 0 0x1f300>; 11650daef104SRichard Acayan #interconnect-cells = <2>; 11660daef104SRichard Acayan qcom,bcm-voters = <&apps_bcm_voter>; 11670daef104SRichard Acayan }; 11680daef104SRichard Acayan 11690daef104SRichard Acayan mmss_noc: interconnect@1740000 { 11700daef104SRichard Acayan compatible = "qcom,sdm670-mmss-noc"; 11710daef104SRichard Acayan reg = <0 0x01740000 0 0x1c100>; 11720daef104SRichard Acayan #interconnect-cells = <2>; 11730daef104SRichard Acayan qcom,bcm-voters = <&apps_bcm_voter>; 11740daef104SRichard Acayan }; 11750daef104SRichard Acayan 1176265d9989SRichard Acayan tcsr_mutex: hwlock@1f40000 { 1177265d9989SRichard Acayan compatible = "qcom,tcsr-mutex"; 1178265d9989SRichard Acayan reg = <0 0x01f40000 0 0x20000>; 1179265d9989SRichard Acayan #hwlock-cells = <1>; 1180265d9989SRichard Acayan }; 1181265d9989SRichard Acayan 118207c8ded6SRichard Acayan tlmm: pinctrl@3400000 { 118307c8ded6SRichard Acayan compatible = "qcom,sdm670-tlmm"; 118407c8ded6SRichard Acayan reg = <0 0x03400000 0 0xc00000>; 118507c8ded6SRichard Acayan interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 118607c8ded6SRichard Acayan gpio-controller; 118707c8ded6SRichard Acayan #gpio-cells = <2>; 118807c8ded6SRichard Acayan interrupt-controller; 118907c8ded6SRichard Acayan #interrupt-cells = <2>; 119007c8ded6SRichard Acayan gpio-ranges = <&tlmm 0 0 151>; 119171f08063SKonrad Dybcio wakeup-parent = <&pdc>; 119207c8ded6SRichard Acayan 1193*441ef858SRichard Acayan cci0_default: cci0-default-state { 1194*441ef858SRichard Acayan pins = "gpio17", "gpio18"; 1195*441ef858SRichard Acayan function = "cci_i2c"; 1196*441ef858SRichard Acayan drive-strength = <2>; 1197*441ef858SRichard Acayan bias-pull-up; 1198*441ef858SRichard Acayan }; 1199*441ef858SRichard Acayan 1200*441ef858SRichard Acayan cci0_sleep: cci0-sleep-state { 1201*441ef858SRichard Acayan pins = "gpio17", "gpio18"; 1202*441ef858SRichard Acayan function = "cci_i2c"; 1203*441ef858SRichard Acayan drive-strength = <2>; 1204*441ef858SRichard Acayan bias-pull-down; 1205*441ef858SRichard Acayan }; 1206*441ef858SRichard Acayan 1207*441ef858SRichard Acayan cci1_default: cci1-default-state { 1208*441ef858SRichard Acayan pins = "gpio19", "gpio20"; 1209*441ef858SRichard Acayan function = "cci_i2c"; 1210*441ef858SRichard Acayan drive-strength = <2>; 1211*441ef858SRichard Acayan bias-pull-up; 1212*441ef858SRichard Acayan }; 1213*441ef858SRichard Acayan 1214*441ef858SRichard Acayan cci1_sleep: cci1-sleep-state { 1215*441ef858SRichard Acayan pins = "gpio19", "gpio20"; 1216*441ef858SRichard Acayan function = "cci_i2c"; 1217*441ef858SRichard Acayan drive-strength = <2>; 1218*441ef858SRichard Acayan bias-pull-down; 1219*441ef858SRichard Acayan }; 1220*441ef858SRichard Acayan 122107c8ded6SRichard Acayan qup_i2c0_default: qup-i2c0-default-state { 122207c8ded6SRichard Acayan pins = "gpio0", "gpio1"; 122307c8ded6SRichard Acayan function = "qup0"; 122407c8ded6SRichard Acayan }; 122507c8ded6SRichard Acayan 122607c8ded6SRichard Acayan qup_i2c1_default: qup-i2c1-default-state { 122707c8ded6SRichard Acayan pins = "gpio17", "gpio18"; 122807c8ded6SRichard Acayan function = "qup1"; 122907c8ded6SRichard Acayan }; 123007c8ded6SRichard Acayan 123107c8ded6SRichard Acayan qup_i2c2_default: qup-i2c2-default-state { 123207c8ded6SRichard Acayan pins = "gpio27", "gpio28"; 123307c8ded6SRichard Acayan function = "qup2"; 123407c8ded6SRichard Acayan }; 123507c8ded6SRichard Acayan 123607c8ded6SRichard Acayan qup_i2c3_default: qup-i2c3-default-state { 123707c8ded6SRichard Acayan pins = "gpio41", "gpio42"; 123807c8ded6SRichard Acayan function = "qup3"; 123907c8ded6SRichard Acayan }; 124007c8ded6SRichard Acayan 124107c8ded6SRichard Acayan qup_i2c4_default: qup-i2c4-default-state { 124207c8ded6SRichard Acayan pins = "gpio89", "gpio90"; 124307c8ded6SRichard Acayan function = "qup4"; 124407c8ded6SRichard Acayan }; 124507c8ded6SRichard Acayan 124607c8ded6SRichard Acayan qup_i2c5_default: qup-i2c5-default-state { 124707c8ded6SRichard Acayan pins = "gpio85", "gpio86"; 124807c8ded6SRichard Acayan function = "qup5"; 124907c8ded6SRichard Acayan }; 125007c8ded6SRichard Acayan 125107c8ded6SRichard Acayan qup_i2c6_default: qup-i2c6-default-state { 125207c8ded6SRichard Acayan pins = "gpio45", "gpio46"; 125307c8ded6SRichard Acayan function = "qup6"; 125407c8ded6SRichard Acayan }; 125507c8ded6SRichard Acayan 125607c8ded6SRichard Acayan qup_i2c7_default: qup-i2c7-default-state { 125707c8ded6SRichard Acayan pins = "gpio93", "gpio94"; 125807c8ded6SRichard Acayan function = "qup7"; 125907c8ded6SRichard Acayan }; 126007c8ded6SRichard Acayan 126107c8ded6SRichard Acayan qup_i2c8_default: qup-i2c8-default-state { 126207c8ded6SRichard Acayan pins = "gpio65", "gpio66"; 126307c8ded6SRichard Acayan function = "qup8"; 126407c8ded6SRichard Acayan }; 126507c8ded6SRichard Acayan 126607c8ded6SRichard Acayan qup_i2c9_default: qup-i2c9-default-state { 126707c8ded6SRichard Acayan pins = "gpio6", "gpio7"; 126807c8ded6SRichard Acayan function = "qup9"; 126907c8ded6SRichard Acayan }; 127007c8ded6SRichard Acayan 127107c8ded6SRichard Acayan qup_i2c10_default: qup-i2c10-default-state { 127207c8ded6SRichard Acayan pins = "gpio55", "gpio56"; 127307c8ded6SRichard Acayan function = "qup10"; 127407c8ded6SRichard Acayan }; 127507c8ded6SRichard Acayan 127607c8ded6SRichard Acayan qup_i2c11_default: qup-i2c11-default-state { 127707c8ded6SRichard Acayan pins = "gpio31", "gpio32"; 127807c8ded6SRichard Acayan function = "qup11"; 127907c8ded6SRichard Acayan }; 128007c8ded6SRichard Acayan 128107c8ded6SRichard Acayan qup_i2c12_default: qup-i2c12-default-state { 128207c8ded6SRichard Acayan pins = "gpio49", "gpio50"; 128307c8ded6SRichard Acayan function = "qup12"; 128407c8ded6SRichard Acayan }; 128507c8ded6SRichard Acayan 128607c8ded6SRichard Acayan qup_i2c13_default: qup-i2c13-default-state { 128707c8ded6SRichard Acayan pins = "gpio105", "gpio106"; 128807c8ded6SRichard Acayan function = "qup13"; 128907c8ded6SRichard Acayan }; 129007c8ded6SRichard Acayan 129107c8ded6SRichard Acayan qup_i2c14_default: qup-i2c14-default-state { 129207c8ded6SRichard Acayan pins = "gpio33", "gpio34"; 129307c8ded6SRichard Acayan function = "qup14"; 129407c8ded6SRichard Acayan }; 129507c8ded6SRichard Acayan 129607c8ded6SRichard Acayan qup_i2c15_default: qup-i2c15-default-state { 129707c8ded6SRichard Acayan pins = "gpio81", "gpio82"; 129807c8ded6SRichard Acayan function = "qup15"; 129907c8ded6SRichard Acayan }; 130007c8ded6SRichard Acayan 130107c8ded6SRichard Acayan sdc1_state_on: sdc1-on-state { 130207c8ded6SRichard Acayan clk-pins { 130307c8ded6SRichard Acayan pins = "sdc1_clk"; 130407c8ded6SRichard Acayan bias-disable; 130507c8ded6SRichard Acayan drive-strength = <16>; 130607c8ded6SRichard Acayan }; 130707c8ded6SRichard Acayan 130807c8ded6SRichard Acayan cmd-pins { 130907c8ded6SRichard Acayan pins = "sdc1_cmd"; 131007c8ded6SRichard Acayan bias-pull-up; 131107c8ded6SRichard Acayan drive-strength = <10>; 131207c8ded6SRichard Acayan }; 131307c8ded6SRichard Acayan 131407c8ded6SRichard Acayan data-pins { 131507c8ded6SRichard Acayan pins = "sdc1_data"; 131607c8ded6SRichard Acayan bias-pull-up; 131707c8ded6SRichard Acayan drive-strength = <10>; 131807c8ded6SRichard Acayan }; 131907c8ded6SRichard Acayan 132007c8ded6SRichard Acayan rclk-pins { 132107c8ded6SRichard Acayan pins = "sdc1_rclk"; 132207c8ded6SRichard Acayan bias-pull-down; 132307c8ded6SRichard Acayan }; 132407c8ded6SRichard Acayan }; 132507c8ded6SRichard Acayan 132607c8ded6SRichard Acayan sdc1_state_off: sdc1-off-state { 132707c8ded6SRichard Acayan clk-pins { 132807c8ded6SRichard Acayan pins = "sdc1_clk"; 132907c8ded6SRichard Acayan bias-disable; 133007c8ded6SRichard Acayan drive-strength = <2>; 133107c8ded6SRichard Acayan }; 133207c8ded6SRichard Acayan 133307c8ded6SRichard Acayan cmd-pins { 133407c8ded6SRichard Acayan pins = "sdc1_cmd"; 133507c8ded6SRichard Acayan bias-pull-up; 133607c8ded6SRichard Acayan drive-strength = <2>; 133707c8ded6SRichard Acayan }; 133807c8ded6SRichard Acayan 133907c8ded6SRichard Acayan data-pins { 134007c8ded6SRichard Acayan pins = "sdc1_data"; 134107c8ded6SRichard Acayan bias-pull-up; 134207c8ded6SRichard Acayan drive-strength = <2>; 134307c8ded6SRichard Acayan }; 134407c8ded6SRichard Acayan 134507c8ded6SRichard Acayan rclk-pins { 134607c8ded6SRichard Acayan pins = "sdc1_rclk"; 134707c8ded6SRichard Acayan bias-pull-down; 134807c8ded6SRichard Acayan }; 134907c8ded6SRichard Acayan }; 135007c8ded6SRichard Acayan }; 135107c8ded6SRichard Acayan 1352cd89483aSRichard Acayan gpu: gpu@5000000 { 1353cd89483aSRichard Acayan compatible = "qcom,adreno-615.0", "qcom,adreno"; 1354cd89483aSRichard Acayan 1355cd89483aSRichard Acayan reg = <0 0x05000000 0 0x40000>, <0 0x0509e000 0 0x10>; 1356cd89483aSRichard Acayan reg-names = "kgsl_3d0_reg_memory", "cx_mem"; 1357cd89483aSRichard Acayan 1358cd89483aSRichard Acayan /* 1359cd89483aSRichard Acayan * Look ma, no clocks! The GPU clocks and power are 1360cd89483aSRichard Acayan * controlled entirely by the GMU 1361cd89483aSRichard Acayan */ 1362cd89483aSRichard Acayan 1363cd89483aSRichard Acayan interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>; 1364cd89483aSRichard Acayan 1365cd89483aSRichard Acayan iommus = <&adreno_smmu 0>; 1366cd89483aSRichard Acayan 1367cd89483aSRichard Acayan operating-points-v2 = <&gpu_opp_table>; 1368cd89483aSRichard Acayan 1369cd89483aSRichard Acayan qcom,gmu = <&gmu>; 1370cd89483aSRichard Acayan 1371cd89483aSRichard Acayan interconnects = <&mem_noc MASTER_GRAPHICS_3D 0 &mem_noc SLAVE_EBI_CH0 0>; 1372cd89483aSRichard Acayan interconnect-names = "gfx-mem"; 1373cd89483aSRichard Acayan 1374cd89483aSRichard Acayan nvmem-cells = <&gpu_speed_bin>; 1375cd89483aSRichard Acayan nvmem-cell-names = "speed_bin"; 1376cd89483aSRichard Acayan 1377cd89483aSRichard Acayan status = "disabled"; 1378cd89483aSRichard Acayan 1379cd89483aSRichard Acayan gpu_opp_table: opp-table { 1380cd89483aSRichard Acayan compatible = "operating-points-v2"; 1381cd89483aSRichard Acayan 1382cd89483aSRichard Acayan opp-780000000 { 1383cd89483aSRichard Acayan opp-hz = /bits/ 64 <780000000>; 1384cd89483aSRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>; 1385cd89483aSRichard Acayan opp-peak-kBps = <7216000>; 1386cd89483aSRichard Acayan opp-supported-hw = <0x8>; 1387cd89483aSRichard Acayan }; 1388cd89483aSRichard Acayan 1389cd89483aSRichard Acayan opp-750000000 { 1390cd89483aSRichard Acayan opp-hz = /bits/ 64 <750000000>; 1391cd89483aSRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_TURBO>; 1392cd89483aSRichard Acayan opp-peak-kBps = <7216000>; 1393cd89483aSRichard Acayan opp-supported-hw = <0x8>; 1394cd89483aSRichard Acayan }; 1395cd89483aSRichard Acayan 1396cd89483aSRichard Acayan opp-700000000 { 1397cd89483aSRichard Acayan opp-hz = /bits/ 64 <700000000>; 1398cd89483aSRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_TURBO>; 1399cd89483aSRichard Acayan opp-peak-kBps = <7216000>; 1400cd89483aSRichard Acayan opp-supported-hw = <0x4>; 1401cd89483aSRichard Acayan }; 1402cd89483aSRichard Acayan 1403cd89483aSRichard Acayan opp-650000000 { 1404cd89483aSRichard Acayan opp-hz = /bits/ 64 <650000000>; 1405cd89483aSRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>; 1406cd89483aSRichard Acayan opp-peak-kBps = <7216000>; 1407cd89483aSRichard Acayan opp-supported-hw = <0xc>; 1408cd89483aSRichard Acayan }; 1409cd89483aSRichard Acayan 1410cd89483aSRichard Acayan opp-565000000 { 1411cd89483aSRichard Acayan opp-hz = /bits/ 64 <565000000>; 1412cd89483aSRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_NOM>; 1413cd89483aSRichard Acayan opp-peak-kBps = <7216000>; 1414cd89483aSRichard Acayan opp-supported-hw = <0xc>; 1415cd89483aSRichard Acayan }; 1416cd89483aSRichard Acayan 1417cd89483aSRichard Acayan opp-504000000 { 1418cd89483aSRichard Acayan opp-hz = /bits/ 64 <504000000>; 1419cd89483aSRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_NOM>; 1420cd89483aSRichard Acayan opp-peak-kBps = <7216000>; 1421cd89483aSRichard Acayan opp-supported-hw = <0x2>; 1422cd89483aSRichard Acayan }; 1423cd89483aSRichard Acayan 1424cd89483aSRichard Acayan opp-430000000 { 1425cd89483aSRichard Acayan opp-hz = /bits/ 64 <430000000>; 1426cd89483aSRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>; 1427cd89483aSRichard Acayan opp-peak-kBps = <7216000>; 1428cd89483aSRichard Acayan opp-supported-hw = <0xf>; 1429cd89483aSRichard Acayan }; 1430cd89483aSRichard Acayan 1431cd89483aSRichard Acayan opp-355000000 { 1432cd89483aSRichard Acayan opp-hz = /bits/ 64 <355000000>; 1433cd89483aSRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_SVS>; 1434cd89483aSRichard Acayan opp-peak-kBps = <6220000>; 1435cd89483aSRichard Acayan opp-supported-hw = <0xf>; 1436cd89483aSRichard Acayan }; 1437cd89483aSRichard Acayan 1438cd89483aSRichard Acayan opp-267000000 { 1439cd89483aSRichard Acayan opp-hz = /bits/ 64 <267000000>; 1440cd89483aSRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>; 1441cd89483aSRichard Acayan opp-peak-kBps = <4068000>; 1442cd89483aSRichard Acayan opp-supported-hw = <0xf>; 1443cd89483aSRichard Acayan }; 1444cd89483aSRichard Acayan 1445cd89483aSRichard Acayan opp-180000000 { 1446cd89483aSRichard Acayan opp-hz = /bits/ 64 <180000000>; 1447cd89483aSRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>; 1448cd89483aSRichard Acayan opp-peak-kBps = <1804000>; 1449cd89483aSRichard Acayan opp-supported-hw = <0xf>; 1450cd89483aSRichard Acayan }; 1451cd89483aSRichard Acayan }; 1452cd89483aSRichard Acayan }; 1453cd89483aSRichard Acayan 1454cd89483aSRichard Acayan adreno_smmu: iommu@5040000 { 1455cd89483aSRichard Acayan compatible = "qcom,sdm670-smmu-v2", "qcom,adreno-smmu", "qcom,smmu-v2"; 1456cd89483aSRichard Acayan reg = <0 0x05040000 0 0x10000>; 1457cd89483aSRichard Acayan #iommu-cells = <1>; 1458cd89483aSRichard Acayan #global-interrupts = <2>; 1459cd89483aSRichard Acayan interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>, 1460cd89483aSRichard Acayan <GIC_SPI 231 IRQ_TYPE_LEVEL_HIGH>, 1461cd89483aSRichard Acayan <GIC_SPI 364 IRQ_TYPE_EDGE_RISING>, 1462cd89483aSRichard Acayan <GIC_SPI 365 IRQ_TYPE_EDGE_RISING>, 1463cd89483aSRichard Acayan <GIC_SPI 366 IRQ_TYPE_EDGE_RISING>, 1464cd89483aSRichard Acayan <GIC_SPI 367 IRQ_TYPE_EDGE_RISING>, 1465cd89483aSRichard Acayan <GIC_SPI 368 IRQ_TYPE_EDGE_RISING>, 1466cd89483aSRichard Acayan <GIC_SPI 369 IRQ_TYPE_EDGE_RISING>, 1467cd89483aSRichard Acayan <GIC_SPI 370 IRQ_TYPE_EDGE_RISING>, 1468cd89483aSRichard Acayan <GIC_SPI 371 IRQ_TYPE_EDGE_RISING>; 1469cd89483aSRichard Acayan clocks = <&gcc GCC_GPU_MEMNOC_GFX_CLK>, 1470cd89483aSRichard Acayan <&gcc GCC_GPU_CFG_AHB_CLK>; 1471cd89483aSRichard Acayan clock-names = "bus", "iface"; 1472cd89483aSRichard Acayan 1473cd89483aSRichard Acayan power-domains = <&gpucc GPU_CX_GDSC>; 1474cd89483aSRichard Acayan }; 1475cd89483aSRichard Acayan 1476cd89483aSRichard Acayan gmu: gmu@506a000 { 1477cd89483aSRichard Acayan compatible = "qcom,adreno-gmu-615.0", "qcom,adreno-gmu"; 1478cd89483aSRichard Acayan 1479cd89483aSRichard Acayan reg = <0 0x0506a000 0 0x30000>, 1480cd89483aSRichard Acayan <0 0x0b280000 0 0x10000>, 1481cd89483aSRichard Acayan <0 0x0b480000 0 0x10000>; 1482cd89483aSRichard Acayan reg-names = "gmu", "gmu_pdc", "gmu_pdc_seq"; 1483cd89483aSRichard Acayan 1484cd89483aSRichard Acayan interrupts = <GIC_SPI 304 IRQ_TYPE_LEVEL_HIGH>, 1485cd89483aSRichard Acayan <GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>; 1486cd89483aSRichard Acayan interrupt-names = "hfi", "gmu"; 1487cd89483aSRichard Acayan 1488cd89483aSRichard Acayan clocks = <&gpucc GPU_CC_CX_GMU_CLK>, 1489cd89483aSRichard Acayan <&gpucc GPU_CC_CXO_CLK>, 1490cd89483aSRichard Acayan <&gcc GCC_DDRSS_GPU_AXI_CLK>, 1491cd89483aSRichard Acayan <&gcc GCC_GPU_MEMNOC_GFX_CLK>; 1492cd89483aSRichard Acayan clock-names = "gmu", "cxo", "axi", "memnoc"; 1493cd89483aSRichard Acayan 1494cd89483aSRichard Acayan power-domains = <&gpucc GPU_CX_GDSC>, 1495cd89483aSRichard Acayan <&gpucc GPU_GX_GDSC>; 1496cd89483aSRichard Acayan power-domain-names = "cx", "gx"; 1497cd89483aSRichard Acayan 1498cd89483aSRichard Acayan iommus = <&adreno_smmu 5>; 1499cd89483aSRichard Acayan 1500cd89483aSRichard Acayan operating-points-v2 = <&gmu_opp_table>; 1501cd89483aSRichard Acayan 1502cd89483aSRichard Acayan gmu_opp_table: opp-table { 1503cd89483aSRichard Acayan compatible = "operating-points-v2"; 1504cd89483aSRichard Acayan 1505cd89483aSRichard Acayan opp-200000000 { 1506cd89483aSRichard Acayan opp-hz = /bits/ 64 <200000000>; 1507cd89483aSRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>; 1508cd89483aSRichard Acayan }; 1509cd89483aSRichard Acayan }; 1510cd89483aSRichard Acayan }; 1511cd89483aSRichard Acayan 1512cd89483aSRichard Acayan gpucc: clock-controller@5090000 { 1513cd89483aSRichard Acayan compatible = "qcom,sdm845-gpucc"; 1514cd89483aSRichard Acayan reg = <0 0x05090000 0 0x9000>; 1515cd89483aSRichard Acayan #clock-cells = <1>; 1516cd89483aSRichard Acayan #reset-cells = <1>; 1517cd89483aSRichard Acayan #power-domain-cells = <1>; 1518cd89483aSRichard Acayan clocks = <&rpmhcc RPMH_CXO_CLK>, 1519cd89483aSRichard Acayan <&gcc GCC_GPU_GPLL0_CLK_SRC>, 1520cd89483aSRichard Acayan <&gcc GCC_GPU_GPLL0_DIV_CLK_SRC>; 1521cd89483aSRichard Acayan clock-names = "bi_tcxo", 1522cd89483aSRichard Acayan "gcc_gpu_gpll0_clk_src", 1523cd89483aSRichard Acayan "gcc_gpu_gpll0_div_clk_src"; 1524cd89483aSRichard Acayan }; 1525cd89483aSRichard Acayan 152607c8ded6SRichard Acayan usb_1_hsphy: phy@88e2000 { 152707c8ded6SRichard Acayan compatible = "qcom,sdm670-qusb2-phy", "qcom,qusb2-v2-phy"; 152807c8ded6SRichard Acayan reg = <0 0x088e2000 0 0x400>; 152907c8ded6SRichard Acayan #phy-cells = <0>; 153007c8ded6SRichard Acayan 153107c8ded6SRichard Acayan clocks = <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>, 153207c8ded6SRichard Acayan <&rpmhcc RPMH_CXO_CLK>; 153307c8ded6SRichard Acayan clock-names = "cfg_ahb", "ref"; 153407c8ded6SRichard Acayan 153507c8ded6SRichard Acayan resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>; 153607c8ded6SRichard Acayan 1537cb98187aSRichard Acayan nvmem-cells = <&qusb2_hstx_trim>; 1538cb98187aSRichard Acayan 153907c8ded6SRichard Acayan status = "disabled"; 154007c8ded6SRichard Acayan }; 154107c8ded6SRichard Acayan 154207c8ded6SRichard Acayan usb_1: usb@a6f8800 { 154307c8ded6SRichard Acayan compatible = "qcom,sdm670-dwc3", "qcom,dwc3"; 154407c8ded6SRichard Acayan reg = <0 0x0a6f8800 0 0x400>; 154507c8ded6SRichard Acayan #address-cells = <2>; 154607c8ded6SRichard Acayan #size-cells = <2>; 154707c8ded6SRichard Acayan ranges; 154807c8ded6SRichard Acayan dma-ranges; 154907c8ded6SRichard Acayan 155007c8ded6SRichard Acayan clocks = <&gcc GCC_CFG_NOC_USB3_PRIM_AXI_CLK>, 155107c8ded6SRichard Acayan <&gcc GCC_USB30_PRIM_MASTER_CLK>, 155207c8ded6SRichard Acayan <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>, 155307c8ded6SRichard Acayan <&gcc GCC_USB30_PRIM_SLEEP_CLK>, 155407c8ded6SRichard Acayan <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>; 155507c8ded6SRichard Acayan clock-names = "cfg_noc", 155607c8ded6SRichard Acayan "core", 155707c8ded6SRichard Acayan "iface", 155807c8ded6SRichard Acayan "sleep", 155907c8ded6SRichard Acayan "mock_utmi"; 156007c8ded6SRichard Acayan 156107c8ded6SRichard Acayan assigned-clocks = <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>, 156207c8ded6SRichard Acayan <&gcc GCC_USB30_PRIM_MASTER_CLK>; 156307c8ded6SRichard Acayan assigned-clock-rates = <19200000>, <150000000>; 156407c8ded6SRichard Acayan 15657c9afa1fSKrishna Kurapati interrupts-extended = <&intc GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>, 15667c9afa1fSKrishna Kurapati <&intc GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>, 15677c9afa1fSKrishna Kurapati <&pdc 9 IRQ_TYPE_EDGE_BOTH>, 1568c42d12eaSJohan Hovold <&pdc 8 IRQ_TYPE_EDGE_BOTH>, 15697c9afa1fSKrishna Kurapati <&pdc 6 IRQ_TYPE_LEVEL_HIGH>; 15707c9afa1fSKrishna Kurapati interrupt-names = "pwr_event", 15717c9afa1fSKrishna Kurapati "hs_phy_irq", 15727c9afa1fSKrishna Kurapati "dp_hs_phy_irq", 15737c9afa1fSKrishna Kurapati "dm_hs_phy_irq", 15747c9afa1fSKrishna Kurapati "ss_phy_irq"; 157507c8ded6SRichard Acayan 157607c8ded6SRichard Acayan power-domains = <&gcc USB30_PRIM_GDSC>; 157707c8ded6SRichard Acayan 157807c8ded6SRichard Acayan resets = <&gcc GCC_USB30_PRIM_BCR>; 157907c8ded6SRichard Acayan 158017289c01SRichard Acayan interconnects = <&aggre2_noc MASTER_USB3 0 &mem_noc SLAVE_EBI_CH0 0>, 158117289c01SRichard Acayan <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_USB3 0>; 158217289c01SRichard Acayan interconnect-names = "usb-ddr", "apps-usb"; 158317289c01SRichard Acayan 158407c8ded6SRichard Acayan status = "disabled"; 158507c8ded6SRichard Acayan 158607c8ded6SRichard Acayan usb_1_dwc3: usb@a600000 { 158707c8ded6SRichard Acayan compatible = "snps,dwc3"; 158807c8ded6SRichard Acayan reg = <0 0x0a600000 0 0xcd00>; 158907c8ded6SRichard Acayan interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>; 159007c8ded6SRichard Acayan iommus = <&apps_smmu 0x740 0>; 159107c8ded6SRichard Acayan snps,dis_u2_susphy_quirk; 159207c8ded6SRichard Acayan snps,dis_enblslpm_quirk; 159307c8ded6SRichard Acayan phys = <&usb_1_hsphy>; 159407c8ded6SRichard Acayan phy-names = "usb2-phy"; 159507c8ded6SRichard Acayan }; 159607c8ded6SRichard Acayan }; 159707c8ded6SRichard Acayan 1598b51ee205SKonrad Dybcio pdc: interrupt-controller@b220000 { 1599b51ee205SKonrad Dybcio compatible = "qcom,sdm670-pdc", "qcom,pdc"; 1600b51ee205SKonrad Dybcio reg = <0 0x0b220000 0 0x30000>; 1601b51ee205SKonrad Dybcio qcom,pdc-ranges = <0 480 40>, <41 521 7>, <49 529 4>, 1602ad75cda9SKonrad Dybcio <54 534 24>, <79 559 15>, <94 609 15>, 1603ad75cda9SKonrad Dybcio <115 630 7>; 1604b51ee205SKonrad Dybcio #interrupt-cells = <2>; 1605b51ee205SKonrad Dybcio interrupt-parent = <&intc>; 1606b51ee205SKonrad Dybcio interrupt-controller; 1607b51ee205SKonrad Dybcio }; 1608b51ee205SKonrad Dybcio 160907c8ded6SRichard Acayan spmi_bus: spmi@c440000 { 161007c8ded6SRichard Acayan compatible = "qcom,spmi-pmic-arb"; 161107c8ded6SRichard Acayan reg = <0 0x0c440000 0 0x1100>, 161207c8ded6SRichard Acayan <0 0x0c600000 0 0x2000000>, 161307c8ded6SRichard Acayan <0 0x0e600000 0 0x100000>, 161407c8ded6SRichard Acayan <0 0x0e700000 0 0xa0000>, 161507c8ded6SRichard Acayan <0 0x0c40a000 0 0x26000>; 161607c8ded6SRichard Acayan reg-names = "core", "chnls", "obsrvr", "intr", "cnfg"; 161707c8ded6SRichard Acayan interrupt-names = "periph_irq"; 161807c8ded6SRichard Acayan interrupts = <GIC_SPI 481 IRQ_TYPE_LEVEL_HIGH>; 161907c8ded6SRichard Acayan qcom,ee = <0>; 162007c8ded6SRichard Acayan qcom,channel = <0>; 162107c8ded6SRichard Acayan #address-cells = <2>; 162207c8ded6SRichard Acayan #size-cells = <0>; 162307c8ded6SRichard Acayan interrupt-controller; 162407c8ded6SRichard Acayan #interrupt-cells = <4>; 162507c8ded6SRichard Acayan }; 162607c8ded6SRichard Acayan 1627*441ef858SRichard Acayan cci: cci@ac4a000 { 1628*441ef858SRichard Acayan compatible = "qcom,sdm670-cci", "qcom,msm8996-cci"; 1629*441ef858SRichard Acayan #address-cells = <1>; 1630*441ef858SRichard Acayan #size-cells = <0>; 1631*441ef858SRichard Acayan 1632*441ef858SRichard Acayan reg = <0 0x0ac4a000 0 0x4000>; 1633*441ef858SRichard Acayan interrupts = <GIC_SPI 460 IRQ_TYPE_EDGE_RISING>; 1634*441ef858SRichard Acayan power-domains = <&camcc TITAN_TOP_GDSC>; 1635*441ef858SRichard Acayan 1636*441ef858SRichard Acayan clocks = <&camcc CAM_CC_CAMNOC_AXI_CLK>, 1637*441ef858SRichard Acayan <&camcc CAM_CC_SOC_AHB_CLK>, 1638*441ef858SRichard Acayan <&camcc CAM_CC_CPAS_AHB_CLK>, 1639*441ef858SRichard Acayan <&camcc CAM_CC_CCI_CLK>; 1640*441ef858SRichard Acayan clock-names = "camnoc_axi", 1641*441ef858SRichard Acayan "soc_ahb", 1642*441ef858SRichard Acayan "cpas_ahb", 1643*441ef858SRichard Acayan "cci"; 1644*441ef858SRichard Acayan 1645*441ef858SRichard Acayan pinctrl-names = "default", "sleep"; 1646*441ef858SRichard Acayan pinctrl-0 = <&cci0_default &cci1_default>; 1647*441ef858SRichard Acayan pinctrl-1 = <&cci0_sleep &cci1_sleep>; 1648*441ef858SRichard Acayan 1649*441ef858SRichard Acayan status = "disabled"; 1650*441ef858SRichard Acayan 1651*441ef858SRichard Acayan cci_i2c0: i2c-bus@0 { 1652*441ef858SRichard Acayan reg = <0>; 1653*441ef858SRichard Acayan clock-frequency = <1000000>; 1654*441ef858SRichard Acayan #address-cells = <1>; 1655*441ef858SRichard Acayan #size-cells = <0>; 1656*441ef858SRichard Acayan }; 1657*441ef858SRichard Acayan 1658*441ef858SRichard Acayan cci_i2c1: i2c-bus@1 { 1659*441ef858SRichard Acayan reg = <1>; 1660*441ef858SRichard Acayan clock-frequency = <1000000>; 1661*441ef858SRichard Acayan #address-cells = <1>; 1662*441ef858SRichard Acayan #size-cells = <0>; 1663*441ef858SRichard Acayan }; 1664*441ef858SRichard Acayan }; 1665*441ef858SRichard Acayan 1666*441ef858SRichard Acayan camss: isp@acb3000 { 1667*441ef858SRichard Acayan compatible = "qcom,sdm670-camss"; 1668*441ef858SRichard Acayan reg = <0 0x0acb3000 0 0x1000>, 1669*441ef858SRichard Acayan <0 0x0acba000 0 0x1000>, 1670*441ef858SRichard Acayan <0 0x0acc8000 0 0x1000>, 1671*441ef858SRichard Acayan <0 0x0ac65000 0 0x1000>, 1672*441ef858SRichard Acayan <0 0x0ac66000 0 0x1000>, 1673*441ef858SRichard Acayan <0 0x0ac67000 0 0x1000>, 1674*441ef858SRichard Acayan <0 0x0acaf000 0 0x4000>, 1675*441ef858SRichard Acayan <0 0x0acb6000 0 0x4000>, 1676*441ef858SRichard Acayan <0 0x0acc4000 0 0x4000>; 1677*441ef858SRichard Acayan reg-names = "csid0", 1678*441ef858SRichard Acayan "csid1", 1679*441ef858SRichard Acayan "csid2", 1680*441ef858SRichard Acayan "csiphy0", 1681*441ef858SRichard Acayan "csiphy1", 1682*441ef858SRichard Acayan "csiphy2", 1683*441ef858SRichard Acayan "vfe0", 1684*441ef858SRichard Acayan "vfe1", 1685*441ef858SRichard Acayan "vfe_lite"; 1686*441ef858SRichard Acayan 1687*441ef858SRichard Acayan interrupts = <GIC_SPI 464 IRQ_TYPE_EDGE_RISING>, 1688*441ef858SRichard Acayan <GIC_SPI 466 IRQ_TYPE_EDGE_RISING>, 1689*441ef858SRichard Acayan <GIC_SPI 468 IRQ_TYPE_EDGE_RISING>, 1690*441ef858SRichard Acayan <GIC_SPI 477 IRQ_TYPE_EDGE_RISING>, 1691*441ef858SRichard Acayan <GIC_SPI 478 IRQ_TYPE_EDGE_RISING>, 1692*441ef858SRichard Acayan <GIC_SPI 479 IRQ_TYPE_EDGE_RISING>, 1693*441ef858SRichard Acayan <GIC_SPI 465 IRQ_TYPE_EDGE_RISING>, 1694*441ef858SRichard Acayan <GIC_SPI 467 IRQ_TYPE_EDGE_RISING>, 1695*441ef858SRichard Acayan <GIC_SPI 469 IRQ_TYPE_EDGE_RISING>; 1696*441ef858SRichard Acayan interrupt-names = "csid0", 1697*441ef858SRichard Acayan "csid1", 1698*441ef858SRichard Acayan "csid2", 1699*441ef858SRichard Acayan "csiphy0", 1700*441ef858SRichard Acayan "csiphy1", 1701*441ef858SRichard Acayan "csiphy2", 1702*441ef858SRichard Acayan "vfe0", 1703*441ef858SRichard Acayan "vfe1", 1704*441ef858SRichard Acayan "vfe_lite"; 1705*441ef858SRichard Acayan 1706*441ef858SRichard Acayan clocks = <&camcc CAM_CC_CAMNOC_AXI_CLK>, 1707*441ef858SRichard Acayan <&camcc CAM_CC_CPAS_AHB_CLK>, 1708*441ef858SRichard Acayan <&camcc CAM_CC_IFE_0_CSID_CLK>, 1709*441ef858SRichard Acayan <&camcc CAM_CC_IFE_1_CSID_CLK>, 1710*441ef858SRichard Acayan <&camcc CAM_CC_IFE_LITE_CSID_CLK>, 1711*441ef858SRichard Acayan <&camcc CAM_CC_CSIPHY0_CLK>, 1712*441ef858SRichard Acayan <&camcc CAM_CC_CSI0PHYTIMER_CLK>, 1713*441ef858SRichard Acayan <&camcc CAM_CC_CSIPHY1_CLK>, 1714*441ef858SRichard Acayan <&camcc CAM_CC_CSI1PHYTIMER_CLK>, 1715*441ef858SRichard Acayan <&camcc CAM_CC_CSIPHY2_CLK>, 1716*441ef858SRichard Acayan <&camcc CAM_CC_CSI2PHYTIMER_CLK>, 1717*441ef858SRichard Acayan <&gcc GCC_CAMERA_AHB_CLK>, 1718*441ef858SRichard Acayan <&gcc GCC_CAMERA_AXI_CLK>, 1719*441ef858SRichard Acayan <&camcc CAM_CC_SOC_AHB_CLK>, 1720*441ef858SRichard Acayan <&camcc CAM_CC_IFE_0_CLK>, 1721*441ef858SRichard Acayan <&camcc CAM_CC_IFE_0_AXI_CLK>, 1722*441ef858SRichard Acayan <&camcc CAM_CC_IFE_0_CPHY_RX_CLK>, 1723*441ef858SRichard Acayan <&camcc CAM_CC_IFE_1_CLK>, 1724*441ef858SRichard Acayan <&camcc CAM_CC_IFE_1_AXI_CLK>, 1725*441ef858SRichard Acayan <&camcc CAM_CC_IFE_1_CPHY_RX_CLK>, 1726*441ef858SRichard Acayan <&camcc CAM_CC_IFE_LITE_CLK>, 1727*441ef858SRichard Acayan <&camcc CAM_CC_IFE_LITE_CPHY_RX_CLK>; 1728*441ef858SRichard Acayan clock-names = "camnoc_axi", 1729*441ef858SRichard Acayan "cpas_ahb", 1730*441ef858SRichard Acayan "csi0", 1731*441ef858SRichard Acayan "csi1", 1732*441ef858SRichard Acayan "csi2", 1733*441ef858SRichard Acayan "csiphy0", 1734*441ef858SRichard Acayan "csiphy0_timer", 1735*441ef858SRichard Acayan "csiphy1", 1736*441ef858SRichard Acayan "csiphy1_timer", 1737*441ef858SRichard Acayan "csiphy2", 1738*441ef858SRichard Acayan "csiphy2_timer", 1739*441ef858SRichard Acayan "gcc_camera_ahb", 1740*441ef858SRichard Acayan "gcc_camera_axi", 1741*441ef858SRichard Acayan "soc_ahb", 1742*441ef858SRichard Acayan "vfe0", 1743*441ef858SRichard Acayan "vfe0_axi", 1744*441ef858SRichard Acayan "vfe0_cphy_rx", 1745*441ef858SRichard Acayan "vfe1", 1746*441ef858SRichard Acayan "vfe1_axi", 1747*441ef858SRichard Acayan "vfe1_cphy_rx", 1748*441ef858SRichard Acayan "vfe_lite", 1749*441ef858SRichard Acayan "vfe_lite_cphy_rx"; 1750*441ef858SRichard Acayan 1751*441ef858SRichard Acayan iommus = <&apps_smmu 0x808 0x0>, 1752*441ef858SRichard Acayan <&apps_smmu 0x810 0x8>, 1753*441ef858SRichard Acayan <&apps_smmu 0xc08 0x0>, 1754*441ef858SRichard Acayan <&apps_smmu 0xc10 0x8>; 1755*441ef858SRichard Acayan 1756*441ef858SRichard Acayan power-domains = <&camcc IFE_0_GDSC>, 1757*441ef858SRichard Acayan <&camcc IFE_1_GDSC>, 1758*441ef858SRichard Acayan <&camcc TITAN_TOP_GDSC>; 1759*441ef858SRichard Acayan power-domain-names = "ife0", 1760*441ef858SRichard Acayan "ife1", 1761*441ef858SRichard Acayan "top"; 1762*441ef858SRichard Acayan 1763*441ef858SRichard Acayan status = "disabled"; 1764*441ef858SRichard Acayan 1765*441ef858SRichard Acayan ports { 1766*441ef858SRichard Acayan #address-cells = <1>; 1767*441ef858SRichard Acayan #size-cells = <0>; 1768*441ef858SRichard Acayan 1769*441ef858SRichard Acayan port@0 { 1770*441ef858SRichard Acayan reg = <0>; 1771*441ef858SRichard Acayan 1772*441ef858SRichard Acayan camss_endpoint0: endpoint { 1773*441ef858SRichard Acayan status = "disabled"; 1774*441ef858SRichard Acayan }; 1775*441ef858SRichard Acayan }; 1776*441ef858SRichard Acayan 1777*441ef858SRichard Acayan port@1 { 1778*441ef858SRichard Acayan reg = <1>; 1779*441ef858SRichard Acayan 1780*441ef858SRichard Acayan camss_endpoint1: endpoint { 1781*441ef858SRichard Acayan status = "disabled"; 1782*441ef858SRichard Acayan }; 1783*441ef858SRichard Acayan }; 1784*441ef858SRichard Acayan 1785*441ef858SRichard Acayan port@2 { 1786*441ef858SRichard Acayan reg = <2>; 1787*441ef858SRichard Acayan 1788*441ef858SRichard Acayan camss_endpoint2: endpoint { 1789*441ef858SRichard Acayan status = "disabled"; 1790*441ef858SRichard Acayan }; 1791*441ef858SRichard Acayan }; 1792*441ef858SRichard Acayan }; 1793*441ef858SRichard Acayan }; 1794*441ef858SRichard Acayan 17959620f548SRichard Acayan camcc: clock-controller@ad00000 { 17969620f548SRichard Acayan compatible = "qcom,sdm670-camcc", "qcom,sdm845-camcc"; 17979620f548SRichard Acayan reg = <0 0x0ad00000 0 0x10000>; 17989620f548SRichard Acayan clocks = <&rpmhcc RPMH_CXO_CLK>; 17999620f548SRichard Acayan clock-names = "bi_tcxo"; 18009620f548SRichard Acayan #clock-cells = <1>; 18019620f548SRichard Acayan #reset-cells = <1>; 18029620f548SRichard Acayan #power-domain-cells = <1>; 18039620f548SRichard Acayan }; 18049620f548SRichard Acayan 18055f8ba4f2SRichard Acayan mdss: display-subsystem@ae00000 { 18065f8ba4f2SRichard Acayan compatible = "qcom,sdm670-mdss"; 18075f8ba4f2SRichard Acayan reg = <0 0x0ae00000 0 0x1000>; 18085f8ba4f2SRichard Acayan reg-names = "mdss"; 18095f8ba4f2SRichard Acayan 18105f8ba4f2SRichard Acayan power-domains = <&dispcc MDSS_GDSC>; 18115f8ba4f2SRichard Acayan 18125f8ba4f2SRichard Acayan clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, 18135f8ba4f2SRichard Acayan <&dispcc DISP_CC_MDSS_MDP_CLK>; 18145f8ba4f2SRichard Acayan clock-names = "iface", "core"; 18155f8ba4f2SRichard Acayan 18165f8ba4f2SRichard Acayan interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 18175f8ba4f2SRichard Acayan interrupt-controller; 18185f8ba4f2SRichard Acayan #interrupt-cells = <1>; 18195f8ba4f2SRichard Acayan 18205f8ba4f2SRichard Acayan interconnects = <&mmss_noc MASTER_MDP_PORT0 0 &mem_noc SLAVE_EBI_CH0 0>, 18215f8ba4f2SRichard Acayan <&mmss_noc MASTER_MDP_PORT1 0 &mem_noc SLAVE_EBI_CH0 0>; 18225f8ba4f2SRichard Acayan interconnect-names = "mdp0-mem", "mdp1-mem"; 18235f8ba4f2SRichard Acayan 18245f8ba4f2SRichard Acayan iommus = <&apps_smmu 0x880 0x8>, 18255f8ba4f2SRichard Acayan <&apps_smmu 0xc80 0x8>; 18265f8ba4f2SRichard Acayan 18275f8ba4f2SRichard Acayan #address-cells = <2>; 18285f8ba4f2SRichard Acayan #size-cells = <2>; 18295f8ba4f2SRichard Acayan ranges; 18305f8ba4f2SRichard Acayan 18315f8ba4f2SRichard Acayan status = "disabled"; 18325f8ba4f2SRichard Acayan 18335f8ba4f2SRichard Acayan mdss_mdp: display-controller@ae01000 { 18345f8ba4f2SRichard Acayan compatible = "qcom,sdm670-dpu"; 18355f8ba4f2SRichard Acayan reg = <0 0x0ae01000 0 0x8f000>, 1836acc206feSDmitry Baryshkov <0 0x0aeb0000 0 0x3000>; 18375f8ba4f2SRichard Acayan reg-names = "mdp", "vbif"; 18385f8ba4f2SRichard Acayan 18395f8ba4f2SRichard Acayan clocks = <&gcc GCC_DISP_AXI_CLK>, 18405f8ba4f2SRichard Acayan <&dispcc DISP_CC_MDSS_AHB_CLK>, 18415f8ba4f2SRichard Acayan <&dispcc DISP_CC_MDSS_AXI_CLK>, 18425f8ba4f2SRichard Acayan <&dispcc DISP_CC_MDSS_MDP_CLK>, 18435f8ba4f2SRichard Acayan <&dispcc DISP_CC_MDSS_VSYNC_CLK>; 18445f8ba4f2SRichard Acayan clock-names = "gcc-bus", "iface", "bus", "core", "vsync"; 18455f8ba4f2SRichard Acayan 18465f8ba4f2SRichard Acayan assigned-clocks = <&dispcc DISP_CC_MDSS_VSYNC_CLK>; 18475f8ba4f2SRichard Acayan assigned-clock-rates = <19200000>; 18485f8ba4f2SRichard Acayan operating-points-v2 = <&mdp_opp_table>; 18495f8ba4f2SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 18505f8ba4f2SRichard Acayan 18515f8ba4f2SRichard Acayan interrupt-parent = <&mdss>; 18525f8ba4f2SRichard Acayan interrupts = <0>; 18535f8ba4f2SRichard Acayan 18545f8ba4f2SRichard Acayan ports { 18555f8ba4f2SRichard Acayan #address-cells = <1>; 18565f8ba4f2SRichard Acayan #size-cells = <0>; 18575f8ba4f2SRichard Acayan 18585f8ba4f2SRichard Acayan port@0 { 18595f8ba4f2SRichard Acayan reg = <0>; 18605f8ba4f2SRichard Acayan dpu_intf0_out: endpoint { 18615f8ba4f2SRichard Acayan remote-endpoint = <&mdss_dsi0_in>; 18625f8ba4f2SRichard Acayan }; 18635f8ba4f2SRichard Acayan }; 18645f8ba4f2SRichard Acayan 18655f8ba4f2SRichard Acayan port@1 { 18665f8ba4f2SRichard Acayan reg = <1>; 18675f8ba4f2SRichard Acayan dpu_intf1_out: endpoint { 18685f8ba4f2SRichard Acayan remote-endpoint = <&mdss_dsi1_in>; 18695f8ba4f2SRichard Acayan }; 18705f8ba4f2SRichard Acayan }; 18715f8ba4f2SRichard Acayan }; 18725f8ba4f2SRichard Acayan 18735f8ba4f2SRichard Acayan mdp_opp_table: opp-table { 18745f8ba4f2SRichard Acayan compatible = "operating-points-v2"; 18755f8ba4f2SRichard Acayan 18765f8ba4f2SRichard Acayan opp-19200000 { 18775f8ba4f2SRichard Acayan opp-hz = /bits/ 64 <19200000>; 18785f8ba4f2SRichard Acayan required-opps = <&rpmhpd_opp_min_svs>; 18795f8ba4f2SRichard Acayan }; 18805f8ba4f2SRichard Acayan 18815f8ba4f2SRichard Acayan opp-171428571 { 18825f8ba4f2SRichard Acayan opp-hz = /bits/ 64 <171428571>; 18835f8ba4f2SRichard Acayan required-opps = <&rpmhpd_opp_low_svs>; 18845f8ba4f2SRichard Acayan }; 18855f8ba4f2SRichard Acayan 18865f8ba4f2SRichard Acayan opp-358000000 { 18875f8ba4f2SRichard Acayan opp-hz = /bits/ 64 <358000000>; 18885f8ba4f2SRichard Acayan required-opps = <&rpmhpd_opp_svs_l1>; 18895f8ba4f2SRichard Acayan }; 18905f8ba4f2SRichard Acayan 18915f8ba4f2SRichard Acayan opp-430000000 { 18925f8ba4f2SRichard Acayan opp-hz = /bits/ 64 <430000000>; 18935f8ba4f2SRichard Acayan required-opps = <&rpmhpd_opp_nom>; 18945f8ba4f2SRichard Acayan }; 18955f8ba4f2SRichard Acayan }; 18965f8ba4f2SRichard Acayan }; 18975f8ba4f2SRichard Acayan 18985f8ba4f2SRichard Acayan mdss_dsi0: dsi@ae94000 { 18995f8ba4f2SRichard Acayan compatible = "qcom,sdm670-dsi-ctrl", 19005f8ba4f2SRichard Acayan "qcom,mdss-dsi-ctrl"; 19015f8ba4f2SRichard Acayan reg = <0 0x0ae94000 0 0x400>; 19025f8ba4f2SRichard Acayan reg-names = "dsi_ctrl"; 19035f8ba4f2SRichard Acayan 19045f8ba4f2SRichard Acayan interrupt-parent = <&mdss>; 19055f8ba4f2SRichard Acayan interrupts = <4>; 19065f8ba4f2SRichard Acayan 19075f8ba4f2SRichard Acayan clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK>, 19085f8ba4f2SRichard Acayan <&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>, 19095f8ba4f2SRichard Acayan <&dispcc DISP_CC_MDSS_PCLK0_CLK>, 19105f8ba4f2SRichard Acayan <&dispcc DISP_CC_MDSS_ESC0_CLK>, 19115f8ba4f2SRichard Acayan <&dispcc DISP_CC_MDSS_AHB_CLK>, 19125f8ba4f2SRichard Acayan <&dispcc DISP_CC_MDSS_AXI_CLK>; 19135f8ba4f2SRichard Acayan clock-names = "byte", 19145f8ba4f2SRichard Acayan "byte_intf", 19155f8ba4f2SRichard Acayan "pixel", 19165f8ba4f2SRichard Acayan "core", 19175f8ba4f2SRichard Acayan "iface", 19185f8ba4f2SRichard Acayan "bus"; 19195f8ba4f2SRichard Acayan assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK_SRC>, 19205f8ba4f2SRichard Acayan <&dispcc DISP_CC_MDSS_PCLK0_CLK_SRC>; 1921dc489ba0SKrzysztof Kozlowski assigned-clock-parents = <&mdss_dsi0_phy DSI_BYTE_PLL_CLK>, 1922dc489ba0SKrzysztof Kozlowski <&mdss_dsi0_phy DSI_PIXEL_PLL_CLK>; 19235f8ba4f2SRichard Acayan 19245f8ba4f2SRichard Acayan operating-points-v2 = <&dsi_opp_table>; 19255f8ba4f2SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 19265f8ba4f2SRichard Acayan 19275f8ba4f2SRichard Acayan phys = <&mdss_dsi0_phy>; 19285f8ba4f2SRichard Acayan 19295f8ba4f2SRichard Acayan #address-cells = <1>; 19305f8ba4f2SRichard Acayan #size-cells = <0>; 19315f8ba4f2SRichard Acayan 19325f8ba4f2SRichard Acayan status = "disabled"; 19335f8ba4f2SRichard Acayan 19345f8ba4f2SRichard Acayan ports { 19355f8ba4f2SRichard Acayan #address-cells = <1>; 19365f8ba4f2SRichard Acayan #size-cells = <0>; 19375f8ba4f2SRichard Acayan 19385f8ba4f2SRichard Acayan port@0 { 19395f8ba4f2SRichard Acayan reg = <0>; 19405f8ba4f2SRichard Acayan mdss_dsi0_in: endpoint { 19415f8ba4f2SRichard Acayan remote-endpoint = <&dpu_intf0_out>; 19425f8ba4f2SRichard Acayan }; 19435f8ba4f2SRichard Acayan }; 19445f8ba4f2SRichard Acayan 19455f8ba4f2SRichard Acayan port@1 { 19465f8ba4f2SRichard Acayan reg = <1>; 19475f8ba4f2SRichard Acayan mdss_dsi0_out: endpoint { 19485f8ba4f2SRichard Acayan }; 19495f8ba4f2SRichard Acayan }; 19505f8ba4f2SRichard Acayan }; 19515f8ba4f2SRichard Acayan }; 19525f8ba4f2SRichard Acayan 19535f8ba4f2SRichard Acayan mdss_dsi0_phy: phy@ae94400 { 19545f8ba4f2SRichard Acayan compatible = "qcom,dsi-phy-10nm"; 19555f8ba4f2SRichard Acayan reg = <0 0x0ae94400 0 0x200>, 19565f8ba4f2SRichard Acayan <0 0x0ae94600 0 0x280>, 19575f8ba4f2SRichard Acayan <0 0x0ae94a00 0 0x1e0>; 19585f8ba4f2SRichard Acayan reg-names = "dsi_phy", 19595f8ba4f2SRichard Acayan "dsi_phy_lane", 19605f8ba4f2SRichard Acayan "dsi_pll"; 19615f8ba4f2SRichard Acayan 19625f8ba4f2SRichard Acayan #clock-cells = <1>; 19635f8ba4f2SRichard Acayan #phy-cells = <0>; 19645f8ba4f2SRichard Acayan 19655f8ba4f2SRichard Acayan clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, 19665f8ba4f2SRichard Acayan <&rpmhcc RPMH_CXO_CLK>; 19675f8ba4f2SRichard Acayan clock-names = "iface", "ref"; 19685f8ba4f2SRichard Acayan 19695f8ba4f2SRichard Acayan status = "disabled"; 19705f8ba4f2SRichard Acayan }; 19715f8ba4f2SRichard Acayan 19725f8ba4f2SRichard Acayan mdss_dsi1: dsi@ae96000 { 19735f8ba4f2SRichard Acayan compatible = "qcom,sdm670-dsi-ctrl", 19745f8ba4f2SRichard Acayan "qcom,mdss-dsi-ctrl"; 19755f8ba4f2SRichard Acayan reg = <0 0x0ae96000 0 0x400>; 19765f8ba4f2SRichard Acayan reg-names = "dsi_ctrl"; 19775f8ba4f2SRichard Acayan 19785f8ba4f2SRichard Acayan interrupt-parent = <&mdss>; 19795f8ba4f2SRichard Acayan interrupts = <5>; 19805f8ba4f2SRichard Acayan 19815f8ba4f2SRichard Acayan clocks = <&dispcc DISP_CC_MDSS_BYTE1_CLK>, 19825f8ba4f2SRichard Acayan <&dispcc DISP_CC_MDSS_BYTE1_INTF_CLK>, 19835f8ba4f2SRichard Acayan <&dispcc DISP_CC_MDSS_PCLK1_CLK>, 19845f8ba4f2SRichard Acayan <&dispcc DISP_CC_MDSS_ESC1_CLK>, 19855f8ba4f2SRichard Acayan <&dispcc DISP_CC_MDSS_AHB_CLK>, 19865f8ba4f2SRichard Acayan <&dispcc DISP_CC_MDSS_AXI_CLK>; 19875f8ba4f2SRichard Acayan clock-names = "byte", 19885f8ba4f2SRichard Acayan "byte_intf", 19895f8ba4f2SRichard Acayan "pixel", 19905f8ba4f2SRichard Acayan "core", 19915f8ba4f2SRichard Acayan "iface", 19925f8ba4f2SRichard Acayan "bus"; 19935f8ba4f2SRichard Acayan assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE1_CLK_SRC>, 19945f8ba4f2SRichard Acayan <&dispcc DISP_CC_MDSS_PCLK1_CLK_SRC>; 1995dc489ba0SKrzysztof Kozlowski assigned-clock-parents = <&mdss_dsi1_phy DSI_BYTE_PLL_CLK>, 1996dc489ba0SKrzysztof Kozlowski <&mdss_dsi1_phy DSI_PIXEL_PLL_CLK>; 19975f8ba4f2SRichard Acayan 19985f8ba4f2SRichard Acayan operating-points-v2 = <&dsi_opp_table>; 19995f8ba4f2SRichard Acayan power-domains = <&rpmhpd SDM670_CX>; 20005f8ba4f2SRichard Acayan 20015f8ba4f2SRichard Acayan phys = <&mdss_dsi1_phy>; 20025f8ba4f2SRichard Acayan 20035f8ba4f2SRichard Acayan #address-cells = <1>; 20045f8ba4f2SRichard Acayan #size-cells = <0>; 20055f8ba4f2SRichard Acayan 20065f8ba4f2SRichard Acayan status = "disabled"; 20075f8ba4f2SRichard Acayan 20085f8ba4f2SRichard Acayan ports { 20095f8ba4f2SRichard Acayan #address-cells = <1>; 20105f8ba4f2SRichard Acayan #size-cells = <0>; 20115f8ba4f2SRichard Acayan 20125f8ba4f2SRichard Acayan port@0 { 20135f8ba4f2SRichard Acayan reg = <0>; 20145f8ba4f2SRichard Acayan mdss_dsi1_in: endpoint { 20155f8ba4f2SRichard Acayan remote-endpoint = <&dpu_intf1_out>; 20165f8ba4f2SRichard Acayan }; 20175f8ba4f2SRichard Acayan }; 20185f8ba4f2SRichard Acayan 20195f8ba4f2SRichard Acayan port@1 { 20205f8ba4f2SRichard Acayan reg = <1>; 20215f8ba4f2SRichard Acayan mdss_dsi1_out: endpoint { 20225f8ba4f2SRichard Acayan }; 20235f8ba4f2SRichard Acayan }; 20245f8ba4f2SRichard Acayan }; 20255f8ba4f2SRichard Acayan }; 20265f8ba4f2SRichard Acayan 20275f8ba4f2SRichard Acayan mdss_dsi1_phy: phy@ae96400 { 20285f8ba4f2SRichard Acayan compatible = "qcom,dsi-phy-10nm"; 20295f8ba4f2SRichard Acayan reg = <0 0x0ae96400 0 0x200>, 20305f8ba4f2SRichard Acayan <0 0x0ae96600 0 0x280>, 20315f8ba4f2SRichard Acayan <0 0x0ae96a00 0 0x10e>; 20325f8ba4f2SRichard Acayan reg-names = "dsi_phy", 20335f8ba4f2SRichard Acayan "dsi_phy_lane", 20345f8ba4f2SRichard Acayan "dsi_pll"; 20355f8ba4f2SRichard Acayan 20365f8ba4f2SRichard Acayan #clock-cells = <1>; 20375f8ba4f2SRichard Acayan #phy-cells = <0>; 20385f8ba4f2SRichard Acayan 20395f8ba4f2SRichard Acayan clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, 20405f8ba4f2SRichard Acayan <&rpmhcc RPMH_CXO_CLK>; 20415f8ba4f2SRichard Acayan clock-names = "iface", "ref"; 20425f8ba4f2SRichard Acayan 20435f8ba4f2SRichard Acayan status = "disabled"; 20445f8ba4f2SRichard Acayan }; 20455f8ba4f2SRichard Acayan }; 20465f8ba4f2SRichard Acayan 20475f8ba4f2SRichard Acayan dispcc: clock-controller@af00000 { 20485f8ba4f2SRichard Acayan compatible = "qcom,sdm845-dispcc"; 20495f8ba4f2SRichard Acayan reg = <0 0x0af00000 0 0x10000>; 20505f8ba4f2SRichard Acayan clocks = <&rpmhcc RPMH_CXO_CLK>, 20515f8ba4f2SRichard Acayan <&gcc GCC_DISP_GPLL0_CLK_SRC>, 20525f8ba4f2SRichard Acayan <&gcc GCC_DISP_GPLL0_DIV_CLK_SRC>, 2053dc489ba0SKrzysztof Kozlowski <&mdss_dsi0_phy DSI_BYTE_PLL_CLK>, 2054dc489ba0SKrzysztof Kozlowski <&mdss_dsi0_phy DSI_PIXEL_PLL_CLK>, 2055dc489ba0SKrzysztof Kozlowski <&mdss_dsi1_phy DSI_BYTE_PLL_CLK>, 2056dc489ba0SKrzysztof Kozlowski <&mdss_dsi1_phy DSI_PIXEL_PLL_CLK>, 20575f8ba4f2SRichard Acayan <0>, 20585f8ba4f2SRichard Acayan <0>; 20595f8ba4f2SRichard Acayan clock-names = "bi_tcxo", 20605f8ba4f2SRichard Acayan "gcc_disp_gpll0_clk_src", 20615f8ba4f2SRichard Acayan "gcc_disp_gpll0_div_clk_src", 20625f8ba4f2SRichard Acayan "dsi0_phy_pll_out_byteclk", 20635f8ba4f2SRichard Acayan "dsi0_phy_pll_out_dsiclk", 20645f8ba4f2SRichard Acayan "dsi1_phy_pll_out_byteclk", 20655f8ba4f2SRichard Acayan "dsi1_phy_pll_out_dsiclk", 20665f8ba4f2SRichard Acayan "dp_link_clk_divsel_ten", 20675f8ba4f2SRichard Acayan "dp_vco_divided_clk_src_mux"; 20685f8ba4f2SRichard Acayan #clock-cells = <1>; 20695f8ba4f2SRichard Acayan #reset-cells = <1>; 20705f8ba4f2SRichard Acayan #power-domain-cells = <1>; 20715f8ba4f2SRichard Acayan }; 20725f8ba4f2SRichard Acayan 207307c8ded6SRichard Acayan apps_smmu: iommu@15000000 { 207407c8ded6SRichard Acayan compatible = "qcom,sdm670-smmu-500", "qcom,smmu-500", "arm,mmu-500"; 207507c8ded6SRichard Acayan reg = <0 0x15000000 0 0x80000>; 207607c8ded6SRichard Acayan #iommu-cells = <2>; 207707c8ded6SRichard Acayan #global-interrupts = <1>; 207807c8ded6SRichard Acayan interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>, 207907c8ded6SRichard Acayan <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>, 208007c8ded6SRichard Acayan <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>, 208107c8ded6SRichard Acayan <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, 208207c8ded6SRichard Acayan <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>, 208307c8ded6SRichard Acayan <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>, 208407c8ded6SRichard Acayan <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>, 208507c8ded6SRichard Acayan <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>, 208607c8ded6SRichard Acayan <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>, 208707c8ded6SRichard Acayan <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>, 208807c8ded6SRichard Acayan <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>, 208907c8ded6SRichard Acayan <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>, 209007c8ded6SRichard Acayan <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>, 209107c8ded6SRichard Acayan <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>, 209207c8ded6SRichard Acayan <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, 209307c8ded6SRichard Acayan <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 209407c8ded6SRichard Acayan <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>, 209507c8ded6SRichard Acayan <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, 209607c8ded6SRichard Acayan <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>, 209707c8ded6SRichard Acayan <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>, 209807c8ded6SRichard Acayan <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>, 209907c8ded6SRichard Acayan <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>, 210007c8ded6SRichard Acayan <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>, 210107c8ded6SRichard Acayan <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, 210207c8ded6SRichard Acayan <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>, 210307c8ded6SRichard Acayan <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>, 210407c8ded6SRichard Acayan <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>, 210507c8ded6SRichard Acayan <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>, 210607c8ded6SRichard Acayan <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>, 210707c8ded6SRichard Acayan <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>, 210807c8ded6SRichard Acayan <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>, 210907c8ded6SRichard Acayan <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>, 211007c8ded6SRichard Acayan <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>, 211107c8ded6SRichard Acayan <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>, 211207c8ded6SRichard Acayan <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>, 211307c8ded6SRichard Acayan <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>, 211407c8ded6SRichard Acayan <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>, 211507c8ded6SRichard Acayan <GIC_SPI 316 IRQ_TYPE_LEVEL_HIGH>, 211607c8ded6SRichard Acayan <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>, 211707c8ded6SRichard Acayan <GIC_SPI 318 IRQ_TYPE_LEVEL_HIGH>, 211807c8ded6SRichard Acayan <GIC_SPI 319 IRQ_TYPE_LEVEL_HIGH>, 211907c8ded6SRichard Acayan <GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH>, 212007c8ded6SRichard Acayan <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>, 212107c8ded6SRichard Acayan <GIC_SPI 322 IRQ_TYPE_LEVEL_HIGH>, 212207c8ded6SRichard Acayan <GIC_SPI 323 IRQ_TYPE_LEVEL_HIGH>, 212307c8ded6SRichard Acayan <GIC_SPI 324 IRQ_TYPE_LEVEL_HIGH>, 212407c8ded6SRichard Acayan <GIC_SPI 325 IRQ_TYPE_LEVEL_HIGH>, 212507c8ded6SRichard Acayan <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>, 212607c8ded6SRichard Acayan <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>, 212707c8ded6SRichard Acayan <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>, 212807c8ded6SRichard Acayan <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>, 212907c8ded6SRichard Acayan <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>, 213007c8ded6SRichard Acayan <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>, 213107c8ded6SRichard Acayan <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>, 213207c8ded6SRichard Acayan <GIC_SPI 333 IRQ_TYPE_LEVEL_HIGH>, 213307c8ded6SRichard Acayan <GIC_SPI 334 IRQ_TYPE_LEVEL_HIGH>, 213407c8ded6SRichard Acayan <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>, 213507c8ded6SRichard Acayan <GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH>, 213607c8ded6SRichard Acayan <GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>, 213707c8ded6SRichard Acayan <GIC_SPI 338 IRQ_TYPE_LEVEL_HIGH>, 213807c8ded6SRichard Acayan <GIC_SPI 339 IRQ_TYPE_LEVEL_HIGH>, 213907c8ded6SRichard Acayan <GIC_SPI 340 IRQ_TYPE_LEVEL_HIGH>, 214007c8ded6SRichard Acayan <GIC_SPI 341 IRQ_TYPE_LEVEL_HIGH>, 214107c8ded6SRichard Acayan <GIC_SPI 342 IRQ_TYPE_LEVEL_HIGH>, 214207c8ded6SRichard Acayan <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>; 2143e009473cSKonrad Dybcio dma-coherent; 214407c8ded6SRichard Acayan }; 214507c8ded6SRichard Acayan 21460daef104SRichard Acayan gladiator_noc: interconnect@17900000 { 21470daef104SRichard Acayan compatible = "qcom,sdm670-gladiator-noc"; 21480daef104SRichard Acayan reg = <0 0x17900000 0 0xd080>; 21490daef104SRichard Acayan #interconnect-cells = <2>; 21500daef104SRichard Acayan qcom,bcm-voters = <&apps_bcm_voter>; 21510daef104SRichard Acayan }; 21520daef104SRichard Acayan 215307c8ded6SRichard Acayan apps_rsc: rsc@179c0000 { 215407c8ded6SRichard Acayan compatible = "qcom,rpmh-rsc"; 215507c8ded6SRichard Acayan reg = <0 0x179c0000 0 0x10000>, 215607c8ded6SRichard Acayan <0 0x179d0000 0 0x10000>, 215707c8ded6SRichard Acayan <0 0x179e0000 0 0x10000>; 215807c8ded6SRichard Acayan reg-names = "drv-0", "drv-1", "drv-2"; 215907c8ded6SRichard Acayan interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>, 216007c8ded6SRichard Acayan <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>, 216107c8ded6SRichard Acayan <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>; 216207c8ded6SRichard Acayan label = "apps_rsc"; 216307c8ded6SRichard Acayan qcom,tcs-offset = <0xd00>; 216407c8ded6SRichard Acayan qcom,drv-id = <2>; 216507c8ded6SRichard Acayan qcom,tcs-config = <ACTIVE_TCS 2>, 216607c8ded6SRichard Acayan <SLEEP_TCS 3>, 216707c8ded6SRichard Acayan <WAKE_TCS 3>, 216807c8ded6SRichard Acayan <CONTROL_TCS 1>; 21694c047c47SKrzysztof Kozlowski power-domains = <&cluster_pd>; 217007c8ded6SRichard Acayan 217107c8ded6SRichard Acayan apps_bcm_voter: bcm-voter { 217207c8ded6SRichard Acayan compatible = "qcom,bcm-voter"; 217307c8ded6SRichard Acayan }; 217407c8ded6SRichard Acayan 217507c8ded6SRichard Acayan rpmhcc: clock-controller { 217607c8ded6SRichard Acayan compatible = "qcom,sdm670-rpmh-clk"; 217707c8ded6SRichard Acayan #clock-cells = <1>; 217807c8ded6SRichard Acayan clock-names = "xo"; 217907c8ded6SRichard Acayan clocks = <&xo_board>; 218007c8ded6SRichard Acayan }; 218107c8ded6SRichard Acayan 218207c8ded6SRichard Acayan rpmhpd: power-controller { 218307c8ded6SRichard Acayan compatible = "qcom,sdm670-rpmhpd"; 218407c8ded6SRichard Acayan #power-domain-cells = <1>; 218507c8ded6SRichard Acayan operating-points-v2 = <&rpmhpd_opp_table>; 218607c8ded6SRichard Acayan 218707c8ded6SRichard Acayan rpmhpd_opp_table: opp-table { 218807c8ded6SRichard Acayan compatible = "operating-points-v2"; 218907c8ded6SRichard Acayan 219007c8ded6SRichard Acayan rpmhpd_opp_ret: opp1 { 219107c8ded6SRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_RETENTION>; 219207c8ded6SRichard Acayan }; 219307c8ded6SRichard Acayan 219407c8ded6SRichard Acayan rpmhpd_opp_min_svs: opp2 { 219507c8ded6SRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>; 219607c8ded6SRichard Acayan }; 219707c8ded6SRichard Acayan 219807c8ded6SRichard Acayan rpmhpd_opp_low_svs: opp3 { 219907c8ded6SRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>; 220007c8ded6SRichard Acayan }; 220107c8ded6SRichard Acayan 220207c8ded6SRichard Acayan rpmhpd_opp_svs: opp4 { 220307c8ded6SRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_SVS>; 220407c8ded6SRichard Acayan }; 220507c8ded6SRichard Acayan 220607c8ded6SRichard Acayan rpmhpd_opp_svs_l1: opp5 { 220707c8ded6SRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>; 220807c8ded6SRichard Acayan }; 220907c8ded6SRichard Acayan 221007c8ded6SRichard Acayan rpmhpd_opp_nom: opp6 { 221107c8ded6SRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_NOM>; 221207c8ded6SRichard Acayan }; 221307c8ded6SRichard Acayan 221407c8ded6SRichard Acayan rpmhpd_opp_nom_l1: opp7 { 221507c8ded6SRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>; 221607c8ded6SRichard Acayan }; 221707c8ded6SRichard Acayan 221807c8ded6SRichard Acayan rpmhpd_opp_nom_l2: opp8 { 221907c8ded6SRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_NOM_L2>; 222007c8ded6SRichard Acayan }; 222107c8ded6SRichard Acayan 222207c8ded6SRichard Acayan rpmhpd_opp_turbo: opp9 { 222307c8ded6SRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_TURBO>; 222407c8ded6SRichard Acayan }; 222507c8ded6SRichard Acayan 222607c8ded6SRichard Acayan rpmhpd_opp_turbo_l1: opp10 { 222707c8ded6SRichard Acayan opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>; 222807c8ded6SRichard Acayan }; 222907c8ded6SRichard Acayan }; 223007c8ded6SRichard Acayan }; 223107c8ded6SRichard Acayan }; 223207c8ded6SRichard Acayan 223307c8ded6SRichard Acayan intc: interrupt-controller@17a00000 { 223407c8ded6SRichard Acayan compatible = "arm,gic-v3"; 223507c8ded6SRichard Acayan reg = <0 0x17a00000 0 0x10000>, /* GICD */ 223607c8ded6SRichard Acayan <0 0x17a60000 0 0x100000>; /* GICR * 8 */ 223707c8ded6SRichard Acayan interrupt-controller; 223807c8ded6SRichard Acayan interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 223907c8ded6SRichard Acayan #interrupt-cells = <3>; 224007c8ded6SRichard Acayan }; 22418cd5597aSRichard Acayan 22428cd5597aSRichard Acayan osm_l3: interconnect@17d41000 { 22438cd5597aSRichard Acayan compatible = "qcom,sdm670-osm-l3", "qcom,osm-l3"; 22448cd5597aSRichard Acayan reg = <0 0x17d41000 0 0x1400>; 22458cd5597aSRichard Acayan 22468cd5597aSRichard Acayan clocks = <&rpmhcc RPMH_CXO_CLK>, <&gcc GPLL0>; 22478cd5597aSRichard Acayan clock-names = "xo", "alternate"; 22488cd5597aSRichard Acayan 22498cd5597aSRichard Acayan #interconnect-cells = <1>; 22508cd5597aSRichard Acayan }; 22510c665213SRichard Acayan 22520c665213SRichard Acayan cpufreq_hw: cpufreq@17d43000 { 2253032ff6a3SRichard Acayan compatible = "qcom,sdm670-cpufreq-hw", "qcom,cpufreq-hw"; 22540c665213SRichard Acayan reg = <0 0x17d43000 0 0x1400>, <0 0x17d45800 0 0x1400>; 22550c665213SRichard Acayan reg-names = "freq-domain0", "freq-domain1"; 22560c665213SRichard Acayan 22570c665213SRichard Acayan clocks = <&rpmhcc RPMH_CXO_CLK>, <&gcc GPLL0>; 22580c665213SRichard Acayan clock-names = "xo", "alternate"; 22590c665213SRichard Acayan 22600c665213SRichard Acayan #freq-domain-cells = <1>; 22610c665213SRichard Acayan }; 226207c8ded6SRichard Acayan }; 226307c8ded6SRichard Acayan}; 2264