xref: /openbmc/linux/scripts/dtc/include-prefixes/arm64/qcom/msm8996.dtsi (revision 060f35a317ef09101b128f399dce7ed13d019461)
197fb5e8dSThomas Gleixner// SPDX-License-Identifier: GPL-2.0-only
2bd95b48aSKonrad Dybcio/*
3bd95b48aSKonrad Dybcio * Copyright (c) 2014-2015, The Linux Foundation. All rights reserved.
44558e9b3SStephen Boyd */
54558e9b3SStephen Boyd
64558e9b3SStephen Boyd#include <dt-bindings/interrupt-controller/arm-gic.h>
74558e9b3SStephen Boyd#include <dt-bindings/clock/qcom,gcc-msm8996.h>
84558e9b3SStephen Boyd#include <dt-bindings/clock/qcom,mmcc-msm8996.h>
900f8497fSRajendra Nayak#include <dt-bindings/clock/qcom,rpmcc.h>
10f35aaef1SYassine Oudjana#include <dt-bindings/interconnect/qcom,msm8996.h>
118bb8688cSDmitry Baryshkov#include <dt-bindings/interconnect/qcom,msm8996-cbf.h>
1236c9d012SKrzysztof Kozlowski#include <dt-bindings/gpio/gpio.h>
136215d3f0SYassine Oudjana#include <dt-bindings/power/qcom-rpmpd.h>
14f3eb39a5SSrinivas Kandagatla#include <dt-bindings/soc/qcom,apr.h>
1590173a95SLoic Poulain#include <dt-bindings/thermal/thermal.h>
164558e9b3SStephen Boyd
174558e9b3SStephen Boyd/ {
184558e9b3SStephen Boyd	interrupt-parent = <&intc>;
194558e9b3SStephen Boyd
204558e9b3SStephen Boyd	#address-cells = <2>;
214558e9b3SStephen Boyd	#size-cells = <2>;
224558e9b3SStephen Boyd
234558e9b3SStephen Boyd	chosen { };
244558e9b3SStephen Boyd
2550aa72ccSBjorn Andersson	clocks {
2684f3efbeSVinod Koul		xo_board: xo-board {
2750aa72ccSBjorn Andersson			compatible = "fixed-clock";
2850aa72ccSBjorn Andersson			#clock-cells = <0>;
2950aa72ccSBjorn Andersson			clock-frequency = <19200000>;
3050aa72ccSBjorn Andersson			clock-output-names = "xo_board";
314558e9b3SStephen Boyd		};
324558e9b3SStephen Boyd
3384f3efbeSVinod Koul		sleep_clk: sleep-clk {
3450aa72ccSBjorn Andersson			compatible = "fixed-clock";
3550aa72ccSBjorn Andersson			#clock-cells = <0>;
3650aa72ccSBjorn Andersson			clock-frequency = <32764>;
3750aa72ccSBjorn Andersson			clock-output-names = "sleep_clk";
3869cc3114SJordan Crouse		};
39ee17692cSspjoshi@codeaurora.org	};
40ee17692cSspjoshi@codeaurora.org
414558e9b3SStephen Boyd	cpus {
424558e9b3SStephen Boyd		#address-cells = <2>;
434558e9b3SStephen Boyd		#size-cells = <0>;
444558e9b3SStephen Boyd
454558e9b3SStephen Boyd		CPU0: cpu@0 {
464558e9b3SStephen Boyd			device_type = "cpu";
474558e9b3SStephen Boyd			compatible = "qcom,kryo";
484558e9b3SStephen Boyd			reg = <0x0 0x0>;
494558e9b3SStephen Boyd			enable-method = "psci";
50f6aee7afSAmit Kucheria			cpu-idle-states = <&CPU_SLEEP_0>;
512aefca80SAmit Kucheria			capacity-dmips-mhz = <1024>;
5290173a95SLoic Poulain			clocks = <&kryocc 0>;
538bb8688cSDmitry Baryshkov			interconnects = <&cbf MASTER_CBF_M4M &cbf SLAVE_CBF_M4M>;
5490173a95SLoic Poulain			operating-points-v2 = <&cluster0_opp>;
5590173a95SLoic Poulain			#cooling-cells = <2>;
564558e9b3SStephen Boyd			next-level-cache = <&L2_0>;
574558e9b3SStephen Boyd			L2_0: l2-cache {
584558e9b3SStephen Boyd				compatible = "cache";
594558e9b3SStephen Boyd				cache-level = <2>;
609c6e72fbSKrzysztof Kozlowski				cache-unified;
614558e9b3SStephen Boyd			};
624558e9b3SStephen Boyd		};
634558e9b3SStephen Boyd
644558e9b3SStephen Boyd		CPU1: cpu@1 {
654558e9b3SStephen Boyd			device_type = "cpu";
664558e9b3SStephen Boyd			compatible = "qcom,kryo";
674558e9b3SStephen Boyd			reg = <0x0 0x1>;
684558e9b3SStephen Boyd			enable-method = "psci";
69f6aee7afSAmit Kucheria			cpu-idle-states = <&CPU_SLEEP_0>;
702aefca80SAmit Kucheria			capacity-dmips-mhz = <1024>;
7190173a95SLoic Poulain			clocks = <&kryocc 0>;
728bb8688cSDmitry Baryshkov			interconnects = <&cbf MASTER_CBF_M4M &cbf SLAVE_CBF_M4M>;
7390173a95SLoic Poulain			operating-points-v2 = <&cluster0_opp>;
7490173a95SLoic Poulain			#cooling-cells = <2>;
754558e9b3SStephen Boyd			next-level-cache = <&L2_0>;
764558e9b3SStephen Boyd		};
774558e9b3SStephen Boyd
784558e9b3SStephen Boyd		CPU2: cpu@100 {
794558e9b3SStephen Boyd			device_type = "cpu";
804558e9b3SStephen Boyd			compatible = "qcom,kryo";
814558e9b3SStephen Boyd			reg = <0x0 0x100>;
824558e9b3SStephen Boyd			enable-method = "psci";
83f6aee7afSAmit Kucheria			cpu-idle-states = <&CPU_SLEEP_0>;
842aefca80SAmit Kucheria			capacity-dmips-mhz = <1024>;
8590173a95SLoic Poulain			clocks = <&kryocc 1>;
868bb8688cSDmitry Baryshkov			interconnects = <&cbf MASTER_CBF_M4M &cbf SLAVE_CBF_M4M>;
8790173a95SLoic Poulain			operating-points-v2 = <&cluster1_opp>;
8890173a95SLoic Poulain			#cooling-cells = <2>;
894558e9b3SStephen Boyd			next-level-cache = <&L2_1>;
904558e9b3SStephen Boyd			L2_1: l2-cache {
914558e9b3SStephen Boyd				compatible = "cache";
924558e9b3SStephen Boyd				cache-level = <2>;
939c6e72fbSKrzysztof Kozlowski				cache-unified;
944558e9b3SStephen Boyd			};
954558e9b3SStephen Boyd		};
964558e9b3SStephen Boyd
974558e9b3SStephen Boyd		CPU3: cpu@101 {
984558e9b3SStephen Boyd			device_type = "cpu";
994558e9b3SStephen Boyd			compatible = "qcom,kryo";
1004558e9b3SStephen Boyd			reg = <0x0 0x101>;
1014558e9b3SStephen Boyd			enable-method = "psci";
102f6aee7afSAmit Kucheria			cpu-idle-states = <&CPU_SLEEP_0>;
1032aefca80SAmit Kucheria			capacity-dmips-mhz = <1024>;
10490173a95SLoic Poulain			clocks = <&kryocc 1>;
1058bb8688cSDmitry Baryshkov			interconnects = <&cbf MASTER_CBF_M4M &cbf SLAVE_CBF_M4M>;
10690173a95SLoic Poulain			operating-points-v2 = <&cluster1_opp>;
10790173a95SLoic Poulain			#cooling-cells = <2>;
1084558e9b3SStephen Boyd			next-level-cache = <&L2_1>;
1094558e9b3SStephen Boyd		};
1104558e9b3SStephen Boyd
1114558e9b3SStephen Boyd		cpu-map {
1124558e9b3SStephen Boyd			cluster0 {
1134558e9b3SStephen Boyd				core0 {
1144558e9b3SStephen Boyd					cpu = <&CPU0>;
1154558e9b3SStephen Boyd				};
1164558e9b3SStephen Boyd
1174558e9b3SStephen Boyd				core1 {
1184558e9b3SStephen Boyd					cpu = <&CPU1>;
1194558e9b3SStephen Boyd				};
1204558e9b3SStephen Boyd			};
1214558e9b3SStephen Boyd
1224558e9b3SStephen Boyd			cluster1 {
1234558e9b3SStephen Boyd				core0 {
1244558e9b3SStephen Boyd					cpu = <&CPU2>;
1254558e9b3SStephen Boyd				};
1264558e9b3SStephen Boyd
1274558e9b3SStephen Boyd				core1 {
1284558e9b3SStephen Boyd					cpu = <&CPU3>;
1294558e9b3SStephen Boyd				};
1304558e9b3SStephen Boyd			};
1314558e9b3SStephen Boyd		};
132f6aee7afSAmit Kucheria
133f6aee7afSAmit Kucheria		idle-states {
134f6aee7afSAmit Kucheria			entry-method = "psci";
135f6aee7afSAmit Kucheria
136f6aee7afSAmit Kucheria			CPU_SLEEP_0: cpu-sleep-0 {
137f6aee7afSAmit Kucheria				compatible = "arm,idle-state";
138f6aee7afSAmit Kucheria				idle-state-name = "standalone-power-collapse";
139f6aee7afSAmit Kucheria				arm,psci-suspend-param = <0x00000004>;
14073db2714SNiklas Cassel				entry-latency-us = <130>;
141f6aee7afSAmit Kucheria				exit-latency-us = <80>;
142f6aee7afSAmit Kucheria				min-residency-us = <300>;
143f6aee7afSAmit Kucheria			};
144f6aee7afSAmit Kucheria		};
1454558e9b3SStephen Boyd	};
1464558e9b3SStephen Boyd
147f55dda21SYassine Oudjana	cluster0_opp: opp-table-cluster0 {
14890173a95SLoic Poulain		compatible = "operating-points-v2-kryo-cpu";
14990173a95SLoic Poulain		nvmem-cells = <&speedbin_efuse>;
15090173a95SLoic Poulain		opp-shared;
15190173a95SLoic Poulain
15290173a95SLoic Poulain		/* Nominal fmax for now */
15390173a95SLoic Poulain		opp-307200000 {
15490173a95SLoic Poulain			opp-hz = /bits/ 64 <307200000>;
155f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
15690173a95SLoic Poulain			clock-latency-ns = <200000>;
1578bb8688cSDmitry Baryshkov			opp-peak-kBps = <307200>;
15890173a95SLoic Poulain		};
15990173a95SLoic Poulain		opp-422400000 {
16090173a95SLoic Poulain			opp-hz = /bits/ 64 <422400000>;
161f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
16290173a95SLoic Poulain			clock-latency-ns = <200000>;
1638bb8688cSDmitry Baryshkov			opp-peak-kBps = <307200>;
16490173a95SLoic Poulain		};
16590173a95SLoic Poulain		opp-480000000 {
16690173a95SLoic Poulain			opp-hz = /bits/ 64 <480000000>;
167f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
16890173a95SLoic Poulain			clock-latency-ns = <200000>;
1698bb8688cSDmitry Baryshkov			opp-peak-kBps = <307200>;
17090173a95SLoic Poulain		};
17190173a95SLoic Poulain		opp-556800000 {
17290173a95SLoic Poulain			opp-hz = /bits/ 64 <556800000>;
173f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
17490173a95SLoic Poulain			clock-latency-ns = <200000>;
1758bb8688cSDmitry Baryshkov			opp-peak-kBps = <307200>;
17690173a95SLoic Poulain		};
17790173a95SLoic Poulain		opp-652800000 {
17890173a95SLoic Poulain			opp-hz = /bits/ 64 <652800000>;
179f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
18090173a95SLoic Poulain			clock-latency-ns = <200000>;
1818bb8688cSDmitry Baryshkov			opp-peak-kBps = <384000>;
18290173a95SLoic Poulain		};
18390173a95SLoic Poulain		opp-729600000 {
18490173a95SLoic Poulain			opp-hz = /bits/ 64 <729600000>;
185f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
18690173a95SLoic Poulain			clock-latency-ns = <200000>;
1878bb8688cSDmitry Baryshkov			opp-peak-kBps = <460800>;
18890173a95SLoic Poulain		};
18990173a95SLoic Poulain		opp-844800000 {
19090173a95SLoic Poulain			opp-hz = /bits/ 64 <844800000>;
191f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
19290173a95SLoic Poulain			clock-latency-ns = <200000>;
1938bb8688cSDmitry Baryshkov			opp-peak-kBps = <537600>;
19490173a95SLoic Poulain		};
19590173a95SLoic Poulain		opp-960000000 {
19690173a95SLoic Poulain			opp-hz = /bits/ 64 <960000000>;
197f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
19890173a95SLoic Poulain			clock-latency-ns = <200000>;
1998bb8688cSDmitry Baryshkov			opp-peak-kBps = <672000>;
20090173a95SLoic Poulain		};
20190173a95SLoic Poulain		opp-1036800000 {
20290173a95SLoic Poulain			opp-hz = /bits/ 64 <1036800000>;
203f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
20490173a95SLoic Poulain			clock-latency-ns = <200000>;
2058bb8688cSDmitry Baryshkov			opp-peak-kBps = <672000>;
20690173a95SLoic Poulain		};
20790173a95SLoic Poulain		opp-1113600000 {
20890173a95SLoic Poulain			opp-hz = /bits/ 64 <1113600000>;
209f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
21090173a95SLoic Poulain			clock-latency-ns = <200000>;
2118bb8688cSDmitry Baryshkov			opp-peak-kBps = <825600>;
21290173a95SLoic Poulain		};
21390173a95SLoic Poulain		opp-1190400000 {
21490173a95SLoic Poulain			opp-hz = /bits/ 64 <1190400000>;
215f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
21690173a95SLoic Poulain			clock-latency-ns = <200000>;
2178bb8688cSDmitry Baryshkov			opp-peak-kBps = <825600>;
21890173a95SLoic Poulain		};
21990173a95SLoic Poulain		opp-1228800000 {
22090173a95SLoic Poulain			opp-hz = /bits/ 64 <1228800000>;
221f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
22290173a95SLoic Poulain			clock-latency-ns = <200000>;
2238bb8688cSDmitry Baryshkov			opp-peak-kBps = <902400>;
22490173a95SLoic Poulain		};
22590173a95SLoic Poulain		opp-1324800000 {
22690173a95SLoic Poulain			opp-hz = /bits/ 64 <1324800000>;
227f1646de4SDmitry Baryshkov			opp-supported-hw = <0xd>;
2280154caaaSDmitry Baryshkov			clock-latency-ns = <200000>;
2298bb8688cSDmitry Baryshkov			opp-peak-kBps = <1056000>;
2300154caaaSDmitry Baryshkov		};
2310154caaaSDmitry Baryshkov		opp-1363200000 {
2320154caaaSDmitry Baryshkov			opp-hz = /bits/ 64 <1363200000>;
2330154caaaSDmitry Baryshkov			opp-supported-hw = <0x2>;
23490173a95SLoic Poulain			clock-latency-ns = <200000>;
2358bb8688cSDmitry Baryshkov			opp-peak-kBps = <1132800>;
23690173a95SLoic Poulain		};
23790173a95SLoic Poulain		opp-1401600000 {
23890173a95SLoic Poulain			opp-hz = /bits/ 64 <1401600000>;
239f1646de4SDmitry Baryshkov			opp-supported-hw = <0xd>;
24090173a95SLoic Poulain			clock-latency-ns = <200000>;
2418bb8688cSDmitry Baryshkov			opp-peak-kBps = <1132800>;
24290173a95SLoic Poulain		};
24390173a95SLoic Poulain		opp-1478400000 {
24490173a95SLoic Poulain			opp-hz = /bits/ 64 <1478400000>;
245f1646de4SDmitry Baryshkov			opp-supported-hw = <0x9>;
2460154caaaSDmitry Baryshkov			clock-latency-ns = <200000>;
2478bb8688cSDmitry Baryshkov			opp-peak-kBps = <1190400>;
2480154caaaSDmitry Baryshkov		};
2490154caaaSDmitry Baryshkov		opp-1497600000 {
2500154caaaSDmitry Baryshkov			opp-hz = /bits/ 64 <1497600000>;
2510154caaaSDmitry Baryshkov			opp-supported-hw = <0x04>;
25290173a95SLoic Poulain			clock-latency-ns = <200000>;
2538bb8688cSDmitry Baryshkov			opp-peak-kBps = <1305600>;
25490173a95SLoic Poulain		};
25590173a95SLoic Poulain		opp-1593600000 {
25690173a95SLoic Poulain			opp-hz = /bits/ 64 <1593600000>;
257f1646de4SDmitry Baryshkov			opp-supported-hw = <0x9>;
25890173a95SLoic Poulain			clock-latency-ns = <200000>;
2598bb8688cSDmitry Baryshkov			opp-peak-kBps = <1382400>;
26090173a95SLoic Poulain		};
26190173a95SLoic Poulain	};
26290173a95SLoic Poulain
263f55dda21SYassine Oudjana	cluster1_opp: opp-table-cluster1 {
26490173a95SLoic Poulain		compatible = "operating-points-v2-kryo-cpu";
26590173a95SLoic Poulain		nvmem-cells = <&speedbin_efuse>;
26690173a95SLoic Poulain		opp-shared;
26790173a95SLoic Poulain
26890173a95SLoic Poulain		/* Nominal fmax for now */
26990173a95SLoic Poulain		opp-307200000 {
27090173a95SLoic Poulain			opp-hz = /bits/ 64 <307200000>;
271f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
27290173a95SLoic Poulain			clock-latency-ns = <200000>;
2738bb8688cSDmitry Baryshkov			opp-peak-kBps = <307200>;
27490173a95SLoic Poulain		};
27590173a95SLoic Poulain		opp-403200000 {
27690173a95SLoic Poulain			opp-hz = /bits/ 64 <403200000>;
277f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
27890173a95SLoic Poulain			clock-latency-ns = <200000>;
2798bb8688cSDmitry Baryshkov			opp-peak-kBps = <307200>;
28090173a95SLoic Poulain		};
28190173a95SLoic Poulain		opp-480000000 {
28290173a95SLoic Poulain			opp-hz = /bits/ 64 <480000000>;
283f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
28490173a95SLoic Poulain			clock-latency-ns = <200000>;
2858bb8688cSDmitry Baryshkov			opp-peak-kBps = <307200>;
28690173a95SLoic Poulain		};
28790173a95SLoic Poulain		opp-556800000 {
28890173a95SLoic Poulain			opp-hz = /bits/ 64 <556800000>;
289f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
29090173a95SLoic Poulain			clock-latency-ns = <200000>;
2918bb8688cSDmitry Baryshkov			opp-peak-kBps = <307200>;
29290173a95SLoic Poulain		};
29390173a95SLoic Poulain		opp-652800000 {
29490173a95SLoic Poulain			opp-hz = /bits/ 64 <652800000>;
295f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
29690173a95SLoic Poulain			clock-latency-ns = <200000>;
2978bb8688cSDmitry Baryshkov			opp-peak-kBps = <307200>;
29890173a95SLoic Poulain		};
29990173a95SLoic Poulain		opp-729600000 {
30090173a95SLoic Poulain			opp-hz = /bits/ 64 <729600000>;
301f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
30290173a95SLoic Poulain			clock-latency-ns = <200000>;
3038bb8688cSDmitry Baryshkov			opp-peak-kBps = <307200>;
30490173a95SLoic Poulain		};
30590173a95SLoic Poulain		opp-806400000 {
30690173a95SLoic Poulain			opp-hz = /bits/ 64 <806400000>;
307f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
30890173a95SLoic Poulain			clock-latency-ns = <200000>;
3098bb8688cSDmitry Baryshkov			opp-peak-kBps = <384000>;
31090173a95SLoic Poulain		};
31190173a95SLoic Poulain		opp-883200000 {
31290173a95SLoic Poulain			opp-hz = /bits/ 64 <883200000>;
313f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
31490173a95SLoic Poulain			clock-latency-ns = <200000>;
3158bb8688cSDmitry Baryshkov			opp-peak-kBps = <460800>;
31690173a95SLoic Poulain		};
31790173a95SLoic Poulain		opp-940800000 {
31890173a95SLoic Poulain			opp-hz = /bits/ 64 <940800000>;
319f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
32090173a95SLoic Poulain			clock-latency-ns = <200000>;
3218bb8688cSDmitry Baryshkov			opp-peak-kBps = <537600>;
32290173a95SLoic Poulain		};
32390173a95SLoic Poulain		opp-1036800000 {
32490173a95SLoic Poulain			opp-hz = /bits/ 64 <1036800000>;
325f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
32690173a95SLoic Poulain			clock-latency-ns = <200000>;
3278bb8688cSDmitry Baryshkov			opp-peak-kBps = <595200>;
32890173a95SLoic Poulain		};
32990173a95SLoic Poulain		opp-1113600000 {
33090173a95SLoic Poulain			opp-hz = /bits/ 64 <1113600000>;
331f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
33290173a95SLoic Poulain			clock-latency-ns = <200000>;
3338bb8688cSDmitry Baryshkov			opp-peak-kBps = <672000>;
33490173a95SLoic Poulain		};
33590173a95SLoic Poulain		opp-1190400000 {
33690173a95SLoic Poulain			opp-hz = /bits/ 64 <1190400000>;
337f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
33890173a95SLoic Poulain			clock-latency-ns = <200000>;
3398bb8688cSDmitry Baryshkov			opp-peak-kBps = <672000>;
34090173a95SLoic Poulain		};
34190173a95SLoic Poulain		opp-1248000000 {
34290173a95SLoic Poulain			opp-hz = /bits/ 64 <1248000000>;
343f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
34490173a95SLoic Poulain			clock-latency-ns = <200000>;
3458bb8688cSDmitry Baryshkov			opp-peak-kBps = <748800>;
34690173a95SLoic Poulain		};
34790173a95SLoic Poulain		opp-1324800000 {
34890173a95SLoic Poulain			opp-hz = /bits/ 64 <1324800000>;
349f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
35090173a95SLoic Poulain			clock-latency-ns = <200000>;
3518bb8688cSDmitry Baryshkov			opp-peak-kBps = <825600>;
35290173a95SLoic Poulain		};
35390173a95SLoic Poulain		opp-1401600000 {
35490173a95SLoic Poulain			opp-hz = /bits/ 64 <1401600000>;
355f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
35690173a95SLoic Poulain			clock-latency-ns = <200000>;
3578bb8688cSDmitry Baryshkov			opp-peak-kBps = <902400>;
35890173a95SLoic Poulain		};
35990173a95SLoic Poulain		opp-1478400000 {
36090173a95SLoic Poulain			opp-hz = /bits/ 64 <1478400000>;
361f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
36290173a95SLoic Poulain			clock-latency-ns = <200000>;
3638bb8688cSDmitry Baryshkov			opp-peak-kBps = <979200>;
36490173a95SLoic Poulain		};
36590173a95SLoic Poulain		opp-1555200000 {
36690173a95SLoic Poulain			opp-hz = /bits/ 64 <1555200000>;
367f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
36890173a95SLoic Poulain			clock-latency-ns = <200000>;
3698bb8688cSDmitry Baryshkov			opp-peak-kBps = <1056000>;
37090173a95SLoic Poulain		};
37190173a95SLoic Poulain		opp-1632000000 {
37290173a95SLoic Poulain			opp-hz = /bits/ 64 <1632000000>;
373f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
37490173a95SLoic Poulain			clock-latency-ns = <200000>;
3758bb8688cSDmitry Baryshkov			opp-peak-kBps = <1190400>;
37690173a95SLoic Poulain		};
37790173a95SLoic Poulain		opp-1708800000 {
37890173a95SLoic Poulain			opp-hz = /bits/ 64 <1708800000>;
379f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
38090173a95SLoic Poulain			clock-latency-ns = <200000>;
3818bb8688cSDmitry Baryshkov			opp-peak-kBps = <1228800>;
38290173a95SLoic Poulain		};
38390173a95SLoic Poulain		opp-1785600000 {
38490173a95SLoic Poulain			opp-hz = /bits/ 64 <1785600000>;
385f1646de4SDmitry Baryshkov			opp-supported-hw = <0xf>;
38690173a95SLoic Poulain			clock-latency-ns = <200000>;
3878bb8688cSDmitry Baryshkov			opp-peak-kBps = <1305600>;
38890173a95SLoic Poulain		};
3890154caaaSDmitry Baryshkov		opp-1804800000 {
3900154caaaSDmitry Baryshkov			opp-hz = /bits/ 64 <1804800000>;
391f1646de4SDmitry Baryshkov			opp-supported-hw = <0xe>;
3920154caaaSDmitry Baryshkov			clock-latency-ns = <200000>;
3938bb8688cSDmitry Baryshkov			opp-peak-kBps = <1305600>;
3940154caaaSDmitry Baryshkov		};
39590173a95SLoic Poulain		opp-1824000000 {
39690173a95SLoic Poulain			opp-hz = /bits/ 64 <1824000000>;
3970154caaaSDmitry Baryshkov			opp-supported-hw = <0x1>;
3980154caaaSDmitry Baryshkov			clock-latency-ns = <200000>;
3998bb8688cSDmitry Baryshkov			opp-peak-kBps = <1382400>;
4000154caaaSDmitry Baryshkov		};
4010154caaaSDmitry Baryshkov		opp-1900800000 {
4020154caaaSDmitry Baryshkov			opp-hz = /bits/ 64 <1900800000>;
4030154caaaSDmitry Baryshkov			opp-supported-hw = <0x4>;
40490173a95SLoic Poulain			clock-latency-ns = <200000>;
4058bb8688cSDmitry Baryshkov			opp-peak-kBps = <1305600>;
40690173a95SLoic Poulain		};
40790173a95SLoic Poulain		opp-1920000000 {
40890173a95SLoic Poulain			opp-hz = /bits/ 64 <1920000000>;
4090154caaaSDmitry Baryshkov			opp-supported-hw = <0x1>;
41090173a95SLoic Poulain			clock-latency-ns = <200000>;
4118bb8688cSDmitry Baryshkov			opp-peak-kBps = <1459200>;
41290173a95SLoic Poulain		};
41390173a95SLoic Poulain		opp-1996800000 {
41490173a95SLoic Poulain			opp-hz = /bits/ 64 <1996800000>;
4150154caaaSDmitry Baryshkov			opp-supported-hw = <0x1>;
41690173a95SLoic Poulain			clock-latency-ns = <200000>;
4178bb8688cSDmitry Baryshkov			opp-peak-kBps = <1593600>;
41890173a95SLoic Poulain		};
41990173a95SLoic Poulain		opp-2073600000 {
42090173a95SLoic Poulain			opp-hz = /bits/ 64 <2073600000>;
4210154caaaSDmitry Baryshkov			opp-supported-hw = <0x1>;
42290173a95SLoic Poulain			clock-latency-ns = <200000>;
4238bb8688cSDmitry Baryshkov			opp-peak-kBps = <1593600>;
42490173a95SLoic Poulain		};
42590173a95SLoic Poulain		opp-2150400000 {
42690173a95SLoic Poulain			opp-hz = /bits/ 64 <2150400000>;
4270154caaaSDmitry Baryshkov			opp-supported-hw = <0x1>;
42890173a95SLoic Poulain			clock-latency-ns = <200000>;
4298bb8688cSDmitry Baryshkov			opp-peak-kBps = <1593600>;
43090173a95SLoic Poulain		};
43190173a95SLoic Poulain	};
43290173a95SLoic Poulain
433702956a1Sspjoshi@codeaurora.org	firmware {
434702956a1Sspjoshi@codeaurora.org		scm {
435b9c0c0e5SDavid Heidelberg			compatible = "qcom,scm-msm8996", "qcom,scm";
436100ce220SKrzysztof Kozlowski			qcom,dload-mode = <&tcsr_2 0x13000>;
437702956a1Sspjoshi@codeaurora.org		};
438702956a1Sspjoshi@codeaurora.org	};
439702956a1Sspjoshi@codeaurora.org
440184adb50SVinod Koul	memory@80000000 {
44150aa72ccSBjorn Andersson		device_type = "memory";
44250aa72ccSBjorn Andersson		/* We expect the bootloader to fill in the reg */
443184adb50SVinod Koul		reg = <0x0 0x80000000 0x0 0x0>;
44450aa72ccSBjorn Andersson	};
44550aa72ccSBjorn Andersson
44673cb9305SMao Jinlong	etm {
44773cb9305SMao Jinlong		compatible = "qcom,coresight-remote-etm";
44873cb9305SMao Jinlong
44973cb9305SMao Jinlong		out-ports {
45073cb9305SMao Jinlong			port {
45173cb9305SMao Jinlong				modem_etm_out_funnel_in2: endpoint {
45273cb9305SMao Jinlong					remote-endpoint =
45373cb9305SMao Jinlong					  <&funnel_in2_in_modem_etm>;
45473cb9305SMao Jinlong				};
45573cb9305SMao Jinlong			};
45673cb9305SMao Jinlong		};
45773cb9305SMao Jinlong	};
45873cb9305SMao Jinlong
45950aa72ccSBjorn Andersson	psci {
46050aa72ccSBjorn Andersson		compatible = "arm,psci-1.0";
46150aa72ccSBjorn Andersson		method = "smc";
46250aa72ccSBjorn Andersson	};
46350aa72ccSBjorn Andersson
4647e1acc8bSStephan Gerhold	rpm: remoteproc {
4657e1acc8bSStephan Gerhold		compatible = "qcom,msm8996-rpm-proc", "qcom,rpm-proc";
4667e1acc8bSStephan Gerhold
4677e1acc8bSStephan Gerhold		glink-edge {
4687e1acc8bSStephan Gerhold			compatible = "qcom,glink-rpm";
4697e1acc8bSStephan Gerhold			interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
4707e1acc8bSStephan Gerhold			qcom,rpm-msg-ram = <&rpm_msg_ram>;
4717e1acc8bSStephan Gerhold			mboxes = <&apcs_glb 0>;
4727e1acc8bSStephan Gerhold
4737e1acc8bSStephan Gerhold			rpm_requests: rpm-requests {
4747e1acc8bSStephan Gerhold				compatible = "qcom,rpm-msm8996";
4757e1acc8bSStephan Gerhold				qcom,glink-channels = "rpm_requests";
4767e1acc8bSStephan Gerhold
4777e1acc8bSStephan Gerhold				rpmcc: clock-controller {
4787e1acc8bSStephan Gerhold					compatible = "qcom,rpmcc-msm8996", "qcom,rpmcc";
4797e1acc8bSStephan Gerhold					#clock-cells = <1>;
4807e1acc8bSStephan Gerhold					clocks = <&xo_board>;
4817e1acc8bSStephan Gerhold					clock-names = "xo";
4827e1acc8bSStephan Gerhold				};
4837e1acc8bSStephan Gerhold
4847e1acc8bSStephan Gerhold				rpmpd: power-controller {
4857e1acc8bSStephan Gerhold					compatible = "qcom,msm8996-rpmpd";
4867e1acc8bSStephan Gerhold					#power-domain-cells = <1>;
4877e1acc8bSStephan Gerhold					operating-points-v2 = <&rpmpd_opp_table>;
4887e1acc8bSStephan Gerhold
4897e1acc8bSStephan Gerhold					rpmpd_opp_table: opp-table {
4907e1acc8bSStephan Gerhold						compatible = "operating-points-v2";
4917e1acc8bSStephan Gerhold
4927e1acc8bSStephan Gerhold						rpmpd_opp1: opp1 {
4937e1acc8bSStephan Gerhold							opp-level = <1>;
4947e1acc8bSStephan Gerhold						};
4957e1acc8bSStephan Gerhold
4967e1acc8bSStephan Gerhold						rpmpd_opp2: opp2 {
4977e1acc8bSStephan Gerhold							opp-level = <2>;
4987e1acc8bSStephan Gerhold						};
4997e1acc8bSStephan Gerhold
5007e1acc8bSStephan Gerhold						rpmpd_opp3: opp3 {
5017e1acc8bSStephan Gerhold							opp-level = <3>;
5027e1acc8bSStephan Gerhold						};
5037e1acc8bSStephan Gerhold
5047e1acc8bSStephan Gerhold						rpmpd_opp4: opp4 {
5057e1acc8bSStephan Gerhold							opp-level = <4>;
5067e1acc8bSStephan Gerhold						};
5077e1acc8bSStephan Gerhold
5087e1acc8bSStephan Gerhold						rpmpd_opp5: opp5 {
5097e1acc8bSStephan Gerhold							opp-level = <5>;
5107e1acc8bSStephan Gerhold						};
5117e1acc8bSStephan Gerhold
5127e1acc8bSStephan Gerhold						rpmpd_opp6: opp6 {
5137e1acc8bSStephan Gerhold							opp-level = <6>;
5147e1acc8bSStephan Gerhold						};
5157e1acc8bSStephan Gerhold					};
5167e1acc8bSStephan Gerhold				};
5177e1acc8bSStephan Gerhold			};
5187e1acc8bSStephan Gerhold		};
5197e1acc8bSStephan Gerhold	};
5207e1acc8bSStephan Gerhold
52150aa72ccSBjorn Andersson	reserved-memory {
52250aa72ccSBjorn Andersson		#address-cells = <2>;
52350aa72ccSBjorn Andersson		#size-cells = <2>;
52450aa72ccSBjorn Andersson		ranges;
52550aa72ccSBjorn Andersson
526902d97a4SYassine Oudjana		hyp_mem: memory@85800000 {
527902d97a4SYassine Oudjana			reg = <0x0 0x85800000 0x0 0x600000>;
52850aa72ccSBjorn Andersson			no-map;
52950aa72ccSBjorn Andersson		};
53050aa72ccSBjorn Andersson
531902d97a4SYassine Oudjana		xbl_mem: memory@85e00000 {
532902d97a4SYassine Oudjana			reg = <0x0 0x85e00000 0x0 0x200000>;
53350aa72ccSBjorn Andersson			no-map;
53450aa72ccSBjorn Andersson		};
53550aa72ccSBjorn Andersson
53650aa72ccSBjorn Andersson		smem_mem: smem-mem@86000000 {
53750aa72ccSBjorn Andersson			reg = <0x0 0x86000000 0x0 0x200000>;
53850aa72ccSBjorn Andersson			no-map;
53950aa72ccSBjorn Andersson		};
54050aa72ccSBjorn Andersson
541902d97a4SYassine Oudjana		tz_mem: memory@86200000 {
54250aa72ccSBjorn Andersson			reg = <0x0 0x86200000 0x0 0x2600000>;
54350aa72ccSBjorn Andersson			no-map;
54450aa72ccSBjorn Andersson		};
54550aa72ccSBjorn Andersson
546902d97a4SYassine Oudjana		rmtfs_mem: rmtfs {
54750aa72ccSBjorn Andersson			compatible = "qcom,rmtfs-mem";
54850aa72ccSBjorn Andersson
54950aa72ccSBjorn Andersson			size = <0x0 0x200000>;
55050aa72ccSBjorn Andersson			alloc-ranges = <0x0 0xa0000000 0x0 0x2000000>;
55150aa72ccSBjorn Andersson			no-map;
55250aa72ccSBjorn Andersson
55350aa72ccSBjorn Andersson			qcom,client-id = <1>;
55450aa72ccSBjorn Andersson			qcom,vmid = <15>;
55550aa72ccSBjorn Andersson		};
55650aa72ccSBjorn Andersson
557902d97a4SYassine Oudjana		mpss_mem: mpss@88800000 {
558902d97a4SYassine Oudjana			reg = <0x0 0x88800000 0x0 0x6200000>;
559902d97a4SYassine Oudjana			no-map;
560902d97a4SYassine Oudjana		};
561902d97a4SYassine Oudjana
562902d97a4SYassine Oudjana		adsp_mem: adsp@8ea00000 {
563902d97a4SYassine Oudjana			reg = <0x0 0x8ea00000 0x0 0x1b00000>;
564902d97a4SYassine Oudjana			no-map;
565902d97a4SYassine Oudjana		};
566902d97a4SYassine Oudjana
567902d97a4SYassine Oudjana		slpi_mem: slpi@90500000 {
568902d97a4SYassine Oudjana			reg = <0x0 0x90500000 0x0 0xa00000>;
569902d97a4SYassine Oudjana			no-map;
570902d97a4SYassine Oudjana		};
571902d97a4SYassine Oudjana
572902d97a4SYassine Oudjana		gpu_mem: gpu@90f00000 {
57350aa72ccSBjorn Andersson			compatible = "shared-dma-pool";
574902d97a4SYassine Oudjana			reg = <0x0 0x90f00000 0x0 0x100000>;
575902d97a4SYassine Oudjana			no-map;
576902d97a4SYassine Oudjana		};
577902d97a4SYassine Oudjana
578902d97a4SYassine Oudjana		venus_mem: venus@91000000 {
579902d97a4SYassine Oudjana			reg = <0x0 0x91000000 0x0 0x500000>;
580902d97a4SYassine Oudjana			no-map;
581902d97a4SYassine Oudjana		};
582902d97a4SYassine Oudjana
583902d97a4SYassine Oudjana		mba_mem: mba@91500000 {
584902d97a4SYassine Oudjana			reg = <0x0 0x91500000 0x0 0x200000>;
58550aa72ccSBjorn Andersson			no-map;
58650aa72ccSBjorn Andersson		};
5873c118d1bSSibi Sankar
5883c118d1bSSibi Sankar		mdata_mem: mpss-metadata {
5893c118d1bSSibi Sankar			alloc-ranges = <0x0 0xa0000000 0x0 0x20000000>;
5903c118d1bSSibi Sankar			size = <0x0 0x4000>;
5913c118d1bSSibi Sankar			no-map;
5923c118d1bSSibi Sankar		};
593da3d658eSBjorn Andersson	};
594da3d658eSBjorn Andersson
59550aa72ccSBjorn Andersson	smem {
59650aa72ccSBjorn Andersson		compatible = "qcom,smem";
59750aa72ccSBjorn Andersson		memory-region = <&smem_mem>;
59850aa72ccSBjorn Andersson		hwlocks = <&tcsr_mutex 3>;
59950aa72ccSBjorn Andersson	};
60050aa72ccSBjorn Andersson
60150aa72ccSBjorn Andersson	smp2p-adsp {
60250aa72ccSBjorn Andersson		compatible = "qcom,smp2p";
60350aa72ccSBjorn Andersson		qcom,smem = <443>, <429>;
60450aa72ccSBjorn Andersson
605b79663a5SKrzysztof Kozlowski		interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>;
60650aa72ccSBjorn Andersson
60750aa72ccSBjorn Andersson		mboxes = <&apcs_glb 10>;
60850aa72ccSBjorn Andersson
60950aa72ccSBjorn Andersson		qcom,local-pid = <0>;
61050aa72ccSBjorn Andersson		qcom,remote-pid = <2>;
61150aa72ccSBjorn Andersson
6126d338febSYassine Oudjana		adsp_smp2p_out: master-kernel {
61350aa72ccSBjorn Andersson			qcom,entry-name = "master-kernel";
61450aa72ccSBjorn Andersson			#qcom,smem-state-cells = <1>;
61550aa72ccSBjorn Andersson		};
61650aa72ccSBjorn Andersson
6176d338febSYassine Oudjana		adsp_smp2p_in: slave-kernel {
61850aa72ccSBjorn Andersson			qcom,entry-name = "slave-kernel";
61950aa72ccSBjorn Andersson
62050aa72ccSBjorn Andersson			interrupt-controller;
62150aa72ccSBjorn Andersson			#interrupt-cells = <2>;
62250aa72ccSBjorn Andersson		};
62350aa72ccSBjorn Andersson	};
62450aa72ccSBjorn Andersson
6256d338febSYassine Oudjana	smp2p-mpss {
62650aa72ccSBjorn Andersson		compatible = "qcom,smp2p";
62750aa72ccSBjorn Andersson		qcom,smem = <435>, <428>;
62850aa72ccSBjorn Andersson
62950aa72ccSBjorn Andersson		interrupts = <GIC_SPI 451 IRQ_TYPE_EDGE_RISING>;
63050aa72ccSBjorn Andersson
63150aa72ccSBjorn Andersson		mboxes = <&apcs_glb 14>;
63250aa72ccSBjorn Andersson
63350aa72ccSBjorn Andersson		qcom,local-pid = <0>;
63450aa72ccSBjorn Andersson		qcom,remote-pid = <1>;
63550aa72ccSBjorn Andersson
6366d338febSYassine Oudjana		mpss_smp2p_out: master-kernel {
63750aa72ccSBjorn Andersson			qcom,entry-name = "master-kernel";
63850aa72ccSBjorn Andersson			#qcom,smem-state-cells = <1>;
63950aa72ccSBjorn Andersson		};
64050aa72ccSBjorn Andersson
6416d338febSYassine Oudjana		mpss_smp2p_in: slave-kernel {
64250aa72ccSBjorn Andersson			qcom,entry-name = "slave-kernel";
64350aa72ccSBjorn Andersson
64450aa72ccSBjorn Andersson			interrupt-controller;
64550aa72ccSBjorn Andersson			#interrupt-cells = <2>;
64650aa72ccSBjorn Andersson		};
64750aa72ccSBjorn Andersson	};
64850aa72ccSBjorn Andersson
64950aa72ccSBjorn Andersson	smp2p-slpi {
65050aa72ccSBjorn Andersson		compatible = "qcom,smp2p";
65150aa72ccSBjorn Andersson		qcom,smem = <481>, <430>;
65250aa72ccSBjorn Andersson
65350aa72ccSBjorn Andersson		interrupts = <GIC_SPI 178 IRQ_TYPE_EDGE_RISING>;
65450aa72ccSBjorn Andersson
65550aa72ccSBjorn Andersson		mboxes = <&apcs_glb 26>;
65650aa72ccSBjorn Andersson
65750aa72ccSBjorn Andersson		qcom,local-pid = <0>;
65850aa72ccSBjorn Andersson		qcom,remote-pid = <3>;
65950aa72ccSBjorn Andersson
6606d338febSYassine Oudjana		slpi_smp2p_out: master-kernel {
66150aa72ccSBjorn Andersson			qcom,entry-name = "master-kernel";
66250aa72ccSBjorn Andersson			#qcom,smem-state-cells = <1>;
66350aa72ccSBjorn Andersson		};
6646d338febSYassine Oudjana
6656d338febSYassine Oudjana		slpi_smp2p_in: slave-kernel {
6666d338febSYassine Oudjana			qcom,entry-name = "slave-kernel";
6676d338febSYassine Oudjana
6686d338febSYassine Oudjana			interrupt-controller;
6696d338febSYassine Oudjana			#interrupt-cells = <2>;
6706d338febSYassine Oudjana		};
67150aa72ccSBjorn Andersson	};
67250aa72ccSBjorn Andersson
673b67f5c33SKrzysztof Kozlowski	soc: soc@0 {
6744558e9b3SStephen Boyd		#address-cells = <1>;
6754558e9b3SStephen Boyd		#size-cells = <1>;
6764558e9b3SStephen Boyd		ranges = <0 0 0 0xffffffff>;
6774558e9b3SStephen Boyd		compatible = "simple-bus";
6784558e9b3SStephen Boyd
67902d99d4cSJohan Hovold		pcie_phy: phy-wrapper@34000 {
68050aa72ccSBjorn Andersson			compatible = "qcom,msm8996-qmp-pcie-phy";
68150aa72ccSBjorn Andersson			reg = <0x00034000 0x488>;
68250aa72ccSBjorn Andersson			#address-cells = <1>;
68350aa72ccSBjorn Andersson			#size-cells = <1>;
6843a5da59aSJohan Hovold			ranges = <0x0 0x00034000 0x4000>;
68550aa72ccSBjorn Andersson
68650aa72ccSBjorn Andersson			clocks = <&gcc GCC_PCIE_PHY_AUX_CLK>,
68750aa72ccSBjorn Andersson				<&gcc GCC_PCIE_PHY_CFG_AHB_CLK>,
68850aa72ccSBjorn Andersson				<&gcc GCC_PCIE_CLKREF_CLK>;
68950aa72ccSBjorn Andersson			clock-names = "aux", "cfg_ahb", "ref";
69050aa72ccSBjorn Andersson
69150aa72ccSBjorn Andersson			resets = <&gcc GCC_PCIE_PHY_BCR>,
69250aa72ccSBjorn Andersson				<&gcc GCC_PCIE_PHY_COM_BCR>,
69350aa72ccSBjorn Andersson				<&gcc GCC_PCIE_PHY_COM_NOCSR_BCR>;
69450aa72ccSBjorn Andersson			reset-names = "phy", "common", "cfg";
69502d99d4cSJohan Hovold
69650aa72ccSBjorn Andersson			status = "disabled";
69750aa72ccSBjorn Andersson
6983a5da59aSJohan Hovold			pciephy_0: phy@1000 {
6993a5da59aSJohan Hovold				reg = <0x1000 0x130>,
7003a5da59aSJohan Hovold				      <0x1200 0x200>,
7013a5da59aSJohan Hovold				      <0x1400 0x1dc>;
70250aa72ccSBjorn Andersson
70350aa72ccSBjorn Andersson				clocks = <&gcc GCC_PCIE_0_PIPE_CLK>;
70450aa72ccSBjorn Andersson				clock-names = "pipe0";
70550aa72ccSBjorn Andersson				resets = <&gcc GCC_PCIE_0_PHY_BCR>;
70650aa72ccSBjorn Andersson				reset-names = "lane0";
70702d99d4cSJohan Hovold
70802d99d4cSJohan Hovold				#clock-cells = <0>;
70902d99d4cSJohan Hovold				clock-output-names = "pcie_0_pipe_clk_src";
71002d99d4cSJohan Hovold
71102d99d4cSJohan Hovold				#phy-cells = <0>;
71250aa72ccSBjorn Andersson			};
71350aa72ccSBjorn Andersson
7143a5da59aSJohan Hovold			pciephy_1: phy@2000 {
7153a5da59aSJohan Hovold				reg = <0x2000 0x130>,
7163a5da59aSJohan Hovold				      <0x2200 0x200>,
7173a5da59aSJohan Hovold				      <0x2400 0x1dc>;
71850aa72ccSBjorn Andersson
71950aa72ccSBjorn Andersson				clocks = <&gcc GCC_PCIE_1_PIPE_CLK>;
72050aa72ccSBjorn Andersson				clock-names = "pipe1";
72150aa72ccSBjorn Andersson				resets = <&gcc GCC_PCIE_1_PHY_BCR>;
72250aa72ccSBjorn Andersson				reset-names = "lane1";
72302d99d4cSJohan Hovold
72402d99d4cSJohan Hovold				#clock-cells = <0>;
72502d99d4cSJohan Hovold				clock-output-names = "pcie_1_pipe_clk_src";
72602d99d4cSJohan Hovold
72702d99d4cSJohan Hovold				#phy-cells = <0>;
72850aa72ccSBjorn Andersson			};
72950aa72ccSBjorn Andersson
7303a5da59aSJohan Hovold			pciephy_2: phy@3000 {
7313a5da59aSJohan Hovold				reg = <0x3000 0x130>,
7323a5da59aSJohan Hovold				      <0x3200 0x200>,
7333a5da59aSJohan Hovold				      <0x3400 0x1dc>;
73450aa72ccSBjorn Andersson
73550aa72ccSBjorn Andersson				clocks = <&gcc GCC_PCIE_2_PIPE_CLK>;
73650aa72ccSBjorn Andersson				clock-names = "pipe2";
73750aa72ccSBjorn Andersson				resets = <&gcc GCC_PCIE_2_PHY_BCR>;
73850aa72ccSBjorn Andersson				reset-names = "lane2";
73902d99d4cSJohan Hovold
74002d99d4cSJohan Hovold				#clock-cells = <0>;
74102d99d4cSJohan Hovold				clock-output-names = "pcie_2_pipe_clk_src";
74202d99d4cSJohan Hovold
74302d99d4cSJohan Hovold				#phy-cells = <0>;
74450aa72ccSBjorn Andersson			};
74550aa72ccSBjorn Andersson		};
74650aa72ccSBjorn Andersson
747179811beSStephan Gerhold		rpm_msg_ram: sram@68000 {
748f742f878SBjorn Andersson			compatible = "qcom,rpm-msg-ram";
74986f6d622SBjorn Andersson			reg = <0x00068000 0x6000>;
750f742f878SBjorn Andersson		};
751f742f878SBjorn Andersson
75250aa72ccSBjorn Andersson		qfprom@74000 {
753b2eab35bSKrzysztof Kozlowski			compatible = "qcom,msm8996-qfprom", "qcom,qfprom";
75450aa72ccSBjorn Andersson			reg = <0x00074000 0x8ff>;
75550aa72ccSBjorn Andersson			#address-cells = <1>;
75650aa72ccSBjorn Andersson			#size-cells = <1>;
75750aa72ccSBjorn Andersson
75850aa72ccSBjorn Andersson			qusb2p_hstx_trim: hstx_trim@24e {
75950aa72ccSBjorn Andersson				reg = <0x24e 0x2>;
76050aa72ccSBjorn Andersson				bits = <5 4>;
76150aa72ccSBjorn Andersson			};
76250aa72ccSBjorn Andersson
76350aa72ccSBjorn Andersson			qusb2s_hstx_trim: hstx_trim@24f {
76450aa72ccSBjorn Andersson				reg = <0x24f 0x1>;
76550aa72ccSBjorn Andersson				bits = <1 4>;
76650aa72ccSBjorn Andersson			};
76750aa72ccSBjorn Andersson
768af260f1fSLoic Poulain			speedbin_efuse: speedbin@133 {
76950aa72ccSBjorn Andersson				reg = <0x133 0x1>;
77050aa72ccSBjorn Andersson				bits = <5 3>;
77150aa72ccSBjorn Andersson			};
77250aa72ccSBjorn Andersson		};
77350aa72ccSBjorn Andersson
7746e382cc7SVinod Koul		rng: rng@83000 {
7756e382cc7SVinod Koul			compatible = "qcom,prng-ee";
7766e382cc7SVinod Koul			reg = <0x00083000 0x1000>;
7776e382cc7SVinod Koul			clocks = <&gcc GCC_PRNG_AHB_CLK>;
7786e382cc7SVinod Koul			clock-names = "core";
7796e382cc7SVinod Koul		};
7806e382cc7SVinod Koul
78150aa72ccSBjorn Andersson		gcc: clock-controller@300000 {
78250aa72ccSBjorn Andersson			compatible = "qcom,gcc-msm8996";
78350aa72ccSBjorn Andersson			#clock-cells = <1>;
78450aa72ccSBjorn Andersson			#reset-cells = <1>;
78550aa72ccSBjorn Andersson			#power-domain-cells = <1>;
78650aa72ccSBjorn Andersson			reg = <0x00300000 0x90000>;
787950d3fb6SBjorn Andersson
7888ae72166SDmitry Baryshkov			clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
78979b9ced5SDmitry Baryshkov				 <&rpmcc RPM_SMD_LN_BB_CLK>,
790edb8e38cSDmitry Baryshkov				 <&sleep_clk>,
791edb8e38cSDmitry Baryshkov				 <&pciephy_0>,
792edb8e38cSDmitry Baryshkov				 <&pciephy_1>,
793edb8e38cSDmitry Baryshkov				 <&pciephy_2>,
794edb8e38cSDmitry Baryshkov				 <&ssusb_phy_0>,
79586543bc6SDmitry Baryshkov				 <&ufsphy_lane 0>,
79686543bc6SDmitry Baryshkov				 <&ufsphy_lane 1>,
79786543bc6SDmitry Baryshkov				 <&ufsphy_lane 2>;
798edb8e38cSDmitry Baryshkov			clock-names = "cxo",
799edb8e38cSDmitry Baryshkov				      "cxo2",
800edb8e38cSDmitry Baryshkov				      "sleep_clk",
801edb8e38cSDmitry Baryshkov				      "pcie_0_pipe_clk_src",
802edb8e38cSDmitry Baryshkov				      "pcie_1_pipe_clk_src",
803edb8e38cSDmitry Baryshkov				      "pcie_2_pipe_clk_src",
804edb8e38cSDmitry Baryshkov				      "usb3_phy_pipe_clk_src",
805edb8e38cSDmitry Baryshkov				      "ufs_rx_symbol_0_clk_src",
806edb8e38cSDmitry Baryshkov				      "ufs_rx_symbol_1_clk_src",
807edb8e38cSDmitry Baryshkov				      "ufs_tx_symbol_0_clk_src";
808da3d658eSBjorn Andersson		};
809da3d658eSBjorn Andersson
810f35aaef1SYassine Oudjana		bimc: interconnect@408000 {
811f35aaef1SYassine Oudjana			compatible = "qcom,msm8996-bimc";
812f35aaef1SYassine Oudjana			reg = <0x00408000 0x5a000>;
813f35aaef1SYassine Oudjana			#interconnect-cells = <1>;
814f35aaef1SYassine Oudjana			clock-names = "bus", "bus_a";
815f35aaef1SYassine Oudjana			clocks = <&rpmcc RPM_SMD_BIMC_CLK>,
816f35aaef1SYassine Oudjana				 <&rpmcc RPM_SMD_BIMC_A_CLK>;
817f35aaef1SYassine Oudjana		};
818f35aaef1SYassine Oudjana
819f35c11b0SAmit Kucheria		tsens0: thermal-sensor@4a9000 {
820946f8007SAmit Kucheria			compatible = "qcom,msm8996-tsens", "qcom,tsens-v2";
82186f6d622SBjorn Andersson			reg = <0x004a9000 0x1000>, /* TM */
82286f6d622SBjorn Andersson			      <0x004a8000 0x1000>; /* SROT */
823f35c11b0SAmit Kucheria			#qcom,sensors = <13>;
8241246f782SAmit Kucheria			interrupts = <GIC_SPI 458 IRQ_TYPE_LEVEL_HIGH>,
8251246f782SAmit Kucheria				     <GIC_SPI 445 IRQ_TYPE_LEVEL_HIGH>;
8261246f782SAmit Kucheria			interrupt-names = "uplow", "critical";
827f35c11b0SAmit Kucheria			#thermal-sensor-cells = <1>;
828f35c11b0SAmit Kucheria		};
829f35c11b0SAmit Kucheria
830f35c11b0SAmit Kucheria		tsens1: thermal-sensor@4ad000 {
831946f8007SAmit Kucheria			compatible = "qcom,msm8996-tsens", "qcom,tsens-v2";
83286f6d622SBjorn Andersson			reg = <0x004ad000 0x1000>, /* TM */
83386f6d622SBjorn Andersson			      <0x004ac000 0x1000>; /* SROT */
834f35c11b0SAmit Kucheria			#qcom,sensors = <8>;
8351246f782SAmit Kucheria			interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>,
8361246f782SAmit Kucheria				     <GIC_SPI 430 IRQ_TYPE_LEVEL_HIGH>;
8371246f782SAmit Kucheria			interrupt-names = "uplow", "critical";
838f35c11b0SAmit Kucheria			#thermal-sensor-cells = <1>;
839f35c11b0SAmit Kucheria		};
840f35c11b0SAmit Kucheria
841095a7137SKuldeep Singh		cryptobam: dma-controller@644000 {
842ef062eb6SVladimir Zapolskiy			compatible = "qcom,bam-v1.7.0";
843ef062eb6SVladimir Zapolskiy			reg = <0x00644000 0x24000>;
844ef062eb6SVladimir Zapolskiy			interrupts = <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>;
845ef062eb6SVladimir Zapolskiy			clocks = <&gcc GCC_CE1_CLK>;
846ef062eb6SVladimir Zapolskiy			clock-names = "bam_clk";
847ef062eb6SVladimir Zapolskiy			#dma-cells = <1>;
848ef062eb6SVladimir Zapolskiy			qcom,ee = <0>;
8490b9ae7ecSDavid Heidelberg			qcom,controlled-remotely;
850ef062eb6SVladimir Zapolskiy		};
851ef062eb6SVladimir Zapolskiy
852ef062eb6SVladimir Zapolskiy		crypto: crypto@67a000 {
853ef062eb6SVladimir Zapolskiy			compatible = "qcom,crypto-v5.4";
854ef062eb6SVladimir Zapolskiy			reg = <0x0067a000 0x6000>;
855ef062eb6SVladimir Zapolskiy			clocks = <&gcc GCC_CE1_AHB_CLK>,
856ef062eb6SVladimir Zapolskiy				 <&gcc GCC_CE1_AXI_CLK>,
857ef062eb6SVladimir Zapolskiy				 <&gcc GCC_CE1_CLK>;
858ef062eb6SVladimir Zapolskiy			clock-names = "iface", "bus", "core";
859ef062eb6SVladimir Zapolskiy			dmas = <&cryptobam 6>, <&cryptobam 7>;
860ef062eb6SVladimir Zapolskiy			dma-names = "rx", "tx";
861ef062eb6SVladimir Zapolskiy		};
862ef062eb6SVladimir Zapolskiy
863f35aaef1SYassine Oudjana		cnoc: interconnect@500000 {
864f35aaef1SYassine Oudjana			compatible = "qcom,msm8996-cnoc";
865f35aaef1SYassine Oudjana			reg = <0x00500000 0x1000>;
866f35aaef1SYassine Oudjana			#interconnect-cells = <1>;
867f35aaef1SYassine Oudjana			clock-names = "bus", "bus_a";
868f35aaef1SYassine Oudjana			clocks = <&rpmcc RPM_SMD_CNOC_CLK>,
869f35aaef1SYassine Oudjana				 <&rpmcc RPM_SMD_CNOC_A_CLK>;
870f35aaef1SYassine Oudjana		};
871f35aaef1SYassine Oudjana
872f35aaef1SYassine Oudjana		snoc: interconnect@524000 {
873f35aaef1SYassine Oudjana			compatible = "qcom,msm8996-snoc";
874f35aaef1SYassine Oudjana			reg = <0x00524000 0x1c000>;
875f35aaef1SYassine Oudjana			#interconnect-cells = <1>;
876f35aaef1SYassine Oudjana			clock-names = "bus", "bus_a";
877f35aaef1SYassine Oudjana			clocks = <&rpmcc RPM_SMD_SNOC_CLK>,
878f35aaef1SYassine Oudjana				 <&rpmcc RPM_SMD_SNOC_A_CLK>;
879f35aaef1SYassine Oudjana		};
880f35aaef1SYassine Oudjana
881f35aaef1SYassine Oudjana		a0noc: interconnect@543000 {
882f35aaef1SYassine Oudjana			compatible = "qcom,msm8996-a0noc";
883f35aaef1SYassine Oudjana			reg = <0x00543000 0x6000>;
884f35aaef1SYassine Oudjana			#interconnect-cells = <1>;
885f35aaef1SYassine Oudjana			clock-names = "aggre0_snoc_axi",
886f35aaef1SYassine Oudjana				      "aggre0_cnoc_ahb",
887f35aaef1SYassine Oudjana				      "aggre0_noc_mpu_cfg";
888f35aaef1SYassine Oudjana			clocks = <&gcc GCC_AGGRE0_SNOC_AXI_CLK>,
889f35aaef1SYassine Oudjana				 <&gcc GCC_AGGRE0_CNOC_AHB_CLK>,
890f35aaef1SYassine Oudjana				 <&gcc GCC_AGGRE0_NOC_MPU_CFG_AHB_CLK>;
891f35aaef1SYassine Oudjana			power-domains = <&gcc AGGRE0_NOC_GDSC>;
892f35aaef1SYassine Oudjana		};
893f35aaef1SYassine Oudjana
894f35aaef1SYassine Oudjana		a1noc: interconnect@562000 {
895f35aaef1SYassine Oudjana			compatible = "qcom,msm8996-a1noc";
896f35aaef1SYassine Oudjana			reg = <0x00562000 0x5000>;
897f35aaef1SYassine Oudjana			#interconnect-cells = <1>;
898f35aaef1SYassine Oudjana			clock-names = "bus", "bus_a";
899f35aaef1SYassine Oudjana			clocks = <&rpmcc RPM_SMD_AGGR1_NOC_CLK>,
900f35aaef1SYassine Oudjana				 <&rpmcc RPM_SMD_AGGR1_NOC_A_CLK>;
901f35aaef1SYassine Oudjana		};
902f35aaef1SYassine Oudjana
903f35aaef1SYassine Oudjana		a2noc: interconnect@583000 {
904f35aaef1SYassine Oudjana			compatible = "qcom,msm8996-a2noc";
905f35aaef1SYassine Oudjana			reg = <0x00583000 0x7000>;
906f35aaef1SYassine Oudjana			#interconnect-cells = <1>;
90767fb5374SKonrad Dybcio			clock-names = "bus", "bus_a", "aggre2_ufs_axi", "ufs_axi";
908f35aaef1SYassine Oudjana			clocks = <&rpmcc RPM_SMD_AGGR2_NOC_CLK>,
90967fb5374SKonrad Dybcio				 <&rpmcc RPM_SMD_AGGR2_NOC_A_CLK>,
91067fb5374SKonrad Dybcio				 <&gcc GCC_AGGRE2_UFS_AXI_CLK>,
91167fb5374SKonrad Dybcio				 <&gcc GCC_UFS_AXI_CLK>;
912f35aaef1SYassine Oudjana		};
913f35aaef1SYassine Oudjana
914f35aaef1SYassine Oudjana		mnoc: interconnect@5a4000 {
915f35aaef1SYassine Oudjana			compatible = "qcom,msm8996-mnoc";
916f35aaef1SYassine Oudjana			reg = <0x005a4000 0x1c000>;
917f35aaef1SYassine Oudjana			#interconnect-cells = <1>;
918f35aaef1SYassine Oudjana			clock-names = "bus", "bus_a", "iface";
919f35aaef1SYassine Oudjana			clocks = <&rpmcc RPM_SMD_MMAXI_CLK>,
920f35aaef1SYassine Oudjana				 <&rpmcc RPM_SMD_MMAXI_A_CLK>,
921f35aaef1SYassine Oudjana				 <&mmcc AHB_CLK_SRC>;
922f35aaef1SYassine Oudjana		};
923f35aaef1SYassine Oudjana
924f35aaef1SYassine Oudjana		pnoc: interconnect@5c0000 {
925f35aaef1SYassine Oudjana			compatible = "qcom,msm8996-pnoc";
926f35aaef1SYassine Oudjana			reg = <0x005c0000 0x3000>;
927f35aaef1SYassine Oudjana			#interconnect-cells = <1>;
928f35aaef1SYassine Oudjana			clock-names = "bus", "bus_a";
929f35aaef1SYassine Oudjana			clocks = <&rpmcc RPM_SMD_PCNOC_CLK>,
930f35aaef1SYassine Oudjana				 <&rpmcc RPM_SMD_PCNOC_A_CLK>;
931f35aaef1SYassine Oudjana		};
932f35aaef1SYassine Oudjana
93331df41b5SKrzysztof Kozlowski		tcsr_mutex: hwlock@740000 {
93431df41b5SKrzysztof Kozlowski			compatible = "qcom,tcsr-mutex";
935100ce220SKrzysztof Kozlowski			reg = <0x00740000 0x20000>;
93631df41b5SKrzysztof Kozlowski			#hwlock-cells = <1>;
93750aa72ccSBjorn Andersson		};
93850aa72ccSBjorn Andersson
939d0909bf4SJohan Hovold		tcsr_1: syscon@760000 {
940100ce220SKrzysztof Kozlowski			compatible = "qcom,tcsr-msm8996", "syscon";
941100ce220SKrzysztof Kozlowski			reg = <0x00760000 0x20000>;
942100ce220SKrzysztof Kozlowski		};
943100ce220SKrzysztof Kozlowski
944100ce220SKrzysztof Kozlowski		tcsr_2: syscon@7a0000 {
9451f34d644SBjorn Andersson			compatible = "qcom,tcsr-msm8996", "syscon";
94686f6d622SBjorn Andersson			reg = <0x007a0000 0x18000>;
9471f34d644SBjorn Andersson		};
9481f34d644SBjorn Andersson
94950aa72ccSBjorn Andersson		mmcc: clock-controller@8c0000 {
95050aa72ccSBjorn Andersson			compatible = "qcom,mmcc-msm8996";
9514558e9b3SStephen Boyd			#clock-cells = <1>;
9524558e9b3SStephen Boyd			#reset-cells = <1>;
953a70d7449SRajendra Nayak			#power-domain-cells = <1>;
95450aa72ccSBjorn Andersson			reg = <0x008c0000 0x40000>;
95548aa6362SDmitry Baryshkov			clocks = <&xo_board>,
95648aa6362SDmitry Baryshkov				 <&gcc GPLL0>,
9573e8188b4SKrzysztof Kozlowski				 <&gcc GCC_MMSS_NOC_CFG_AHB_CLK>,
9588b764ed0SDmitry Baryshkov				 <&mdss_dsi0_phy 1>,
9598b764ed0SDmitry Baryshkov				 <&mdss_dsi0_phy 0>,
9608b764ed0SDmitry Baryshkov				 <&mdss_dsi1_phy 1>,
9618b764ed0SDmitry Baryshkov				 <&mdss_dsi1_phy 0>,
9621770394eSDmitry Baryshkov				 <&mdss_hdmi_phy>;
96348aa6362SDmitry Baryshkov			clock-names = "xo",
96448aa6362SDmitry Baryshkov				      "gpll0",
9653e8188b4SKrzysztof Kozlowski				      "gcc_mmss_noc_cfg_ahb_clk",
96648aa6362SDmitry Baryshkov				      "dsi0pll",
96748aa6362SDmitry Baryshkov				      "dsi0pllbyte",
96848aa6362SDmitry Baryshkov				      "dsi1pll",
96948aa6362SDmitry Baryshkov				      "dsi1pllbyte",
97048aa6362SDmitry Baryshkov				      "hdmipll";
97150aa72ccSBjorn Andersson			assigned-clocks = <&mmcc MMPLL9_PLL>,
97250aa72ccSBjorn Andersson					  <&mmcc MMPLL1_PLL>,
97350aa72ccSBjorn Andersson					  <&mmcc MMPLL3_PLL>,
97450aa72ccSBjorn Andersson					  <&mmcc MMPLL4_PLL>,
97550aa72ccSBjorn Andersson					  <&mmcc MMPLL5_PLL>;
97650aa72ccSBjorn Andersson			assigned-clock-rates = <624000000>,
97750aa72ccSBjorn Andersson					       <810000000>,
97850aa72ccSBjorn Andersson					       <980000000>,
97950aa72ccSBjorn Andersson					       <960000000>,
98050aa72ccSBjorn Andersson					       <825000000>;
98150aa72ccSBjorn Andersson		};
98250aa72ccSBjorn Andersson
983ecf0f5ffSDmitry Baryshkov		mdss: display-subsystem@900000 {
98450aa72ccSBjorn Andersson			compatible = "qcom,mdss";
98550aa72ccSBjorn Andersson
98650aa72ccSBjorn Andersson			reg = <0x00900000 0x1000>,
98750aa72ccSBjorn Andersson			      <0x009b0000 0x1040>,
98850aa72ccSBjorn Andersson			      <0x009b8000 0x1040>;
98950aa72ccSBjorn Andersson			reg-names = "mdss_phys",
99050aa72ccSBjorn Andersson				    "vbif_phys",
99150aa72ccSBjorn Andersson				    "vbif_nrt_phys";
99250aa72ccSBjorn Andersson
99350aa72ccSBjorn Andersson			power-domains = <&mmcc MDSS_GDSC>;
99450aa72ccSBjorn Andersson			interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
99550aa72ccSBjorn Andersson
99650aa72ccSBjorn Andersson			interrupt-controller;
99750aa72ccSBjorn Andersson			#interrupt-cells = <1>;
99850aa72ccSBjorn Andersson
9992e4ae611SDmitry Baryshkov			clocks = <&mmcc MDSS_AHB_CLK>,
10002e4ae611SDmitry Baryshkov				 <&mmcc MDSS_MDP_CLK>;
10012e4ae611SDmitry Baryshkov			clock-names = "iface", "core";
100250aa72ccSBjorn Andersson
100350aa72ccSBjorn Andersson			#address-cells = <1>;
100450aa72ccSBjorn Andersson			#size-cells = <1>;
100550aa72ccSBjorn Andersson			ranges;
100650aa72ccSBjorn Andersson
100737b05cecSKonrad Dybcio			status = "disabled";
100837b05cecSKonrad Dybcio
10090aab1b9bSDmitry Baryshkov			mdp: display-controller@901000 {
1010d46fbd45SDmitry Baryshkov				compatible = "qcom,msm8996-mdp5", "qcom,mdp5";
101150aa72ccSBjorn Andersson				reg = <0x00901000 0x90000>;
101250aa72ccSBjorn Andersson				reg-names = "mdp_phys";
101350aa72ccSBjorn Andersson
101450aa72ccSBjorn Andersson				interrupt-parent = <&mdss>;
10157b36ab26SDmitry Baryshkov				interrupts = <0>;
101650aa72ccSBjorn Andersson
101750aa72ccSBjorn Andersson				clocks = <&mmcc MDSS_AHB_CLK>,
101850aa72ccSBjorn Andersson					 <&mmcc MDSS_AXI_CLK>,
101950aa72ccSBjorn Andersson					 <&mmcc MDSS_MDP_CLK>,
102050aa72ccSBjorn Andersson					 <&mmcc SMMU_MDP_AXI_CLK>,
102150aa72ccSBjorn Andersson					 <&mmcc MDSS_VSYNC_CLK>;
102250aa72ccSBjorn Andersson				clock-names = "iface",
102350aa72ccSBjorn Andersson					      "bus",
102450aa72ccSBjorn Andersson					      "core",
102550aa72ccSBjorn Andersson					      "iommu",
102650aa72ccSBjorn Andersson					      "vsync";
102750aa72ccSBjorn Andersson
102850aa72ccSBjorn Andersson				iommus = <&mdp_smmu 0>;
102950aa72ccSBjorn Andersson
103012d54037SKonrad Dybcio				assigned-clocks = <&mmcc MDSS_MDP_CLK>,
103112d54037SKonrad Dybcio					 <&mmcc MDSS_VSYNC_CLK>;
103212d54037SKonrad Dybcio				assigned-clock-rates = <300000000>,
103312d54037SKonrad Dybcio					 <19200000>;
103412d54037SKonrad Dybcio
1035f35aaef1SYassine Oudjana				interconnects = <&mnoc MASTER_MDP_PORT0 &bimc SLAVE_EBI_CH0>,
1036f35aaef1SYassine Oudjana						<&mnoc MASTER_MDP_PORT1 &bimc SLAVE_EBI_CH0>,
1037f35aaef1SYassine Oudjana						<&mnoc MASTER_ROTATOR &bimc SLAVE_EBI_CH0>;
1038f35aaef1SYassine Oudjana				interconnect-names = "mdp0-mem", "mdp1-mem", "rotator-mem";
1039f35aaef1SYassine Oudjana
104050aa72ccSBjorn Andersson				ports {
104150aa72ccSBjorn Andersson					#address-cells = <1>;
104250aa72ccSBjorn Andersson					#size-cells = <0>;
104350aa72ccSBjorn Andersson
104450aa72ccSBjorn Andersson					port@0 {
104550aa72ccSBjorn Andersson						reg = <0>;
104650aa72ccSBjorn Andersson						mdp5_intf3_out: endpoint {
10471770394eSDmitry Baryshkov							remote-endpoint = <&mdss_hdmi_in>;
104850aa72ccSBjorn Andersson						};
104950aa72ccSBjorn Andersson					};
105012d54037SKonrad Dybcio
105112d54037SKonrad Dybcio					port@1 {
105212d54037SKonrad Dybcio						reg = <1>;
105312d54037SKonrad Dybcio						mdp5_intf1_out: endpoint {
10548b764ed0SDmitry Baryshkov							remote-endpoint = <&mdss_dsi0_in>;
105550aa72ccSBjorn Andersson						};
105650aa72ccSBjorn Andersson					};
10572752bb7dSDmitry Baryshkov
10582752bb7dSDmitry Baryshkov					port@2 {
10592752bb7dSDmitry Baryshkov						reg = <2>;
10602752bb7dSDmitry Baryshkov						mdp5_intf2_out: endpoint {
10618b764ed0SDmitry Baryshkov							remote-endpoint = <&mdss_dsi1_in>;
10622752bb7dSDmitry Baryshkov						};
10632752bb7dSDmitry Baryshkov					};
106412d54037SKonrad Dybcio				};
106512d54037SKonrad Dybcio			};
106612d54037SKonrad Dybcio
10678b764ed0SDmitry Baryshkov			mdss_dsi0: dsi@994000 {
10685ebe4191SBryan O'Donoghue				compatible = "qcom,msm8996-dsi-ctrl",
10695ebe4191SBryan O'Donoghue					     "qcom,mdss-dsi-ctrl";
107012d54037SKonrad Dybcio				reg = <0x00994000 0x400>;
107112d54037SKonrad Dybcio				reg-names = "dsi_ctrl";
107212d54037SKonrad Dybcio
107312d54037SKonrad Dybcio				interrupt-parent = <&mdss>;
10747b36ab26SDmitry Baryshkov				interrupts = <4>;
107512d54037SKonrad Dybcio
107612d54037SKonrad Dybcio				clocks = <&mmcc MDSS_MDP_CLK>,
107712d54037SKonrad Dybcio					 <&mmcc MDSS_BYTE0_CLK>,
107812d54037SKonrad Dybcio					 <&mmcc MDSS_AHB_CLK>,
107912d54037SKonrad Dybcio					 <&mmcc MDSS_AXI_CLK>,
108012d54037SKonrad Dybcio					 <&mmcc MMSS_MISC_AHB_CLK>,
108112d54037SKonrad Dybcio					 <&mmcc MDSS_PCLK0_CLK>,
108212d54037SKonrad Dybcio					 <&mmcc MDSS_ESC0_CLK>;
108312d54037SKonrad Dybcio				clock-names = "mdp_core",
108412d54037SKonrad Dybcio					      "byte",
108512d54037SKonrad Dybcio					      "iface",
108612d54037SKonrad Dybcio					      "bus",
108712d54037SKonrad Dybcio					      "core_mmss",
108812d54037SKonrad Dybcio					      "pixel",
108912d54037SKonrad Dybcio					      "core";
10901789a159SDmitry Baryshkov				assigned-clocks = <&mmcc BYTE0_CLK_SRC>, <&mmcc PCLK0_CLK_SRC>;
10918b764ed0SDmitry Baryshkov				assigned-clock-parents = <&mdss_dsi0_phy 0>, <&mdss_dsi0_phy 1>;
109212d54037SKonrad Dybcio
10938b764ed0SDmitry Baryshkov				phys = <&mdss_dsi0_phy>;
109412d54037SKonrad Dybcio				status = "disabled";
109512d54037SKonrad Dybcio
109612d54037SKonrad Dybcio				#address-cells = <1>;
109712d54037SKonrad Dybcio				#size-cells = <0>;
109812d54037SKonrad Dybcio
109912d54037SKonrad Dybcio				ports {
110012d54037SKonrad Dybcio					#address-cells = <1>;
110112d54037SKonrad Dybcio					#size-cells = <0>;
110212d54037SKonrad Dybcio
110312d54037SKonrad Dybcio					port@0 {
110412d54037SKonrad Dybcio						reg = <0>;
11058b764ed0SDmitry Baryshkov						mdss_dsi0_in: endpoint {
110612d54037SKonrad Dybcio							remote-endpoint = <&mdp5_intf1_out>;
110712d54037SKonrad Dybcio						};
110812d54037SKonrad Dybcio					};
110912d54037SKonrad Dybcio
111012d54037SKonrad Dybcio					port@1 {
111112d54037SKonrad Dybcio						reg = <1>;
11128b764ed0SDmitry Baryshkov						mdss_dsi0_out: endpoint {
111312d54037SKonrad Dybcio						};
111412d54037SKonrad Dybcio					};
111512d54037SKonrad Dybcio				};
111612d54037SKonrad Dybcio			};
111712d54037SKonrad Dybcio
11188b764ed0SDmitry Baryshkov			mdss_dsi0_phy: phy@994400 {
111912d54037SKonrad Dybcio				compatible = "qcom,dsi-phy-14nm";
112012d54037SKonrad Dybcio				reg = <0x00994400 0x100>,
112112d54037SKonrad Dybcio				      <0x00994500 0x300>,
112212d54037SKonrad Dybcio				      <0x00994800 0x188>;
112312d54037SKonrad Dybcio				reg-names = "dsi_phy",
112412d54037SKonrad Dybcio					    "dsi_phy_lane",
112512d54037SKonrad Dybcio					    "dsi_pll";
112612d54037SKonrad Dybcio
112712d54037SKonrad Dybcio				#clock-cells = <1>;
112812d54037SKonrad Dybcio				#phy-cells = <0>;
112912d54037SKonrad Dybcio
11308ae72166SDmitry Baryshkov				clocks = <&mmcc MDSS_AHB_CLK>, <&rpmcc RPM_SMD_XO_CLK_SRC>;
113112d54037SKonrad Dybcio				clock-names = "iface", "ref";
113212d54037SKonrad Dybcio				status = "disabled";
113312d54037SKonrad Dybcio			};
113450aa72ccSBjorn Andersson
11358b764ed0SDmitry Baryshkov			mdss_dsi1: dsi@996000 {
11365ebe4191SBryan O'Donoghue				compatible = "qcom,msm8996-dsi-ctrl",
11375ebe4191SBryan O'Donoghue					     "qcom,mdss-dsi-ctrl";
11382752bb7dSDmitry Baryshkov				reg = <0x00996000 0x400>;
11392752bb7dSDmitry Baryshkov				reg-names = "dsi_ctrl";
11402752bb7dSDmitry Baryshkov
11412752bb7dSDmitry Baryshkov				interrupt-parent = <&mdss>;
1142bd3b4ac1SDavid Wronek				interrupts = <5>;
11432752bb7dSDmitry Baryshkov
11442752bb7dSDmitry Baryshkov				clocks = <&mmcc MDSS_MDP_CLK>,
11452752bb7dSDmitry Baryshkov					 <&mmcc MDSS_BYTE1_CLK>,
11462752bb7dSDmitry Baryshkov					 <&mmcc MDSS_AHB_CLK>,
11472752bb7dSDmitry Baryshkov					 <&mmcc MDSS_AXI_CLK>,
11482752bb7dSDmitry Baryshkov					 <&mmcc MMSS_MISC_AHB_CLK>,
11492752bb7dSDmitry Baryshkov					 <&mmcc MDSS_PCLK1_CLK>,
11502752bb7dSDmitry Baryshkov					 <&mmcc MDSS_ESC1_CLK>;
11512752bb7dSDmitry Baryshkov				clock-names = "mdp_core",
11522752bb7dSDmitry Baryshkov					      "byte",
11532752bb7dSDmitry Baryshkov					      "iface",
11542752bb7dSDmitry Baryshkov					      "bus",
11552752bb7dSDmitry Baryshkov					      "core_mmss",
11562752bb7dSDmitry Baryshkov					      "pixel",
11572752bb7dSDmitry Baryshkov					      "core";
11581789a159SDmitry Baryshkov				assigned-clocks = <&mmcc BYTE1_CLK_SRC>, <&mmcc PCLK1_CLK_SRC>;
11598b764ed0SDmitry Baryshkov				assigned-clock-parents = <&mdss_dsi1_phy 0>, <&mdss_dsi1_phy 1>;
11602752bb7dSDmitry Baryshkov
11618b764ed0SDmitry Baryshkov				phys = <&mdss_dsi1_phy>;
11622752bb7dSDmitry Baryshkov				status = "disabled";
11632752bb7dSDmitry Baryshkov
11642752bb7dSDmitry Baryshkov				#address-cells = <1>;
11652752bb7dSDmitry Baryshkov				#size-cells = <0>;
11662752bb7dSDmitry Baryshkov
11672752bb7dSDmitry Baryshkov				ports {
11682752bb7dSDmitry Baryshkov					#address-cells = <1>;
11692752bb7dSDmitry Baryshkov					#size-cells = <0>;
11702752bb7dSDmitry Baryshkov
11712752bb7dSDmitry Baryshkov					port@0 {
11722752bb7dSDmitry Baryshkov						reg = <0>;
11738b764ed0SDmitry Baryshkov						mdss_dsi1_in: endpoint {
11742752bb7dSDmitry Baryshkov							remote-endpoint = <&mdp5_intf2_out>;
11752752bb7dSDmitry Baryshkov						};
11762752bb7dSDmitry Baryshkov					};
11772752bb7dSDmitry Baryshkov
11782752bb7dSDmitry Baryshkov					port@1 {
11792752bb7dSDmitry Baryshkov						reg = <1>;
11808b764ed0SDmitry Baryshkov						mdss_dsi1_out: endpoint {
11812752bb7dSDmitry Baryshkov						};
11822752bb7dSDmitry Baryshkov					};
11832752bb7dSDmitry Baryshkov				};
11842752bb7dSDmitry Baryshkov			};
11852752bb7dSDmitry Baryshkov
11868b764ed0SDmitry Baryshkov			mdss_dsi1_phy: phy@996400 {
11872752bb7dSDmitry Baryshkov				compatible = "qcom,dsi-phy-14nm";
11882752bb7dSDmitry Baryshkov				reg = <0x00996400 0x100>,
11892752bb7dSDmitry Baryshkov				      <0x00996500 0x300>,
11902752bb7dSDmitry Baryshkov				      <0x00996800 0x188>;
11912752bb7dSDmitry Baryshkov				reg-names = "dsi_phy",
11922752bb7dSDmitry Baryshkov					    "dsi_phy_lane",
11932752bb7dSDmitry Baryshkov					    "dsi_pll";
11942752bb7dSDmitry Baryshkov
11952752bb7dSDmitry Baryshkov				#clock-cells = <1>;
11962752bb7dSDmitry Baryshkov				#phy-cells = <0>;
11972752bb7dSDmitry Baryshkov
11988ae72166SDmitry Baryshkov				clocks = <&mmcc MDSS_AHB_CLK>, <&rpmcc RPM_SMD_XO_CLK_SRC>;
11992752bb7dSDmitry Baryshkov				clock-names = "iface", "ref";
12002752bb7dSDmitry Baryshkov				status = "disabled";
12012752bb7dSDmitry Baryshkov			};
12022752bb7dSDmitry Baryshkov
12031770394eSDmitry Baryshkov			mdss_hdmi: hdmi-tx@9a0000 {
12042b812cafSDmitry Baryshkov				compatible = "qcom,hdmi-tx-8996";
120550aa72ccSBjorn Andersson				reg = <0x009a0000 0x50c>,
120650aa72ccSBjorn Andersson				      <0x00070000 0x6158>,
120750aa72ccSBjorn Andersson				      <0x009e0000 0xfff>;
120850aa72ccSBjorn Andersson				reg-names = "core_physical",
120950aa72ccSBjorn Andersson					    "qfprom_physical",
121050aa72ccSBjorn Andersson					    "hdcp_physical";
121150aa72ccSBjorn Andersson
121250aa72ccSBjorn Andersson				interrupt-parent = <&mdss>;
12137b36ab26SDmitry Baryshkov				interrupts = <8>;
121450aa72ccSBjorn Andersson
121550aa72ccSBjorn Andersson				clocks = <&mmcc MDSS_MDP_CLK>,
121650aa72ccSBjorn Andersson					 <&mmcc MDSS_AHB_CLK>,
121750aa72ccSBjorn Andersson					 <&mmcc MDSS_HDMI_CLK>,
121850aa72ccSBjorn Andersson					 <&mmcc MDSS_HDMI_AHB_CLK>,
121950aa72ccSBjorn Andersson					 <&mmcc MDSS_EXTPCLK_CLK>;
122050aa72ccSBjorn Andersson				clock-names =
122150aa72ccSBjorn Andersson					"mdp_core",
122250aa72ccSBjorn Andersson					"iface",
122350aa72ccSBjorn Andersson					"core",
122450aa72ccSBjorn Andersson					"alt_iface",
122550aa72ccSBjorn Andersson					"extp";
122650aa72ccSBjorn Andersson
12271770394eSDmitry Baryshkov				phys = <&mdss_hdmi_phy>;
122850aa72ccSBjorn Andersson				#sound-dai-cells = <1>;
122950aa72ccSBjorn Andersson
123008972f34SKonrad Dybcio				status = "disabled";
123108972f34SKonrad Dybcio
123250aa72ccSBjorn Andersson				ports {
123350aa72ccSBjorn Andersson					#address-cells = <1>;
123450aa72ccSBjorn Andersson					#size-cells = <0>;
123550aa72ccSBjorn Andersson
123650aa72ccSBjorn Andersson					port@0 {
123750aa72ccSBjorn Andersson						reg = <0>;
12381770394eSDmitry Baryshkov						mdss_hdmi_in: endpoint {
123950aa72ccSBjorn Andersson							remote-endpoint = <&mdp5_intf3_out>;
124050aa72ccSBjorn Andersson						};
124150aa72ccSBjorn Andersson					};
124250aa72ccSBjorn Andersson				};
124350aa72ccSBjorn Andersson			};
124450aa72ccSBjorn Andersson
12451770394eSDmitry Baryshkov			mdss_hdmi_phy: phy@9a0600 {
124650aa72ccSBjorn Andersson				#phy-cells = <0>;
12472b812cafSDmitry Baryshkov				compatible = "qcom,hdmi-phy-8996";
124850aa72ccSBjorn Andersson				reg = <0x009a0600 0x1c4>,
124950aa72ccSBjorn Andersson				      <0x009a0a00 0x124>,
125050aa72ccSBjorn Andersson				      <0x009a0c00 0x124>,
125150aa72ccSBjorn Andersson				      <0x009a0e00 0x124>,
125250aa72ccSBjorn Andersson				      <0x009a1000 0x124>,
125350aa72ccSBjorn Andersson				      <0x009a1200 0x0c8>;
125450aa72ccSBjorn Andersson				reg-names = "hdmi_pll",
125550aa72ccSBjorn Andersson					    "hdmi_tx_l0",
125650aa72ccSBjorn Andersson					    "hdmi_tx_l1",
125750aa72ccSBjorn Andersson					    "hdmi_tx_l2",
125850aa72ccSBjorn Andersson					    "hdmi_tx_l3",
125950aa72ccSBjorn Andersson					    "hdmi_phy";
126050aa72ccSBjorn Andersson
126150aa72ccSBjorn Andersson				clocks = <&mmcc MDSS_AHB_CLK>,
1262157b6150SDmitry Baryshkov					 <&gcc GCC_HDMI_CLKREF_CLK>,
1263157b6150SDmitry Baryshkov					 <&xo_board>;
126450aa72ccSBjorn Andersson				clock-names = "iface",
1265157b6150SDmitry Baryshkov					      "ref",
1266157b6150SDmitry Baryshkov					      "xo";
1267157b6150SDmitry Baryshkov
1268157b6150SDmitry Baryshkov				#clock-cells = <0>;
126908972f34SKonrad Dybcio
127008972f34SKonrad Dybcio				status = "disabled";
127150aa72ccSBjorn Andersson			};
127250aa72ccSBjorn Andersson		};
127337b05cecSKonrad Dybcio
127437b05cecSKonrad Dybcio		gpu: gpu@b00000 {
127550aa72ccSBjorn Andersson			compatible = "qcom,adreno-530.2", "qcom,adreno";
127650aa72ccSBjorn Andersson
127750aa72ccSBjorn Andersson			reg = <0x00b00000 0x3f000>;
127850aa72ccSBjorn Andersson			reg-names = "kgsl_3d0_reg_memory";
127950aa72ccSBjorn Andersson
1280b79663a5SKrzysztof Kozlowski			interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>;
128150aa72ccSBjorn Andersson
128250aa72ccSBjorn Andersson			clocks = <&mmcc GPU_GX_GFX3D_CLK>,
128350aa72ccSBjorn Andersson				<&mmcc GPU_AHB_CLK>,
128450aa72ccSBjorn Andersson				<&mmcc GPU_GX_RBBMTIMER_CLK>,
128550aa72ccSBjorn Andersson				<&gcc GCC_BIMC_GFX_CLK>,
128650aa72ccSBjorn Andersson				<&gcc GCC_MMSS_BIMC_GFX_CLK>;
128750aa72ccSBjorn Andersson
128850aa72ccSBjorn Andersson			clock-names = "core",
128950aa72ccSBjorn Andersson				"iface",
129050aa72ccSBjorn Andersson				"rbbmtimer",
129150aa72ccSBjorn Andersson				"mem",
129250aa72ccSBjorn Andersson				"mem_iface";
129350aa72ccSBjorn Andersson
1294f35aaef1SYassine Oudjana			interconnects = <&bimc MASTER_GRAPHICS_3D &bimc SLAVE_EBI_CH0>;
1295f35aaef1SYassine Oudjana			interconnect-names = "gfx-mem";
1296f35aaef1SYassine Oudjana
12973f65d51eSBjorn Andersson			power-domains = <&mmcc GPU_GX_GDSC>;
129850aa72ccSBjorn Andersson			iommus = <&adreno_smmu 0>;
129950aa72ccSBjorn Andersson
1300af260f1fSLoic Poulain			nvmem-cells = <&speedbin_efuse>;
130150aa72ccSBjorn Andersson			nvmem-cell-names = "speed_bin";
130250aa72ccSBjorn Andersson
130350aa72ccSBjorn Andersson			operating-points-v2 = <&gpu_opp_table>;
130450aa72ccSBjorn Andersson
130537b05cecSKonrad Dybcio			status = "disabled";
130637b05cecSKonrad Dybcio
130758956294SYassine Oudjana			#cooling-cells = <2>;
130858956294SYassine Oudjana
130950aa72ccSBjorn Andersson			gpu_opp_table: opp-table {
131050aa72ccSBjorn Andersson				compatible = "operating-points-v2";
131150aa72ccSBjorn Andersson
131250aa72ccSBjorn Andersson				/*
13130d440d81SDmitry Baryshkov				 * 624Mhz is only available on speed bins 0 and 3.
13140d440d81SDmitry Baryshkov				 * 560Mhz is only available on speed bins 0, 2 and 3.
13150d440d81SDmitry Baryshkov				 * All the rest are available on all bins of the hardware.
131650aa72ccSBjorn Andersson				 */
131750aa72ccSBjorn Andersson				opp-624000000 {
131850aa72ccSBjorn Andersson					opp-hz = /bits/ 64 <624000000>;
13190d440d81SDmitry Baryshkov					opp-supported-hw = <0x09>;
132050aa72ccSBjorn Andersson				};
132150aa72ccSBjorn Andersson				opp-560000000 {
132250aa72ccSBjorn Andersson					opp-hz = /bits/ 64 <560000000>;
13230d440d81SDmitry Baryshkov					opp-supported-hw = <0x0d>;
132450aa72ccSBjorn Andersson				};
132550aa72ccSBjorn Andersson				opp-510000000 {
132650aa72ccSBjorn Andersson					opp-hz = /bits/ 64 <510000000>;
132721dd43fdSKonrad Dybcio					opp-supported-hw = <0xff>;
132850aa72ccSBjorn Andersson				};
132950aa72ccSBjorn Andersson				opp-401800000 {
133050aa72ccSBjorn Andersson					opp-hz = /bits/ 64 <401800000>;
133121dd43fdSKonrad Dybcio					opp-supported-hw = <0xff>;
133250aa72ccSBjorn Andersson				};
133350aa72ccSBjorn Andersson				opp-315000000 {
133450aa72ccSBjorn Andersson					opp-hz = /bits/ 64 <315000000>;
133521dd43fdSKonrad Dybcio					opp-supported-hw = <0xff>;
133650aa72ccSBjorn Andersson				};
133750aa72ccSBjorn Andersson				opp-214000000 {
133850aa72ccSBjorn Andersson					opp-hz = /bits/ 64 <214000000>;
133921dd43fdSKonrad Dybcio					opp-supported-hw = <0xff>;
134050aa72ccSBjorn Andersson				};
134150aa72ccSBjorn Andersson				opp-133000000 {
134250aa72ccSBjorn Andersson					opp-hz = /bits/ 64 <133000000>;
134321dd43fdSKonrad Dybcio					opp-supported-hw = <0xff>;
134450aa72ccSBjorn Andersson				};
134550aa72ccSBjorn Andersson			};
134650aa72ccSBjorn Andersson
134750aa72ccSBjorn Andersson			zap-shader {
1348902d97a4SYassine Oudjana				memory-region = <&gpu_mem>;
134950aa72ccSBjorn Andersson			};
135050aa72ccSBjorn Andersson		};
135150aa72ccSBjorn Andersson
135235a4a8b6SKonrad Dybcio		tlmm: pinctrl@1010000 {
135350aa72ccSBjorn Andersson			compatible = "qcom,msm8996-pinctrl";
135450aa72ccSBjorn Andersson			reg = <0x01010000 0x300000>;
135550aa72ccSBjorn Andersson			interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
135650aa72ccSBjorn Andersson			gpio-controller;
135735a4a8b6SKonrad Dybcio			gpio-ranges = <&tlmm 0 0 150>;
135850aa72ccSBjorn Andersson			#gpio-cells = <2>;
135950aa72ccSBjorn Andersson			interrupt-controller;
136050aa72ccSBjorn Andersson			#interrupt-cells = <2>;
136135a4a8b6SKonrad Dybcio
1362169e1553SKrzysztof Kozlowski			blsp1_spi1_default: blsp1-spi1-default-state {
1363169e1553SKrzysztof Kozlowski				spi-pins {
136435a4a8b6SKonrad Dybcio					pins = "gpio0", "gpio1", "gpio3";
136535a4a8b6SKonrad Dybcio					function = "blsp_spi1";
136635a4a8b6SKonrad Dybcio					drive-strength = <12>;
136735a4a8b6SKonrad Dybcio					bias-disable;
136835a4a8b6SKonrad Dybcio				};
136935a4a8b6SKonrad Dybcio
1370169e1553SKrzysztof Kozlowski				cs-pins {
137135a4a8b6SKonrad Dybcio					pins = "gpio2";
137235a4a8b6SKonrad Dybcio					function = "gpio";
137335a4a8b6SKonrad Dybcio					drive-strength = <16>;
137435a4a8b6SKonrad Dybcio					bias-disable;
137535a4a8b6SKonrad Dybcio					output-high;
137635a4a8b6SKonrad Dybcio				};
137735a4a8b6SKonrad Dybcio			};
137835a4a8b6SKonrad Dybcio
1379169e1553SKrzysztof Kozlowski			blsp1_spi1_sleep: blsp1-spi1-sleep-state {
138035a4a8b6SKonrad Dybcio				pins = "gpio0", "gpio1", "gpio2", "gpio3";
138135a4a8b6SKonrad Dybcio				function = "gpio";
138235a4a8b6SKonrad Dybcio				drive-strength = <2>;
138335a4a8b6SKonrad Dybcio				bias-pull-down;
138435a4a8b6SKonrad Dybcio			};
138535a4a8b6SKonrad Dybcio
13861a94ba5bSHarry Austen			blsp2_uart2_2pins_default: blsp2-uart2-2pins-state {
138735a4a8b6SKonrad Dybcio				pins = "gpio4", "gpio5";
138835a4a8b6SKonrad Dybcio				function = "blsp_uart8";
138935a4a8b6SKonrad Dybcio				drive-strength = <16>;
139035a4a8b6SKonrad Dybcio				bias-disable;
139135a4a8b6SKonrad Dybcio			};
139235a4a8b6SKonrad Dybcio
13931a94ba5bSHarry Austen			blsp2_uart2_2pins_sleep: blsp2-uart2-2pins-sleep-state {
139435a4a8b6SKonrad Dybcio				pins = "gpio4", "gpio5";
139535a4a8b6SKonrad Dybcio				function = "gpio";
139635a4a8b6SKonrad Dybcio				drive-strength = <2>;
139735a4a8b6SKonrad Dybcio				bias-disable;
139835a4a8b6SKonrad Dybcio			};
139935a4a8b6SKonrad Dybcio
1400169e1553SKrzysztof Kozlowski			blsp2_i2c2_default: blsp2-i2c2-state {
140135a4a8b6SKonrad Dybcio				pins = "gpio6", "gpio7";
140235a4a8b6SKonrad Dybcio				function = "blsp_i2c8";
140335a4a8b6SKonrad Dybcio				drive-strength = <16>;
140435a4a8b6SKonrad Dybcio				bias-disable;
140535a4a8b6SKonrad Dybcio			};
140635a4a8b6SKonrad Dybcio
1407169e1553SKrzysztof Kozlowski			blsp2_i2c2_sleep: blsp2-i2c2-sleep-state {
140835a4a8b6SKonrad Dybcio				pins = "gpio6", "gpio7";
140935a4a8b6SKonrad Dybcio				function = "gpio";
141035a4a8b6SKonrad Dybcio				drive-strength = <2>;
141135a4a8b6SKonrad Dybcio				bias-disable;
141235a4a8b6SKonrad Dybcio			};
141335a4a8b6SKonrad Dybcio
141418c32de6SHarry Austen			blsp1_i2c6_default: blsp1-i2c6-state {
141518c32de6SHarry Austen				pins = "gpio27", "gpio28";
141618c32de6SHarry Austen				function = "blsp_i2c6";
141718c32de6SHarry Austen				drive-strength = <16>;
141818c32de6SHarry Austen				bias-disable;
141918c32de6SHarry Austen			};
142018c32de6SHarry Austen
142118c32de6SHarry Austen			blsp1_i2c6_sleep: blsp1-i2c6-sleep-state {
142218c32de6SHarry Austen				pins = "gpio27", "gpio28";
142318c32de6SHarry Austen				function = "gpio";
142418c32de6SHarry Austen				drive-strength = <2>;
142518c32de6SHarry Austen				bias-pull-up;
142618c32de6SHarry Austen			};
142718c32de6SHarry Austen
1428169e1553SKrzysztof Kozlowski			cci0_default: cci0-default-state {
142935a4a8b6SKonrad Dybcio				pins = "gpio17", "gpio18";
143035a4a8b6SKonrad Dybcio				function = "cci_i2c";
143135a4a8b6SKonrad Dybcio				drive-strength = <16>;
143235a4a8b6SKonrad Dybcio				bias-disable;
143335a4a8b6SKonrad Dybcio			};
143435a4a8b6SKonrad Dybcio
143535a4a8b6SKonrad Dybcio			camera0_state_on:
1436169e1553SKrzysztof Kozlowski			camera_rear_default: camera-rear-default-state {
1437169e1553SKrzysztof Kozlowski				camera0_mclk: mclk0-pins {
143835a4a8b6SKonrad Dybcio					pins = "gpio13";
143935a4a8b6SKonrad Dybcio					function = "cam_mclk";
144035a4a8b6SKonrad Dybcio					drive-strength = <16>;
144135a4a8b6SKonrad Dybcio					bias-disable;
144235a4a8b6SKonrad Dybcio				};
144335a4a8b6SKonrad Dybcio
1444169e1553SKrzysztof Kozlowski				camera0_rst: rst-pins {
144535a4a8b6SKonrad Dybcio					pins = "gpio25";
144635a4a8b6SKonrad Dybcio					function = "gpio";
144735a4a8b6SKonrad Dybcio					drive-strength = <16>;
144835a4a8b6SKonrad Dybcio					bias-disable;
144935a4a8b6SKonrad Dybcio				};
145035a4a8b6SKonrad Dybcio
1451169e1553SKrzysztof Kozlowski				camera0_pwdn: pwdn-pins {
145235a4a8b6SKonrad Dybcio					pins = "gpio26";
145335a4a8b6SKonrad Dybcio					function = "gpio";
145435a4a8b6SKonrad Dybcio					drive-strength = <16>;
145535a4a8b6SKonrad Dybcio					bias-disable;
145635a4a8b6SKonrad Dybcio				};
145735a4a8b6SKonrad Dybcio			};
145835a4a8b6SKonrad Dybcio
1459169e1553SKrzysztof Kozlowski			cci1_default: cci1-default-state {
146035a4a8b6SKonrad Dybcio				pins = "gpio19", "gpio20";
146135a4a8b6SKonrad Dybcio				function = "cci_i2c";
146235a4a8b6SKonrad Dybcio				drive-strength = <16>;
146335a4a8b6SKonrad Dybcio				bias-disable;
146435a4a8b6SKonrad Dybcio			};
146535a4a8b6SKonrad Dybcio
146635a4a8b6SKonrad Dybcio			camera1_state_on:
1467169e1553SKrzysztof Kozlowski			camera_board_default: camera-board-default-state {
1468169e1553SKrzysztof Kozlowski				mclk1-pins {
146935a4a8b6SKonrad Dybcio					pins = "gpio14";
147035a4a8b6SKonrad Dybcio					function = "cam_mclk";
147135a4a8b6SKonrad Dybcio					drive-strength = <16>;
147235a4a8b6SKonrad Dybcio					bias-disable;
147335a4a8b6SKonrad Dybcio				};
147435a4a8b6SKonrad Dybcio
1475169e1553SKrzysztof Kozlowski				pwdn-pins {
147635a4a8b6SKonrad Dybcio					pins = "gpio98";
147735a4a8b6SKonrad Dybcio					function = "gpio";
147835a4a8b6SKonrad Dybcio					drive-strength = <16>;
147935a4a8b6SKonrad Dybcio					bias-disable;
148035a4a8b6SKonrad Dybcio				};
148135a4a8b6SKonrad Dybcio
1482169e1553SKrzysztof Kozlowski				rst-pins {
148335a4a8b6SKonrad Dybcio					pins = "gpio104";
148435a4a8b6SKonrad Dybcio					function = "gpio";
148535a4a8b6SKonrad Dybcio					drive-strength = <16>;
148635a4a8b6SKonrad Dybcio					bias-disable;
148735a4a8b6SKonrad Dybcio				};
148835a4a8b6SKonrad Dybcio			};
148935a4a8b6SKonrad Dybcio
149035a4a8b6SKonrad Dybcio			camera2_state_on:
1491169e1553SKrzysztof Kozlowski			camera_front_default: camera-front-default-state {
1492169e1553SKrzysztof Kozlowski				camera2_mclk: mclk2-pins {
149335a4a8b6SKonrad Dybcio					pins = "gpio15";
149435a4a8b6SKonrad Dybcio					function = "cam_mclk";
149535a4a8b6SKonrad Dybcio					drive-strength = <16>;
149635a4a8b6SKonrad Dybcio					bias-disable;
149735a4a8b6SKonrad Dybcio				};
149835a4a8b6SKonrad Dybcio
1499169e1553SKrzysztof Kozlowski				camera2_rst: rst-pins {
150035a4a8b6SKonrad Dybcio					pins = "gpio23";
150135a4a8b6SKonrad Dybcio					function = "gpio";
150235a4a8b6SKonrad Dybcio					drive-strength = <16>;
150335a4a8b6SKonrad Dybcio					bias-disable;
150435a4a8b6SKonrad Dybcio				};
150535a4a8b6SKonrad Dybcio
1506169e1553SKrzysztof Kozlowski				pwdn-pins {
150735a4a8b6SKonrad Dybcio					pins = "gpio133";
150835a4a8b6SKonrad Dybcio					function = "gpio";
150935a4a8b6SKonrad Dybcio					drive-strength = <16>;
151035a4a8b6SKonrad Dybcio					bias-disable;
151135a4a8b6SKonrad Dybcio				};
151235a4a8b6SKonrad Dybcio			};
151335a4a8b6SKonrad Dybcio
1514169e1553SKrzysztof Kozlowski			pcie0_state_on: pcie0-state-on-state {
1515169e1553SKrzysztof Kozlowski				perst-pins {
151635a4a8b6SKonrad Dybcio					pins = "gpio35";
151735a4a8b6SKonrad Dybcio					function = "gpio";
151835a4a8b6SKonrad Dybcio					drive-strength = <2>;
151935a4a8b6SKonrad Dybcio					bias-pull-down;
152035a4a8b6SKonrad Dybcio				};
152135a4a8b6SKonrad Dybcio
1522169e1553SKrzysztof Kozlowski				clkreq-pins {
152335a4a8b6SKonrad Dybcio					pins = "gpio36";
152435a4a8b6SKonrad Dybcio					function = "pci_e0";
152535a4a8b6SKonrad Dybcio					drive-strength = <2>;
152635a4a8b6SKonrad Dybcio					bias-pull-up;
152735a4a8b6SKonrad Dybcio				};
152835a4a8b6SKonrad Dybcio
1529169e1553SKrzysztof Kozlowski				wake-pins {
153035a4a8b6SKonrad Dybcio					pins = "gpio37";
153135a4a8b6SKonrad Dybcio					function = "gpio";
153235a4a8b6SKonrad Dybcio					drive-strength = <2>;
153335a4a8b6SKonrad Dybcio					bias-pull-up;
153435a4a8b6SKonrad Dybcio				};
153535a4a8b6SKonrad Dybcio			};
153635a4a8b6SKonrad Dybcio
1537169e1553SKrzysztof Kozlowski			pcie0_state_off: pcie0-state-off-state {
1538169e1553SKrzysztof Kozlowski				perst-pins {
153935a4a8b6SKonrad Dybcio					pins = "gpio35";
154035a4a8b6SKonrad Dybcio					function = "gpio";
154135a4a8b6SKonrad Dybcio					drive-strength = <2>;
154235a4a8b6SKonrad Dybcio					bias-pull-down;
154335a4a8b6SKonrad Dybcio				};
154435a4a8b6SKonrad Dybcio
1545169e1553SKrzysztof Kozlowski				clkreq-pins {
154635a4a8b6SKonrad Dybcio					pins = "gpio36";
154735a4a8b6SKonrad Dybcio					function = "gpio";
154835a4a8b6SKonrad Dybcio					drive-strength = <2>;
154935a4a8b6SKonrad Dybcio					bias-disable;
155035a4a8b6SKonrad Dybcio				};
155135a4a8b6SKonrad Dybcio
1552169e1553SKrzysztof Kozlowski				wake-pins {
155335a4a8b6SKonrad Dybcio					pins = "gpio37";
155435a4a8b6SKonrad Dybcio					function = "gpio";
155535a4a8b6SKonrad Dybcio					drive-strength = <2>;
155635a4a8b6SKonrad Dybcio					bias-disable;
155735a4a8b6SKonrad Dybcio				};
155835a4a8b6SKonrad Dybcio			};
155935a4a8b6SKonrad Dybcio
1560169e1553SKrzysztof Kozlowski			blsp1_uart2_default: blsp1-uart2-default-state {
1561c57b4247SYassine Oudjana				pins = "gpio41", "gpio42", "gpio43", "gpio44";
1562c57b4247SYassine Oudjana				function = "blsp_uart2";
1563c57b4247SYassine Oudjana				drive-strength = <16>;
1564c57b4247SYassine Oudjana				bias-disable;
1565c57b4247SYassine Oudjana			};
1566c57b4247SYassine Oudjana
1567169e1553SKrzysztof Kozlowski			blsp1_uart2_sleep: blsp1-uart2-sleep-state {
1568c57b4247SYassine Oudjana				pins = "gpio41", "gpio42", "gpio43", "gpio44";
1569c57b4247SYassine Oudjana				function = "gpio";
1570c57b4247SYassine Oudjana				drive-strength = <2>;
1571c57b4247SYassine Oudjana				bias-disable;
1572c57b4247SYassine Oudjana			};
1573c57b4247SYassine Oudjana
15741a94ba5bSHarry Austen			blsp1_i2c3_default: blsp1-i2c3-default-state {
157535a4a8b6SKonrad Dybcio				pins = "gpio47", "gpio48";
157635a4a8b6SKonrad Dybcio				function = "blsp_i2c3";
157735a4a8b6SKonrad Dybcio				drive-strength = <16>;
1578bc2fb47dSRob Herring				bias-disable;
157935a4a8b6SKonrad Dybcio			};
158035a4a8b6SKonrad Dybcio
15811a94ba5bSHarry Austen			blsp1_i2c3_sleep: blsp1-i2c3-sleep-state {
158235a4a8b6SKonrad Dybcio				pins = "gpio47", "gpio48";
158335a4a8b6SKonrad Dybcio				function = "gpio";
158435a4a8b6SKonrad Dybcio				drive-strength = <2>;
1585bc2fb47dSRob Herring				bias-disable;
158635a4a8b6SKonrad Dybcio			};
158735a4a8b6SKonrad Dybcio
15881a94ba5bSHarry Austen			blsp2_uart3_4pins_default: blsp2-uart3-4pins-state {
158935a4a8b6SKonrad Dybcio				pins = "gpio49", "gpio50", "gpio51", "gpio52";
159035a4a8b6SKonrad Dybcio				function = "blsp_uart9";
159135a4a8b6SKonrad Dybcio				drive-strength = <16>;
159235a4a8b6SKonrad Dybcio				bias-disable;
159335a4a8b6SKonrad Dybcio			};
159435a4a8b6SKonrad Dybcio
15951a94ba5bSHarry Austen			blsp2_uart3_4pins_sleep: blsp2-uart3-4pins-sleep-state {
159635a4a8b6SKonrad Dybcio				pins = "gpio49", "gpio50", "gpio51", "gpio52";
159735a4a8b6SKonrad Dybcio				function = "blsp_uart9";
159835a4a8b6SKonrad Dybcio				drive-strength = <2>;
159935a4a8b6SKonrad Dybcio				bias-disable;
160035a4a8b6SKonrad Dybcio			};
160135a4a8b6SKonrad Dybcio
1602169e1553SKrzysztof Kozlowski			blsp2_i2c3_default: blsp2-i2c3-state-state {
1603214faf07SYassine Oudjana				pins = "gpio51", "gpio52";
1604214faf07SYassine Oudjana				function = "blsp_i2c9";
1605214faf07SYassine Oudjana				drive-strength = <16>;
1606214faf07SYassine Oudjana				bias-disable;
1607214faf07SYassine Oudjana			};
1608214faf07SYassine Oudjana
1609169e1553SKrzysztof Kozlowski			blsp2_i2c3_sleep: blsp2-i2c3-sleep-state {
1610214faf07SYassine Oudjana				pins = "gpio51", "gpio52";
1611214faf07SYassine Oudjana				function = "gpio";
1612214faf07SYassine Oudjana				drive-strength = <2>;
1613214faf07SYassine Oudjana				bias-disable;
1614214faf07SYassine Oudjana			};
1615214faf07SYassine Oudjana
1616169e1553SKrzysztof Kozlowski			wcd_intr_default: wcd-intr-default-state {
161735a4a8b6SKonrad Dybcio				pins = "gpio54";
161835a4a8b6SKonrad Dybcio				function = "gpio";
161935a4a8b6SKonrad Dybcio				drive-strength = <2>;
162035a4a8b6SKonrad Dybcio				bias-pull-down;
162135a4a8b6SKonrad Dybcio			};
162235a4a8b6SKonrad Dybcio
1623169e1553SKrzysztof Kozlowski			blsp2_i2c1_default: blsp2-i2c1-state {
162435a4a8b6SKonrad Dybcio				pins = "gpio55", "gpio56";
162535a4a8b6SKonrad Dybcio				function = "blsp_i2c7";
162635a4a8b6SKonrad Dybcio				drive-strength = <16>;
162735a4a8b6SKonrad Dybcio				bias-disable;
162835a4a8b6SKonrad Dybcio			};
162935a4a8b6SKonrad Dybcio
16301a94ba5bSHarry Austen			blsp2_i2c1_sleep: blsp2-i2c1-sleep-state {
163135a4a8b6SKonrad Dybcio				pins = "gpio55", "gpio56";
163235a4a8b6SKonrad Dybcio				function = "gpio";
163335a4a8b6SKonrad Dybcio				drive-strength = <2>;
163435a4a8b6SKonrad Dybcio				bias-disable;
163535a4a8b6SKonrad Dybcio			};
163635a4a8b6SKonrad Dybcio
1637169e1553SKrzysztof Kozlowski			blsp2_i2c5_default: blsp2-i2c5-state {
163835a4a8b6SKonrad Dybcio				pins = "gpio60", "gpio61";
163935a4a8b6SKonrad Dybcio				function = "blsp_i2c11";
164035a4a8b6SKonrad Dybcio				drive-strength = <2>;
164135a4a8b6SKonrad Dybcio				bias-disable;
164235a4a8b6SKonrad Dybcio			};
164335a4a8b6SKonrad Dybcio
164435a4a8b6SKonrad Dybcio			/* Sleep state for BLSP2_I2C5 is missing.. */
164535a4a8b6SKonrad Dybcio
1646169e1553SKrzysztof Kozlowski			cdc_reset_active: cdc-reset-active-state {
164735a4a8b6SKonrad Dybcio				pins = "gpio64";
164835a4a8b6SKonrad Dybcio				function = "gpio";
164935a4a8b6SKonrad Dybcio				drive-strength = <16>;
165035a4a8b6SKonrad Dybcio				bias-pull-down;
165135a4a8b6SKonrad Dybcio				output-high;
165235a4a8b6SKonrad Dybcio			};
165335a4a8b6SKonrad Dybcio
1654169e1553SKrzysztof Kozlowski			cdc_reset_sleep: cdc-reset-sleep-state {
165535a4a8b6SKonrad Dybcio				pins = "gpio64";
165635a4a8b6SKonrad Dybcio				function = "gpio";
165735a4a8b6SKonrad Dybcio				drive-strength = <16>;
165835a4a8b6SKonrad Dybcio				bias-disable;
165935a4a8b6SKonrad Dybcio				output-low;
166035a4a8b6SKonrad Dybcio			};
166135a4a8b6SKonrad Dybcio
16621a94ba5bSHarry Austen			blsp2_spi6_default: blsp2-spi6-default-state {
1663169e1553SKrzysztof Kozlowski				spi-pins {
166435a4a8b6SKonrad Dybcio					pins = "gpio85", "gpio86", "gpio88";
166535a4a8b6SKonrad Dybcio					function = "blsp_spi12";
166635a4a8b6SKonrad Dybcio					drive-strength = <12>;
166735a4a8b6SKonrad Dybcio					bias-disable;
166835a4a8b6SKonrad Dybcio				};
166935a4a8b6SKonrad Dybcio
1670169e1553SKrzysztof Kozlowski				cs-pins {
167135a4a8b6SKonrad Dybcio					pins = "gpio87";
167235a4a8b6SKonrad Dybcio					function = "gpio";
167335a4a8b6SKonrad Dybcio					drive-strength = <16>;
167435a4a8b6SKonrad Dybcio					bias-disable;
167535a4a8b6SKonrad Dybcio					output-high;
167635a4a8b6SKonrad Dybcio				};
167735a4a8b6SKonrad Dybcio			};
167835a4a8b6SKonrad Dybcio
16791a94ba5bSHarry Austen			blsp2_spi6_sleep: blsp2-spi6-sleep-state {
168035a4a8b6SKonrad Dybcio				pins = "gpio85", "gpio86", "gpio87", "gpio88";
168135a4a8b6SKonrad Dybcio				function = "gpio";
168235a4a8b6SKonrad Dybcio				drive-strength = <2>;
168335a4a8b6SKonrad Dybcio				bias-pull-down;
168435a4a8b6SKonrad Dybcio			};
168535a4a8b6SKonrad Dybcio
1686169e1553SKrzysztof Kozlowski			blsp2_i2c6_default: blsp2-i2c6-state {
168735a4a8b6SKonrad Dybcio				pins = "gpio87", "gpio88";
168835a4a8b6SKonrad Dybcio				function = "blsp_i2c12";
168935a4a8b6SKonrad Dybcio				drive-strength = <16>;
169035a4a8b6SKonrad Dybcio				bias-disable;
169135a4a8b6SKonrad Dybcio			};
169235a4a8b6SKonrad Dybcio
1693169e1553SKrzysztof Kozlowski			blsp2_i2c6_sleep: blsp2-i2c6-sleep-state {
169435a4a8b6SKonrad Dybcio				pins = "gpio87", "gpio88";
169535a4a8b6SKonrad Dybcio				function = "gpio";
169635a4a8b6SKonrad Dybcio				drive-strength = <2>;
169735a4a8b6SKonrad Dybcio				bias-disable;
169835a4a8b6SKonrad Dybcio			};
169935a4a8b6SKonrad Dybcio
1700169e1553SKrzysztof Kozlowski			pcie1_state_on: pcie1-on-state {
1701169e1553SKrzysztof Kozlowski				perst-pins {
170235a4a8b6SKonrad Dybcio					pins = "gpio130";
170335a4a8b6SKonrad Dybcio					function = "gpio";
170435a4a8b6SKonrad Dybcio					drive-strength = <2>;
170535a4a8b6SKonrad Dybcio					bias-pull-down;
170635a4a8b6SKonrad Dybcio				};
170735a4a8b6SKonrad Dybcio
1708169e1553SKrzysztof Kozlowski				clkreq-pins {
170935a4a8b6SKonrad Dybcio					pins = "gpio131";
171035a4a8b6SKonrad Dybcio					function = "pci_e1";
171135a4a8b6SKonrad Dybcio					drive-strength = <2>;
171235a4a8b6SKonrad Dybcio					bias-pull-up;
171335a4a8b6SKonrad Dybcio				};
171435a4a8b6SKonrad Dybcio
1715169e1553SKrzysztof Kozlowski				wake-pins {
171635a4a8b6SKonrad Dybcio					pins = "gpio132";
171735a4a8b6SKonrad Dybcio					function = "gpio";
171835a4a8b6SKonrad Dybcio					drive-strength = <2>;
171935a4a8b6SKonrad Dybcio					bias-pull-down;
172035a4a8b6SKonrad Dybcio				};
172135a4a8b6SKonrad Dybcio			};
172235a4a8b6SKonrad Dybcio
1723169e1553SKrzysztof Kozlowski			pcie1_state_off: pcie1-off-state {
172435a4a8b6SKonrad Dybcio				/* Perst is missing? */
1725169e1553SKrzysztof Kozlowski				clkreq-pins {
172635a4a8b6SKonrad Dybcio					pins = "gpio131";
172735a4a8b6SKonrad Dybcio					function = "gpio";
172835a4a8b6SKonrad Dybcio					drive-strength = <2>;
172935a4a8b6SKonrad Dybcio					bias-disable;
173035a4a8b6SKonrad Dybcio				};
173135a4a8b6SKonrad Dybcio
1732169e1553SKrzysztof Kozlowski				wake-pins {
173335a4a8b6SKonrad Dybcio					pins = "gpio132";
173435a4a8b6SKonrad Dybcio					function = "gpio";
173535a4a8b6SKonrad Dybcio					drive-strength = <2>;
173635a4a8b6SKonrad Dybcio					bias-disable;
173735a4a8b6SKonrad Dybcio				};
173835a4a8b6SKonrad Dybcio			};
173935a4a8b6SKonrad Dybcio
1740169e1553SKrzysztof Kozlowski			pcie2_state_on: pcie2-on-state {
1741169e1553SKrzysztof Kozlowski				perst-pins {
174235a4a8b6SKonrad Dybcio					pins = "gpio114";
174335a4a8b6SKonrad Dybcio					function = "gpio";
174435a4a8b6SKonrad Dybcio					drive-strength = <2>;
174535a4a8b6SKonrad Dybcio					bias-pull-down;
174635a4a8b6SKonrad Dybcio				};
174735a4a8b6SKonrad Dybcio
1748169e1553SKrzysztof Kozlowski				clkreq-pins {
174935a4a8b6SKonrad Dybcio					pins = "gpio115";
175035a4a8b6SKonrad Dybcio					function = "pci_e2";
175135a4a8b6SKonrad Dybcio					drive-strength = <2>;
175235a4a8b6SKonrad Dybcio					bias-pull-up;
175335a4a8b6SKonrad Dybcio				};
175435a4a8b6SKonrad Dybcio
1755169e1553SKrzysztof Kozlowski				wake-pins {
175635a4a8b6SKonrad Dybcio					pins = "gpio116";
175735a4a8b6SKonrad Dybcio					function = "gpio";
175835a4a8b6SKonrad Dybcio					drive-strength = <2>;
175935a4a8b6SKonrad Dybcio					bias-pull-down;
176035a4a8b6SKonrad Dybcio				};
176135a4a8b6SKonrad Dybcio			};
176235a4a8b6SKonrad Dybcio
1763169e1553SKrzysztof Kozlowski			pcie2_state_off: pcie2-off-state {
176435a4a8b6SKonrad Dybcio				/* Perst is missing? */
1765169e1553SKrzysztof Kozlowski				clkreq-pins {
176635a4a8b6SKonrad Dybcio					pins = "gpio115";
176735a4a8b6SKonrad Dybcio					function = "gpio";
176835a4a8b6SKonrad Dybcio					drive-strength = <2>;
176935a4a8b6SKonrad Dybcio					bias-disable;
177035a4a8b6SKonrad Dybcio				};
177135a4a8b6SKonrad Dybcio
1772169e1553SKrzysztof Kozlowski				wake-pins {
177335a4a8b6SKonrad Dybcio					pins = "gpio116";
177435a4a8b6SKonrad Dybcio					function = "gpio";
177535a4a8b6SKonrad Dybcio					drive-strength = <2>;
177635a4a8b6SKonrad Dybcio					bias-disable;
177735a4a8b6SKonrad Dybcio				};
177835a4a8b6SKonrad Dybcio			};
177935a4a8b6SKonrad Dybcio
1780169e1553SKrzysztof Kozlowski			sdc1_state_on: sdc1-on-state {
1781169e1553SKrzysztof Kozlowski				clk-pins {
178235a4a8b6SKonrad Dybcio					pins = "sdc1_clk";
178335a4a8b6SKonrad Dybcio					bias-disable;
178435a4a8b6SKonrad Dybcio					drive-strength = <16>;
178535a4a8b6SKonrad Dybcio				};
178635a4a8b6SKonrad Dybcio
1787169e1553SKrzysztof Kozlowski				cmd-pins {
178835a4a8b6SKonrad Dybcio					pins = "sdc1_cmd";
178935a4a8b6SKonrad Dybcio					bias-pull-up;
179035a4a8b6SKonrad Dybcio					drive-strength = <10>;
179135a4a8b6SKonrad Dybcio				};
179235a4a8b6SKonrad Dybcio
1793169e1553SKrzysztof Kozlowski				data-pins {
179435a4a8b6SKonrad Dybcio					pins = "sdc1_data";
179535a4a8b6SKonrad Dybcio					bias-pull-up;
179635a4a8b6SKonrad Dybcio					drive-strength = <10>;
179735a4a8b6SKonrad Dybcio				};
179835a4a8b6SKonrad Dybcio
1799169e1553SKrzysztof Kozlowski				rclk-pins {
180035a4a8b6SKonrad Dybcio					pins = "sdc1_rclk";
180135a4a8b6SKonrad Dybcio					bias-pull-down;
180235a4a8b6SKonrad Dybcio				};
180335a4a8b6SKonrad Dybcio			};
180435a4a8b6SKonrad Dybcio
1805169e1553SKrzysztof Kozlowski			sdc1_state_off: sdc1-off-state {
1806169e1553SKrzysztof Kozlowski				clk-pins {
180735a4a8b6SKonrad Dybcio					pins = "sdc1_clk";
180835a4a8b6SKonrad Dybcio					bias-disable;
180935a4a8b6SKonrad Dybcio					drive-strength = <2>;
181035a4a8b6SKonrad Dybcio				};
181135a4a8b6SKonrad Dybcio
1812169e1553SKrzysztof Kozlowski				cmd-pins {
181335a4a8b6SKonrad Dybcio					pins = "sdc1_cmd";
181435a4a8b6SKonrad Dybcio					bias-pull-up;
181535a4a8b6SKonrad Dybcio					drive-strength = <2>;
181635a4a8b6SKonrad Dybcio				};
181735a4a8b6SKonrad Dybcio
1818169e1553SKrzysztof Kozlowski				data-pins {
181935a4a8b6SKonrad Dybcio					pins = "sdc1_data";
182035a4a8b6SKonrad Dybcio					bias-pull-up;
182135a4a8b6SKonrad Dybcio					drive-strength = <2>;
182235a4a8b6SKonrad Dybcio				};
182335a4a8b6SKonrad Dybcio
1824169e1553SKrzysztof Kozlowski				rclk-pins {
182535a4a8b6SKonrad Dybcio					pins = "sdc1_rclk";
182635a4a8b6SKonrad Dybcio					bias-pull-down;
182735a4a8b6SKonrad Dybcio				};
182835a4a8b6SKonrad Dybcio			};
182935a4a8b6SKonrad Dybcio
1830169e1553SKrzysztof Kozlowski			sdc2_state_on: sdc2-on-state {
1831169e1553SKrzysztof Kozlowski				clk-pins {
183235a4a8b6SKonrad Dybcio					pins = "sdc2_clk";
183335a4a8b6SKonrad Dybcio					bias-disable;
183435a4a8b6SKonrad Dybcio					drive-strength = <16>;
183535a4a8b6SKonrad Dybcio				};
183635a4a8b6SKonrad Dybcio
1837169e1553SKrzysztof Kozlowski				cmd-pins {
183835a4a8b6SKonrad Dybcio					pins = "sdc2_cmd";
183935a4a8b6SKonrad Dybcio					bias-pull-up;
184035a4a8b6SKonrad Dybcio					drive-strength = <10>;
184135a4a8b6SKonrad Dybcio				};
184235a4a8b6SKonrad Dybcio
1843169e1553SKrzysztof Kozlowski				data-pins {
184435a4a8b6SKonrad Dybcio					pins = "sdc2_data";
184535a4a8b6SKonrad Dybcio					bias-pull-up;
184635a4a8b6SKonrad Dybcio					drive-strength = <10>;
184735a4a8b6SKonrad Dybcio				};
184835a4a8b6SKonrad Dybcio			};
184935a4a8b6SKonrad Dybcio
1850169e1553SKrzysztof Kozlowski			sdc2_state_off: sdc2-off-state {
1851169e1553SKrzysztof Kozlowski				clk-pins {
185235a4a8b6SKonrad Dybcio					pins = "sdc2_clk";
185335a4a8b6SKonrad Dybcio					bias-disable;
185435a4a8b6SKonrad Dybcio					drive-strength = <2>;
185535a4a8b6SKonrad Dybcio				};
185635a4a8b6SKonrad Dybcio
1857169e1553SKrzysztof Kozlowski				cmd-pins {
185835a4a8b6SKonrad Dybcio					pins = "sdc2_cmd";
185935a4a8b6SKonrad Dybcio					bias-pull-up;
186035a4a8b6SKonrad Dybcio					drive-strength = <2>;
186135a4a8b6SKonrad Dybcio				};
186235a4a8b6SKonrad Dybcio
1863169e1553SKrzysztof Kozlowski				data-pins {
186435a4a8b6SKonrad Dybcio					pins = "sdc2_data";
186535a4a8b6SKonrad Dybcio					bias-pull-up;
186635a4a8b6SKonrad Dybcio					drive-strength = <2>;
186735a4a8b6SKonrad Dybcio				};
186835a4a8b6SKonrad Dybcio			};
186950aa72ccSBjorn Andersson		};
187050aa72ccSBjorn Andersson
1871290bc684SMaulik Shah		sram@290000 {
1872290bc684SMaulik Shah			compatible = "qcom,rpm-stats";
1873290bc684SMaulik Shah			reg = <0x00290000 0x10000>;
1874290bc684SMaulik Shah		};
1875290bc684SMaulik Shah
187687f7409dSDavid Heidelberg		spmi_bus: spmi@400f000 {
187750aa72ccSBjorn Andersson			compatible = "qcom,spmi-pmic-arb";
187850aa72ccSBjorn Andersson			reg = <0x0400f000 0x1000>,
187950aa72ccSBjorn Andersson			      <0x04400000 0x800000>,
188050aa72ccSBjorn Andersson			      <0x04c00000 0x800000>,
188150aa72ccSBjorn Andersson			      <0x05800000 0x200000>,
188250aa72ccSBjorn Andersson			      <0x0400a000 0x002100>;
188350aa72ccSBjorn Andersson			reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
188450aa72ccSBjorn Andersson			interrupt-names = "periph_irq";
188550aa72ccSBjorn Andersson			interrupts = <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>;
188650aa72ccSBjorn Andersson			qcom,ee = <0>;
188750aa72ccSBjorn Andersson			qcom,channel = <0>;
188850aa72ccSBjorn Andersson			#address-cells = <2>;
188950aa72ccSBjorn Andersson			#size-cells = <0>;
189050aa72ccSBjorn Andersson			interrupt-controller;
189150aa72ccSBjorn Andersson			#interrupt-cells = <4>;
189250aa72ccSBjorn Andersson		};
189350aa72ccSBjorn Andersson
1894496b308fSKrzysztof Kozlowski		bus@0 {
189550aa72ccSBjorn Andersson			power-domains = <&gcc AGGRE0_NOC_GDSC>;
189650aa72ccSBjorn Andersson			compatible = "simple-pm-bus";
189750aa72ccSBjorn Andersson			#address-cells = <1>;
189850aa72ccSBjorn Andersson			#size-cells = <1>;
189924cf51a2SKrzysztof Kozlowski			ranges = <0x0 0x0 0xffffffff>;
190050aa72ccSBjorn Andersson
190150aa72ccSBjorn Andersson			pcie0: pcie@600000 {
190266d7cadbSDmitry Baryshkov				compatible = "qcom,pcie-msm8996";
190350aa72ccSBjorn Andersson				status = "disabled";
190450aa72ccSBjorn Andersson				power-domains = <&gcc PCIE0_GDSC>;
190550aa72ccSBjorn Andersson				bus-range = <0x00 0xff>;
190650aa72ccSBjorn Andersson				num-lanes = <1>;
190750aa72ccSBjorn Andersson
190850aa72ccSBjorn Andersson				reg = <0x00600000 0x2000>,
190950aa72ccSBjorn Andersson				      <0x0c000000 0xf1d>,
191050aa72ccSBjorn Andersson				      <0x0c000f20 0xa8>,
191150aa72ccSBjorn Andersson				      <0x0c100000 0x100000>;
191250aa72ccSBjorn Andersson				reg-names = "parf", "dbi", "elbi","config";
191350aa72ccSBjorn Andersson
191450aa72ccSBjorn Andersson				phys = <&pciephy_0>;
191550aa72ccSBjorn Andersson				phy-names = "pciephy";
191650aa72ccSBjorn Andersson
191750aa72ccSBjorn Andersson				#address-cells = <3>;
191850aa72ccSBjorn Andersson				#size-cells = <2>;
1919cf0ac10fSManivannan Sadhasivam				ranges = <0x01000000 0x0 0x00000000 0x0c200000 0x0 0x100000>,
192050aa72ccSBjorn Andersson					 <0x02000000 0x0 0x0c300000 0x0c300000 0x0 0xd00000>;
192150aa72ccSBjorn Andersson
1922564f18f0SKonrad Dybcio				device_type = "pci";
1923564f18f0SKonrad Dybcio
192450aa72ccSBjorn Andersson				interrupts = <GIC_SPI 405 IRQ_TYPE_LEVEL_HIGH>;
192550aa72ccSBjorn Andersson				interrupt-names = "msi";
192650aa72ccSBjorn Andersson				#interrupt-cells = <1>;
192750aa72ccSBjorn Andersson				interrupt-map-mask = <0 0 0 0x7>;
192850aa72ccSBjorn Andersson				interrupt-map = <0 0 0 1 &intc 0 244 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
192950aa72ccSBjorn Andersson						<0 0 0 2 &intc 0 245 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
193050aa72ccSBjorn Andersson						<0 0 0 3 &intc 0 247 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
193150aa72ccSBjorn Andersson						<0 0 0 4 &intc 0 248 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
193250aa72ccSBjorn Andersson
193350aa72ccSBjorn Andersson				pinctrl-names = "default", "sleep";
193435a4a8b6SKonrad Dybcio				pinctrl-0 = <&pcie0_state_on>;
193535a4a8b6SKonrad Dybcio				pinctrl-1 = <&pcie0_state_off>;
193650aa72ccSBjorn Andersson
193750aa72ccSBjorn Andersson				linux,pci-domain = <0>;
193850aa72ccSBjorn Andersson
193950aa72ccSBjorn Andersson				clocks = <&gcc GCC_PCIE_0_PIPE_CLK>,
194050aa72ccSBjorn Andersson					<&gcc GCC_PCIE_0_AUX_CLK>,
194150aa72ccSBjorn Andersson					<&gcc GCC_PCIE_0_CFG_AHB_CLK>,
194250aa72ccSBjorn Andersson					<&gcc GCC_PCIE_0_MSTR_AXI_CLK>,
194350aa72ccSBjorn Andersson					<&gcc GCC_PCIE_0_SLV_AXI_CLK>;
194450aa72ccSBjorn Andersson
194550aa72ccSBjorn Andersson				clock-names = "pipe",
194650aa72ccSBjorn Andersson						"aux",
194750aa72ccSBjorn Andersson						"cfg",
194850aa72ccSBjorn Andersson						"bus_master",
194950aa72ccSBjorn Andersson						"bus_slave";
195050aa72ccSBjorn Andersson			};
195150aa72ccSBjorn Andersson
195250aa72ccSBjorn Andersson			pcie1: pcie@608000 {
195366d7cadbSDmitry Baryshkov				compatible = "qcom,pcie-msm8996";
195450aa72ccSBjorn Andersson				power-domains = <&gcc PCIE1_GDSC>;
195550aa72ccSBjorn Andersson				bus-range = <0x00 0xff>;
195650aa72ccSBjorn Andersson				num-lanes = <1>;
195750aa72ccSBjorn Andersson
195850aa72ccSBjorn Andersson				status = "disabled";
195950aa72ccSBjorn Andersson
196050aa72ccSBjorn Andersson				reg = <0x00608000 0x2000>,
196150aa72ccSBjorn Andersson				      <0x0d000000 0xf1d>,
196250aa72ccSBjorn Andersson				      <0x0d000f20 0xa8>,
196350aa72ccSBjorn Andersson				      <0x0d100000 0x100000>;
196450aa72ccSBjorn Andersson
196550aa72ccSBjorn Andersson				reg-names = "parf", "dbi", "elbi","config";
196650aa72ccSBjorn Andersson
196750aa72ccSBjorn Andersson				phys = <&pciephy_1>;
196850aa72ccSBjorn Andersson				phy-names = "pciephy";
196950aa72ccSBjorn Andersson
197050aa72ccSBjorn Andersson				#address-cells = <3>;
197150aa72ccSBjorn Andersson				#size-cells = <2>;
1972cf0ac10fSManivannan Sadhasivam				ranges = <0x01000000 0x0 0x00000000 0x0d200000 0x0 0x100000>,
197350aa72ccSBjorn Andersson					 <0x02000000 0x0 0x0d300000 0x0d300000 0x0 0xd00000>;
197450aa72ccSBjorn Andersson
1975564f18f0SKonrad Dybcio				device_type = "pci";
1976564f18f0SKonrad Dybcio
197750aa72ccSBjorn Andersson				interrupts = <GIC_SPI 413 IRQ_TYPE_LEVEL_HIGH>;
197850aa72ccSBjorn Andersson				interrupt-names = "msi";
197950aa72ccSBjorn Andersson				#interrupt-cells = <1>;
198050aa72ccSBjorn Andersson				interrupt-map-mask = <0 0 0 0x7>;
198150aa72ccSBjorn Andersson				interrupt-map = <0 0 0 1 &intc 0 272 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
198250aa72ccSBjorn Andersson						<0 0 0 2 &intc 0 273 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
198350aa72ccSBjorn Andersson						<0 0 0 3 &intc 0 274 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
198450aa72ccSBjorn Andersson						<0 0 0 4 &intc 0 275 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
198550aa72ccSBjorn Andersson
198650aa72ccSBjorn Andersson				pinctrl-names = "default", "sleep";
198735a4a8b6SKonrad Dybcio				pinctrl-0 = <&pcie1_state_on>;
198835a4a8b6SKonrad Dybcio				pinctrl-1 = <&pcie1_state_off>;
198950aa72ccSBjorn Andersson
199050aa72ccSBjorn Andersson				linux,pci-domain = <1>;
199150aa72ccSBjorn Andersson
199250aa72ccSBjorn Andersson				clocks = <&gcc GCC_PCIE_1_PIPE_CLK>,
199350aa72ccSBjorn Andersson					<&gcc GCC_PCIE_1_AUX_CLK>,
199450aa72ccSBjorn Andersson					<&gcc GCC_PCIE_1_CFG_AHB_CLK>,
199550aa72ccSBjorn Andersson					<&gcc GCC_PCIE_1_MSTR_AXI_CLK>,
199650aa72ccSBjorn Andersson					<&gcc GCC_PCIE_1_SLV_AXI_CLK>;
199750aa72ccSBjorn Andersson
199850aa72ccSBjorn Andersson				clock-names = "pipe",
199950aa72ccSBjorn Andersson						"aux",
200050aa72ccSBjorn Andersson						"cfg",
200150aa72ccSBjorn Andersson						"bus_master",
200250aa72ccSBjorn Andersson						"bus_slave";
200350aa72ccSBjorn Andersson			};
200450aa72ccSBjorn Andersson
200550aa72ccSBjorn Andersson			pcie2: pcie@610000 {
200666d7cadbSDmitry Baryshkov				compatible = "qcom,pcie-msm8996";
200750aa72ccSBjorn Andersson				power-domains = <&gcc PCIE2_GDSC>;
200850aa72ccSBjorn Andersson				bus-range = <0x00 0xff>;
200950aa72ccSBjorn Andersson				num-lanes = <1>;
201050aa72ccSBjorn Andersson				status = "disabled";
201150aa72ccSBjorn Andersson				reg = <0x00610000 0x2000>,
201250aa72ccSBjorn Andersson				      <0x0e000000 0xf1d>,
201350aa72ccSBjorn Andersson				      <0x0e000f20 0xa8>,
201450aa72ccSBjorn Andersson				      <0x0e100000 0x100000>;
201550aa72ccSBjorn Andersson
201650aa72ccSBjorn Andersson				reg-names = "parf", "dbi", "elbi","config";
201750aa72ccSBjorn Andersson
201850aa72ccSBjorn Andersson				phys = <&pciephy_2>;
201950aa72ccSBjorn Andersson				phy-names = "pciephy";
202050aa72ccSBjorn Andersson
202150aa72ccSBjorn Andersson				#address-cells = <3>;
202250aa72ccSBjorn Andersson				#size-cells = <2>;
2023cf0ac10fSManivannan Sadhasivam				ranges = <0x01000000 0x0 0x00000000 0x0e200000 0x0 0x100000>,
202450aa72ccSBjorn Andersson					 <0x02000000 0x0 0x0e300000 0x0e300000 0x0 0x1d00000>;
202550aa72ccSBjorn Andersson
202650aa72ccSBjorn Andersson				device_type = "pci";
202750aa72ccSBjorn Andersson
202850aa72ccSBjorn Andersson				interrupts = <GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>;
202950aa72ccSBjorn Andersson				interrupt-names = "msi";
203050aa72ccSBjorn Andersson				#interrupt-cells = <1>;
203150aa72ccSBjorn Andersson				interrupt-map-mask = <0 0 0 0x7>;
203250aa72ccSBjorn Andersson				interrupt-map = <0 0 0 1 &intc 0 142 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
203350aa72ccSBjorn Andersson						<0 0 0 2 &intc 0 143 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
203450aa72ccSBjorn Andersson						<0 0 0 3 &intc 0 144 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
203550aa72ccSBjorn Andersson						<0 0 0 4 &intc 0 145 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
203650aa72ccSBjorn Andersson
203750aa72ccSBjorn Andersson				pinctrl-names = "default", "sleep";
203835a4a8b6SKonrad Dybcio				pinctrl-0 = <&pcie2_state_on>;
203935a4a8b6SKonrad Dybcio				pinctrl-1 = <&pcie2_state_off>;
204050aa72ccSBjorn Andersson
204150aa72ccSBjorn Andersson				linux,pci-domain = <2>;
204250aa72ccSBjorn Andersson				clocks = <&gcc GCC_PCIE_2_PIPE_CLK>,
204350aa72ccSBjorn Andersson					<&gcc GCC_PCIE_2_AUX_CLK>,
204450aa72ccSBjorn Andersson					<&gcc GCC_PCIE_2_CFG_AHB_CLK>,
204550aa72ccSBjorn Andersson					<&gcc GCC_PCIE_2_MSTR_AXI_CLK>,
204650aa72ccSBjorn Andersson					<&gcc GCC_PCIE_2_SLV_AXI_CLK>;
204750aa72ccSBjorn Andersson
204850aa72ccSBjorn Andersson				clock-names = "pipe",
204950aa72ccSBjorn Andersson						"aux",
205050aa72ccSBjorn Andersson						"cfg",
205150aa72ccSBjorn Andersson						"bus_master",
205250aa72ccSBjorn Andersson						"bus_slave";
205350aa72ccSBjorn Andersson			};
205450aa72ccSBjorn Andersson		};
205550aa72ccSBjorn Andersson
205650aa72ccSBjorn Andersson		ufshc: ufshc@624000 {
205764ff6984SKrzysztof Kozlowski			compatible = "qcom,msm8996-ufshc", "qcom,ufshc",
205864ff6984SKrzysztof Kozlowski				     "jedec,ufs-2.0";
205950aa72ccSBjorn Andersson			reg = <0x00624000 0x2500>;
206050aa72ccSBjorn Andersson			interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>;
206150aa72ccSBjorn Andersson
206227520210SBjorn Andersson			phys = <&ufsphy_lane>;
206350aa72ccSBjorn Andersson			phy-names = "ufsphy";
206450aa72ccSBjorn Andersson
206550aa72ccSBjorn Andersson			power-domains = <&gcc UFS_GDSC>;
206650aa72ccSBjorn Andersson
206750aa72ccSBjorn Andersson			clock-names =
206850aa72ccSBjorn Andersson				"core_clk_src",
206950aa72ccSBjorn Andersson				"core_clk",
207050aa72ccSBjorn Andersson				"bus_clk",
207150aa72ccSBjorn Andersson				"bus_aggr_clk",
207250aa72ccSBjorn Andersson				"iface_clk",
207350aa72ccSBjorn Andersson				"core_clk_unipro_src",
207450aa72ccSBjorn Andersson				"core_clk_unipro",
207550aa72ccSBjorn Andersson				"core_clk_ice",
207650aa72ccSBjorn Andersson				"ref_clk",
207750aa72ccSBjorn Andersson				"tx_lane0_sync_clk",
207850aa72ccSBjorn Andersson				"rx_lane0_sync_clk";
207950aa72ccSBjorn Andersson			clocks =
208050aa72ccSBjorn Andersson				<&gcc UFS_AXI_CLK_SRC>,
208150aa72ccSBjorn Andersson				<&gcc GCC_UFS_AXI_CLK>,
208250aa72ccSBjorn Andersson				<&gcc GCC_SYS_NOC_UFS_AXI_CLK>,
208350aa72ccSBjorn Andersson				<&gcc GCC_AGGRE2_UFS_AXI_CLK>,
208450aa72ccSBjorn Andersson				<&gcc GCC_UFS_AHB_CLK>,
208550aa72ccSBjorn Andersson				<&gcc UFS_ICE_CORE_CLK_SRC>,
208650aa72ccSBjorn Andersson				<&gcc GCC_UFS_UNIPRO_CORE_CLK>,
208750aa72ccSBjorn Andersson				<&gcc GCC_UFS_ICE_CORE_CLK>,
208850aa72ccSBjorn Andersson				<&rpmcc RPM_SMD_LN_BB_CLK>,
208950aa72ccSBjorn Andersson				<&gcc GCC_UFS_TX_SYMBOL_0_CLK>,
209050aa72ccSBjorn Andersson				<&gcc GCC_UFS_RX_SYMBOL_0_CLK>;
209150aa72ccSBjorn Andersson			freq-table-hz =
209250aa72ccSBjorn Andersson				<100000000 200000000>,
209333fb3e38SDmitry Baryshkov				<100000000 200000000>,
209450aa72ccSBjorn Andersson				<0 0>,
209550aa72ccSBjorn Andersson				<0 0>,
209650aa72ccSBjorn Andersson				<0 0>,
209750aa72ccSBjorn Andersson				<150000000 300000000>,
209850aa72ccSBjorn Andersson				<0 0>,
209950aa72ccSBjorn Andersson				<0 0>,
210050aa72ccSBjorn Andersson				<0 0>,
210150aa72ccSBjorn Andersson				<0 0>,
210250aa72ccSBjorn Andersson				<0 0>;
210350aa72ccSBjorn Andersson
2104bc72f13eSDmitry Baryshkov			interconnects = <&a2noc MASTER_UFS &bimc SLAVE_EBI_CH0>,
2105bc72f13eSDmitry Baryshkov					<&bimc MASTER_AMPSS_M0 &cnoc SLAVE_UFS_CFG>;
2106bc72f13eSDmitry Baryshkov			interconnect-names = "ufs-ddr", "cpu-ufs";
2107bc72f13eSDmitry Baryshkov
210850aa72ccSBjorn Andersson			lanes-per-direction = <1>;
210950aa72ccSBjorn Andersson			#reset-cells = <1>;
211050aa72ccSBjorn Andersson			status = "disabled";
211150aa72ccSBjorn Andersson		};
211250aa72ccSBjorn Andersson
211350aa72ccSBjorn Andersson		ufsphy: phy@627000 {
211427520210SBjorn Andersson			compatible = "qcom,msm8996-qmp-ufs-phy";
211527520210SBjorn Andersson			reg = <0x00627000 0x1c4>;
211627520210SBjorn Andersson			#address-cells = <1>;
211727520210SBjorn Andersson			#size-cells = <1>;
211827520210SBjorn Andersson			ranges;
211950aa72ccSBjorn Andersson
212027520210SBjorn Andersson			clocks = <&gcc GCC_UFS_CLKREF_CLK>;
212127520210SBjorn Andersson			clock-names = "ref";
212227520210SBjorn Andersson
212350aa72ccSBjorn Andersson			resets = <&ufshc 0>;
212427520210SBjorn Andersson			reset-names = "ufsphy";
212550aa72ccSBjorn Andersson			status = "disabled";
212627520210SBjorn Andersson
21271351512fSShawn Guo			ufsphy_lane: phy@627400 {
212827520210SBjorn Andersson				reg = <0x627400 0x12c>,
212927520210SBjorn Andersson				      <0x627600 0x200>,
213027520210SBjorn Andersson				      <0x627c00 0x1b4>;
213186543bc6SDmitry Baryshkov				#clock-cells = <1>;
213227520210SBjorn Andersson				#phy-cells = <0>;
213327520210SBjorn Andersson			};
213450aa72ccSBjorn Andersson		};
213550aa72ccSBjorn Andersson
2136e959ced1SKrzysztof Kozlowski		camss: camss@a34000 {
213750aa72ccSBjorn Andersson			compatible = "qcom,msm8996-camss";
213850aa72ccSBjorn Andersson			reg = <0x00a34000 0x1000>,
213950aa72ccSBjorn Andersson			      <0x00a00030 0x4>,
214050aa72ccSBjorn Andersson			      <0x00a35000 0x1000>,
214150aa72ccSBjorn Andersson			      <0x00a00038 0x4>,
214250aa72ccSBjorn Andersson			      <0x00a36000 0x1000>,
214350aa72ccSBjorn Andersson			      <0x00a00040 0x4>,
214450aa72ccSBjorn Andersson			      <0x00a30000 0x100>,
214550aa72ccSBjorn Andersson			      <0x00a30400 0x100>,
214650aa72ccSBjorn Andersson			      <0x00a30800 0x100>,
214750aa72ccSBjorn Andersson			      <0x00a30c00 0x100>,
214850aa72ccSBjorn Andersson			      <0x00a31000 0x500>,
214950aa72ccSBjorn Andersson			      <0x00a00020 0x10>,
215050aa72ccSBjorn Andersson			      <0x00a10000 0x1000>,
215150aa72ccSBjorn Andersson			      <0x00a14000 0x1000>;
215250aa72ccSBjorn Andersson			reg-names = "csiphy0",
215350aa72ccSBjorn Andersson				"csiphy0_clk_mux",
215450aa72ccSBjorn Andersson				"csiphy1",
215550aa72ccSBjorn Andersson				"csiphy1_clk_mux",
215650aa72ccSBjorn Andersson				"csiphy2",
215750aa72ccSBjorn Andersson				"csiphy2_clk_mux",
215850aa72ccSBjorn Andersson				"csid0",
215950aa72ccSBjorn Andersson				"csid1",
216050aa72ccSBjorn Andersson				"csid2",
216150aa72ccSBjorn Andersson				"csid3",
216250aa72ccSBjorn Andersson				"ispif",
216350aa72ccSBjorn Andersson				"csi_clk_mux",
216450aa72ccSBjorn Andersson				"vfe0",
216550aa72ccSBjorn Andersson				"vfe1";
21664a4a2631SLoic Poulain			interrupts = <GIC_SPI 78 IRQ_TYPE_EDGE_RISING>,
21674a4a2631SLoic Poulain				<GIC_SPI 79 IRQ_TYPE_EDGE_RISING>,
21684a4a2631SLoic Poulain				<GIC_SPI 80 IRQ_TYPE_EDGE_RISING>,
21694a4a2631SLoic Poulain				<GIC_SPI 296 IRQ_TYPE_EDGE_RISING>,
21704a4a2631SLoic Poulain				<GIC_SPI 297 IRQ_TYPE_EDGE_RISING>,
21714a4a2631SLoic Poulain				<GIC_SPI 298 IRQ_TYPE_EDGE_RISING>,
21724a4a2631SLoic Poulain				<GIC_SPI 299 IRQ_TYPE_EDGE_RISING>,
21734a4a2631SLoic Poulain				<GIC_SPI 309 IRQ_TYPE_EDGE_RISING>,
21744a4a2631SLoic Poulain				<GIC_SPI 314 IRQ_TYPE_EDGE_RISING>,
21754a4a2631SLoic Poulain				<GIC_SPI 315 IRQ_TYPE_EDGE_RISING>;
217650aa72ccSBjorn Andersson			interrupt-names = "csiphy0",
217750aa72ccSBjorn Andersson				"csiphy1",
217850aa72ccSBjorn Andersson				"csiphy2",
217950aa72ccSBjorn Andersson				"csid0",
218050aa72ccSBjorn Andersson				"csid1",
218150aa72ccSBjorn Andersson				"csid2",
218250aa72ccSBjorn Andersson				"csid3",
218350aa72ccSBjorn Andersson				"ispif",
218450aa72ccSBjorn Andersson				"vfe0",
218550aa72ccSBjorn Andersson				"vfe1";
218643bb8074SRobert Foss			power-domains = <&mmcc VFE0_GDSC>,
218743bb8074SRobert Foss					<&mmcc VFE1_GDSC>;
218850aa72ccSBjorn Andersson			clocks = <&mmcc CAMSS_TOP_AHB_CLK>,
218950aa72ccSBjorn Andersson				<&mmcc CAMSS_ISPIF_AHB_CLK>,
219050aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI0PHYTIMER_CLK>,
219150aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI1PHYTIMER_CLK>,
219250aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI2PHYTIMER_CLK>,
219350aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI0_AHB_CLK>,
219450aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI0_CLK>,
219550aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI0PHY_CLK>,
219650aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI0PIX_CLK>,
219750aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI0RDI_CLK>,
219850aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI1_AHB_CLK>,
219950aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI1_CLK>,
220050aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI1PHY_CLK>,
220150aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI1PIX_CLK>,
220250aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI1RDI_CLK>,
220350aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI2_AHB_CLK>,
220450aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI2_CLK>,
220550aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI2PHY_CLK>,
220650aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI2PIX_CLK>,
220750aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI2RDI_CLK>,
220850aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI3_AHB_CLK>,
220950aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI3_CLK>,
221050aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI3PHY_CLK>,
221150aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI3PIX_CLK>,
221250aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI3RDI_CLK>,
221350aa72ccSBjorn Andersson				<&mmcc CAMSS_AHB_CLK>,
221450aa72ccSBjorn Andersson				<&mmcc CAMSS_VFE0_CLK>,
221550aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI_VFE0_CLK>,
221650aa72ccSBjorn Andersson				<&mmcc CAMSS_VFE0_AHB_CLK>,
221750aa72ccSBjorn Andersson				<&mmcc CAMSS_VFE0_STREAM_CLK>,
221850aa72ccSBjorn Andersson				<&mmcc CAMSS_VFE1_CLK>,
221950aa72ccSBjorn Andersson				<&mmcc CAMSS_CSI_VFE1_CLK>,
222050aa72ccSBjorn Andersson				<&mmcc CAMSS_VFE1_AHB_CLK>,
222150aa72ccSBjorn Andersson				<&mmcc CAMSS_VFE1_STREAM_CLK>,
222250aa72ccSBjorn Andersson				<&mmcc CAMSS_VFE_AHB_CLK>,
222350aa72ccSBjorn Andersson				<&mmcc CAMSS_VFE_AXI_CLK>;
222450aa72ccSBjorn Andersson			clock-names = "top_ahb",
222550aa72ccSBjorn Andersson				"ispif_ahb",
222650aa72ccSBjorn Andersson				"csiphy0_timer",
222750aa72ccSBjorn Andersson				"csiphy1_timer",
222850aa72ccSBjorn Andersson				"csiphy2_timer",
222950aa72ccSBjorn Andersson				"csi0_ahb",
223050aa72ccSBjorn Andersson				"csi0",
223150aa72ccSBjorn Andersson				"csi0_phy",
223250aa72ccSBjorn Andersson				"csi0_pix",
223350aa72ccSBjorn Andersson				"csi0_rdi",
223450aa72ccSBjorn Andersson				"csi1_ahb",
223550aa72ccSBjorn Andersson				"csi1",
223650aa72ccSBjorn Andersson				"csi1_phy",
223750aa72ccSBjorn Andersson				"csi1_pix",
223850aa72ccSBjorn Andersson				"csi1_rdi",
223950aa72ccSBjorn Andersson				"csi2_ahb",
224050aa72ccSBjorn Andersson				"csi2",
224150aa72ccSBjorn Andersson				"csi2_phy",
224250aa72ccSBjorn Andersson				"csi2_pix",
224350aa72ccSBjorn Andersson				"csi2_rdi",
224450aa72ccSBjorn Andersson				"csi3_ahb",
224550aa72ccSBjorn Andersson				"csi3",
224650aa72ccSBjorn Andersson				"csi3_phy",
224750aa72ccSBjorn Andersson				"csi3_pix",
224850aa72ccSBjorn Andersson				"csi3_rdi",
224950aa72ccSBjorn Andersson				"ahb",
225050aa72ccSBjorn Andersson				"vfe0",
225150aa72ccSBjorn Andersson				"csi_vfe0",
225250aa72ccSBjorn Andersson				"vfe0_ahb",
225350aa72ccSBjorn Andersson				"vfe0_stream",
225450aa72ccSBjorn Andersson				"vfe1",
225550aa72ccSBjorn Andersson				"csi_vfe1",
225650aa72ccSBjorn Andersson				"vfe1_ahb",
225750aa72ccSBjorn Andersson				"vfe1_stream",
225850aa72ccSBjorn Andersson				"vfe_ahb",
225950aa72ccSBjorn Andersson				"vfe_axi";
226050aa72ccSBjorn Andersson			iommus = <&vfe_smmu 0>,
226150aa72ccSBjorn Andersson				 <&vfe_smmu 1>,
226250aa72ccSBjorn Andersson				 <&vfe_smmu 2>,
226350aa72ccSBjorn Andersson				 <&vfe_smmu 3>;
226450aa72ccSBjorn Andersson			status = "disabled";
226550aa72ccSBjorn Andersson			ports {
226650aa72ccSBjorn Andersson				#address-cells = <1>;
226750aa72ccSBjorn Andersson				#size-cells = <0>;
226850aa72ccSBjorn Andersson			};
226950aa72ccSBjorn Andersson		};
227050aa72ccSBjorn Andersson
227126bea4e4SLoic Poulain		cci: cci@a0c000 {
227226bea4e4SLoic Poulain			compatible = "qcom,msm8996-cci";
227326bea4e4SLoic Poulain			#address-cells = <1>;
227426bea4e4SLoic Poulain			#size-cells = <0>;
227526bea4e4SLoic Poulain			reg = <0xa0c000 0x1000>;
227626bea4e4SLoic Poulain			interrupts = <GIC_SPI 295 IRQ_TYPE_EDGE_RISING>;
227726bea4e4SLoic Poulain			power-domains = <&mmcc CAMSS_GDSC>;
227826bea4e4SLoic Poulain			clocks = <&mmcc CAMSS_TOP_AHB_CLK>,
227926bea4e4SLoic Poulain				 <&mmcc CAMSS_CCI_AHB_CLK>,
228026bea4e4SLoic Poulain				 <&mmcc CAMSS_CCI_CLK>,
228126bea4e4SLoic Poulain				 <&mmcc CAMSS_AHB_CLK>;
228226bea4e4SLoic Poulain			clock-names = "camss_top_ahb",
228326bea4e4SLoic Poulain				      "cci_ahb",
228426bea4e4SLoic Poulain				      "cci",
228526bea4e4SLoic Poulain				      "camss_ahb";
228626bea4e4SLoic Poulain			assigned-clocks = <&mmcc CAMSS_CCI_AHB_CLK>,
228726bea4e4SLoic Poulain					  <&mmcc CAMSS_CCI_CLK>;
228826bea4e4SLoic Poulain			assigned-clock-rates = <80000000>, <37500000>;
228926bea4e4SLoic Poulain			pinctrl-names = "default";
229026bea4e4SLoic Poulain			pinctrl-0 = <&cci0_default &cci1_default>;
229126bea4e4SLoic Poulain			status = "disabled";
229226bea4e4SLoic Poulain
229326bea4e4SLoic Poulain			cci_i2c0: i2c-bus@0 {
229426bea4e4SLoic Poulain				reg = <0>;
229526bea4e4SLoic Poulain				clock-frequency = <400000>;
229626bea4e4SLoic Poulain				#address-cells = <1>;
229726bea4e4SLoic Poulain				#size-cells = <0>;
229826bea4e4SLoic Poulain			};
229926bea4e4SLoic Poulain
230026bea4e4SLoic Poulain			cci_i2c1: i2c-bus@1 {
230126bea4e4SLoic Poulain				reg = <1>;
230226bea4e4SLoic Poulain				clock-frequency = <400000>;
230326bea4e4SLoic Poulain				#address-cells = <1>;
230426bea4e4SLoic Poulain				#size-cells = <0>;
230526bea4e4SLoic Poulain			};
230626bea4e4SLoic Poulain		};
230726bea4e4SLoic Poulain
230850aa72ccSBjorn Andersson		adreno_smmu: iommu@b40000 {
230919c07b91SEric Anholt			compatible = "qcom,msm8996-smmu-v2", "qcom,adreno-smmu", "qcom,smmu-v2";
231050aa72ccSBjorn Andersson			reg = <0x00b40000 0x10000>;
231150aa72ccSBjorn Andersson
231250aa72ccSBjorn Andersson			#global-interrupts = <1>;
231350aa72ccSBjorn Andersson			interrupts = <GIC_SPI 334 IRQ_TYPE_LEVEL_HIGH>,
231450aa72ccSBjorn Andersson				     <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>,
231550aa72ccSBjorn Andersson				     <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>;
231650aa72ccSBjorn Andersson			#iommu-cells = <1>;
231750aa72ccSBjorn Andersson
2318d6e63678SDmitry Baryshkov			clocks = <&gcc GCC_MMSS_BIMC_GFX_CLK>,
2319d6e63678SDmitry Baryshkov				 <&mmcc GPU_AHB_CLK>;
2320d6e63678SDmitry Baryshkov			clock-names = "bus", "iface";
232150aa72ccSBjorn Andersson
232250aa72ccSBjorn Andersson			power-domains = <&mmcc GPU_GDSC>;
232350aa72ccSBjorn Andersson		};
232450aa72ccSBjorn Andersson
2325d774e762SKonrad Dybcio		venus: video-codec@c00000 {
232650aa72ccSBjorn Andersson			compatible = "qcom,msm8996-venus";
232750aa72ccSBjorn Andersson			reg = <0x00c00000 0xff000>;
232850aa72ccSBjorn Andersson			interrupts = <GIC_SPI 287 IRQ_TYPE_LEVEL_HIGH>;
232950aa72ccSBjorn Andersson			power-domains = <&mmcc VENUS_GDSC>;
233050aa72ccSBjorn Andersson			clocks = <&mmcc VIDEO_CORE_CLK>,
233150aa72ccSBjorn Andersson				 <&mmcc VIDEO_AHB_CLK>,
233250aa72ccSBjorn Andersson				 <&mmcc VIDEO_AXI_CLK>,
233350aa72ccSBjorn Andersson				 <&mmcc VIDEO_MAXI_CLK>;
233450aa72ccSBjorn Andersson			clock-names = "core", "iface", "bus", "mbus";
2335f35aaef1SYassine Oudjana			interconnects = <&mnoc MASTER_VIDEO_P0 &bimc SLAVE_EBI_CH0>,
2336f35aaef1SYassine Oudjana					<&bimc MASTER_AMPSS_M0 &mnoc SLAVE_VENUS_CFG>;
2337f35aaef1SYassine Oudjana			interconnect-names = "video-mem", "cpu-cfg";
233850aa72ccSBjorn Andersson			iommus = <&venus_smmu 0x00>,
233950aa72ccSBjorn Andersson				 <&venus_smmu 0x01>,
234050aa72ccSBjorn Andersson				 <&venus_smmu 0x0a>,
234150aa72ccSBjorn Andersson				 <&venus_smmu 0x07>,
234250aa72ccSBjorn Andersson				 <&venus_smmu 0x0e>,
234350aa72ccSBjorn Andersson				 <&venus_smmu 0x0f>,
234450aa72ccSBjorn Andersson				 <&venus_smmu 0x08>,
234550aa72ccSBjorn Andersson				 <&venus_smmu 0x09>,
234650aa72ccSBjorn Andersson				 <&venus_smmu 0x0b>,
234750aa72ccSBjorn Andersson				 <&venus_smmu 0x0c>,
234850aa72ccSBjorn Andersson				 <&venus_smmu 0x0d>,
234950aa72ccSBjorn Andersson				 <&venus_smmu 0x10>,
235050aa72ccSBjorn Andersson				 <&venus_smmu 0x11>,
235150aa72ccSBjorn Andersson				 <&venus_smmu 0x21>,
235250aa72ccSBjorn Andersson				 <&venus_smmu 0x28>,
235350aa72ccSBjorn Andersson				 <&venus_smmu 0x29>,
235450aa72ccSBjorn Andersson				 <&venus_smmu 0x2b>,
235550aa72ccSBjorn Andersson				 <&venus_smmu 0x2c>,
235650aa72ccSBjorn Andersson				 <&venus_smmu 0x2d>,
235750aa72ccSBjorn Andersson				 <&venus_smmu 0x31>;
2358902d97a4SYassine Oudjana			memory-region = <&venus_mem>;
2359d774e762SKonrad Dybcio			status = "disabled";
236050aa72ccSBjorn Andersson
236150aa72ccSBjorn Andersson			video-decoder {
236250aa72ccSBjorn Andersson				compatible = "venus-decoder";
236350aa72ccSBjorn Andersson				clocks = <&mmcc VIDEO_SUBCORE0_CLK>;
236450aa72ccSBjorn Andersson				clock-names = "core";
236550aa72ccSBjorn Andersson				power-domains = <&mmcc VENUS_CORE0_GDSC>;
236650aa72ccSBjorn Andersson			};
236750aa72ccSBjorn Andersson
236850aa72ccSBjorn Andersson			video-encoder {
236950aa72ccSBjorn Andersson				compatible = "venus-encoder";
237050aa72ccSBjorn Andersson				clocks = <&mmcc VIDEO_SUBCORE1_CLK>;
237150aa72ccSBjorn Andersson				clock-names = "core";
237250aa72ccSBjorn Andersson				power-domains = <&mmcc VENUS_CORE1_GDSC>;
237350aa72ccSBjorn Andersson			};
237450aa72ccSBjorn Andersson		};
237550aa72ccSBjorn Andersson
237650aa72ccSBjorn Andersson		mdp_smmu: iommu@d00000 {
237750aa72ccSBjorn Andersson			compatible = "qcom,msm8996-smmu-v2", "qcom,smmu-v2";
237850aa72ccSBjorn Andersson			reg = <0x00d00000 0x10000>;
237950aa72ccSBjorn Andersson
238050aa72ccSBjorn Andersson			#global-interrupts = <1>;
238150aa72ccSBjorn Andersson			interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>,
238250aa72ccSBjorn Andersson				     <GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH>,
238350aa72ccSBjorn Andersson				     <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>;
238450aa72ccSBjorn Andersson			#iommu-cells = <1>;
2385d6e63678SDmitry Baryshkov			clocks = <&mmcc SMMU_MDP_AXI_CLK>,
2386d6e63678SDmitry Baryshkov				 <&mmcc SMMU_MDP_AHB_CLK>;
2387d6e63678SDmitry Baryshkov			clock-names = "bus", "iface";
238850aa72ccSBjorn Andersson
238950aa72ccSBjorn Andersson			power-domains = <&mmcc MDSS_GDSC>;
239050aa72ccSBjorn Andersson		};
239150aa72ccSBjorn Andersson
2392277a13b5SStanimir Varbanov		venus_smmu: iommu@d40000 {
239350aa72ccSBjorn Andersson			compatible = "qcom,msm8996-smmu-v2", "qcom,smmu-v2";
2394277a13b5SStanimir Varbanov			reg = <0x00d40000 0x20000>;
239550aa72ccSBjorn Andersson			#global-interrupts = <1>;
239650aa72ccSBjorn Andersson			interrupts = <GIC_SPI 286 IRQ_TYPE_LEVEL_HIGH>,
239750aa72ccSBjorn Andersson				     <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>,
239850aa72ccSBjorn Andersson				     <GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH>,
239950aa72ccSBjorn Andersson				     <GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>,
240050aa72ccSBjorn Andersson				     <GIC_SPI 338 IRQ_TYPE_LEVEL_HIGH>,
240150aa72ccSBjorn Andersson				     <GIC_SPI 339 IRQ_TYPE_LEVEL_HIGH>,
240250aa72ccSBjorn Andersson				     <GIC_SPI 340 IRQ_TYPE_LEVEL_HIGH>,
240350aa72ccSBjorn Andersson				     <GIC_SPI 341 IRQ_TYPE_LEVEL_HIGH>;
240450aa72ccSBjorn Andersson			power-domains = <&mmcc MMAGIC_VIDEO_GDSC>;
2405d6e63678SDmitry Baryshkov			clocks = <&mmcc SMMU_VIDEO_AXI_CLK>,
2406d6e63678SDmitry Baryshkov				 <&mmcc SMMU_VIDEO_AHB_CLK>;
2407d6e63678SDmitry Baryshkov			clock-names = "bus", "iface";
240850aa72ccSBjorn Andersson			#iommu-cells = <1>;
240950aa72ccSBjorn Andersson			status = "okay";
241050aa72ccSBjorn Andersson		};
241150aa72ccSBjorn Andersson
241250aa72ccSBjorn Andersson		vfe_smmu: iommu@da0000 {
241350aa72ccSBjorn Andersson			compatible = "qcom,msm8996-smmu-v2", "qcom,smmu-v2";
241450aa72ccSBjorn Andersson			reg = <0x00da0000 0x10000>;
241550aa72ccSBjorn Andersson
241650aa72ccSBjorn Andersson			#global-interrupts = <1>;
241750aa72ccSBjorn Andersson			interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>,
241850aa72ccSBjorn Andersson				     <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>,
241950aa72ccSBjorn Andersson				     <GIC_SPI 344 IRQ_TYPE_LEVEL_HIGH>;
242050aa72ccSBjorn Andersson			power-domains = <&mmcc MMAGIC_CAMSS_GDSC>;
2421d6e63678SDmitry Baryshkov			clocks = <&mmcc SMMU_VFE_AXI_CLK>,
2422d6e63678SDmitry Baryshkov				 <&mmcc SMMU_VFE_AHB_CLK>;
2423d6e63678SDmitry Baryshkov			clock-names = "bus", "iface";
242450aa72ccSBjorn Andersson			#iommu-cells = <1>;
242550aa72ccSBjorn Andersson		};
242650aa72ccSBjorn Andersson
242750aa72ccSBjorn Andersson		lpass_q6_smmu: iommu@1600000 {
242850aa72ccSBjorn Andersson			compatible = "qcom,msm8996-smmu-v2", "qcom,smmu-v2";
242950aa72ccSBjorn Andersson			reg = <0x01600000 0x20000>;
243050aa72ccSBjorn Andersson			#iommu-cells = <1>;
243150aa72ccSBjorn Andersson			power-domains = <&gcc HLOS1_VOTE_LPASS_CORE_GDSC>;
243250aa72ccSBjorn Andersson
243350aa72ccSBjorn Andersson			#global-interrupts = <1>;
243450aa72ccSBjorn Andersson			interrupts = <GIC_SPI 404 IRQ_TYPE_LEVEL_HIGH>,
243550aa72ccSBjorn Andersson		                <GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH>,
243650aa72ccSBjorn Andersson		                <GIC_SPI 393 IRQ_TYPE_LEVEL_HIGH>,
243750aa72ccSBjorn Andersson		                <GIC_SPI 394 IRQ_TYPE_LEVEL_HIGH>,
243850aa72ccSBjorn Andersson		                <GIC_SPI 395 IRQ_TYPE_LEVEL_HIGH>,
243950aa72ccSBjorn Andersson		                <GIC_SPI 396 IRQ_TYPE_LEVEL_HIGH>,
244050aa72ccSBjorn Andersson		                <GIC_SPI 397 IRQ_TYPE_LEVEL_HIGH>,
244150aa72ccSBjorn Andersson		                <GIC_SPI 398 IRQ_TYPE_LEVEL_HIGH>,
244250aa72ccSBjorn Andersson		                <GIC_SPI 399 IRQ_TYPE_LEVEL_HIGH>,
244350aa72ccSBjorn Andersson		                <GIC_SPI 400 IRQ_TYPE_LEVEL_HIGH>,
244450aa72ccSBjorn Andersson		                <GIC_SPI 401 IRQ_TYPE_LEVEL_HIGH>,
244550aa72ccSBjorn Andersson		                <GIC_SPI 402 IRQ_TYPE_LEVEL_HIGH>,
244650aa72ccSBjorn Andersson		                <GIC_SPI 403 IRQ_TYPE_LEVEL_HIGH>;
244750aa72ccSBjorn Andersson
2448d6e63678SDmitry Baryshkov			clocks = <&gcc GCC_HLOS1_VOTE_LPASS_ADSP_SMMU_CLK>,
2449d6e63678SDmitry Baryshkov				 <&gcc GCC_HLOS1_VOTE_LPASS_CORE_SMMU_CLK>;
2450d6e63678SDmitry Baryshkov			clock-names = "bus", "iface";
24514558e9b3SStephen Boyd		};
24524558e9b3SStephen Boyd
2453127dd2f0SYassine Oudjana		slpi_pil: remoteproc@1c00000 {
2454127dd2f0SYassine Oudjana			compatible = "qcom,msm8996-slpi-pil";
2455127dd2f0SYassine Oudjana			reg = <0x01c00000 0x4000>;
2456127dd2f0SYassine Oudjana
2457127dd2f0SYassine Oudjana			interrupts-extended = <&intc 0 390 IRQ_TYPE_EDGE_RISING>,
2458127dd2f0SYassine Oudjana					      <&slpi_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
2459127dd2f0SYassine Oudjana					      <&slpi_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
2460127dd2f0SYassine Oudjana					      <&slpi_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
2461127dd2f0SYassine Oudjana					      <&slpi_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
2462127dd2f0SYassine Oudjana			interrupt-names = "wdog",
2463127dd2f0SYassine Oudjana					  "fatal",
2464127dd2f0SYassine Oudjana					  "ready",
2465127dd2f0SYassine Oudjana					  "handover",
2466127dd2f0SYassine Oudjana					  "stop-ack";
2467127dd2f0SYassine Oudjana
2468127dd2f0SYassine Oudjana			clocks = <&xo_board>,
2469127dd2f0SYassine Oudjana				 <&rpmcc RPM_SMD_AGGR2_NOC_CLK>;
2470127dd2f0SYassine Oudjana			clock-names = "xo", "aggre2";
2471127dd2f0SYassine Oudjana
2472127dd2f0SYassine Oudjana			memory-region = <&slpi_mem>;
2473127dd2f0SYassine Oudjana
2474127dd2f0SYassine Oudjana			qcom,smem-states = <&slpi_smp2p_out 0>;
2475127dd2f0SYassine Oudjana			qcom,smem-state-names = "stop";
2476127dd2f0SYassine Oudjana
2477127dd2f0SYassine Oudjana			power-domains = <&rpmpd MSM8996_VDDSSCX>;
2478127dd2f0SYassine Oudjana			power-domain-names = "ssc_cx";
2479127dd2f0SYassine Oudjana
2480127dd2f0SYassine Oudjana			status = "disabled";
2481127dd2f0SYassine Oudjana
2482127dd2f0SYassine Oudjana			smd-edge {
2483127dd2f0SYassine Oudjana				interrupts = <GIC_SPI 176 IRQ_TYPE_EDGE_RISING>;
2484127dd2f0SYassine Oudjana
2485127dd2f0SYassine Oudjana				label = "dsps";
2486127dd2f0SYassine Oudjana				mboxes = <&apcs_glb 25>;
2487127dd2f0SYassine Oudjana				qcom,smd-edge = <3>;
2488127dd2f0SYassine Oudjana				qcom,remote-pid = <3>;
2489127dd2f0SYassine Oudjana			};
2490127dd2f0SYassine Oudjana		};
2491127dd2f0SYassine Oudjana
2492127dd2f0SYassine Oudjana		mss_pil: remoteproc@2080000 {
2493127dd2f0SYassine Oudjana			compatible = "qcom,msm8996-mss-pil";
2494127dd2f0SYassine Oudjana			reg = <0x2080000 0x100>,
2495127dd2f0SYassine Oudjana			      <0x2180000 0x020>;
2496127dd2f0SYassine Oudjana			reg-names = "qdsp6", "rmb";
2497127dd2f0SYassine Oudjana
2498127dd2f0SYassine Oudjana			interrupts-extended = <&intc 0 448 IRQ_TYPE_EDGE_RISING>,
2499127dd2f0SYassine Oudjana					      <&mpss_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
2500127dd2f0SYassine Oudjana					      <&mpss_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
2501127dd2f0SYassine Oudjana					      <&mpss_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
2502127dd2f0SYassine Oudjana					      <&mpss_smp2p_in 3 IRQ_TYPE_EDGE_RISING>,
2503127dd2f0SYassine Oudjana					      <&mpss_smp2p_in 7 IRQ_TYPE_EDGE_RISING>;
2504127dd2f0SYassine Oudjana			interrupt-names = "wdog", "fatal", "ready",
2505127dd2f0SYassine Oudjana					  "handover", "stop-ack",
2506127dd2f0SYassine Oudjana					  "shutdown-ack";
2507127dd2f0SYassine Oudjana
2508127dd2f0SYassine Oudjana			clocks = <&gcc GCC_MSS_CFG_AHB_CLK>,
2509127dd2f0SYassine Oudjana				 <&gcc GCC_MSS_Q6_BIMC_AXI_CLK>,
2510127dd2f0SYassine Oudjana				 <&gcc GCC_BOOT_ROM_AHB_CLK>,
2511127dd2f0SYassine Oudjana				 <&xo_board>,
2512127dd2f0SYassine Oudjana				 <&gcc GCC_MSS_GPLL0_DIV_CLK>,
2513127dd2f0SYassine Oudjana				 <&gcc GCC_MSS_SNOC_AXI_CLK>,
2514127dd2f0SYassine Oudjana				 <&gcc GCC_MSS_MNOC_BIMC_AXI_CLK>,
2515127dd2f0SYassine Oudjana				 <&rpmcc RPM_SMD_PCNOC_CLK>,
2516127dd2f0SYassine Oudjana				 <&rpmcc RPM_SMD_QDSS_CLK>;
2517127dd2f0SYassine Oudjana			clock-names = "iface", "bus", "mem", "xo", "gpll0_mss",
2518127dd2f0SYassine Oudjana				      "snoc_axi", "mnoc_axi", "pnoc", "qdss";
2519127dd2f0SYassine Oudjana
2520127dd2f0SYassine Oudjana			resets = <&gcc GCC_MSS_RESTART>;
2521127dd2f0SYassine Oudjana			reset-names = "mss_restart";
2522127dd2f0SYassine Oudjana
2523127dd2f0SYassine Oudjana			power-domains = <&rpmpd MSM8996_VDDCX>,
2524127dd2f0SYassine Oudjana					<&rpmpd MSM8996_VDDMX>;
2525127dd2f0SYassine Oudjana			power-domain-names = "cx", "mx";
2526127dd2f0SYassine Oudjana
2527127dd2f0SYassine Oudjana			qcom,smem-states = <&mpss_smp2p_out 0>;
2528127dd2f0SYassine Oudjana			qcom,smem-state-names = "stop";
2529127dd2f0SYassine Oudjana
2530100ce220SKrzysztof Kozlowski			qcom,halt-regs = <&tcsr_1 0x3000 0x5000 0x4000>;
2531127dd2f0SYassine Oudjana
2532127dd2f0SYassine Oudjana			status = "disabled";
2533127dd2f0SYassine Oudjana
2534127dd2f0SYassine Oudjana			mba {
2535127dd2f0SYassine Oudjana				memory-region = <&mba_mem>;
2536127dd2f0SYassine Oudjana			};
2537127dd2f0SYassine Oudjana
2538127dd2f0SYassine Oudjana			mpss {
2539127dd2f0SYassine Oudjana				memory-region = <&mpss_mem>;
2540127dd2f0SYassine Oudjana			};
2541127dd2f0SYassine Oudjana
25423c118d1bSSibi Sankar			metadata {
25433c118d1bSSibi Sankar				memory-region = <&mdata_mem>;
25443c118d1bSSibi Sankar			};
25453c118d1bSSibi Sankar
2546127dd2f0SYassine Oudjana			smd-edge {
2547127dd2f0SYassine Oudjana				interrupts = <GIC_SPI 449 IRQ_TYPE_EDGE_RISING>;
2548127dd2f0SYassine Oudjana
2549127dd2f0SYassine Oudjana				label = "mpss";
2550127dd2f0SYassine Oudjana				mboxes = <&apcs_glb 12>;
2551127dd2f0SYassine Oudjana				qcom,smd-edge = <0>;
2552127dd2f0SYassine Oudjana				qcom,remote-pid = <1>;
2553127dd2f0SYassine Oudjana			};
2554127dd2f0SYassine Oudjana		};
2555127dd2f0SYassine Oudjana
2556d98de8efSVivek Gautam		stm@3002000 {
2557d98de8efSVivek Gautam			compatible = "arm,coresight-stm", "arm,primecell";
2558d98de8efSVivek Gautam			reg = <0x3002000 0x1000>,
2559d98de8efSVivek Gautam			      <0x8280000 0x180000>;
2560d98de8efSVivek Gautam			reg-names = "stm-base", "stm-stimulus-base";
2561d98de8efSVivek Gautam
2562d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
2563d98de8efSVivek Gautam			clock-names = "apb_pclk", "atclk";
2564d98de8efSVivek Gautam
2565d98de8efSVivek Gautam			out-ports {
2566d98de8efSVivek Gautam				port {
2567d98de8efSVivek Gautam					stm_out: endpoint {
2568d98de8efSVivek Gautam						remote-endpoint =
2569d98de8efSVivek Gautam						  <&funnel0_in>;
2570d98de8efSVivek Gautam					};
2571d98de8efSVivek Gautam				};
2572d98de8efSVivek Gautam			};
2573d98de8efSVivek Gautam		};
2574d98de8efSVivek Gautam
2575d98de8efSVivek Gautam		tpiu@3020000 {
2576d98de8efSVivek Gautam			compatible = "arm,coresight-tpiu", "arm,primecell";
2577d98de8efSVivek Gautam			reg = <0x3020000 0x1000>;
2578d98de8efSVivek Gautam
2579d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
2580d98de8efSVivek Gautam			clock-names = "apb_pclk", "atclk";
2581d98de8efSVivek Gautam
2582d98de8efSVivek Gautam			in-ports {
2583d98de8efSVivek Gautam				port {
2584d98de8efSVivek Gautam					tpiu_in: endpoint {
2585d98de8efSVivek Gautam						remote-endpoint =
2586d98de8efSVivek Gautam						  <&replicator_out1>;
2587d98de8efSVivek Gautam					};
2588d98de8efSVivek Gautam				};
2589d98de8efSVivek Gautam			};
2590d98de8efSVivek Gautam		};
2591d98de8efSVivek Gautam
2592d98de8efSVivek Gautam		funnel@3021000 {
2593d98de8efSVivek Gautam			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
2594d98de8efSVivek Gautam			reg = <0x3021000 0x1000>;
2595d98de8efSVivek Gautam
2596d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
2597d98de8efSVivek Gautam			clock-names = "apb_pclk", "atclk";
2598d98de8efSVivek Gautam
2599d98de8efSVivek Gautam			in-ports {
2600d98de8efSVivek Gautam				#address-cells = <1>;
2601d98de8efSVivek Gautam				#size-cells = <0>;
2602d98de8efSVivek Gautam
2603d98de8efSVivek Gautam				port@7 {
2604d98de8efSVivek Gautam					reg = <7>;
2605d98de8efSVivek Gautam					funnel0_in: endpoint {
2606d98de8efSVivek Gautam						remote-endpoint =
2607d98de8efSVivek Gautam						  <&stm_out>;
2608d98de8efSVivek Gautam					};
2609d98de8efSVivek Gautam				};
2610d98de8efSVivek Gautam			};
2611d98de8efSVivek Gautam
2612d98de8efSVivek Gautam			out-ports {
2613d98de8efSVivek Gautam				port {
2614d98de8efSVivek Gautam					funnel0_out: endpoint {
2615d98de8efSVivek Gautam						remote-endpoint =
2616d98de8efSVivek Gautam						  <&merge_funnel_in0>;
2617d98de8efSVivek Gautam					};
2618d98de8efSVivek Gautam				};
2619d98de8efSVivek Gautam			};
2620d98de8efSVivek Gautam		};
2621d98de8efSVivek Gautam
2622d98de8efSVivek Gautam		funnel@3022000 {
2623d98de8efSVivek Gautam			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
2624d98de8efSVivek Gautam			reg = <0x3022000 0x1000>;
2625d98de8efSVivek Gautam
2626d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
2627d98de8efSVivek Gautam			clock-names = "apb_pclk", "atclk";
2628d98de8efSVivek Gautam
2629d98de8efSVivek Gautam			in-ports {
2630d98de8efSVivek Gautam				#address-cells = <1>;
2631d98de8efSVivek Gautam				#size-cells = <0>;
2632d98de8efSVivek Gautam
2633d98de8efSVivek Gautam				port@6 {
2634d98de8efSVivek Gautam					reg = <6>;
2635d98de8efSVivek Gautam					funnel1_in: endpoint {
2636d98de8efSVivek Gautam						remote-endpoint =
2637d98de8efSVivek Gautam						  <&apss_merge_funnel_out>;
2638d98de8efSVivek Gautam					};
2639d98de8efSVivek Gautam				};
2640d98de8efSVivek Gautam			};
2641d98de8efSVivek Gautam
2642d98de8efSVivek Gautam			out-ports {
2643d98de8efSVivek Gautam				port {
2644d98de8efSVivek Gautam					funnel1_out: endpoint {
2645d98de8efSVivek Gautam						remote-endpoint =
2646d98de8efSVivek Gautam						  <&merge_funnel_in1>;
2647d98de8efSVivek Gautam					};
2648d98de8efSVivek Gautam				};
2649d98de8efSVivek Gautam			};
2650d98de8efSVivek Gautam		};
2651d98de8efSVivek Gautam
2652d98de8efSVivek Gautam		funnel@3023000 {
2653d98de8efSVivek Gautam			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
2654d98de8efSVivek Gautam			reg = <0x3023000 0x1000>;
2655d98de8efSVivek Gautam
2656d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
2657d98de8efSVivek Gautam			clock-names = "apb_pclk", "atclk";
2658d98de8efSVivek Gautam
265973cb9305SMao Jinlong			in-ports {
266073cb9305SMao Jinlong				port {
266173cb9305SMao Jinlong					funnel_in2_in_modem_etm: endpoint {
266273cb9305SMao Jinlong						remote-endpoint =
266373cb9305SMao Jinlong						  <&modem_etm_out_funnel_in2>;
266473cb9305SMao Jinlong					};
266573cb9305SMao Jinlong				};
266673cb9305SMao Jinlong			};
2667d98de8efSVivek Gautam
2668d98de8efSVivek Gautam			out-ports {
2669d98de8efSVivek Gautam				port {
2670d98de8efSVivek Gautam					funnel2_out: endpoint {
2671d98de8efSVivek Gautam						remote-endpoint =
2672d98de8efSVivek Gautam						  <&merge_funnel_in2>;
2673d98de8efSVivek Gautam					};
2674d98de8efSVivek Gautam				};
2675d98de8efSVivek Gautam			};
2676d98de8efSVivek Gautam		};
2677d98de8efSVivek Gautam
2678d98de8efSVivek Gautam		funnel@3025000 {
2679d98de8efSVivek Gautam			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
2680d98de8efSVivek Gautam			reg = <0x3025000 0x1000>;
2681d98de8efSVivek Gautam
2682d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
2683d98de8efSVivek Gautam			clock-names = "apb_pclk", "atclk";
2684d98de8efSVivek Gautam
2685d98de8efSVivek Gautam			in-ports {
2686d98de8efSVivek Gautam				#address-cells = <1>;
2687d98de8efSVivek Gautam				#size-cells = <0>;
2688d98de8efSVivek Gautam
2689d98de8efSVivek Gautam				port@0 {
2690d98de8efSVivek Gautam					reg = <0>;
2691d98de8efSVivek Gautam					merge_funnel_in0: endpoint {
2692d98de8efSVivek Gautam						remote-endpoint =
2693d98de8efSVivek Gautam						  <&funnel0_out>;
2694d98de8efSVivek Gautam					};
2695d98de8efSVivek Gautam				};
2696d98de8efSVivek Gautam
2697d98de8efSVivek Gautam				port@1 {
2698d98de8efSVivek Gautam					reg = <1>;
2699d98de8efSVivek Gautam					merge_funnel_in1: endpoint {
2700d98de8efSVivek Gautam						remote-endpoint =
2701d98de8efSVivek Gautam						  <&funnel1_out>;
2702d98de8efSVivek Gautam					};
2703d98de8efSVivek Gautam				};
2704d98de8efSVivek Gautam
2705d98de8efSVivek Gautam				port@2 {
2706d98de8efSVivek Gautam					reg = <2>;
2707d98de8efSVivek Gautam					merge_funnel_in2: endpoint {
2708d98de8efSVivek Gautam						remote-endpoint =
2709d98de8efSVivek Gautam						  <&funnel2_out>;
2710d98de8efSVivek Gautam					};
2711d98de8efSVivek Gautam				};
2712d98de8efSVivek Gautam			};
2713d98de8efSVivek Gautam
2714d98de8efSVivek Gautam			out-ports {
2715d98de8efSVivek Gautam				port {
2716d98de8efSVivek Gautam					merge_funnel_out: endpoint {
2717d98de8efSVivek Gautam						remote-endpoint =
2718d98de8efSVivek Gautam						  <&etf_in>;
2719d98de8efSVivek Gautam					};
2720d98de8efSVivek Gautam				};
2721d98de8efSVivek Gautam			};
2722d98de8efSVivek Gautam		};
2723d98de8efSVivek Gautam
2724d98de8efSVivek Gautam		replicator@3026000 {
2725d98de8efSVivek Gautam			compatible = "arm,coresight-dynamic-replicator", "arm,primecell";
2726d98de8efSVivek Gautam			reg = <0x3026000 0x1000>;
2727d98de8efSVivek Gautam
2728d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
2729d98de8efSVivek Gautam			clock-names = "apb_pclk", "atclk";
2730d98de8efSVivek Gautam
2731d98de8efSVivek Gautam			in-ports {
2732d98de8efSVivek Gautam				port {
2733d98de8efSVivek Gautam					replicator_in: endpoint {
2734d98de8efSVivek Gautam						remote-endpoint =
2735d98de8efSVivek Gautam						  <&etf_out>;
2736d98de8efSVivek Gautam					};
2737d98de8efSVivek Gautam				};
2738d98de8efSVivek Gautam			};
2739d98de8efSVivek Gautam
2740d98de8efSVivek Gautam			out-ports {
2741d98de8efSVivek Gautam				#address-cells = <1>;
2742d98de8efSVivek Gautam				#size-cells = <0>;
2743d98de8efSVivek Gautam
2744d98de8efSVivek Gautam				port@0 {
2745d98de8efSVivek Gautam					reg = <0>;
2746d98de8efSVivek Gautam					replicator_out0: endpoint {
2747d98de8efSVivek Gautam						remote-endpoint =
2748d98de8efSVivek Gautam						  <&etr_in>;
2749d98de8efSVivek Gautam					};
2750d98de8efSVivek Gautam				};
2751d98de8efSVivek Gautam
2752d98de8efSVivek Gautam				port@1 {
2753d98de8efSVivek Gautam					reg = <1>;
2754d98de8efSVivek Gautam					replicator_out1: endpoint {
2755d98de8efSVivek Gautam						remote-endpoint =
2756d98de8efSVivek Gautam						  <&tpiu_in>;
2757d98de8efSVivek Gautam					};
2758d98de8efSVivek Gautam				};
2759d98de8efSVivek Gautam			};
2760d98de8efSVivek Gautam		};
2761d98de8efSVivek Gautam
2762d98de8efSVivek Gautam		etf@3027000 {
2763d98de8efSVivek Gautam			compatible = "arm,coresight-tmc", "arm,primecell";
2764d98de8efSVivek Gautam			reg = <0x3027000 0x1000>;
2765d98de8efSVivek Gautam
2766d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
2767d98de8efSVivek Gautam			clock-names = "apb_pclk", "atclk";
2768d98de8efSVivek Gautam
2769d98de8efSVivek Gautam			in-ports {
2770d98de8efSVivek Gautam				port {
2771d98de8efSVivek Gautam					etf_in: endpoint {
2772d98de8efSVivek Gautam						remote-endpoint =
2773d98de8efSVivek Gautam						  <&merge_funnel_out>;
2774d98de8efSVivek Gautam					};
2775d98de8efSVivek Gautam				};
2776d98de8efSVivek Gautam			};
2777d98de8efSVivek Gautam
2778d98de8efSVivek Gautam			out-ports {
2779d98de8efSVivek Gautam				port {
2780d98de8efSVivek Gautam					etf_out: endpoint {
2781d98de8efSVivek Gautam						remote-endpoint =
2782d98de8efSVivek Gautam						  <&replicator_in>;
2783d98de8efSVivek Gautam					};
2784d98de8efSVivek Gautam				};
2785d98de8efSVivek Gautam			};
2786d98de8efSVivek Gautam		};
2787d98de8efSVivek Gautam
2788d98de8efSVivek Gautam		etr@3028000 {
2789d98de8efSVivek Gautam			compatible = "arm,coresight-tmc", "arm,primecell";
2790d98de8efSVivek Gautam			reg = <0x3028000 0x1000>;
2791d98de8efSVivek Gautam
2792d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
2793d98de8efSVivek Gautam			clock-names = "apb_pclk", "atclk";
2794d98de8efSVivek Gautam			arm,scatter-gather;
2795d98de8efSVivek Gautam
2796d98de8efSVivek Gautam			in-ports {
2797d98de8efSVivek Gautam				port {
2798d98de8efSVivek Gautam					etr_in: endpoint {
2799d98de8efSVivek Gautam						remote-endpoint =
2800d98de8efSVivek Gautam						  <&replicator_out0>;
2801d98de8efSVivek Gautam					};
2802d98de8efSVivek Gautam				};
2803d98de8efSVivek Gautam			};
2804d98de8efSVivek Gautam		};
2805d98de8efSVivek Gautam
2806d98de8efSVivek Gautam		debug@3810000 {
2807d98de8efSVivek Gautam			compatible = "arm,coresight-cpu-debug", "arm,primecell";
2808d98de8efSVivek Gautam			reg = <0x3810000 0x1000>;
2809d98de8efSVivek Gautam
2810d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>;
2811d98de8efSVivek Gautam			clock-names = "apb_pclk";
2812d98de8efSVivek Gautam
2813d98de8efSVivek Gautam			cpu = <&CPU0>;
2814d98de8efSVivek Gautam		};
2815d98de8efSVivek Gautam
2816d98de8efSVivek Gautam		etm@3840000 {
2817d98de8efSVivek Gautam			compatible = "arm,coresight-etm4x", "arm,primecell";
2818d98de8efSVivek Gautam			reg = <0x3840000 0x1000>;
2819d98de8efSVivek Gautam
2820d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
2821d98de8efSVivek Gautam			clock-names = "apb_pclk", "atclk";
2822d98de8efSVivek Gautam
2823d98de8efSVivek Gautam			cpu = <&CPU0>;
2824d98de8efSVivek Gautam
2825d98de8efSVivek Gautam			out-ports {
2826d98de8efSVivek Gautam				port {
2827d98de8efSVivek Gautam					etm0_out: endpoint {
2828d98de8efSVivek Gautam						remote-endpoint =
2829d98de8efSVivek Gautam						  <&apss_funnel0_in0>;
2830d98de8efSVivek Gautam					};
2831d98de8efSVivek Gautam				};
2832d98de8efSVivek Gautam			};
2833d98de8efSVivek Gautam		};
2834d98de8efSVivek Gautam
2835d98de8efSVivek Gautam		debug@3910000 {
2836d98de8efSVivek Gautam			compatible = "arm,coresight-cpu-debug", "arm,primecell";
2837d98de8efSVivek Gautam			reg = <0x3910000 0x1000>;
2838d98de8efSVivek Gautam
2839d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>;
2840d98de8efSVivek Gautam			clock-names = "apb_pclk";
2841d98de8efSVivek Gautam
2842d98de8efSVivek Gautam			cpu = <&CPU1>;
2843d98de8efSVivek Gautam		};
2844d98de8efSVivek Gautam
2845d98de8efSVivek Gautam		etm@3940000 {
2846d98de8efSVivek Gautam			compatible = "arm,coresight-etm4x", "arm,primecell";
2847d98de8efSVivek Gautam			reg = <0x3940000 0x1000>;
2848d98de8efSVivek Gautam
2849d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
2850d98de8efSVivek Gautam			clock-names = "apb_pclk", "atclk";
2851d98de8efSVivek Gautam
2852d98de8efSVivek Gautam			cpu = <&CPU1>;
2853d98de8efSVivek Gautam
2854d98de8efSVivek Gautam			out-ports {
2855d98de8efSVivek Gautam				port {
2856d98de8efSVivek Gautam					etm1_out: endpoint {
2857d98de8efSVivek Gautam						remote-endpoint =
2858d98de8efSVivek Gautam						  <&apss_funnel0_in1>;
2859d98de8efSVivek Gautam					};
2860d98de8efSVivek Gautam				};
2861d98de8efSVivek Gautam			};
2862d98de8efSVivek Gautam		};
2863d98de8efSVivek Gautam
2864d98de8efSVivek Gautam		funnel@39b0000 { /* APSS Funnel 0 */
2865d98de8efSVivek Gautam			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
2866d98de8efSVivek Gautam			reg = <0x39b0000 0x1000>;
2867d98de8efSVivek Gautam
2868d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
2869d98de8efSVivek Gautam			clock-names = "apb_pclk", "atclk";
2870d98de8efSVivek Gautam
2871d98de8efSVivek Gautam			in-ports {
2872d98de8efSVivek Gautam				#address-cells = <1>;
2873d98de8efSVivek Gautam				#size-cells = <0>;
2874d98de8efSVivek Gautam
2875d98de8efSVivek Gautam				port@0 {
2876d98de8efSVivek Gautam					reg = <0>;
2877d98de8efSVivek Gautam					apss_funnel0_in0: endpoint {
2878d98de8efSVivek Gautam						remote-endpoint = <&etm0_out>;
2879d98de8efSVivek Gautam					};
2880d98de8efSVivek Gautam				};
2881d98de8efSVivek Gautam
2882d98de8efSVivek Gautam				port@1 {
2883d98de8efSVivek Gautam					reg = <1>;
2884d98de8efSVivek Gautam					apss_funnel0_in1: endpoint {
2885d98de8efSVivek Gautam						remote-endpoint = <&etm1_out>;
2886d98de8efSVivek Gautam					};
2887d98de8efSVivek Gautam				};
2888d98de8efSVivek Gautam			};
2889d98de8efSVivek Gautam
2890d98de8efSVivek Gautam			out-ports {
2891d98de8efSVivek Gautam				port {
2892d98de8efSVivek Gautam					apss_funnel0_out: endpoint {
2893d98de8efSVivek Gautam						remote-endpoint =
2894d98de8efSVivek Gautam						  <&apss_merge_funnel_in0>;
2895d98de8efSVivek Gautam					};
2896d98de8efSVivek Gautam				};
2897d98de8efSVivek Gautam			};
2898d98de8efSVivek Gautam		};
2899d98de8efSVivek Gautam
2900d98de8efSVivek Gautam		debug@3a10000 {
2901d98de8efSVivek Gautam			compatible = "arm,coresight-cpu-debug", "arm,primecell";
2902d98de8efSVivek Gautam			reg = <0x3a10000 0x1000>;
2903d98de8efSVivek Gautam
2904d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>;
2905d98de8efSVivek Gautam			clock-names = "apb_pclk";
2906d98de8efSVivek Gautam
2907d98de8efSVivek Gautam			cpu = <&CPU2>;
2908d98de8efSVivek Gautam		};
2909d98de8efSVivek Gautam
2910d98de8efSVivek Gautam		etm@3a40000 {
2911d98de8efSVivek Gautam			compatible = "arm,coresight-etm4x", "arm,primecell";
2912d98de8efSVivek Gautam			reg = <0x3a40000 0x1000>;
2913d98de8efSVivek Gautam
2914d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
2915d98de8efSVivek Gautam			clock-names = "apb_pclk", "atclk";
2916d98de8efSVivek Gautam
2917d98de8efSVivek Gautam			cpu = <&CPU2>;
2918d98de8efSVivek Gautam
2919d98de8efSVivek Gautam			out-ports {
2920d98de8efSVivek Gautam				port {
2921d98de8efSVivek Gautam					etm2_out: endpoint {
2922d98de8efSVivek Gautam						remote-endpoint =
2923d98de8efSVivek Gautam						  <&apss_funnel1_in0>;
2924d98de8efSVivek Gautam					};
2925d98de8efSVivek Gautam				};
2926d98de8efSVivek Gautam			};
2927d98de8efSVivek Gautam		};
2928d98de8efSVivek Gautam
2929d98de8efSVivek Gautam		debug@3b10000 {
2930d98de8efSVivek Gautam			compatible = "arm,coresight-cpu-debug", "arm,primecell";
2931d98de8efSVivek Gautam			reg = <0x3b10000 0x1000>;
2932d98de8efSVivek Gautam
2933d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>;
2934d98de8efSVivek Gautam			clock-names = "apb_pclk";
2935d98de8efSVivek Gautam
2936d98de8efSVivek Gautam			cpu = <&CPU3>;
2937d98de8efSVivek Gautam		};
2938d98de8efSVivek Gautam
2939d98de8efSVivek Gautam		etm@3b40000 {
2940d98de8efSVivek Gautam			compatible = "arm,coresight-etm4x", "arm,primecell";
2941d98de8efSVivek Gautam			reg = <0x3b40000 0x1000>;
2942d98de8efSVivek Gautam
2943d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
2944d98de8efSVivek Gautam			clock-names = "apb_pclk", "atclk";
2945d98de8efSVivek Gautam
2946d98de8efSVivek Gautam			cpu = <&CPU3>;
2947d98de8efSVivek Gautam
2948d98de8efSVivek Gautam			out-ports {
2949d98de8efSVivek Gautam				port {
2950d98de8efSVivek Gautam					etm3_out: endpoint {
2951d98de8efSVivek Gautam						remote-endpoint =
2952d98de8efSVivek Gautam						  <&apss_funnel1_in1>;
2953d98de8efSVivek Gautam					};
2954d98de8efSVivek Gautam				};
2955d98de8efSVivek Gautam			};
2956d98de8efSVivek Gautam		};
2957d98de8efSVivek Gautam
2958d98de8efSVivek Gautam		funnel@3bb0000 { /* APSS Funnel 1 */
2959d98de8efSVivek Gautam			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
2960d98de8efSVivek Gautam			reg = <0x3bb0000 0x1000>;
2961d98de8efSVivek Gautam
2962d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
2963d98de8efSVivek Gautam			clock-names = "apb_pclk", "atclk";
2964d98de8efSVivek Gautam
2965d98de8efSVivek Gautam			in-ports {
2966d98de8efSVivek Gautam				#address-cells = <1>;
2967d98de8efSVivek Gautam				#size-cells = <0>;
2968d98de8efSVivek Gautam
2969d98de8efSVivek Gautam				port@0 {
2970d98de8efSVivek Gautam					reg = <0>;
2971d98de8efSVivek Gautam					apss_funnel1_in0: endpoint {
2972d98de8efSVivek Gautam						remote-endpoint = <&etm2_out>;
2973d98de8efSVivek Gautam					};
2974d98de8efSVivek Gautam				};
2975d98de8efSVivek Gautam
2976d98de8efSVivek Gautam				port@1 {
2977d98de8efSVivek Gautam					reg = <1>;
2978d98de8efSVivek Gautam					apss_funnel1_in1: endpoint {
2979d98de8efSVivek Gautam						remote-endpoint = <&etm3_out>;
2980d98de8efSVivek Gautam					};
2981d98de8efSVivek Gautam				};
2982d98de8efSVivek Gautam			};
2983d98de8efSVivek Gautam
2984d98de8efSVivek Gautam			out-ports {
2985d98de8efSVivek Gautam				port {
2986d98de8efSVivek Gautam					apss_funnel1_out: endpoint {
2987d98de8efSVivek Gautam						remote-endpoint =
2988d98de8efSVivek Gautam						  <&apss_merge_funnel_in1>;
2989d98de8efSVivek Gautam					};
2990d98de8efSVivek Gautam				};
2991d98de8efSVivek Gautam			};
2992d98de8efSVivek Gautam		};
2993d98de8efSVivek Gautam
2994d98de8efSVivek Gautam		funnel@3bc0000 {
2995d98de8efSVivek Gautam			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
2996d98de8efSVivek Gautam			reg = <0x3bc0000 0x1000>;
2997d98de8efSVivek Gautam
2998d98de8efSVivek Gautam			clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
2999d98de8efSVivek Gautam			clock-names = "apb_pclk", "atclk";
3000d98de8efSVivek Gautam
3001d98de8efSVivek Gautam			in-ports {
3002d98de8efSVivek Gautam				#address-cells = <1>;
3003d98de8efSVivek Gautam				#size-cells = <0>;
3004d98de8efSVivek Gautam
3005d98de8efSVivek Gautam				port@0 {
3006d98de8efSVivek Gautam					reg = <0>;
3007d98de8efSVivek Gautam					apss_merge_funnel_in0: endpoint {
3008d98de8efSVivek Gautam						remote-endpoint =
3009d98de8efSVivek Gautam						  <&apss_funnel0_out>;
3010d98de8efSVivek Gautam					};
3011d98de8efSVivek Gautam				};
3012d98de8efSVivek Gautam
3013d98de8efSVivek Gautam				port@1 {
3014d98de8efSVivek Gautam					reg = <1>;
3015d98de8efSVivek Gautam					apss_merge_funnel_in1: endpoint {
3016d98de8efSVivek Gautam						remote-endpoint =
3017d98de8efSVivek Gautam						  <&apss_funnel1_out>;
3018d98de8efSVivek Gautam					};
3019d98de8efSVivek Gautam				};
3020d98de8efSVivek Gautam			};
3021d98de8efSVivek Gautam
3022d98de8efSVivek Gautam			out-ports {
3023d98de8efSVivek Gautam				port {
3024d98de8efSVivek Gautam					apss_merge_funnel_out: endpoint {
3025d98de8efSVivek Gautam						remote-endpoint =
3026d98de8efSVivek Gautam						  <&funnel1_in>;
3027d98de8efSVivek Gautam					};
3028d98de8efSVivek Gautam				};
3029d98de8efSVivek Gautam			};
3030d98de8efSVivek Gautam		};
30310a275a35SKonrad Dybcio
303299c3334dSRajendra Nayak		kryocc: clock-controller@6400000 {
30330a275a35SKonrad Dybcio			compatible = "qcom,msm8996-apcc";
303486f6d622SBjorn Andersson			reg = <0x06400000 0x90000>;
30350a275a35SKonrad Dybcio
3036ac0d84d4SDmitry Baryshkov			clock-names = "xo", "sys_apcs_aux";
30378ae72166SDmitry Baryshkov			clocks = <&rpmcc RPM_SMD_XO_A_CLK_SRC>, <&apcs_glb>;
30380a275a35SKonrad Dybcio
303999c3334dSRajendra Nayak			#clock-cells = <1>;
304099c3334dSRajendra Nayak		};
304199c3334dSRajendra Nayak
304250aa72ccSBjorn Andersson		usb3: usb@6af8800 {
304350aa72ccSBjorn Andersson			compatible = "qcom,msm8996-dwc3", "qcom,dwc3";
304450aa72ccSBjorn Andersson			reg = <0x06af8800 0x400>;
304512c67fe6SVivek Gautam			#address-cells = <1>;
304612c67fe6SVivek Gautam			#size-cells = <1>;
304712c67fe6SVivek Gautam			ranges;
304812c67fe6SVivek Gautam
3049*58508179SKonrad Dybcio			interrupts = <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>,
3050*58508179SKonrad Dybcio				     <GIC_SPI 347 IRQ_TYPE_LEVEL_HIGH>,
3051*58508179SKonrad Dybcio				     <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>,
30524753492dSYassine Oudjana				     <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH>;
3053*58508179SKonrad Dybcio			interrupt-names = "pwr_event",
3054*58508179SKonrad Dybcio					  "qusb2_phy",
3055*58508179SKonrad Dybcio					  "hs_phy_irq",
3056*58508179SKonrad Dybcio					  "ss_phy_irq";
30574753492dSYassine Oudjana
305850aa72ccSBjorn Andersson			clocks = <&gcc GCC_SYS_NOC_USB3_AXI_CLK>,
305950aa72ccSBjorn Andersson				 <&gcc GCC_USB30_MASTER_CLK>,
306050aa72ccSBjorn Andersson				 <&gcc GCC_AGGRE2_USB3_AXI_CLK>,
306150aa72ccSBjorn Andersson				 <&gcc GCC_USB30_SLEEP_CLK>,
30628d5fd4e4SKrzysztof Kozlowski				 <&gcc GCC_USB30_MOCK_UTMI_CLK>;
30638d5fd4e4SKrzysztof Kozlowski			clock-names = "cfg_noc",
30648d5fd4e4SKrzysztof Kozlowski				      "core",
30658d5fd4e4SKrzysztof Kozlowski				      "iface",
30668d5fd4e4SKrzysztof Kozlowski				      "sleep",
30678d5fd4e4SKrzysztof Kozlowski				      "mock_utmi";
306812c67fe6SVivek Gautam
306950aa72ccSBjorn Andersson			assigned-clocks = <&gcc GCC_USB30_MOCK_UTMI_CLK>,
307050aa72ccSBjorn Andersson					  <&gcc GCC_USB30_MASTER_CLK>;
307150aa72ccSBjorn Andersson			assigned-clock-rates = <19200000>, <120000000>;
307250aa72ccSBjorn Andersson
3073f35aaef1SYassine Oudjana			interconnects = <&a2noc MASTER_USB3 &bimc SLAVE_EBI_CH0>,
3074f35aaef1SYassine Oudjana					<&bimc MASTER_AMPSS_M0 &snoc SLAVE_USB3>;
3075f35aaef1SYassine Oudjana			interconnect-names = "usb-ddr", "apps-usb";
3076f35aaef1SYassine Oudjana
307750aa72ccSBjorn Andersson			power-domains = <&gcc USB30_GDSC>;
307812c67fe6SVivek Gautam			status = "disabled";
307912c67fe6SVivek Gautam
3080b77a1c4dSKrzysztof Kozlowski			usb3_dwc3: usb@6a00000 {
308150aa72ccSBjorn Andersson				compatible = "snps,dwc3";
308250aa72ccSBjorn Andersson				reg = <0x06a00000 0xcc00>;
3083b79663a5SKrzysztof Kozlowski				interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
308450aa72ccSBjorn Andersson				phys = <&hsusb_phy1>, <&ssusb_phy_0>;
308550aa72ccSBjorn Andersson				phy-names = "usb2-phy", "usb3-phy";
3086d0af0537SKonrad Dybcio				snps,hird-threshold = /bits/ 8 <0>;
308750aa72ccSBjorn Andersson				snps,dis_u2_susphy_quirk;
308850aa72ccSBjorn Andersson				snps,dis_enblslpm_quirk;
3089d0af0537SKonrad Dybcio				snps,is-utmi-l1-suspend;
30902a3ce77cSKrishna Kurapati				snps,parkmode-disable-ss-quirk;
3091d0af0537SKonrad Dybcio				tx-fifo-resize;
309212c67fe6SVivek Gautam			};
309312c67fe6SVivek Gautam		};
309412c67fe6SVivek Gautam
309575b77d64SBjorn Andersson		usb3phy: phy@7410000 {
309642bd0544SVivek Gautam			compatible = "qcom,msm8996-qmp-usb3-phy";
309786f6d622SBjorn Andersson			reg = <0x07410000 0x1c4>;
309842bd0544SVivek Gautam			#address-cells = <1>;
309942bd0544SVivek Gautam			#size-cells = <1>;
310042bd0544SVivek Gautam			ranges;
310142bd0544SVivek Gautam
310242bd0544SVivek Gautam			clocks = <&gcc GCC_USB3_PHY_AUX_CLK>,
310342bd0544SVivek Gautam				<&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
310442bd0544SVivek Gautam				<&gcc GCC_USB3_CLKREF_CLK>;
310542bd0544SVivek Gautam			clock-names = "aux", "cfg_ahb", "ref";
310642bd0544SVivek Gautam
310742bd0544SVivek Gautam			resets = <&gcc GCC_USB3_PHY_BCR>,
310842bd0544SVivek Gautam				<&gcc GCC_USB3PHY_PHY_BCR>;
310942bd0544SVivek Gautam			reset-names = "phy", "common";
311042bd0544SVivek Gautam			status = "disabled";
311142bd0544SVivek Gautam
31121351512fSShawn Guo			ssusb_phy_0: phy@7410200 {
311386f6d622SBjorn Andersson				reg = <0x07410200 0x200>,
311486f6d622SBjorn Andersson				      <0x07410400 0x130>,
311586f6d622SBjorn Andersson				      <0x07410600 0x1a8>;
311642bd0544SVivek Gautam				#phy-cells = <0>;
311742bd0544SVivek Gautam
3118b874fff9SDmitry Baryshkov				#clock-cells = <0>;
311942bd0544SVivek Gautam				clock-output-names = "usb3_phy_pipe_clk_src";
312042bd0544SVivek Gautam				clocks = <&gcc GCC_USB3_PHY_PIPE_CLK>;
312142bd0544SVivek Gautam				clock-names = "pipe0";
312242bd0544SVivek Gautam			};
312342bd0544SVivek Gautam		};
312442bd0544SVivek Gautam
31256785fa95SVivek Gautam		hsusb_phy1: phy@7411000 {
31266785fa95SVivek Gautam			compatible = "qcom,msm8996-qusb2-phy";
312786f6d622SBjorn Andersson			reg = <0x07411000 0x180>;
31286785fa95SVivek Gautam			#phy-cells = <0>;
31296785fa95SVivek Gautam
31306785fa95SVivek Gautam			clocks = <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
31316785fa95SVivek Gautam				<&gcc GCC_RX1_USB2_CLKREF_CLK>;
31326785fa95SVivek Gautam			clock-names = "cfg_ahb", "ref";
31336785fa95SVivek Gautam
31346785fa95SVivek Gautam			resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>;
31356785fa95SVivek Gautam			nvmem-cells = <&qusb2p_hstx_trim>;
31366785fa95SVivek Gautam			status = "disabled";
31376785fa95SVivek Gautam		};
31386785fa95SVivek Gautam
31396785fa95SVivek Gautam		hsusb_phy2: phy@7412000 {
31406785fa95SVivek Gautam			compatible = "qcom,msm8996-qusb2-phy";
314186f6d622SBjorn Andersson			reg = <0x07412000 0x180>;
31426785fa95SVivek Gautam			#phy-cells = <0>;
31436785fa95SVivek Gautam
31446785fa95SVivek Gautam			clocks = <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
31456785fa95SVivek Gautam				<&gcc GCC_RX2_USB2_CLKREF_CLK>;
31466785fa95SVivek Gautam			clock-names = "cfg_ahb", "ref";
31476785fa95SVivek Gautam
31486785fa95SVivek Gautam			resets = <&gcc GCC_QUSB2PHY_SEC_BCR>;
31496785fa95SVivek Gautam			nvmem-cells = <&qusb2s_hstx_trim>;
31506785fa95SVivek Gautam			status = "disabled";
31516785fa95SVivek Gautam		};
31521e39255eSVivek Gautam
315396bb736fSBhupesh Sharma		sdhc1: mmc@7464900 {
315452f6fa2dSPetr Vorel			compatible = "qcom,msm8996-sdhci", "qcom,sdhci-msm-v4";
3155fbb8a3a8SKonrad Dybcio			reg = <0x07464900 0x11c>, <0x07464000 0x800>;
3156eddc917dSKrzysztof Kozlowski			reg-names = "hc", "core";
3157fbb8a3a8SKonrad Dybcio
3158fbb8a3a8SKonrad Dybcio			interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>,
3159fbb8a3a8SKonrad Dybcio					<GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>;
3160fbb8a3a8SKonrad Dybcio			interrupt-names = "hc_irq", "pwr_irq";
3161fbb8a3a8SKonrad Dybcio
3162fbb8a3a8SKonrad Dybcio			clock-names = "iface", "core", "xo";
3163fbb8a3a8SKonrad Dybcio			clocks = <&gcc GCC_SDCC1_AHB_CLK>,
3164fbb8a3a8SKonrad Dybcio				<&gcc GCC_SDCC1_APPS_CLK>,
31658ae72166SDmitry Baryshkov				<&rpmcc RPM_SMD_XO_CLK_SRC>;
316668333a42SKonrad Dybcio			resets = <&gcc GCC_SDCC1_BCR>;
3167fbb8a3a8SKonrad Dybcio
3168fbb8a3a8SKonrad Dybcio			pinctrl-names = "default", "sleep";
3169fbb8a3a8SKonrad Dybcio			pinctrl-0 = <&sdc1_state_on>;
3170fbb8a3a8SKonrad Dybcio			pinctrl-1 = <&sdc1_state_off>;
3171fbb8a3a8SKonrad Dybcio
3172fbb8a3a8SKonrad Dybcio			bus-width = <8>;
3173fbb8a3a8SKonrad Dybcio			non-removable;
317450aa72ccSBjorn Andersson			status = "disabled";
3175fbb8a3a8SKonrad Dybcio		};
3176fbb8a3a8SKonrad Dybcio
317796bb736fSBhupesh Sharma		sdhc2: mmc@74a4900 {
317852f6fa2dSPetr Vorel			compatible = "qcom,msm8996-sdhci", "qcom,sdhci-msm-v4";
317950aa72ccSBjorn Andersson			reg = <0x074a4900 0x314>, <0x074a4000 0x800>;
3180eddc917dSKrzysztof Kozlowski			reg-names = "hc", "core";
318150aa72ccSBjorn Andersson
31823343de9aSKonrad Dybcio			interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
31833343de9aSKonrad Dybcio				      <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
318450aa72ccSBjorn Andersson			interrupt-names = "hc_irq", "pwr_irq";
318550aa72ccSBjorn Andersson
318650aa72ccSBjorn Andersson			clock-names = "iface", "core", "xo";
318750aa72ccSBjorn Andersson			clocks = <&gcc GCC_SDCC2_AHB_CLK>,
318850aa72ccSBjorn Andersson				<&gcc GCC_SDCC2_APPS_CLK>,
31898ae72166SDmitry Baryshkov				<&rpmcc RPM_SMD_XO_CLK_SRC>;
319068333a42SKonrad Dybcio			resets = <&gcc GCC_SDCC2_BCR>;
31913343de9aSKonrad Dybcio
31923343de9aSKonrad Dybcio			pinctrl-names = "default", "sleep";
31933343de9aSKonrad Dybcio			pinctrl-0 = <&sdc2_state_on>;
31943343de9aSKonrad Dybcio			pinctrl-1 = <&sdc2_state_off>;
31953343de9aSKonrad Dybcio
319650aa72ccSBjorn Andersson			bus-width = <4>;
31973343de9aSKonrad Dybcio			status = "disabled";
319850aa72ccSBjorn Andersson		 };
319950aa72ccSBjorn Andersson
3200bbef0142SShawn Guo		blsp1_dma: dma-controller@7544000 {
3201a4bdd15eSKonrad Dybcio			compatible = "qcom,bam-v1.7.0";
3202a4bdd15eSKonrad Dybcio			reg = <0x07544000 0x2b000>;
3203a4bdd15eSKonrad Dybcio			interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>;
3204a4bdd15eSKonrad Dybcio			clocks = <&gcc GCC_BLSP1_AHB_CLK>;
3205a4bdd15eSKonrad Dybcio			clock-names = "bam_clk";
3206a4bdd15eSKonrad Dybcio			qcom,controlled-remotely;
3207a4bdd15eSKonrad Dybcio			#dma-cells = <1>;
3208a4bdd15eSKonrad Dybcio			qcom,ee = <0>;
3209a4bdd15eSKonrad Dybcio		};
3210a4bdd15eSKonrad Dybcio
3211ff5e2b87SKonrad Dybcio		blsp1_uart2: serial@7570000 {
321250aa72ccSBjorn Andersson			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
321350aa72ccSBjorn Andersson			reg = <0x07570000 0x1000>;
321450aa72ccSBjorn Andersson			interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
321550aa72ccSBjorn Andersson			clocks = <&gcc GCC_BLSP1_UART2_APPS_CLK>,
321650aa72ccSBjorn Andersson				 <&gcc GCC_BLSP1_AHB_CLK>;
321750aa72ccSBjorn Andersson			clock-names = "core", "iface";
3218c57b4247SYassine Oudjana			pinctrl-names = "default", "sleep";
3219c57b4247SYassine Oudjana			pinctrl-0 = <&blsp1_uart2_default>;
3220c57b4247SYassine Oudjana			pinctrl-1 = <&blsp1_uart2_sleep>;
3221a4bdd15eSKonrad Dybcio			dmas = <&blsp1_dma 2>, <&blsp1_dma 3>;
3222a4bdd15eSKonrad Dybcio			dma-names = "tx", "rx";
322350aa72ccSBjorn Andersson			status = "disabled";
322450aa72ccSBjorn Andersson		};
322550aa72ccSBjorn Andersson
3226ff5e2b87SKonrad Dybcio		blsp1_spi1: spi@7575000 {
322750aa72ccSBjorn Andersson			compatible = "qcom,spi-qup-v2.2.1";
322850aa72ccSBjorn Andersson			reg = <0x07575000 0x600>;
322950aa72ccSBjorn Andersson			interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
323050aa72ccSBjorn Andersson			clocks = <&gcc GCC_BLSP1_QUP1_SPI_APPS_CLK>,
323150aa72ccSBjorn Andersson				 <&gcc GCC_BLSP1_AHB_CLK>;
323250aa72ccSBjorn Andersson			clock-names = "core", "iface";
323350aa72ccSBjorn Andersson			pinctrl-names = "default", "sleep";
323435a4a8b6SKonrad Dybcio			pinctrl-0 = <&blsp1_spi1_default>;
323535a4a8b6SKonrad Dybcio			pinctrl-1 = <&blsp1_spi1_sleep>;
3236a4bdd15eSKonrad Dybcio			dmas = <&blsp1_dma 12>, <&blsp1_dma 13>;
3237a4bdd15eSKonrad Dybcio			dma-names = "tx", "rx";
323850aa72ccSBjorn Andersson			#address-cells = <1>;
323950aa72ccSBjorn Andersson			#size-cells = <0>;
324050aa72ccSBjorn Andersson			status = "disabled";
324150aa72ccSBjorn Andersson		};
324250aa72ccSBjorn Andersson
3243ff5e2b87SKonrad Dybcio		blsp1_i2c3: i2c@7577000 {
324450aa72ccSBjorn Andersson			compatible = "qcom,i2c-qup-v2.2.1";
324550aa72ccSBjorn Andersson			reg = <0x07577000 0x1000>;
324650aa72ccSBjorn Andersson			interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
32472374b99eSKrzysztof Kozlowski			clocks = <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>,
32482374b99eSKrzysztof Kozlowski				 <&gcc GCC_BLSP1_AHB_CLK>;
32492374b99eSKrzysztof Kozlowski			clock-names = "core", "iface";
325050aa72ccSBjorn Andersson			pinctrl-names = "default", "sleep";
325135a4a8b6SKonrad Dybcio			pinctrl-0 = <&blsp1_i2c3_default>;
325235a4a8b6SKonrad Dybcio			pinctrl-1 = <&blsp1_i2c3_sleep>;
3253a4bdd15eSKonrad Dybcio			dmas = <&blsp1_dma 16>, <&blsp1_dma 17>;
3254a4bdd15eSKonrad Dybcio			dma-names = "tx", "rx";
325550aa72ccSBjorn Andersson			#address-cells = <1>;
325650aa72ccSBjorn Andersson			#size-cells = <0>;
325750aa72ccSBjorn Andersson			status = "disabled";
325850aa72ccSBjorn Andersson		};
325950aa72ccSBjorn Andersson
326018c32de6SHarry Austen		blsp1_i2c6: i2c@757a000 {
326118c32de6SHarry Austen			compatible = "qcom,i2c-qup-v2.2.1";
326218c32de6SHarry Austen			reg = <0x757a000 0x1000>;
326318c32de6SHarry Austen			interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
326418c32de6SHarry Austen			clocks = <&gcc GCC_BLSP1_QUP6_I2C_APPS_CLK>,
326518c32de6SHarry Austen				 <&gcc GCC_BLSP1_AHB_CLK>;
326618c32de6SHarry Austen			clock-names = "core", "iface";
326718c32de6SHarry Austen			pinctrl-names = "default", "sleep";
326818c32de6SHarry Austen			pinctrl-0 = <&blsp1_i2c6_default>;
326918c32de6SHarry Austen			pinctrl-1 = <&blsp1_i2c6_sleep>;
327018c32de6SHarry Austen			dmas = <&blsp1_dma 22>, <&blsp1_dma 23>;
327118c32de6SHarry Austen			dma-names = "tx", "rx";
327218c32de6SHarry Austen			#address-cells = <1>;
327318c32de6SHarry Austen			#size-cells = <0>;
327418c32de6SHarry Austen			status = "disabled";
327518c32de6SHarry Austen		};
327618c32de6SHarry Austen
3277bbef0142SShawn Guo		blsp2_dma: dma-controller@7584000 {
3278a4bdd15eSKonrad Dybcio			compatible = "qcom,bam-v1.7.0";
3279a4bdd15eSKonrad Dybcio			reg = <0x07584000 0x2b000>;
3280a4bdd15eSKonrad Dybcio			interrupts = <GIC_SPI 239 IRQ_TYPE_LEVEL_HIGH>;
3281a4bdd15eSKonrad Dybcio			clocks = <&gcc GCC_BLSP2_AHB_CLK>;
3282a4bdd15eSKonrad Dybcio			clock-names = "bam_clk";
3283a4bdd15eSKonrad Dybcio			qcom,controlled-remotely;
3284a4bdd15eSKonrad Dybcio			#dma-cells = <1>;
3285a4bdd15eSKonrad Dybcio			qcom,ee = <0>;
3286a4bdd15eSKonrad Dybcio		};
3287a4bdd15eSKonrad Dybcio
3288ff5e2b87SKonrad Dybcio		blsp2_uart2: serial@75b0000 {
328950aa72ccSBjorn Andersson			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
329050aa72ccSBjorn Andersson			reg = <0x075b0000 0x1000>;
329150aa72ccSBjorn Andersson			interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
329250aa72ccSBjorn Andersson			clocks = <&gcc GCC_BLSP2_UART2_APPS_CLK>,
329350aa72ccSBjorn Andersson				 <&gcc GCC_BLSP2_AHB_CLK>;
329450aa72ccSBjorn Andersson			clock-names = "core", "iface";
329550aa72ccSBjorn Andersson			status = "disabled";
329650aa72ccSBjorn Andersson		};
329750aa72ccSBjorn Andersson
3298ff5e2b87SKonrad Dybcio		blsp2_uart3: serial@75b1000 {
329950aa72ccSBjorn Andersson			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
330050aa72ccSBjorn Andersson			reg = <0x075b1000 0x1000>;
330150aa72ccSBjorn Andersson			interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>;
330250aa72ccSBjorn Andersson			clocks = <&gcc GCC_BLSP2_UART3_APPS_CLK>,
330350aa72ccSBjorn Andersson				 <&gcc GCC_BLSP2_AHB_CLK>;
330450aa72ccSBjorn Andersson			clock-names = "core", "iface";
330550aa72ccSBjorn Andersson			status = "disabled";
330650aa72ccSBjorn Andersson		};
330750aa72ccSBjorn Andersson
3308ff5e2b87SKonrad Dybcio		blsp2_i2c1: i2c@75b5000 {
330950aa72ccSBjorn Andersson			compatible = "qcom,i2c-qup-v2.2.1";
331050aa72ccSBjorn Andersson			reg = <0x075b5000 0x1000>;
331150aa72ccSBjorn Andersson			interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
33122374b99eSKrzysztof Kozlowski			clocks = <&gcc GCC_BLSP2_QUP1_I2C_APPS_CLK>,
33132374b99eSKrzysztof Kozlowski				 <&gcc GCC_BLSP2_AHB_CLK>;
33142374b99eSKrzysztof Kozlowski			clock-names = "core", "iface";
331550aa72ccSBjorn Andersson			pinctrl-names = "default", "sleep";
331635a4a8b6SKonrad Dybcio			pinctrl-0 = <&blsp2_i2c1_default>;
331735a4a8b6SKonrad Dybcio			pinctrl-1 = <&blsp2_i2c1_sleep>;
3318a4bdd15eSKonrad Dybcio			dmas = <&blsp2_dma 12>, <&blsp2_dma 13>;
3319a4bdd15eSKonrad Dybcio			dma-names = "tx", "rx";
332050aa72ccSBjorn Andersson			#address-cells = <1>;
332150aa72ccSBjorn Andersson			#size-cells = <0>;
332250aa72ccSBjorn Andersson			status = "disabled";
332350aa72ccSBjorn Andersson		};
332450aa72ccSBjorn Andersson
3325ff5e2b87SKonrad Dybcio		blsp2_i2c2: i2c@75b6000 {
332650aa72ccSBjorn Andersson			compatible = "qcom,i2c-qup-v2.2.1";
332750aa72ccSBjorn Andersson			reg = <0x075b6000 0x1000>;
332850aa72ccSBjorn Andersson			interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
33292374b99eSKrzysztof Kozlowski			clocks = <&gcc GCC_BLSP2_QUP2_I2C_APPS_CLK>,
33302374b99eSKrzysztof Kozlowski				 <&gcc GCC_BLSP2_AHB_CLK>;
33312374b99eSKrzysztof Kozlowski			clock-names = "core", "iface";
333250aa72ccSBjorn Andersson			pinctrl-names = "default", "sleep";
333335a4a8b6SKonrad Dybcio			pinctrl-0 = <&blsp2_i2c2_default>;
333435a4a8b6SKonrad Dybcio			pinctrl-1 = <&blsp2_i2c2_sleep>;
3335a4bdd15eSKonrad Dybcio			dmas = <&blsp2_dma 14>, <&blsp2_dma 15>;
3336a4bdd15eSKonrad Dybcio			dma-names = "tx", "rx";
333750aa72ccSBjorn Andersson			#address-cells = <1>;
333850aa72ccSBjorn Andersson			#size-cells = <0>;
333950aa72ccSBjorn Andersson			status = "disabled";
334050aa72ccSBjorn Andersson		};
334150aa72ccSBjorn Andersson
3342214faf07SYassine Oudjana		blsp2_i2c3: i2c@75b7000 {
3343214faf07SYassine Oudjana			compatible = "qcom,i2c-qup-v2.2.1";
3344214faf07SYassine Oudjana			reg = <0x075b7000 0x1000>;
3345214faf07SYassine Oudjana			interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
33462374b99eSKrzysztof Kozlowski			clocks = <&gcc GCC_BLSP2_QUP3_I2C_APPS_CLK>,
33472374b99eSKrzysztof Kozlowski				 <&gcc GCC_BLSP2_AHB_CLK>;
33482374b99eSKrzysztof Kozlowski			clock-names = "core", "iface";
3349214faf07SYassine Oudjana			clock-frequency = <400000>;
3350214faf07SYassine Oudjana			pinctrl-names = "default", "sleep";
3351214faf07SYassine Oudjana			pinctrl-0 = <&blsp2_i2c3_default>;
3352214faf07SYassine Oudjana			pinctrl-1 = <&blsp2_i2c3_sleep>;
3353214faf07SYassine Oudjana			dmas = <&blsp2_dma 16>, <&blsp2_dma 17>;
3354214faf07SYassine Oudjana			dma-names = "tx", "rx";
3355214faf07SYassine Oudjana			#address-cells = <1>;
3356214faf07SYassine Oudjana			#size-cells = <0>;
3357214faf07SYassine Oudjana			status = "disabled";
3358214faf07SYassine Oudjana		};
3359214faf07SYassine Oudjana
3360c33d9068SKonrad Dybcio		blsp2_i2c5: i2c@75b9000 {
3361c33d9068SKonrad Dybcio			compatible = "qcom,i2c-qup-v2.2.1";
3362c33d9068SKonrad Dybcio			reg = <0x75b9000 0x1000>;
3363c33d9068SKonrad Dybcio			interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
33642374b99eSKrzysztof Kozlowski			clocks = <&gcc GCC_BLSP2_QUP5_I2C_APPS_CLK>,
33652374b99eSKrzysztof Kozlowski				 <&gcc GCC_BLSP2_AHB_CLK>;
33662374b99eSKrzysztof Kozlowski			clock-names = "core", "iface";
3367c33d9068SKonrad Dybcio			pinctrl-names = "default";
3368c33d9068SKonrad Dybcio			pinctrl-0 = <&blsp2_i2c5_default>;
3369a4bdd15eSKonrad Dybcio			dmas = <&blsp2_dma 20>, <&blsp2_dma 21>;
3370a4bdd15eSKonrad Dybcio			dma-names = "tx", "rx";
3371c33d9068SKonrad Dybcio			#address-cells = <1>;
3372c33d9068SKonrad Dybcio			#size-cells = <0>;
3373c33d9068SKonrad Dybcio			status = "disabled";
3374c33d9068SKonrad Dybcio		};
3375c33d9068SKonrad Dybcio
3376c33d9068SKonrad Dybcio		blsp2_i2c6: i2c@75ba000 {
3377c33d9068SKonrad Dybcio			compatible = "qcom,i2c-qup-v2.2.1";
3378c33d9068SKonrad Dybcio			reg = <0x75ba000 0x1000>;
3379c33d9068SKonrad Dybcio			interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
33802374b99eSKrzysztof Kozlowski			clocks = <&gcc GCC_BLSP2_QUP6_I2C_APPS_CLK>,
33812374b99eSKrzysztof Kozlowski				 <&gcc GCC_BLSP2_AHB_CLK>;
33822374b99eSKrzysztof Kozlowski			clock-names = "core", "iface";
3383c33d9068SKonrad Dybcio			pinctrl-names = "default", "sleep";
3384c33d9068SKonrad Dybcio			pinctrl-0 = <&blsp2_i2c6_default>;
3385c33d9068SKonrad Dybcio			pinctrl-1 = <&blsp2_i2c6_sleep>;
3386a4bdd15eSKonrad Dybcio			dmas = <&blsp2_dma 22>, <&blsp2_dma 23>;
3387a4bdd15eSKonrad Dybcio			dma-names = "tx", "rx";
3388c33d9068SKonrad Dybcio			#address-cells = <1>;
3389c33d9068SKonrad Dybcio			#size-cells = <0>;
3390c33d9068SKonrad Dybcio			status = "disabled";
3391c33d9068SKonrad Dybcio		};
3392c33d9068SKonrad Dybcio
3393ff5e2b87SKonrad Dybcio		blsp2_spi6: spi@75ba000 {
339450aa72ccSBjorn Andersson			compatible = "qcom,spi-qup-v2.2.1";
339550aa72ccSBjorn Andersson			reg = <0x075ba000 0x600>;
339650aa72ccSBjorn Andersson			interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
339750aa72ccSBjorn Andersson			clocks = <&gcc GCC_BLSP2_QUP6_SPI_APPS_CLK>,
339850aa72ccSBjorn Andersson				 <&gcc GCC_BLSP2_AHB_CLK>;
339950aa72ccSBjorn Andersson			clock-names = "core", "iface";
340050aa72ccSBjorn Andersson			pinctrl-names = "default", "sleep";
340135a4a8b6SKonrad Dybcio			pinctrl-0 = <&blsp2_spi6_default>;
340235a4a8b6SKonrad Dybcio			pinctrl-1 = <&blsp2_spi6_sleep>;
3403a4bdd15eSKonrad Dybcio			dmas = <&blsp2_dma 22>, <&blsp2_dma 23>;
3404a4bdd15eSKonrad Dybcio			dma-names = "tx", "rx";
340550aa72ccSBjorn Andersson			#address-cells = <1>;
340650aa72ccSBjorn Andersson			#size-cells = <0>;
340750aa72ccSBjorn Andersson			status = "disabled";
340850aa72ccSBjorn Andersson		};
340950aa72ccSBjorn Andersson
34101504b91cSManu Gautam		usb2: usb@76f8800 {
34111504b91cSManu Gautam			compatible = "qcom,msm8996-dwc3", "qcom,dwc3";
341286f6d622SBjorn Andersson			reg = <0x076f8800 0x400>;
34131e39255eSVivek Gautam			#address-cells = <1>;
34141e39255eSVivek Gautam			#size-cells = <1>;
34151e39255eSVivek Gautam			ranges;
34161e39255eSVivek Gautam
341736541089SKonrad Dybcio			interrupts = <GIC_SPI 352 IRQ_TYPE_LEVEL_HIGH>;
341836541089SKonrad Dybcio			interrupt-names = "hs_phy_irq";
341936541089SKonrad Dybcio
34201e39255eSVivek Gautam			clocks = <&gcc GCC_PERIPH_NOC_USB20_AHB_CLK>,
34211e39255eSVivek Gautam				<&gcc GCC_USB20_MASTER_CLK>,
34221e39255eSVivek Gautam				<&gcc GCC_USB20_MOCK_UTMI_CLK>,
34231e39255eSVivek Gautam				<&gcc GCC_USB20_SLEEP_CLK>,
34241e39255eSVivek Gautam				<&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>;
3425bbd25a87SKrzysztof Kozlowski			clock-names = "cfg_noc",
3426bbd25a87SKrzysztof Kozlowski				      "core",
3427bbd25a87SKrzysztof Kozlowski				      "iface",
3428bbd25a87SKrzysztof Kozlowski				      "sleep",
3429bbd25a87SKrzysztof Kozlowski				      "mock_utmi";
34301e39255eSVivek Gautam
34311e39255eSVivek Gautam			assigned-clocks = <&gcc GCC_USB20_MOCK_UTMI_CLK>,
34321e39255eSVivek Gautam					  <&gcc GCC_USB20_MASTER_CLK>;
34331e39255eSVivek Gautam			assigned-clock-rates = <19200000>, <60000000>;
34341e39255eSVivek Gautam
34351e39255eSVivek Gautam			power-domains = <&gcc USB30_GDSC>;
3436fbe7be5bSKonrad Dybcio			qcom,select-utmi-as-pipe-clk;
34371e39255eSVivek Gautam			status = "disabled";
34381e39255eSVivek Gautam
3439b77a1c4dSKrzysztof Kozlowski			usb2_dwc3: usb@7600000 {
34401e39255eSVivek Gautam				compatible = "snps,dwc3";
344186f6d622SBjorn Andersson				reg = <0x07600000 0xcc00>;
3442b79663a5SKrzysztof Kozlowski				interrupts = <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
34431e39255eSVivek Gautam				phys = <&hsusb_phy2>;
34441e39255eSVivek Gautam				phy-names = "usb2-phy";
3445fbe7be5bSKonrad Dybcio				maximum-speed = "high-speed";
3446d026c96bSManu Gautam				snps,dis_u2_susphy_quirk;
3447d026c96bSManu Gautam				snps,dis_enblslpm_quirk;
34481e39255eSVivek Gautam			};
34491e39255eSVivek Gautam		};
34501e39255eSVivek Gautam
3451b5af3036SVinod Koul		slimbam: dma-controller@9184000 {
3452f3eb39a5SSrinivas Kandagatla			compatible = "qcom,bam-v1.7.0";
3453f3eb39a5SSrinivas Kandagatla			qcom,controlled-remotely;
345486f6d622SBjorn Andersson			reg = <0x09184000 0x32000>;
3455f3eb39a5SSrinivas Kandagatla			num-channels = <31>;
3456b79663a5SKrzysztof Kozlowski			interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
3457f3eb39a5SSrinivas Kandagatla			#dma-cells = <1>;
3458f3eb39a5SSrinivas Kandagatla			qcom,ee = <1>;
3459f3eb39a5SSrinivas Kandagatla			qcom,num-ees = <2>;
3460f3eb39a5SSrinivas Kandagatla		};
3461f3eb39a5SSrinivas Kandagatla
34626414b117SKrzysztof Kozlowski		slim_msm: slim-ngd@91c0000 {
3463f3eb39a5SSrinivas Kandagatla			compatible = "qcom,slim-ngd-v1.5.0";
346421dd43fdSKonrad Dybcio			reg = <0x091c0000 0x2c000>;
3465b79663a5SKrzysztof Kozlowski			interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>;
34663cc63b98SKrzysztof Kozlowski			dmas = <&slimbam 3>, <&slimbam 4>;
34673cc63b98SKrzysztof Kozlowski			dma-names = "rx", "tx";
3468f3eb39a5SSrinivas Kandagatla			#address-cells = <1>;
3469f3eb39a5SSrinivas Kandagatla			#size-cells = <0>;
3470f3eb39a5SSrinivas Kandagatla
34715a1816ccSKrzysztof Kozlowski			status = "disabled";
3472f3eb39a5SSrinivas Kandagatla		};
3473f3eb39a5SSrinivas Kandagatla
347450aa72ccSBjorn Andersson		adsp_pil: remoteproc@9300000 {
34756c8583d6Sspjoshi@codeaurora.org			compatible = "qcom,msm8996-adsp-pil";
347650aa72ccSBjorn Andersson			reg = <0x09300000 0x80000>;
34776c8583d6Sspjoshi@codeaurora.org
34786c8583d6Sspjoshi@codeaurora.org			interrupts-extended = <&intc 0 162 IRQ_TYPE_EDGE_RISING>,
34796d338febSYassine Oudjana					      <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
34806d338febSYassine Oudjana					      <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
34816d338febSYassine Oudjana					      <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
34826d338febSYassine Oudjana					      <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
34836c8583d6Sspjoshi@codeaurora.org			interrupt-names = "wdog", "fatal", "ready",
34846c8583d6Sspjoshi@codeaurora.org					  "handover", "stop-ack";
34856c8583d6Sspjoshi@codeaurora.org
34868ae72166SDmitry Baryshkov			clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>;
34876c8583d6Sspjoshi@codeaurora.org			clock-names = "xo";
34886c8583d6Sspjoshi@codeaurora.org
3489902d97a4SYassine Oudjana			memory-region = <&adsp_mem>;
34906c8583d6Sspjoshi@codeaurora.org
34916d338febSYassine Oudjana			qcom,smem-states = <&adsp_smp2p_out 0>;
34926c8583d6Sspjoshi@codeaurora.org			qcom,smem-state-names = "stop";
3493cadcd35fSBjorn Andersson
34946215d3f0SYassine Oudjana			power-domains = <&rpmpd MSM8996_VDDCX>;
34956215d3f0SYassine Oudjana			power-domain-names = "cx";
34966215d3f0SYassine Oudjana
34976215d3f0SYassine Oudjana			status = "disabled";
34986215d3f0SYassine Oudjana
3499cadcd35fSBjorn Andersson			smd-edge {
3500cadcd35fSBjorn Andersson				interrupts = <GIC_SPI 156 IRQ_TYPE_EDGE_RISING>;
3501cadcd35fSBjorn Andersson
3502cadcd35fSBjorn Andersson				label = "lpass";
3503447c9dadSBjorn Andersson				mboxes = <&apcs_glb 8>;
3504cadcd35fSBjorn Andersson				qcom,smd-edge = <1>;
3505cadcd35fSBjorn Andersson				qcom,remote-pid = <2>;
3506863dd191SKrzysztof Kozlowski
3507f3eb39a5SSrinivas Kandagatla				apr {
3508f3eb39a5SSrinivas Kandagatla					power-domains = <&gcc HLOS1_VOTE_LPASS_ADSP_GDSC>;
3509f3eb39a5SSrinivas Kandagatla					compatible = "qcom,apr-v2";
3510f3eb39a5SSrinivas Kandagatla					qcom,smd-channels = "apr_audio_svc";
35112f114511SDavid Heidelberg					qcom,domain = <APR_DOMAIN_ADSP>;
3512f3eb39a5SSrinivas Kandagatla					#address-cells = <1>;
3513f3eb39a5SSrinivas Kandagatla					#size-cells = <0>;
3514f3eb39a5SSrinivas Kandagatla
3515c05b95d3SKrzysztof Kozlowski					service@3 {
3516f3eb39a5SSrinivas Kandagatla						reg = <APR_SVC_ADSP_CORE>;
3517f3eb39a5SSrinivas Kandagatla						compatible = "qcom,q6core";
3518f3eb39a5SSrinivas Kandagatla					};
3519f3eb39a5SSrinivas Kandagatla
3520c05b95d3SKrzysztof Kozlowski					q6afe: service@4 {
3521f3eb39a5SSrinivas Kandagatla						compatible = "qcom,q6afe";
3522f3eb39a5SSrinivas Kandagatla						reg = <APR_SVC_AFE>;
3523f3eb39a5SSrinivas Kandagatla						q6afedai: dais {
3524f3eb39a5SSrinivas Kandagatla							compatible = "qcom,q6afe-dais";
3525f3eb39a5SSrinivas Kandagatla							#address-cells = <1>;
3526f3eb39a5SSrinivas Kandagatla							#size-cells = <0>;
3527f3eb39a5SSrinivas Kandagatla							#sound-dai-cells = <1>;
35286b401d49SKrzysztof Kozlowski							dai@1 {
3529f3eb39a5SSrinivas Kandagatla								reg = <1>;
3530f3eb39a5SSrinivas Kandagatla							};
3531f3eb39a5SSrinivas Kandagatla						};
3532f3eb39a5SSrinivas Kandagatla					};
3533f3eb39a5SSrinivas Kandagatla
3534c05b95d3SKrzysztof Kozlowski					q6asm: service@7 {
3535f3eb39a5SSrinivas Kandagatla						compatible = "qcom,q6asm";
3536f3eb39a5SSrinivas Kandagatla						reg = <APR_SVC_ASM>;
3537f3eb39a5SSrinivas Kandagatla						q6asmdai: dais {
3538f3eb39a5SSrinivas Kandagatla							compatible = "qcom,q6asm-dais";
35397710f80eSSrinivas Kandagatla							#address-cells = <1>;
35407710f80eSSrinivas Kandagatla							#size-cells = <0>;
3541f3eb39a5SSrinivas Kandagatla							#sound-dai-cells = <1>;
3542f3eb39a5SSrinivas Kandagatla							iommus = <&lpass_q6_smmu 1>;
3543f3eb39a5SSrinivas Kandagatla						};
3544f3eb39a5SSrinivas Kandagatla					};
3545f3eb39a5SSrinivas Kandagatla
3546c05b95d3SKrzysztof Kozlowski					q6adm: service@8 {
3547f3eb39a5SSrinivas Kandagatla						compatible = "qcom,q6adm";
3548f3eb39a5SSrinivas Kandagatla						reg = <APR_SVC_ADM>;
3549f3eb39a5SSrinivas Kandagatla						q6routing: routing {
3550f3eb39a5SSrinivas Kandagatla							compatible = "qcom,q6adm-routing";
3551f3eb39a5SSrinivas Kandagatla							#sound-dai-cells = <0>;
3552f3eb39a5SSrinivas Kandagatla						};
3553f3eb39a5SSrinivas Kandagatla					};
3554f3eb39a5SSrinivas Kandagatla				};
3555cadcd35fSBjorn Andersson			};
35566c8583d6Sspjoshi@codeaurora.org		};
35576c8583d6Sspjoshi@codeaurora.org
355850aa72ccSBjorn Andersson		apcs_glb: mailbox@9820000 {
355950aa72ccSBjorn Andersson			compatible = "qcom,msm8996-apcs-hmss-global";
356050aa72ccSBjorn Andersson			reg = <0x09820000 0x1000>;
35612f45d9fcSspjoshi@codeaurora.org
356250aa72ccSBjorn Andersson			#mbox-cells = <1>;
35632e3015c2SDmitry Baryshkov			#clock-cells = <0>;
35642f45d9fcSspjoshi@codeaurora.org		};
35652f45d9fcSspjoshi@codeaurora.org
356650aa72ccSBjorn Andersson		timer@9840000 {
356750aa72ccSBjorn Andersson			#address-cells = <1>;
356850aa72ccSBjorn Andersson			#size-cells = <1>;
356950aa72ccSBjorn Andersson			ranges;
357050aa72ccSBjorn Andersson			compatible = "arm,armv7-timer-mem";
357150aa72ccSBjorn Andersson			reg = <0x09840000 0x1000>;
357250aa72ccSBjorn Andersson			clock-frequency = <19200000>;
35732f45d9fcSspjoshi@codeaurora.org
357450aa72ccSBjorn Andersson			frame@9850000 {
357550aa72ccSBjorn Andersson				frame-number = <0>;
357650aa72ccSBjorn Andersson				interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>,
357750aa72ccSBjorn Andersson					     <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
357850aa72ccSBjorn Andersson				reg = <0x09850000 0x1000>,
357950aa72ccSBjorn Andersson				      <0x09860000 0x1000>;
358050aa72ccSBjorn Andersson			};
358150aa72ccSBjorn Andersson
358250aa72ccSBjorn Andersson			frame@9870000 {
358350aa72ccSBjorn Andersson				frame-number = <1>;
358450aa72ccSBjorn Andersson				interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
358550aa72ccSBjorn Andersson				reg = <0x09870000 0x1000>;
358650aa72ccSBjorn Andersson				status = "disabled";
358750aa72ccSBjorn Andersson			};
358850aa72ccSBjorn Andersson
358950aa72ccSBjorn Andersson			frame@9880000 {
359050aa72ccSBjorn Andersson				frame-number = <2>;
359150aa72ccSBjorn Andersson				interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
359250aa72ccSBjorn Andersson				reg = <0x09880000 0x1000>;
359350aa72ccSBjorn Andersson				status = "disabled";
359450aa72ccSBjorn Andersson			};
359550aa72ccSBjorn Andersson
359650aa72ccSBjorn Andersson			frame@9890000 {
359750aa72ccSBjorn Andersson				frame-number = <3>;
359850aa72ccSBjorn Andersson				interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
359950aa72ccSBjorn Andersson				reg = <0x09890000 0x1000>;
360050aa72ccSBjorn Andersson				status = "disabled";
360150aa72ccSBjorn Andersson			};
360250aa72ccSBjorn Andersson
360350aa72ccSBjorn Andersson			frame@98a0000 {
360450aa72ccSBjorn Andersson				frame-number = <4>;
360550aa72ccSBjorn Andersson				interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
360650aa72ccSBjorn Andersson				reg = <0x098a0000 0x1000>;
360750aa72ccSBjorn Andersson				status = "disabled";
360850aa72ccSBjorn Andersson			};
360950aa72ccSBjorn Andersson
361050aa72ccSBjorn Andersson			frame@98b0000 {
361150aa72ccSBjorn Andersson				frame-number = <5>;
361250aa72ccSBjorn Andersson				interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
361350aa72ccSBjorn Andersson				reg = <0x098b0000 0x1000>;
361450aa72ccSBjorn Andersson				status = "disabled";
361550aa72ccSBjorn Andersson			};
361650aa72ccSBjorn Andersson
361750aa72ccSBjorn Andersson			frame@98c0000 {
361850aa72ccSBjorn Andersson				frame-number = <6>;
361950aa72ccSBjorn Andersson				interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
362050aa72ccSBjorn Andersson				reg = <0x098c0000 0x1000>;
362150aa72ccSBjorn Andersson				status = "disabled";
362250aa72ccSBjorn Andersson			};
362350aa72ccSBjorn Andersson		};
362450aa72ccSBjorn Andersson
36257a2a2231SLoic Poulain		saw3: syscon@9a10000 {
362620772f50SDmitry Baryshkov			compatible = "syscon";
36277a2a2231SLoic Poulain			reg = <0x09a10000 0x1000>;
36287a2a2231SLoic Poulain		};
36297a2a2231SLoic Poulain
36306701b173SDmitry Baryshkov		cbf: clock-controller@9a11000 {
36316701b173SDmitry Baryshkov			compatible = "qcom,msm8996-cbf";
36326701b173SDmitry Baryshkov			reg = <0x09a11000 0x10000>;
36336701b173SDmitry Baryshkov			clocks = <&rpmcc RPM_SMD_XO_A_CLK_SRC>, <&apcs_glb>;
36346701b173SDmitry Baryshkov			#clock-cells = <0>;
36358bb8688cSDmitry Baryshkov			#interconnect-cells = <1>;
36366701b173SDmitry Baryshkov		};
36376701b173SDmitry Baryshkov
363850aa72ccSBjorn Andersson		intc: interrupt-controller@9bc0000 {
363950aa72ccSBjorn Andersson			compatible = "qcom,msm8996-gic-v3", "arm,gic-v3";
364050aa72ccSBjorn Andersson			#interrupt-cells = <3>;
36412f45d9fcSspjoshi@codeaurora.org			interrupt-controller;
364250aa72ccSBjorn Andersson			#redistributor-regions = <1>;
364350aa72ccSBjorn Andersson			redistributor-stride = <0x0 0x40000>;
364450aa72ccSBjorn Andersson			reg = <0x09bc0000 0x10000>,
364550aa72ccSBjorn Andersson			      <0x09c00000 0x100000>;
364650aa72ccSBjorn Andersson			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
36472f45d9fcSspjoshi@codeaurora.org		};
36482f45d9fcSspjoshi@codeaurora.org	};
36493f1802f8Savaneesh dwivedi
365050aa72ccSBjorn Andersson	sound: sound {
3651a147eda7SBjorn Andersson	};
3652a147eda7SBjorn Andersson
365350aa72ccSBjorn Andersson	thermal-zones {
365450aa72ccSBjorn Andersson		cpu0-thermal {
365550aa72ccSBjorn Andersson			polling-delay-passive = <250>;
365650aa72ccSBjorn Andersson			polling-delay = <1000>;
3657a147eda7SBjorn Andersson
365850aa72ccSBjorn Andersson			thermal-sensors = <&tsens0 3>;
365950aa72ccSBjorn Andersson
366050aa72ccSBjorn Andersson			trips {
3661971b289dSAmit Kucheria				cpu0_alert0: trip-point0 {
366250aa72ccSBjorn Andersson					temperature = <75000>;
366350aa72ccSBjorn Andersson					hysteresis = <2000>;
366450aa72ccSBjorn Andersson					type = "passive";
366550aa72ccSBjorn Andersson				};
366650aa72ccSBjorn Andersson
36671364acc3SKrzysztof Kozlowski				cpu0_crit: cpu-crit {
366850aa72ccSBjorn Andersson					temperature = <110000>;
366950aa72ccSBjorn Andersson					hysteresis = <2000>;
367050aa72ccSBjorn Andersson					type = "critical";
367150aa72ccSBjorn Andersson				};
3672a147eda7SBjorn Andersson			};
3673a147eda7SBjorn Andersson		};
3674a147eda7SBjorn Andersson
367550aa72ccSBjorn Andersson		cpu1-thermal {
367650aa72ccSBjorn Andersson			polling-delay-passive = <250>;
367750aa72ccSBjorn Andersson			polling-delay = <1000>;
36783f1802f8Savaneesh dwivedi
367950aa72ccSBjorn Andersson			thermal-sensors = <&tsens0 5>;
36803f1802f8Savaneesh dwivedi
368150aa72ccSBjorn Andersson			trips {
3682971b289dSAmit Kucheria				cpu1_alert0: trip-point0 {
368350aa72ccSBjorn Andersson					temperature = <75000>;
368450aa72ccSBjorn Andersson					hysteresis = <2000>;
368550aa72ccSBjorn Andersson					type = "passive";
36863f1802f8Savaneesh dwivedi				};
36873f1802f8Savaneesh dwivedi
36881364acc3SKrzysztof Kozlowski				cpu1_crit: cpu-crit {
368950aa72ccSBjorn Andersson					temperature = <110000>;
369050aa72ccSBjorn Andersson					hysteresis = <2000>;
369150aa72ccSBjorn Andersson					type = "critical";
369250aa72ccSBjorn Andersson				};
36933f1802f8Savaneesh dwivedi			};
36943f1802f8Savaneesh dwivedi		};
36953f1802f8Savaneesh dwivedi
369650aa72ccSBjorn Andersson		cpu2-thermal {
369750aa72ccSBjorn Andersson			polling-delay-passive = <250>;
369850aa72ccSBjorn Andersson			polling-delay = <1000>;
369950aa72ccSBjorn Andersson
370050aa72ccSBjorn Andersson			thermal-sensors = <&tsens0 8>;
370150aa72ccSBjorn Andersson
370250aa72ccSBjorn Andersson			trips {
3703971b289dSAmit Kucheria				cpu2_alert0: trip-point0 {
370450aa72ccSBjorn Andersson					temperature = <75000>;
370550aa72ccSBjorn Andersson					hysteresis = <2000>;
370650aa72ccSBjorn Andersson					type = "passive";
370750aa72ccSBjorn Andersson				};
370850aa72ccSBjorn Andersson
37091364acc3SKrzysztof Kozlowski				cpu2_crit: cpu-crit {
371050aa72ccSBjorn Andersson					temperature = <110000>;
371150aa72ccSBjorn Andersson					hysteresis = <2000>;
371250aa72ccSBjorn Andersson					type = "critical";
371350aa72ccSBjorn Andersson				};
371450aa72ccSBjorn Andersson			};
371550aa72ccSBjorn Andersson		};
371650aa72ccSBjorn Andersson
371750aa72ccSBjorn Andersson		cpu3-thermal {
371850aa72ccSBjorn Andersson			polling-delay-passive = <250>;
371950aa72ccSBjorn Andersson			polling-delay = <1000>;
372050aa72ccSBjorn Andersson
372150aa72ccSBjorn Andersson			thermal-sensors = <&tsens0 10>;
372250aa72ccSBjorn Andersson
372350aa72ccSBjorn Andersson			trips {
3724971b289dSAmit Kucheria				cpu3_alert0: trip-point0 {
372550aa72ccSBjorn Andersson					temperature = <75000>;
372650aa72ccSBjorn Andersson					hysteresis = <2000>;
372750aa72ccSBjorn Andersson					type = "passive";
372850aa72ccSBjorn Andersson				};
372950aa72ccSBjorn Andersson
37301364acc3SKrzysztof Kozlowski				cpu3_crit: cpu-crit {
373150aa72ccSBjorn Andersson					temperature = <110000>;
373250aa72ccSBjorn Andersson					hysteresis = <2000>;
373350aa72ccSBjorn Andersson					type = "critical";
373450aa72ccSBjorn Andersson				};
373550aa72ccSBjorn Andersson			};
373650aa72ccSBjorn Andersson		};
373750aa72ccSBjorn Andersson
37387be1c395SDavid Heidelberg		gpu-top-thermal {
373950aa72ccSBjorn Andersson			polling-delay-passive = <250>;
374050aa72ccSBjorn Andersson			polling-delay = <1000>;
374150aa72ccSBjorn Andersson
374250aa72ccSBjorn Andersson			thermal-sensors = <&tsens1 6>;
374350aa72ccSBjorn Andersson
374450aa72ccSBjorn Andersson			trips {
3745971b289dSAmit Kucheria				gpu1_alert0: trip-point0 {
374650aa72ccSBjorn Andersson					temperature = <90000>;
374750aa72ccSBjorn Andersson					hysteresis = <2000>;
374858956294SYassine Oudjana					type = "passive";
374958956294SYassine Oudjana				};
375058956294SYassine Oudjana			};
375158956294SYassine Oudjana
375258956294SYassine Oudjana			cooling-maps {
375358956294SYassine Oudjana				map0 {
375458956294SYassine Oudjana					trip = <&gpu1_alert0>;
375558956294SYassine Oudjana					cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
375650aa72ccSBjorn Andersson				};
375750aa72ccSBjorn Andersson			};
375850aa72ccSBjorn Andersson		};
375950aa72ccSBjorn Andersson
37607be1c395SDavid Heidelberg		gpu-bottom-thermal {
376150aa72ccSBjorn Andersson			polling-delay-passive = <250>;
376250aa72ccSBjorn Andersson			polling-delay = <1000>;
376350aa72ccSBjorn Andersson
376450aa72ccSBjorn Andersson			thermal-sensors = <&tsens1 7>;
376550aa72ccSBjorn Andersson
376650aa72ccSBjorn Andersson			trips {
3767971b289dSAmit Kucheria				gpu2_alert0: trip-point0 {
376850aa72ccSBjorn Andersson					temperature = <90000>;
376950aa72ccSBjorn Andersson					hysteresis = <2000>;
377058956294SYassine Oudjana					type = "passive";
377158956294SYassine Oudjana				};
377258956294SYassine Oudjana			};
377358956294SYassine Oudjana
377458956294SYassine Oudjana			cooling-maps {
377558956294SYassine Oudjana				map0 {
377658956294SYassine Oudjana					trip = <&gpu2_alert0>;
377758956294SYassine Oudjana					cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
377850aa72ccSBjorn Andersson				};
377950aa72ccSBjorn Andersson			};
378050aa72ccSBjorn Andersson		};
378150aa72ccSBjorn Andersson
378250aa72ccSBjorn Andersson		m4m-thermal {
378350aa72ccSBjorn Andersson			polling-delay-passive = <250>;
378450aa72ccSBjorn Andersson			polling-delay = <1000>;
378550aa72ccSBjorn Andersson
378650aa72ccSBjorn Andersson			thermal-sensors = <&tsens0 1>;
378750aa72ccSBjorn Andersson
378850aa72ccSBjorn Andersson			trips {
3789971b289dSAmit Kucheria				m4m_alert0: trip-point0 {
379050aa72ccSBjorn Andersson					temperature = <90000>;
379150aa72ccSBjorn Andersson					hysteresis = <2000>;
379250aa72ccSBjorn Andersson					type = "hot";
379350aa72ccSBjorn Andersson				};
379450aa72ccSBjorn Andersson			};
379550aa72ccSBjorn Andersson		};
379650aa72ccSBjorn Andersson
379750aa72ccSBjorn Andersson		l3-or-venus-thermal {
379850aa72ccSBjorn Andersson			polling-delay-passive = <250>;
379950aa72ccSBjorn Andersson			polling-delay = <1000>;
380050aa72ccSBjorn Andersson
380150aa72ccSBjorn Andersson			thermal-sensors = <&tsens0 2>;
380250aa72ccSBjorn Andersson
380350aa72ccSBjorn Andersson			trips {
3804971b289dSAmit Kucheria				l3_or_venus_alert0: trip-point0 {
380550aa72ccSBjorn Andersson					temperature = <90000>;
380650aa72ccSBjorn Andersson					hysteresis = <2000>;
380750aa72ccSBjorn Andersson					type = "hot";
380850aa72ccSBjorn Andersson				};
380950aa72ccSBjorn Andersson			};
381050aa72ccSBjorn Andersson		};
381150aa72ccSBjorn Andersson
381250aa72ccSBjorn Andersson		cluster0-l2-thermal {
381350aa72ccSBjorn Andersson			polling-delay-passive = <250>;
381450aa72ccSBjorn Andersson			polling-delay = <1000>;
381550aa72ccSBjorn Andersson
381650aa72ccSBjorn Andersson			thermal-sensors = <&tsens0 7>;
381750aa72ccSBjorn Andersson
381850aa72ccSBjorn Andersson			trips {
3819971b289dSAmit Kucheria				cluster0_l2_alert0: trip-point0 {
382050aa72ccSBjorn Andersson					temperature = <90000>;
382150aa72ccSBjorn Andersson					hysteresis = <2000>;
382250aa72ccSBjorn Andersson					type = "hot";
382350aa72ccSBjorn Andersson				};
382450aa72ccSBjorn Andersson			};
382550aa72ccSBjorn Andersson		};
382650aa72ccSBjorn Andersson
382750aa72ccSBjorn Andersson		cluster1-l2-thermal {
382850aa72ccSBjorn Andersson			polling-delay-passive = <250>;
382950aa72ccSBjorn Andersson			polling-delay = <1000>;
383050aa72ccSBjorn Andersson
383150aa72ccSBjorn Andersson			thermal-sensors = <&tsens0 12>;
383250aa72ccSBjorn Andersson
383350aa72ccSBjorn Andersson			trips {
3834971b289dSAmit Kucheria				cluster1_l2_alert0: trip-point0 {
383550aa72ccSBjorn Andersson					temperature = <90000>;
383650aa72ccSBjorn Andersson					hysteresis = <2000>;
383750aa72ccSBjorn Andersson					type = "hot";
383850aa72ccSBjorn Andersson				};
383950aa72ccSBjorn Andersson			};
384050aa72ccSBjorn Andersson		};
384150aa72ccSBjorn Andersson
384250aa72ccSBjorn Andersson		camera-thermal {
384350aa72ccSBjorn Andersson			polling-delay-passive = <250>;
384450aa72ccSBjorn Andersson			polling-delay = <1000>;
384550aa72ccSBjorn Andersson
384650aa72ccSBjorn Andersson			thermal-sensors = <&tsens1 1>;
384750aa72ccSBjorn Andersson
384850aa72ccSBjorn Andersson			trips {
3849971b289dSAmit Kucheria				camera_alert0: trip-point0 {
385050aa72ccSBjorn Andersson					temperature = <90000>;
385150aa72ccSBjorn Andersson					hysteresis = <2000>;
385250aa72ccSBjorn Andersson					type = "hot";
385350aa72ccSBjorn Andersson				};
385450aa72ccSBjorn Andersson			};
385550aa72ccSBjorn Andersson		};
385650aa72ccSBjorn Andersson
385750aa72ccSBjorn Andersson		q6-dsp-thermal {
385850aa72ccSBjorn Andersson			polling-delay-passive = <250>;
385950aa72ccSBjorn Andersson			polling-delay = <1000>;
386050aa72ccSBjorn Andersson
386150aa72ccSBjorn Andersson			thermal-sensors = <&tsens1 2>;
386250aa72ccSBjorn Andersson
386350aa72ccSBjorn Andersson			trips {
3864971b289dSAmit Kucheria				q6_dsp_alert0: trip-point0 {
386550aa72ccSBjorn Andersson					temperature = <90000>;
386650aa72ccSBjorn Andersson					hysteresis = <2000>;
386750aa72ccSBjorn Andersson					type = "hot";
386850aa72ccSBjorn Andersson				};
386950aa72ccSBjorn Andersson			};
387050aa72ccSBjorn Andersson		};
387150aa72ccSBjorn Andersson
387250aa72ccSBjorn Andersson		mem-thermal {
387350aa72ccSBjorn Andersson			polling-delay-passive = <250>;
387450aa72ccSBjorn Andersson			polling-delay = <1000>;
387550aa72ccSBjorn Andersson
387650aa72ccSBjorn Andersson			thermal-sensors = <&tsens1 3>;
387750aa72ccSBjorn Andersson
387850aa72ccSBjorn Andersson			trips {
3879971b289dSAmit Kucheria				mem_alert0: trip-point0 {
388050aa72ccSBjorn Andersson					temperature = <90000>;
388150aa72ccSBjorn Andersson					hysteresis = <2000>;
388250aa72ccSBjorn Andersson					type = "hot";
388350aa72ccSBjorn Andersson				};
388450aa72ccSBjorn Andersson			};
388550aa72ccSBjorn Andersson		};
388650aa72ccSBjorn Andersson
388750aa72ccSBjorn Andersson		modemtx-thermal {
388850aa72ccSBjorn Andersson			polling-delay-passive = <250>;
388950aa72ccSBjorn Andersson			polling-delay = <1000>;
389050aa72ccSBjorn Andersson
389150aa72ccSBjorn Andersson			thermal-sensors = <&tsens1 4>;
389250aa72ccSBjorn Andersson
389350aa72ccSBjorn Andersson			trips {
3894971b289dSAmit Kucheria				modemtx_alert0: trip-point0 {
389550aa72ccSBjorn Andersson					temperature = <90000>;
389650aa72ccSBjorn Andersson					hysteresis = <2000>;
389750aa72ccSBjorn Andersson					type = "hot";
389850aa72ccSBjorn Andersson				};
389950aa72ccSBjorn Andersson			};
390050aa72ccSBjorn Andersson		};
390150aa72ccSBjorn Andersson	};
390250aa72ccSBjorn Andersson
390350aa72ccSBjorn Andersson	timer {
390450aa72ccSBjorn Andersson		compatible = "arm,armv8-timer";
390550aa72ccSBjorn Andersson		interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>,
390650aa72ccSBjorn Andersson			     <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>,
390750aa72ccSBjorn Andersson			     <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>,
390850aa72ccSBjorn Andersson			     <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>;
390950aa72ccSBjorn Andersson	};
39104558e9b3SStephen Boyd};
3911