xref: /openbmc/linux/arch/arm64/boot/dts/qcom/sdm630.dtsi (revision f3dfffb3)
1// SPDX-License-Identifier: BSD-3-Clause
2/*
3 * Copyright (c) 2020, Konrad Dybcio <konradybcio@gmail.com>
4 * Copyright (c) 2020, AngeloGioacchino Del Regno <kholk11@gmail.com>
5 */
6
7#include <dt-bindings/clock/qcom,gcc-sdm660.h>
8#include <dt-bindings/clock/qcom,gpucc-sdm660.h>
9#include <dt-bindings/clock/qcom,mmcc-sdm660.h>
10#include <dt-bindings/clock/qcom,rpmcc.h>
11#include <dt-bindings/interconnect/qcom,sdm660.h>
12#include <dt-bindings/power/qcom-rpmpd.h>
13#include <dt-bindings/gpio/gpio.h>
14#include <dt-bindings/interrupt-controller/arm-gic.h>
15#include <dt-bindings/soc/qcom,apr.h>
16
17/ {
18	interrupt-parent = <&intc>;
19
20	#address-cells = <2>;
21	#size-cells = <2>;
22
23	aliases {
24		mmc1 = &sdhc_1;
25		mmc2 = &sdhc_2;
26	};
27
28	chosen { };
29
30	clocks {
31		xo_board: xo-board {
32			compatible = "fixed-clock";
33			#clock-cells = <0>;
34			clock-frequency = <19200000>;
35			clock-output-names = "xo_board";
36		};
37
38		sleep_clk: sleep-clk {
39			compatible = "fixed-clock";
40			#clock-cells = <0>;
41			clock-frequency = <32764>;
42			clock-output-names = "sleep_clk";
43		};
44	};
45
46	cpus {
47		#address-cells = <2>;
48		#size-cells = <0>;
49
50		CPU0: cpu@100 {
51			device_type = "cpu";
52			compatible = "arm,cortex-a53";
53			reg = <0x0 0x100>;
54			enable-method = "psci";
55			cpu-idle-states = <&PERF_CPU_SLEEP_0
56						&PERF_CPU_SLEEP_1
57						&PERF_CLUSTER_SLEEP_0
58						&PERF_CLUSTER_SLEEP_1
59						&PERF_CLUSTER_SLEEP_2>;
60			capacity-dmips-mhz = <1126>;
61			#cooling-cells = <2>;
62			next-level-cache = <&L2_1>;
63			L2_1: l2-cache {
64				compatible = "cache";
65				cache-level = <2>;
66				cache-unified;
67			};
68		};
69
70		CPU1: cpu@101 {
71			device_type = "cpu";
72			compatible = "arm,cortex-a53";
73			reg = <0x0 0x101>;
74			enable-method = "psci";
75			cpu-idle-states = <&PERF_CPU_SLEEP_0
76						&PERF_CPU_SLEEP_1
77						&PERF_CLUSTER_SLEEP_0
78						&PERF_CLUSTER_SLEEP_1
79						&PERF_CLUSTER_SLEEP_2>;
80			capacity-dmips-mhz = <1126>;
81			#cooling-cells = <2>;
82			next-level-cache = <&L2_1>;
83		};
84
85		CPU2: cpu@102 {
86			device_type = "cpu";
87			compatible = "arm,cortex-a53";
88			reg = <0x0 0x102>;
89			enable-method = "psci";
90			cpu-idle-states = <&PERF_CPU_SLEEP_0
91						&PERF_CPU_SLEEP_1
92						&PERF_CLUSTER_SLEEP_0
93						&PERF_CLUSTER_SLEEP_1
94						&PERF_CLUSTER_SLEEP_2>;
95			capacity-dmips-mhz = <1126>;
96			#cooling-cells = <2>;
97			next-level-cache = <&L2_1>;
98		};
99
100		CPU3: cpu@103 {
101			device_type = "cpu";
102			compatible = "arm,cortex-a53";
103			reg = <0x0 0x103>;
104			enable-method = "psci";
105			cpu-idle-states = <&PERF_CPU_SLEEP_0
106						&PERF_CPU_SLEEP_1
107						&PERF_CLUSTER_SLEEP_0
108						&PERF_CLUSTER_SLEEP_1
109						&PERF_CLUSTER_SLEEP_2>;
110			capacity-dmips-mhz = <1126>;
111			#cooling-cells = <2>;
112			next-level-cache = <&L2_1>;
113		};
114
115		CPU4: cpu@0 {
116			device_type = "cpu";
117			compatible = "arm,cortex-a53";
118			reg = <0x0 0x0>;
119			enable-method = "psci";
120			cpu-idle-states = <&PWR_CPU_SLEEP_0
121						&PWR_CPU_SLEEP_1
122						&PWR_CLUSTER_SLEEP_0
123						&PWR_CLUSTER_SLEEP_1
124						&PWR_CLUSTER_SLEEP_2>;
125			capacity-dmips-mhz = <1024>;
126			#cooling-cells = <2>;
127			next-level-cache = <&L2_0>;
128			L2_0: l2-cache {
129				compatible = "cache";
130				cache-level = <2>;
131				cache-unified;
132			};
133		};
134
135		CPU5: cpu@1 {
136			device_type = "cpu";
137			compatible = "arm,cortex-a53";
138			reg = <0x0 0x1>;
139			enable-method = "psci";
140			cpu-idle-states = <&PWR_CPU_SLEEP_0
141						&PWR_CPU_SLEEP_1
142						&PWR_CLUSTER_SLEEP_0
143						&PWR_CLUSTER_SLEEP_1
144						&PWR_CLUSTER_SLEEP_2>;
145			capacity-dmips-mhz = <1024>;
146			#cooling-cells = <2>;
147			next-level-cache = <&L2_0>;
148		};
149
150		CPU6: cpu@2 {
151			device_type = "cpu";
152			compatible = "arm,cortex-a53";
153			reg = <0x0 0x2>;
154			enable-method = "psci";
155			cpu-idle-states = <&PWR_CPU_SLEEP_0
156						&PWR_CPU_SLEEP_1
157						&PWR_CLUSTER_SLEEP_0
158						&PWR_CLUSTER_SLEEP_1
159						&PWR_CLUSTER_SLEEP_2>;
160			capacity-dmips-mhz = <1024>;
161			#cooling-cells = <2>;
162			next-level-cache = <&L2_0>;
163		};
164
165		CPU7: cpu@3 {
166			device_type = "cpu";
167			compatible = "arm,cortex-a53";
168			reg = <0x0 0x3>;
169			enable-method = "psci";
170			cpu-idle-states = <&PWR_CPU_SLEEP_0
171						&PWR_CPU_SLEEP_1
172						&PWR_CLUSTER_SLEEP_0
173						&PWR_CLUSTER_SLEEP_1
174						&PWR_CLUSTER_SLEEP_2>;
175			capacity-dmips-mhz = <1024>;
176			#cooling-cells = <2>;
177			next-level-cache = <&L2_0>;
178		};
179
180		cpu-map {
181			cluster0 {
182				core0 {
183					cpu = <&CPU4>;
184				};
185
186				core1 {
187					cpu = <&CPU5>;
188				};
189
190				core2 {
191					cpu = <&CPU6>;
192				};
193
194				core3 {
195					cpu = <&CPU7>;
196				};
197			};
198
199			cluster1 {
200				core0 {
201					cpu = <&CPU0>;
202				};
203
204				core1 {
205					cpu = <&CPU1>;
206				};
207
208				core2 {
209					cpu = <&CPU2>;
210				};
211
212				core3 {
213					cpu = <&CPU3>;
214				};
215			};
216		};
217
218		idle-states {
219			entry-method = "psci";
220
221			PWR_CPU_SLEEP_0: cpu-sleep-0-0 {
222				compatible = "arm,idle-state";
223				idle-state-name = "pwr-retention";
224				arm,psci-suspend-param = <0x40000002>;
225				entry-latency-us = <338>;
226				exit-latency-us = <423>;
227				min-residency-us = <200>;
228			};
229
230			PWR_CPU_SLEEP_1: cpu-sleep-0-1 {
231				compatible = "arm,idle-state";
232				idle-state-name = "pwr-power-collapse";
233				arm,psci-suspend-param = <0x40000003>;
234				entry-latency-us = <515>;
235				exit-latency-us = <1821>;
236				min-residency-us = <1000>;
237				local-timer-stop;
238			};
239
240			PERF_CPU_SLEEP_0: cpu-sleep-1-0 {
241				compatible = "arm,idle-state";
242				idle-state-name = "perf-retention";
243				arm,psci-suspend-param = <0x40000002>;
244				entry-latency-us = <154>;
245				exit-latency-us = <87>;
246				min-residency-us = <200>;
247			};
248
249			PERF_CPU_SLEEP_1: cpu-sleep-1-1 {
250				compatible = "arm,idle-state";
251				idle-state-name = "perf-power-collapse";
252				arm,psci-suspend-param = <0x40000003>;
253				entry-latency-us = <262>;
254				exit-latency-us = <301>;
255				min-residency-us = <1000>;
256				local-timer-stop;
257			};
258
259			PWR_CLUSTER_SLEEP_0: cluster-sleep-0-0 {
260				compatible = "arm,idle-state";
261				idle-state-name = "pwr-cluster-dynamic-retention";
262				arm,psci-suspend-param = <0x400000F2>;
263				entry-latency-us = <284>;
264				exit-latency-us = <384>;
265				min-residency-us = <9987>;
266				local-timer-stop;
267			};
268
269			PWR_CLUSTER_SLEEP_1: cluster-sleep-0-1 {
270				compatible = "arm,idle-state";
271				idle-state-name = "pwr-cluster-retention";
272				arm,psci-suspend-param = <0x400000F3>;
273				entry-latency-us = <338>;
274				exit-latency-us = <423>;
275				min-residency-us = <9987>;
276				local-timer-stop;
277			};
278
279			PWR_CLUSTER_SLEEP_2: cluster-sleep-0-2 {
280				compatible = "arm,idle-state";
281				idle-state-name = "pwr-cluster-retention";
282				arm,psci-suspend-param = <0x400000F4>;
283				entry-latency-us = <515>;
284				exit-latency-us = <1821>;
285				min-residency-us = <9987>;
286				local-timer-stop;
287			};
288
289			PERF_CLUSTER_SLEEP_0: cluster-sleep-1-0 {
290				compatible = "arm,idle-state";
291				idle-state-name = "perf-cluster-dynamic-retention";
292				arm,psci-suspend-param = <0x400000F2>;
293				entry-latency-us = <272>;
294				exit-latency-us = <329>;
295				min-residency-us = <9987>;
296				local-timer-stop;
297			};
298
299			PERF_CLUSTER_SLEEP_1: cluster-sleep-1-1 {
300				compatible = "arm,idle-state";
301				idle-state-name = "perf-cluster-retention";
302				arm,psci-suspend-param = <0x400000F3>;
303				entry-latency-us = <332>;
304				exit-latency-us = <368>;
305				min-residency-us = <9987>;
306				local-timer-stop;
307			};
308
309			PERF_CLUSTER_SLEEP_2: cluster-sleep-1-2 {
310				compatible = "arm,idle-state";
311				idle-state-name = "perf-cluster-retention";
312				arm,psci-suspend-param = <0x400000F4>;
313				entry-latency-us = <545>;
314				exit-latency-us = <1609>;
315				min-residency-us = <9987>;
316				local-timer-stop;
317			};
318		};
319	};
320
321	firmware {
322		scm {
323			compatible = "qcom,scm-msm8998", "qcom,scm";
324		};
325	};
326
327	memory@80000000 {
328		device_type = "memory";
329		/* We expect the bootloader to fill in the reg */
330		reg = <0x0 0x80000000 0x0 0x0>;
331	};
332
333	dsi_opp_table: opp-table-dsi {
334		compatible = "operating-points-v2";
335
336		opp-131250000 {
337			opp-hz = /bits/ 64 <131250000>;
338			required-opps = <&rpmpd_opp_svs>;
339		};
340
341		opp-210000000 {
342			opp-hz = /bits/ 64 <210000000>;
343			required-opps = <&rpmpd_opp_svs_plus>;
344		};
345
346		opp-262500000 {
347			opp-hz = /bits/ 64 <262500000>;
348			required-opps = <&rpmpd_opp_nom>;
349		};
350	};
351
352	pmu {
353		compatible = "arm,armv8-pmuv3";
354		interrupts = <GIC_PPI 6 IRQ_TYPE_LEVEL_HIGH>;
355	};
356
357	psci {
358		compatible = "arm,psci-1.0";
359		method = "smc";
360	};
361
362	rpm: remoteproc {
363		compatible = "qcom,sdm660-rpm-proc", "qcom,rpm-proc";
364
365		glink-edge {
366			compatible = "qcom,glink-rpm";
367
368			interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
369			qcom,rpm-msg-ram = <&rpm_msg_ram>;
370			mboxes = <&apcs_glb 0>;
371
372			rpm_requests: rpm-requests {
373				compatible = "qcom,rpm-sdm660";
374				qcom,glink-channels = "rpm_requests";
375
376				rpmcc: clock-controller {
377					compatible = "qcom,rpmcc-sdm660", "qcom,rpmcc";
378					#clock-cells = <1>;
379				};
380
381				rpmpd: power-controller {
382					compatible = "qcom,sdm660-rpmpd";
383					#power-domain-cells = <1>;
384					operating-points-v2 = <&rpmpd_opp_table>;
385
386					rpmpd_opp_table: opp-table {
387						compatible = "operating-points-v2";
388
389						rpmpd_opp_ret: opp1 {
390							opp-level = <RPM_SMD_LEVEL_RETENTION>;
391						};
392
393						rpmpd_opp_ret_plus: opp2 {
394							opp-level = <RPM_SMD_LEVEL_RETENTION_PLUS>;
395						};
396
397						rpmpd_opp_min_svs: opp3 {
398							opp-level = <RPM_SMD_LEVEL_MIN_SVS>;
399						};
400
401						rpmpd_opp_low_svs: opp4 {
402							opp-level = <RPM_SMD_LEVEL_LOW_SVS>;
403						};
404
405						rpmpd_opp_svs: opp5 {
406							opp-level = <RPM_SMD_LEVEL_SVS>;
407						};
408
409						rpmpd_opp_svs_plus: opp6 {
410							opp-level = <RPM_SMD_LEVEL_SVS_PLUS>;
411						};
412
413						rpmpd_opp_nom: opp7 {
414							opp-level = <RPM_SMD_LEVEL_NOM>;
415						};
416
417						rpmpd_opp_nom_plus: opp8 {
418							opp-level = <RPM_SMD_LEVEL_NOM_PLUS>;
419						};
420
421						rpmpd_opp_turbo: opp9 {
422							opp-level = <RPM_SMD_LEVEL_TURBO>;
423						};
424					};
425				};
426			};
427		};
428	};
429
430	reserved-memory {
431		#address-cells = <2>;
432		#size-cells = <2>;
433		ranges;
434
435		wlan_msa_guard: wlan-msa-guard@85600000 {
436			reg = <0x0 0x85600000 0x0 0x100000>;
437			no-map;
438		};
439
440		wlan_msa_mem: wlan-msa-mem@85700000 {
441			reg = <0x0 0x85700000 0x0 0x100000>;
442			no-map;
443		};
444
445		qhee_code: qhee-code@85800000 {
446			reg = <0x0 0x85800000 0x0 0x600000>;
447			no-map;
448		};
449
450		rmtfs_mem: memory@85e00000 {
451			compatible = "qcom,rmtfs-mem";
452			reg = <0x0 0x85e00000 0x0 0x200000>;
453			no-map;
454
455			qcom,client-id = <1>;
456			qcom,vmid = <15>;
457		};
458
459		smem_region: smem-mem@86000000 {
460			reg = <0 0x86000000 0 0x200000>;
461			no-map;
462		};
463
464		tz_mem: memory@86200000 {
465			reg = <0x0 0x86200000 0x0 0x3300000>;
466			no-map;
467		};
468
469		mpss_region: mpss@8ac00000 {
470			reg = <0x0 0x8ac00000 0x0 0x7e00000>;
471			no-map;
472		};
473
474		adsp_region: adsp@92a00000 {
475			reg = <0x0 0x92a00000 0x0 0x1e00000>;
476			no-map;
477		};
478
479		mba_region: mba@94800000 {
480			reg = <0x0 0x94800000 0x0 0x200000>;
481			no-map;
482		};
483
484		buffer_mem: tzbuffer@94a00000 {
485			reg = <0x0 0x94a00000 0x0 0x100000>;
486			no-map;
487		};
488
489		venus_region: venus@9f800000 {
490			reg = <0x0 0x9f800000 0x0 0x800000>;
491			no-map;
492		};
493
494		adsp_mem: adsp-region@f6000000 {
495			reg = <0x0 0xf6000000 0x0 0x800000>;
496			no-map;
497		};
498
499		qseecom_mem: qseecom-region@f6800000 {
500			reg = <0x0 0xf6800000 0x0 0x1400000>;
501			no-map;
502		};
503
504		zap_shader_region: gpu@fed00000 {
505			compatible = "shared-dma-pool";
506			reg = <0x0 0xfed00000 0x0 0xa00000>;
507			no-map;
508		};
509	};
510
511	smem: smem {
512		compatible = "qcom,smem";
513		memory-region = <&smem_region>;
514		hwlocks = <&tcsr_mutex 3>;
515	};
516
517	smp2p-adsp {
518		compatible = "qcom,smp2p";
519		qcom,smem = <443>, <429>;
520		interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>;
521		mboxes = <&apcs_glb 10>;
522		qcom,local-pid = <0>;
523		qcom,remote-pid = <2>;
524
525		adsp_smp2p_out: master-kernel {
526			qcom,entry-name = "master-kernel";
527			#qcom,smem-state-cells = <1>;
528		};
529
530		adsp_smp2p_in: slave-kernel {
531			qcom,entry-name = "slave-kernel";
532			interrupt-controller;
533			#interrupt-cells = <2>;
534		};
535	};
536
537	smp2p-mpss {
538		compatible = "qcom,smp2p";
539		qcom,smem = <435>, <428>;
540		interrupts = <GIC_SPI 451 IRQ_TYPE_EDGE_RISING>;
541		mboxes = <&apcs_glb 14>;
542		qcom,local-pid = <0>;
543		qcom,remote-pid = <1>;
544
545		modem_smp2p_out: master-kernel {
546			qcom,entry-name = "master-kernel";
547			#qcom,smem-state-cells = <1>;
548		};
549
550		modem_smp2p_in: slave-kernel {
551			qcom,entry-name = "slave-kernel";
552			interrupt-controller;
553			#interrupt-cells = <2>;
554		};
555	};
556
557	soc@0 {
558		#address-cells = <1>;
559		#size-cells = <1>;
560		ranges = <0 0 0 0xffffffff>;
561		compatible = "simple-bus";
562
563		gcc: clock-controller@100000 {
564			compatible = "qcom,gcc-sdm630";
565			#clock-cells = <1>;
566			#reset-cells = <1>;
567			#power-domain-cells = <1>;
568			reg = <0x00100000 0x94000>;
569
570			clock-names = "xo", "sleep_clk";
571			clocks = <&xo_board>,
572					<&sleep_clk>;
573		};
574
575		rpm_msg_ram: sram@778000 {
576			compatible = "qcom,rpm-msg-ram";
577			reg = <0x00778000 0x7000>;
578		};
579
580		qfprom: qfprom@780000 {
581			compatible = "qcom,sdm630-qfprom", "qcom,qfprom";
582			reg = <0x00780000 0x621c>;
583			#address-cells = <1>;
584			#size-cells = <1>;
585
586			qusb2_hstx_trim: hstx-trim@240 {
587				reg = <0x243 0x1>;
588				bits = <1 3>;
589			};
590
591			gpu_speed_bin: gpu-speed-bin@41a0 {
592				reg = <0x41a2 0x1>;
593				bits = <5 7>;
594			};
595		};
596
597		rng: rng@793000 {
598			compatible = "qcom,prng-ee";
599			reg = <0x00793000 0x1000>;
600			clocks = <&gcc GCC_PRNG_AHB_CLK>;
601			clock-names = "core";
602		};
603
604		bimc: interconnect@1008000 {
605			compatible = "qcom,sdm660-bimc";
606			reg = <0x01008000 0x78000>;
607			#interconnect-cells = <1>;
608			clock-names = "bus", "bus_a";
609			clocks = <&rpmcc RPM_SMD_BIMC_CLK>,
610				 <&rpmcc RPM_SMD_BIMC_A_CLK>;
611		};
612
613		restart@10ac000 {
614			compatible = "qcom,pshold";
615			reg = <0x010ac000 0x4>;
616		};
617
618		cnoc: interconnect@1500000 {
619			compatible = "qcom,sdm660-cnoc";
620			reg = <0x01500000 0x10000>;
621			#interconnect-cells = <1>;
622			clock-names = "bus", "bus_a";
623			clocks = <&rpmcc RPM_SMD_CNOC_CLK>,
624				 <&rpmcc RPM_SMD_CNOC_A_CLK>;
625		};
626
627		snoc: interconnect@1626000 {
628			compatible = "qcom,sdm660-snoc";
629			reg = <0x01626000 0x7090>;
630			#interconnect-cells = <1>;
631			clock-names = "bus", "bus_a";
632			clocks = <&rpmcc RPM_SMD_SNOC_CLK>,
633				 <&rpmcc RPM_SMD_SNOC_A_CLK>;
634		};
635
636		anoc2_smmu: iommu@16c0000 {
637			compatible = "qcom,sdm630-smmu-v2", "qcom,smmu-v2";
638			reg = <0x016c0000 0x40000>;
639
640			assigned-clocks = <&rpmcc RPM_SMD_AGGR2_NOC_CLK>;
641			assigned-clock-rates = <1000>;
642			clocks = <&rpmcc RPM_SMD_AGGR2_NOC_CLK>;
643			clock-names = "bus";
644			#global-interrupts = <2>;
645			#iommu-cells = <1>;
646
647			interrupts =
648				<GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>,
649				<GIC_SPI 231 IRQ_TYPE_LEVEL_HIGH>,
650
651				<GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>,
652				<GIC_SPI 374 IRQ_TYPE_LEVEL_LOW>,
653				<GIC_SPI 375 IRQ_TYPE_LEVEL_LOW>,
654				<GIC_SPI 376 IRQ_TYPE_LEVEL_LOW>,
655				<GIC_SPI 377 IRQ_TYPE_LEVEL_LOW>,
656				<GIC_SPI 378 IRQ_TYPE_LEVEL_LOW>,
657				<GIC_SPI 462 IRQ_TYPE_LEVEL_HIGH>,
658				<GIC_SPI 463 IRQ_TYPE_LEVEL_HIGH>,
659				<GIC_SPI 464 IRQ_TYPE_LEVEL_HIGH>,
660				<GIC_SPI 465 IRQ_TYPE_LEVEL_HIGH>,
661				<GIC_SPI 466 IRQ_TYPE_LEVEL_HIGH>,
662				<GIC_SPI 467 IRQ_TYPE_LEVEL_HIGH>,
663				<GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>,
664				<GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>,
665				<GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>,
666				<GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>,
667				<GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>,
668				<GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>,
669				<GIC_SPI 359 IRQ_TYPE_LEVEL_HIGH>,
670				<GIC_SPI 360 IRQ_TYPE_LEVEL_HIGH>,
671				<GIC_SPI 442 IRQ_TYPE_LEVEL_HIGH>,
672				<GIC_SPI 443 IRQ_TYPE_LEVEL_HIGH>,
673				<GIC_SPI 444 IRQ_TYPE_LEVEL_HIGH>,
674				<GIC_SPI 447 IRQ_TYPE_LEVEL_HIGH>,
675				<GIC_SPI 468 IRQ_TYPE_LEVEL_HIGH>,
676				<GIC_SPI 469 IRQ_TYPE_LEVEL_HIGH>,
677				<GIC_SPI 472 IRQ_TYPE_LEVEL_HIGH>,
678				<GIC_SPI 473 IRQ_TYPE_LEVEL_HIGH>,
679				<GIC_SPI 474 IRQ_TYPE_LEVEL_HIGH>;
680
681			status = "disabled";
682		};
683
684		a2noc: interconnect@1704000 {
685			compatible = "qcom,sdm660-a2noc";
686			reg = <0x01704000 0xc100>;
687			#interconnect-cells = <1>;
688			clock-names = "bus",
689				      "bus_a",
690				      "ipa",
691				      "ufs_axi",
692				      "aggre2_ufs_axi",
693				      "aggre2_usb3_axi",
694				      "cfg_noc_usb2_axi";
695			clocks = <&rpmcc RPM_SMD_AGGR2_NOC_CLK>,
696				 <&rpmcc RPM_SMD_AGGR2_NOC_A_CLK>,
697				 <&rpmcc RPM_SMD_IPA_CLK>,
698				 <&gcc GCC_UFS_AXI_CLK>,
699				 <&gcc GCC_AGGRE2_UFS_AXI_CLK>,
700				 <&gcc GCC_AGGRE2_USB3_AXI_CLK>,
701				 <&gcc GCC_CFG_NOC_USB2_AXI_CLK>;
702		};
703
704		mnoc: interconnect@1745000 {
705			compatible = "qcom,sdm660-mnoc";
706			reg = <0x01745000 0xa010>;
707			#interconnect-cells = <1>;
708			clock-names = "bus", "bus_a", "iface";
709			clocks = <&rpmcc RPM_SMD_MMSSNOC_AXI_CLK>,
710				 <&rpmcc RPM_SMD_MMSSNOC_AXI_CLK_A>,
711				 <&mmcc AHB_CLK_SRC>;
712		};
713
714		tsens: thermal-sensor@10ae000 {
715			compatible = "qcom,sdm630-tsens", "qcom,tsens-v2";
716			reg = <0x010ae000 0x1000>, /* TM */
717				  <0x010ad000 0x1000>; /* SROT */
718			#qcom,sensors = <12>;
719			interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>,
720					 <GIC_SPI 430 IRQ_TYPE_LEVEL_HIGH>;
721			interrupt-names = "uplow", "critical";
722			#thermal-sensor-cells = <1>;
723		};
724
725		tcsr_mutex: hwlock@1f40000 {
726			compatible = "qcom,tcsr-mutex";
727			reg = <0x01f40000 0x20000>;
728			#hwlock-cells = <1>;
729		};
730
731		tcsr_regs_1: syscon@1f60000 {
732			compatible = "qcom,sdm630-tcsr", "syscon";
733			reg = <0x01f60000 0x20000>;
734		};
735
736		tlmm: pinctrl@3100000 {
737			compatible = "qcom,sdm630-pinctrl";
738			reg = <0x03100000 0x400000>,
739				  <0x03500000 0x400000>,
740				  <0x03900000 0x400000>;
741			reg-names = "south", "center", "north";
742			interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
743			gpio-controller;
744			gpio-ranges = <&tlmm 0 0 114>;
745			#gpio-cells = <2>;
746			interrupt-controller;
747			#interrupt-cells = <2>;
748
749			blsp1_uart1_default: blsp1-uart1-default-state {
750				pins = "gpio0", "gpio1", "gpio2", "gpio3";
751				function = "blsp_uart1";
752				drive-strength = <2>;
753				bias-disable;
754			};
755
756			blsp1_uart1_sleep: blsp1-uart1-sleep-state {
757				pins = "gpio0", "gpio1", "gpio2", "gpio3";
758				function = "gpio";
759				drive-strength = <2>;
760				bias-disable;
761			};
762
763			blsp1_uart2_default: blsp1-uart2-default-state {
764				pins = "gpio4", "gpio5";
765				function = "blsp_uart2";
766				drive-strength = <2>;
767				bias-disable;
768			};
769
770			blsp2_uart1_default: blsp2-uart1-active-state {
771				tx-rts-pins {
772					pins = "gpio16", "gpio19";
773					function = "blsp_uart5";
774					drive-strength = <2>;
775					bias-disable;
776				};
777
778				rx-pins {
779					/*
780					 * Avoid garbage data while BT module
781					 * is powered off or not driving signal
782					 */
783					pins = "gpio17";
784					function = "blsp_uart5";
785					drive-strength = <2>;
786					bias-pull-up;
787				};
788
789				cts-pins {
790					/* Match the pull of the BT module */
791					pins = "gpio18";
792					function = "blsp_uart5";
793					drive-strength = <2>;
794					bias-pull-down;
795				};
796			};
797
798			blsp2_uart1_sleep: blsp2-uart1-sleep-state {
799				tx-pins {
800					pins = "gpio16";
801					function = "gpio";
802					drive-strength = <2>;
803					bias-pull-up;
804				};
805
806				rx-cts-rts-pins {
807					pins = "gpio17", "gpio18", "gpio19";
808					function = "gpio";
809					drive-strength = <2>;
810					bias-disable;
811				};
812			};
813
814			i2c1_default: i2c1-default-state {
815				pins = "gpio2", "gpio3";
816				function = "blsp_i2c1";
817				drive-strength = <2>;
818				bias-disable;
819			};
820
821			i2c1_sleep: i2c1-sleep-state {
822				pins = "gpio2", "gpio3";
823				function = "blsp_i2c1";
824				drive-strength = <2>;
825				bias-pull-up;
826			};
827
828			i2c2_default: i2c2-default-state {
829				pins = "gpio6", "gpio7";
830				function = "blsp_i2c2";
831				drive-strength = <2>;
832				bias-disable;
833			};
834
835			i2c2_sleep: i2c2-sleep-state {
836				pins = "gpio6", "gpio7";
837				function = "blsp_i2c2";
838				drive-strength = <2>;
839				bias-pull-up;
840			};
841
842			i2c3_default: i2c3-default-state {
843				pins = "gpio10", "gpio11";
844				function = "blsp_i2c3";
845				drive-strength = <2>;
846				bias-disable;
847			};
848
849			i2c3_sleep: i2c3-sleep-state {
850				pins = "gpio10", "gpio11";
851				function = "blsp_i2c3";
852				drive-strength = <2>;
853				bias-pull-up;
854			};
855
856			i2c4_default: i2c4-default-state {
857				pins = "gpio14", "gpio15";
858				function = "blsp_i2c4";
859				drive-strength = <2>;
860				bias-disable;
861			};
862
863			i2c4_sleep: i2c4-sleep-state {
864				pins = "gpio14", "gpio15";
865				function = "blsp_i2c4";
866				drive-strength = <2>;
867				bias-pull-up;
868			};
869
870			i2c5_default: i2c5-default-state {
871				pins = "gpio18", "gpio19";
872				function = "blsp_i2c5";
873				drive-strength = <2>;
874				bias-disable;
875			};
876
877			i2c5_sleep: i2c5-sleep-state {
878				pins = "gpio18", "gpio19";
879				function = "blsp_i2c5";
880				drive-strength = <2>;
881				bias-pull-up;
882			};
883
884			i2c6_default: i2c6-default-state {
885				pins = "gpio22", "gpio23";
886				function = "blsp_i2c6";
887				drive-strength = <2>;
888				bias-disable;
889			};
890
891			i2c6_sleep: i2c6-sleep-state {
892				pins = "gpio22", "gpio23";
893				function = "blsp_i2c6";
894				drive-strength = <2>;
895				bias-pull-up;
896			};
897
898			i2c7_default: i2c7-default-state {
899				pins = "gpio26", "gpio27";
900				function = "blsp_i2c7";
901				drive-strength = <2>;
902				bias-disable;
903			};
904
905			i2c7_sleep: i2c7-sleep-state {
906				pins = "gpio26", "gpio27";
907				function = "blsp_i2c7";
908				drive-strength = <2>;
909				bias-pull-up;
910			};
911
912			i2c8_default: i2c8-default-state {
913				pins = "gpio30", "gpio31";
914				function = "blsp_i2c8_a";
915				drive-strength = <2>;
916				bias-disable;
917			};
918
919			i2c8_sleep: i2c8-sleep-state {
920				pins = "gpio30", "gpio31";
921				function = "blsp_i2c8_a";
922				drive-strength = <2>;
923				bias-pull-up;
924			};
925
926			cci0_default: cci0-default-state {
927				pins = "gpio36","gpio37";
928				function = "cci_i2c";
929				bias-pull-up;
930				drive-strength = <2>;
931			};
932
933			cci1_default: cci1-default-state {
934				pins = "gpio38","gpio39";
935				function = "cci_i2c";
936				bias-pull-up;
937				drive-strength = <2>;
938			};
939
940			sdc1_state_on: sdc1-on-state {
941				clk-pins {
942					pins = "sdc1_clk";
943					bias-disable;
944					drive-strength = <16>;
945				};
946
947				cmd-pins {
948					pins = "sdc1_cmd";
949					bias-pull-up;
950					drive-strength = <10>;
951				};
952
953				data-pins {
954					pins = "sdc1_data";
955					bias-pull-up;
956					drive-strength = <10>;
957				};
958
959				rclk-pins {
960					pins = "sdc1_rclk";
961					bias-pull-down;
962				};
963			};
964
965			sdc1_state_off: sdc1-off-state {
966				clk-pins {
967					pins = "sdc1_clk";
968					bias-disable;
969					drive-strength = <2>;
970				};
971
972				cmd-pins {
973					pins = "sdc1_cmd";
974					bias-pull-up;
975					drive-strength = <2>;
976				};
977
978				data-pins {
979					pins = "sdc1_data";
980					bias-pull-up;
981					drive-strength = <2>;
982				};
983
984				rclk-pins {
985					pins = "sdc1_rclk";
986					bias-pull-down;
987				};
988			};
989
990			sdc2_state_on: sdc2-on-state {
991				clk-pins {
992					pins = "sdc2_clk";
993					bias-disable;
994					drive-strength = <16>;
995				};
996
997				cmd-pins {
998					pins = "sdc2_cmd";
999					bias-pull-up;
1000					drive-strength = <10>;
1001				};
1002
1003				data-pins {
1004					pins = "sdc2_data";
1005					bias-pull-up;
1006					drive-strength = <10>;
1007				};
1008			};
1009
1010			sdc2_state_off: sdc2-off-state {
1011				clk-pins {
1012					pins = "sdc2_clk";
1013					bias-disable;
1014					drive-strength = <2>;
1015				};
1016
1017				cmd-pins {
1018					pins = "sdc2_cmd";
1019					bias-pull-up;
1020					drive-strength = <2>;
1021				};
1022
1023				data-pins {
1024					pins = "sdc2_data";
1025					bias-pull-up;
1026					drive-strength = <2>;
1027				};
1028			};
1029		};
1030
1031		adreno_gpu: gpu@5000000 {
1032			compatible = "qcom,adreno-508.0", "qcom,adreno";
1033
1034			reg = <0x05000000 0x40000>;
1035			reg-names = "kgsl_3d0_reg_memory";
1036
1037			interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>;
1038
1039			clocks = <&gcc GCC_GPU_CFG_AHB_CLK>,
1040				<&gpucc GPUCC_RBBMTIMER_CLK>,
1041				<&gcc GCC_BIMC_GFX_CLK>,
1042				<&gcc GCC_GPU_BIMC_GFX_CLK>,
1043				<&gpucc GPUCC_RBCPR_CLK>,
1044				<&gpucc GPUCC_GFX3D_CLK>;
1045
1046			clock-names = "iface",
1047				"rbbmtimer",
1048				"mem",
1049				"mem_iface",
1050				"rbcpr",
1051				"core";
1052
1053			power-domains = <&rpmpd SDM660_VDDMX>;
1054			iommus = <&kgsl_smmu 0>;
1055
1056			nvmem-cells = <&gpu_speed_bin>;
1057			nvmem-cell-names = "speed_bin";
1058
1059			interconnects = <&bimc MASTER_OXILI &bimc SLAVE_EBI>;
1060			interconnect-names = "gfx-mem";
1061
1062			operating-points-v2 = <&gpu_sdm630_opp_table>;
1063
1064			status = "disabled";
1065
1066			gpu_sdm630_opp_table: opp-table {
1067				compatible = "operating-points-v2";
1068				opp-775000000 {
1069					opp-hz = /bits/ 64 <775000000>;
1070					opp-level = <RPM_SMD_LEVEL_TURBO>;
1071					opp-peak-kBps = <5412000>;
1072					opp-supported-hw = <0xa2>;
1073				};
1074				opp-647000000 {
1075					opp-hz = /bits/ 64 <647000000>;
1076					opp-level = <RPM_SMD_LEVEL_NOM_PLUS>;
1077					opp-peak-kBps = <4068000>;
1078					opp-supported-hw = <0xff>;
1079				};
1080				opp-588000000 {
1081					opp-hz = /bits/ 64 <588000000>;
1082					opp-level = <RPM_SMD_LEVEL_NOM>;
1083					opp-peak-kBps = <3072000>;
1084					opp-supported-hw = <0xff>;
1085				};
1086				opp-465000000 {
1087					opp-hz = /bits/ 64 <465000000>;
1088					opp-level = <RPM_SMD_LEVEL_SVS_PLUS>;
1089					opp-peak-kBps = <2724000>;
1090					opp-supported-hw = <0xff>;
1091				};
1092				opp-370000000 {
1093					opp-hz = /bits/ 64 <370000000>;
1094					opp-level = <RPM_SMD_LEVEL_SVS>;
1095					opp-peak-kBps = <2188000>;
1096					opp-supported-hw = <0xff>;
1097				};
1098				opp-240000000 {
1099					opp-hz = /bits/ 64 <240000000>;
1100					opp-level = <RPM_SMD_LEVEL_LOW_SVS>;
1101					opp-peak-kBps = <1648000>;
1102					opp-supported-hw = <0xff>;
1103				};
1104				opp-160000000 {
1105					opp-hz = /bits/ 64 <160000000>;
1106					opp-level = <RPM_SMD_LEVEL_MIN_SVS>;
1107					opp-peak-kBps = <1200000>;
1108					opp-supported-hw = <0xff>;
1109				};
1110			};
1111		};
1112
1113		kgsl_smmu: iommu@5040000 {
1114			compatible = "qcom,sdm630-smmu-v2",
1115				     "qcom,adreno-smmu", "qcom,smmu-v2";
1116			reg = <0x05040000 0x10000>;
1117
1118			/*
1119			 * GX GDSC parent is CX. We need to bring up CX for SMMU
1120			 * but we need both up for Adreno. On the other hand, we
1121			 * need to manage the GX rpmpd domain in the adreno driver.
1122			 * Enable CX/GX GDSCs here so that we can manage just the GX
1123			 * RPM Power Domain in the Adreno driver.
1124			 */
1125			power-domains = <&gpucc GPU_GX_GDSC>;
1126			clocks = <&gcc GCC_GPU_CFG_AHB_CLK>,
1127				 <&gcc GCC_BIMC_GFX_CLK>,
1128				 <&gcc GCC_GPU_BIMC_GFX_CLK>;
1129			clock-names = "iface", "mem", "mem_iface";
1130			#global-interrupts = <2>;
1131			#iommu-cells = <1>;
1132
1133			interrupts =
1134				<GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>,
1135				<GIC_SPI 231 IRQ_TYPE_LEVEL_HIGH>,
1136
1137				<GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>,
1138				<GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>,
1139				<GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>,
1140				<GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>,
1141				<GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
1142				<GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
1143				<GIC_SPI 349 IRQ_TYPE_LEVEL_HIGH>,
1144				<GIC_SPI 350 IRQ_TYPE_LEVEL_HIGH>;
1145
1146			status = "disabled";
1147		};
1148
1149		gpucc: clock-controller@5065000 {
1150			compatible = "qcom,gpucc-sdm630";
1151			#clock-cells = <1>;
1152			#reset-cells = <1>;
1153			#power-domain-cells = <1>;
1154			reg = <0x05065000 0x9038>;
1155
1156			clocks = <&xo_board>,
1157				 <&gcc GCC_GPU_GPLL0_CLK>,
1158				 <&gcc GCC_GPU_GPLL0_DIV_CLK>;
1159			clock-names = "xo",
1160				      "gcc_gpu_gpll0_clk",
1161				      "gcc_gpu_gpll0_div_clk";
1162			status = "disabled";
1163		};
1164
1165		lpass_smmu: iommu@5100000 {
1166			compatible = "qcom,sdm630-smmu-v2", "qcom,smmu-v2";
1167			reg = <0x05100000 0x40000>;
1168			#iommu-cells = <1>;
1169
1170			#global-interrupts = <2>;
1171			interrupts =
1172				<GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>,
1173				<GIC_SPI 231 IRQ_TYPE_LEVEL_HIGH>,
1174
1175				<GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH>,
1176				<GIC_SPI 393 IRQ_TYPE_LEVEL_HIGH>,
1177				<GIC_SPI 394 IRQ_TYPE_LEVEL_HIGH>,
1178				<GIC_SPI 395 IRQ_TYPE_LEVEL_HIGH>,
1179				<GIC_SPI 396 IRQ_TYPE_LEVEL_HIGH>,
1180				<GIC_SPI 397 IRQ_TYPE_LEVEL_HIGH>,
1181				<GIC_SPI 398 IRQ_TYPE_LEVEL_HIGH>,
1182				<GIC_SPI 399 IRQ_TYPE_LEVEL_HIGH>,
1183				<GIC_SPI 400 IRQ_TYPE_LEVEL_HIGH>,
1184				<GIC_SPI 401 IRQ_TYPE_LEVEL_HIGH>,
1185				<GIC_SPI 402 IRQ_TYPE_LEVEL_HIGH>,
1186				<GIC_SPI 403 IRQ_TYPE_LEVEL_HIGH>,
1187				<GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
1188				<GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>,
1189				<GIC_SPI 225 IRQ_TYPE_LEVEL_HIGH>,
1190				<GIC_SPI 310 IRQ_TYPE_LEVEL_HIGH>,
1191				<GIC_SPI 404 IRQ_TYPE_LEVEL_HIGH>;
1192
1193			status = "disabled";
1194		};
1195
1196		sram@290000 {
1197			compatible = "qcom,rpm-stats";
1198			reg = <0x00290000 0x10000>;
1199		};
1200
1201		spmi_bus: spmi@800f000 {
1202			compatible = "qcom,spmi-pmic-arb";
1203			reg = <0x0800f000 0x1000>,
1204			      <0x08400000 0x1000000>,
1205			      <0x09400000 0x1000000>,
1206			      <0x0a400000 0x220000>,
1207			      <0x0800a000 0x3000>;
1208			reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
1209			interrupt-names = "periph_irq";
1210			interrupts = <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>;
1211			qcom,ee = <0>;
1212			qcom,channel = <0>;
1213			#address-cells = <2>;
1214			#size-cells = <0>;
1215			interrupt-controller;
1216			#interrupt-cells = <4>;
1217		};
1218
1219		usb3: usb@a8f8800 {
1220			compatible = "qcom,sdm660-dwc3", "qcom,dwc3";
1221			reg = <0x0a8f8800 0x400>;
1222			status = "disabled";
1223			#address-cells = <1>;
1224			#size-cells = <1>;
1225			ranges;
1226
1227			clocks = <&gcc GCC_CFG_NOC_USB3_AXI_CLK>,
1228				 <&gcc GCC_USB30_MASTER_CLK>,
1229				 <&gcc GCC_AGGRE2_USB3_AXI_CLK>,
1230				 <&gcc GCC_USB30_SLEEP_CLK>,
1231				 <&gcc GCC_USB30_MOCK_UTMI_CLK>,
1232				 <&rpmcc RPM_SMD_AGGR2_NOC_CLK>;
1233			clock-names = "cfg_noc",
1234				      "core",
1235				      "iface",
1236				      "sleep",
1237				      "mock_utmi",
1238				      "bus";
1239
1240			assigned-clocks = <&gcc GCC_USB30_MOCK_UTMI_CLK>,
1241					  <&gcc GCC_USB30_MASTER_CLK>,
1242					  <&rpmcc RPM_SMD_AGGR2_NOC_CLK>;
1243			assigned-clock-rates = <19200000>, <120000000>,
1244					       <19200000>;
1245
1246			interrupts = <GIC_SPI 347 IRQ_TYPE_LEVEL_HIGH>,
1247				     <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH>;
1248			interrupt-names = "hs_phy_irq", "ss_phy_irq";
1249
1250			power-domains = <&gcc USB_30_GDSC>;
1251			qcom,select-utmi-as-pipe-clk;
1252
1253			resets = <&gcc GCC_USB_30_BCR>;
1254
1255			usb3_dwc3: usb@a800000 {
1256				compatible = "snps,dwc3";
1257				reg = <0x0a800000 0xc8d0>;
1258				interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
1259				snps,dis_u2_susphy_quirk;
1260				snps,dis_enblslpm_quirk;
1261
1262				/*
1263				 * SDM630 technically supports USB3 but I
1264				 * haven't seen any devices making use of it.
1265				 */
1266				maximum-speed = "high-speed";
1267				phys = <&qusb2phy0>;
1268				phy-names = "usb2-phy";
1269				snps,hird-threshold = /bits/ 8 <0>;
1270			};
1271		};
1272
1273		qusb2phy0: phy@c012000 {
1274			compatible = "qcom,sdm660-qusb2-phy";
1275			reg = <0x0c012000 0x180>;
1276			#phy-cells = <0>;
1277
1278			clocks = <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
1279				 <&gcc GCC_RX0_USB2_CLKREF_CLK>;
1280			clock-names = "cfg_ahb", "ref";
1281
1282			resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>;
1283			nvmem-cells = <&qusb2_hstx_trim>;
1284			status = "disabled";
1285		};
1286
1287		qusb2phy1: phy@c014000 {
1288			compatible = "qcom,sdm660-qusb2-phy";
1289			reg = <0x0c014000 0x180>;
1290			#phy-cells = <0>;
1291
1292			clocks = <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
1293				 <&gcc GCC_RX1_USB2_CLKREF_CLK>;
1294			clock-names = "cfg_ahb", "ref";
1295
1296			resets = <&gcc GCC_QUSB2PHY_SEC_BCR>;
1297			nvmem-cells = <&qusb2_hstx_trim>;
1298			status = "disabled";
1299		};
1300
1301		sdhc_2: mmc@c084000 {
1302			compatible = "qcom,sdm630-sdhci", "qcom,sdhci-msm-v5";
1303			reg = <0x0c084000 0x1000>;
1304			reg-names = "hc";
1305
1306			interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
1307					<GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
1308			interrupt-names = "hc_irq", "pwr_irq";
1309
1310			bus-width = <4>;
1311
1312			clocks = <&gcc GCC_SDCC2_AHB_CLK>,
1313					<&gcc GCC_SDCC2_APPS_CLK>,
1314					<&xo_board>;
1315			clock-names = "iface", "core", "xo";
1316
1317
1318			interconnects = <&a2noc 3 &a2noc 10>,
1319					<&gnoc 0 &cnoc 28>;
1320			interconnect-names = "sdhc-ddr","cpu-sdhc";
1321			operating-points-v2 = <&sdhc2_opp_table>;
1322
1323			pinctrl-names = "default", "sleep";
1324			pinctrl-0 = <&sdc2_state_on>;
1325			pinctrl-1 = <&sdc2_state_off>;
1326			power-domains = <&rpmpd SDM660_VDDCX>;
1327
1328			status = "disabled";
1329
1330			sdhc2_opp_table: opp-table {
1331				 compatible = "operating-points-v2";
1332
1333				 opp-50000000 {
1334					opp-hz = /bits/ 64 <50000000>;
1335					required-opps = <&rpmpd_opp_low_svs>;
1336					opp-peak-kBps = <200000 140000>;
1337					opp-avg-kBps = <130718 133320>;
1338				 };
1339				 opp-100000000 {
1340					opp-hz = /bits/ 64 <100000000>;
1341					required-opps = <&rpmpd_opp_svs>;
1342					opp-peak-kBps = <250000 160000>;
1343					opp-avg-kBps = <196078 150000>;
1344				 };
1345				 opp-200000000 {
1346					opp-hz = /bits/ 64 <200000000>;
1347					required-opps = <&rpmpd_opp_nom>;
1348					opp-peak-kBps = <4096000 4096000>;
1349					opp-avg-kBps = <1338562 1338562>;
1350				 };
1351			};
1352		};
1353
1354		sdhc_1: mmc@c0c4000 {
1355			compatible = "qcom,sdm630-sdhci", "qcom,sdhci-msm-v5";
1356			reg = <0x0c0c4000 0x1000>,
1357			      <0x0c0c5000 0x1000>,
1358			      <0x0c0c8000 0x8000>;
1359			reg-names = "hc", "cqhci", "ice";
1360
1361			interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
1362					<GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
1363			interrupt-names = "hc_irq", "pwr_irq";
1364
1365			clocks = <&gcc GCC_SDCC1_AHB_CLK>,
1366				 <&gcc GCC_SDCC1_APPS_CLK>,
1367				 <&xo_board>,
1368				 <&gcc GCC_SDCC1_ICE_CORE_CLK>;
1369			clock-names = "iface", "core", "xo", "ice";
1370
1371			interconnects = <&a2noc 2 &a2noc 10>,
1372					<&gnoc 0 &cnoc 27>;
1373			interconnect-names = "sdhc-ddr", "cpu-sdhc";
1374			operating-points-v2 = <&sdhc1_opp_table>;
1375			pinctrl-names = "default", "sleep";
1376			pinctrl-0 = <&sdc1_state_on>;
1377			pinctrl-1 = <&sdc1_state_off>;
1378			power-domains = <&rpmpd SDM660_VDDCX>;
1379
1380			bus-width = <8>;
1381			non-removable;
1382
1383			status = "disabled";
1384
1385			sdhc1_opp_table: opp-table {
1386				compatible = "operating-points-v2";
1387
1388				opp-50000000 {
1389					opp-hz = /bits/ 64 <50000000>;
1390					required-opps = <&rpmpd_opp_low_svs>;
1391					opp-peak-kBps = <200000 140000>;
1392					opp-avg-kBps = <130718 133320>;
1393				};
1394				opp-100000000 {
1395					opp-hz = /bits/ 64 <100000000>;
1396					required-opps = <&rpmpd_opp_svs>;
1397					opp-peak-kBps = <250000 160000>;
1398					opp-avg-kBps = <196078 150000>;
1399				};
1400				opp-384000000 {
1401					opp-hz = /bits/ 64 <384000000>;
1402					required-opps = <&rpmpd_opp_nom>;
1403					opp-peak-kBps = <4096000 4096000>;
1404					opp-avg-kBps = <1338562 1338562>;
1405				};
1406			};
1407		};
1408
1409		usb2: usb@c2f8800 {
1410			compatible = "qcom,sdm660-dwc3", "qcom,dwc3";
1411			reg = <0x0c2f8800 0x400>;
1412			status = "disabled";
1413			#address-cells = <1>;
1414			#size-cells = <1>;
1415			ranges;
1416
1417			clocks = <&gcc GCC_CFG_NOC_USB2_AXI_CLK>,
1418				 <&gcc GCC_USB20_MASTER_CLK>,
1419				 <&gcc GCC_USB20_MOCK_UTMI_CLK>,
1420				 <&gcc GCC_USB20_SLEEP_CLK>;
1421			clock-names = "cfg_noc", "core",
1422				      "mock_utmi", "sleep";
1423
1424			assigned-clocks = <&gcc GCC_USB20_MOCK_UTMI_CLK>,
1425					  <&gcc GCC_USB20_MASTER_CLK>;
1426			assigned-clock-rates = <19200000>, <60000000>;
1427
1428			interrupts = <GIC_SPI 348 IRQ_TYPE_LEVEL_HIGH>;
1429			interrupt-names = "hs_phy_irq";
1430
1431			qcom,select-utmi-as-pipe-clk;
1432
1433			resets = <&gcc GCC_USB_20_BCR>;
1434
1435			usb2_dwc3: usb@c200000 {
1436				compatible = "snps,dwc3";
1437				reg = <0x0c200000 0xc8d0>;
1438				interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>;
1439				snps,dis_u2_susphy_quirk;
1440				snps,dis_enblslpm_quirk;
1441
1442				/* This is the HS-only host */
1443				maximum-speed = "high-speed";
1444				phys = <&qusb2phy1>;
1445				phy-names = "usb2-phy";
1446				snps,hird-threshold = /bits/ 8 <0>;
1447			};
1448		};
1449
1450		mmcc: clock-controller@c8c0000 {
1451			compatible = "qcom,mmcc-sdm630";
1452			reg = <0x0c8c0000 0x40000>;
1453			#clock-cells = <1>;
1454			#reset-cells = <1>;
1455			#power-domain-cells = <1>;
1456			clock-names = "xo",
1457					"sleep_clk",
1458					"gpll0",
1459					"gpll0_div",
1460					"dsi0pll",
1461					"dsi0pllbyte",
1462					"dsi1pll",
1463					"dsi1pllbyte",
1464					"dp_link_2x_clk_divsel_five",
1465					"dp_vco_divided_clk_src_mux";
1466			clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
1467					<&sleep_clk>,
1468					<&gcc GCC_MMSS_GPLL0_CLK>,
1469					<&gcc GCC_MMSS_GPLL0_DIV_CLK>,
1470					<&mdss_dsi0_phy 1>,
1471					<&mdss_dsi0_phy 0>,
1472					<0>,
1473					<0>,
1474					<0>,
1475					<0>;
1476		};
1477
1478		mdss: display-subsystem@c900000 {
1479			compatible = "qcom,mdss";
1480			reg = <0x0c900000 0x1000>,
1481			      <0x0c9b0000 0x1040>;
1482			reg-names = "mdss_phys", "vbif_phys";
1483
1484			power-domains = <&mmcc MDSS_GDSC>;
1485
1486			clocks = <&mmcc MDSS_AHB_CLK>,
1487				 <&mmcc MDSS_AXI_CLK>,
1488				 <&mmcc MDSS_VSYNC_CLK>,
1489				 <&mmcc MDSS_MDP_CLK>;
1490			clock-names = "iface",
1491				      "bus",
1492				      "vsync",
1493				      "core";
1494
1495			interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
1496
1497			interrupt-controller;
1498			#interrupt-cells = <1>;
1499
1500			#address-cells = <1>;
1501			#size-cells = <1>;
1502			ranges;
1503			status = "disabled";
1504
1505			mdp: display-controller@c901000 {
1506				compatible = "qcom,sdm630-mdp5", "qcom,mdp5";
1507				reg = <0x0c901000 0x89000>;
1508				reg-names = "mdp_phys";
1509
1510				interrupt-parent = <&mdss>;
1511				interrupts = <0>;
1512
1513				assigned-clocks = <&mmcc MDSS_MDP_CLK>,
1514						  <&mmcc MDSS_VSYNC_CLK>;
1515				assigned-clock-rates = <300000000>,
1516						       <19200000>;
1517				clocks = <&mmcc MDSS_AHB_CLK>,
1518					 <&mmcc MDSS_AXI_CLK>,
1519					 <&mmcc MDSS_MDP_CLK>,
1520					 <&mmcc MDSS_VSYNC_CLK>;
1521				clock-names = "iface",
1522					      "bus",
1523					      "core",
1524					      "vsync";
1525
1526				interconnects = <&mnoc 2 &bimc 5>,
1527						<&mnoc 3 &bimc 5>,
1528						<&gnoc 0 &mnoc 17>;
1529				interconnect-names = "mdp0-mem",
1530						     "mdp1-mem",
1531						     "rotator-mem";
1532				iommus = <&mmss_smmu 0>;
1533				operating-points-v2 = <&mdp_opp_table>;
1534				power-domains = <&rpmpd SDM660_VDDCX>;
1535
1536				ports {
1537					#address-cells = <1>;
1538					#size-cells = <0>;
1539
1540					port@0 {
1541						reg = <0>;
1542						mdp5_intf1_out: endpoint {
1543							remote-endpoint = <&mdss_dsi0_in>;
1544						};
1545					};
1546				};
1547
1548				mdp_opp_table: opp-table {
1549					compatible = "operating-points-v2";
1550
1551					opp-150000000 {
1552						opp-hz = /bits/ 64 <150000000>;
1553						opp-peak-kBps = <320000 320000 76800>;
1554						required-opps = <&rpmpd_opp_low_svs>;
1555					};
1556					opp-275000000 {
1557						opp-hz = /bits/ 64 <275000000>;
1558						opp-peak-kBps = <6400000 6400000 160000>;
1559						required-opps = <&rpmpd_opp_svs>;
1560					};
1561					opp-300000000 {
1562						opp-hz = /bits/ 64 <300000000>;
1563						opp-peak-kBps = <6400000 6400000 190000>;
1564						required-opps = <&rpmpd_opp_svs_plus>;
1565					};
1566					opp-330000000 {
1567						opp-hz = /bits/ 64 <330000000>;
1568						opp-peak-kBps = <6400000 6400000 240000>;
1569						required-opps = <&rpmpd_opp_nom>;
1570					};
1571					opp-412500000 {
1572						opp-hz = /bits/ 64 <412500000>;
1573						opp-peak-kBps = <6400000 6400000 320000>;
1574						required-opps = <&rpmpd_opp_turbo>;
1575					};
1576				};
1577			};
1578
1579			mdss_dsi0: dsi@c994000 {
1580				compatible = "qcom,sdm660-dsi-ctrl",
1581					     "qcom,mdss-dsi-ctrl";
1582				reg = <0x0c994000 0x400>;
1583				reg-names = "dsi_ctrl";
1584
1585				operating-points-v2 = <&dsi_opp_table>;
1586				power-domains = <&rpmpd SDM660_VDDCX>;
1587
1588				interrupt-parent = <&mdss>;
1589				interrupts = <4>;
1590
1591				assigned-clocks = <&mmcc BYTE0_CLK_SRC>,
1592						  <&mmcc PCLK0_CLK_SRC>;
1593				assigned-clock-parents = <&mdss_dsi0_phy 0>,
1594							 <&mdss_dsi0_phy 1>;
1595
1596				clocks = <&mmcc MDSS_MDP_CLK>,
1597					 <&mmcc MDSS_BYTE0_CLK>,
1598					 <&mmcc MDSS_BYTE0_INTF_CLK>,
1599					 <&mmcc MNOC_AHB_CLK>,
1600					 <&mmcc MDSS_AHB_CLK>,
1601					 <&mmcc MDSS_AXI_CLK>,
1602					 <&mmcc MISC_AHB_CLK>,
1603					 <&mmcc MDSS_PCLK0_CLK>,
1604					 <&mmcc MDSS_ESC0_CLK>;
1605				clock-names = "mdp_core",
1606					      "byte",
1607					      "byte_intf",
1608					      "mnoc",
1609					      "iface",
1610					      "bus",
1611					      "core_mmss",
1612					      "pixel",
1613					      "core";
1614
1615				phys = <&mdss_dsi0_phy>;
1616
1617				status = "disabled";
1618
1619				ports {
1620					#address-cells = <1>;
1621					#size-cells = <0>;
1622
1623					port@0 {
1624						reg = <0>;
1625						mdss_dsi0_in: endpoint {
1626							remote-endpoint = <&mdp5_intf1_out>;
1627						};
1628					};
1629
1630					port@1 {
1631						reg = <1>;
1632						mdss_dsi0_out: endpoint {
1633						};
1634					};
1635				};
1636			};
1637
1638			mdss_dsi0_phy: phy@c994400 {
1639				compatible = "qcom,dsi-phy-14nm-660";
1640				reg = <0x0c994400 0x100>,
1641				      <0x0c994500 0x300>,
1642				      <0x0c994800 0x188>;
1643				reg-names = "dsi_phy",
1644					    "dsi_phy_lane",
1645					    "dsi_pll";
1646
1647				#clock-cells = <1>;
1648				#phy-cells = <0>;
1649
1650				clocks = <&mmcc MDSS_AHB_CLK>, <&xo_board>;
1651				clock-names = "iface", "ref";
1652				status = "disabled";
1653			};
1654		};
1655
1656		blsp1_dma: dma-controller@c144000 {
1657			compatible = "qcom,bam-v1.7.0";
1658			reg = <0x0c144000 0x1f000>;
1659			interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>;
1660			clocks = <&gcc GCC_BLSP1_AHB_CLK>;
1661			clock-names = "bam_clk";
1662			#dma-cells = <1>;
1663			qcom,ee = <0>;
1664			qcom,controlled-remotely;
1665			num-channels = <18>;
1666			qcom,num-ees = <4>;
1667		};
1668
1669		blsp1_uart1: serial@c16f000 {
1670			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
1671			reg = <0x0c16f000 0x200>;
1672			interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;
1673			clocks = <&gcc GCC_BLSP1_UART1_APPS_CLK>,
1674				 <&gcc GCC_BLSP1_AHB_CLK>;
1675			clock-names = "core", "iface";
1676			dmas = <&blsp1_dma 0>, <&blsp1_dma 1>;
1677			dma-names = "tx", "rx";
1678			pinctrl-names = "default", "sleep";
1679			pinctrl-0 = <&blsp1_uart1_default>;
1680			pinctrl-1 = <&blsp1_uart1_sleep>;
1681			status = "disabled";
1682		};
1683
1684		blsp1_uart2: serial@c170000 {
1685			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
1686			reg = <0x0c170000 0x1000>;
1687			interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
1688			clocks = <&gcc GCC_BLSP1_UART2_APPS_CLK>,
1689				 <&gcc GCC_BLSP1_AHB_CLK>;
1690			clock-names = "core", "iface";
1691			dmas = <&blsp1_dma 2>, <&blsp1_dma 3>;
1692			dma-names = "tx", "rx";
1693			pinctrl-names = "default";
1694			pinctrl-0 = <&blsp1_uart2_default>;
1695			status = "disabled";
1696		};
1697
1698		blsp_i2c1: i2c@c175000 {
1699			compatible = "qcom,i2c-qup-v2.2.1";
1700			reg = <0x0c175000 0x600>;
1701			interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
1702
1703			clocks = <&gcc GCC_BLSP1_QUP1_I2C_APPS_CLK>,
1704					<&gcc GCC_BLSP1_AHB_CLK>;
1705			clock-names = "core", "iface";
1706			clock-frequency = <400000>;
1707			dmas = <&blsp1_dma 4>, <&blsp1_dma 5>;
1708			dma-names = "tx", "rx";
1709
1710			pinctrl-names = "default", "sleep";
1711			pinctrl-0 = <&i2c1_default>;
1712			pinctrl-1 = <&i2c1_sleep>;
1713			#address-cells = <1>;
1714			#size-cells = <0>;
1715			status = "disabled";
1716		};
1717
1718		blsp_i2c2: i2c@c176000 {
1719			compatible = "qcom,i2c-qup-v2.2.1";
1720			reg = <0x0c176000 0x600>;
1721			interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
1722
1723			clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>,
1724				 <&gcc GCC_BLSP1_AHB_CLK>;
1725			clock-names = "core", "iface";
1726			clock-frequency = <400000>;
1727			dmas = <&blsp1_dma 6>, <&blsp1_dma 7>;
1728			dma-names = "tx", "rx";
1729
1730			pinctrl-names = "default", "sleep";
1731			pinctrl-0 = <&i2c2_default>;
1732			pinctrl-1 = <&i2c2_sleep>;
1733			#address-cells = <1>;
1734			#size-cells = <0>;
1735			status = "disabled";
1736		};
1737
1738		blsp_i2c3: i2c@c177000 {
1739			compatible = "qcom,i2c-qup-v2.2.1";
1740			reg = <0x0c177000 0x600>;
1741			interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
1742
1743			clocks = <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>,
1744				 <&gcc GCC_BLSP1_AHB_CLK>;
1745			clock-names = "core", "iface";
1746			clock-frequency = <400000>;
1747			dmas = <&blsp1_dma 8>, <&blsp1_dma 9>;
1748			dma-names = "tx", "rx";
1749
1750			pinctrl-names = "default", "sleep";
1751			pinctrl-0 = <&i2c3_default>;
1752			pinctrl-1 = <&i2c3_sleep>;
1753			#address-cells = <1>;
1754			#size-cells = <0>;
1755			status = "disabled";
1756		};
1757
1758		blsp_i2c4: i2c@c178000 {
1759			compatible = "qcom,i2c-qup-v2.2.1";
1760			reg = <0x0c178000 0x600>;
1761			interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
1762
1763			clocks = <&gcc GCC_BLSP1_QUP4_I2C_APPS_CLK>,
1764				 <&gcc GCC_BLSP1_AHB_CLK>;
1765			clock-names = "core", "iface";
1766			clock-frequency = <400000>;
1767			dmas = <&blsp1_dma 10>, <&blsp1_dma 11>;
1768			dma-names = "tx", "rx";
1769
1770			pinctrl-names = "default", "sleep";
1771			pinctrl-0 = <&i2c4_default>;
1772			pinctrl-1 = <&i2c4_sleep>;
1773			#address-cells = <1>;
1774			#size-cells = <0>;
1775			status = "disabled";
1776		};
1777
1778		blsp2_dma: dma-controller@c184000 {
1779			compatible = "qcom,bam-v1.7.0";
1780			reg = <0x0c184000 0x1f000>;
1781			interrupts = <GIC_SPI 239 IRQ_TYPE_LEVEL_HIGH>;
1782			clocks = <&gcc GCC_BLSP2_AHB_CLK>;
1783			clock-names = "bam_clk";
1784			#dma-cells = <1>;
1785			qcom,ee = <0>;
1786			qcom,controlled-remotely;
1787			num-channels = <18>;
1788			qcom,num-ees = <4>;
1789		};
1790
1791		blsp2_uart1: serial@c1af000 {
1792			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
1793			reg = <0x0c1af000 0x200>;
1794			interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
1795			clocks = <&gcc GCC_BLSP2_UART1_APPS_CLK>,
1796				 <&gcc GCC_BLSP2_AHB_CLK>;
1797			clock-names = "core", "iface";
1798			dmas = <&blsp2_dma 0>, <&blsp2_dma 1>;
1799			dma-names = "tx", "rx";
1800			pinctrl-names = "default", "sleep";
1801			pinctrl-0 = <&blsp2_uart1_default>;
1802			pinctrl-1 = <&blsp2_uart1_sleep>;
1803			status = "disabled";
1804		};
1805
1806		blsp_i2c5: i2c@c1b5000 {
1807			compatible = "qcom,i2c-qup-v2.2.1";
1808			reg = <0x0c1b5000 0x600>;
1809			interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
1810
1811			clocks = <&gcc GCC_BLSP2_QUP1_I2C_APPS_CLK>,
1812				 <&gcc GCC_BLSP2_AHB_CLK>;
1813			clock-names = "core", "iface";
1814			clock-frequency = <400000>;
1815			dmas = <&blsp2_dma 4>, <&blsp2_dma 5>;
1816			dma-names = "tx", "rx";
1817
1818			pinctrl-names = "default", "sleep";
1819			pinctrl-0 = <&i2c5_default>;
1820			pinctrl-1 = <&i2c5_sleep>;
1821			#address-cells = <1>;
1822			#size-cells = <0>;
1823			status = "disabled";
1824		};
1825
1826		blsp_i2c6: i2c@c1b6000 {
1827			compatible = "qcom,i2c-qup-v2.2.1";
1828			reg = <0x0c1b6000 0x600>;
1829			interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
1830
1831			clocks = <&gcc GCC_BLSP2_QUP2_I2C_APPS_CLK>,
1832				 <&gcc GCC_BLSP2_AHB_CLK>;
1833			clock-names = "core", "iface";
1834			clock-frequency = <400000>;
1835			dmas = <&blsp2_dma 6>, <&blsp2_dma 7>;
1836			dma-names = "tx", "rx";
1837
1838			pinctrl-names = "default", "sleep";
1839			pinctrl-0 = <&i2c6_default>;
1840			pinctrl-1 = <&i2c6_sleep>;
1841			#address-cells = <1>;
1842			#size-cells = <0>;
1843			status = "disabled";
1844		};
1845
1846		blsp_i2c7: i2c@c1b7000 {
1847			compatible = "qcom,i2c-qup-v2.2.1";
1848			reg = <0x0c1b7000 0x600>;
1849			interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
1850
1851			clocks = <&gcc GCC_BLSP2_QUP3_I2C_APPS_CLK>,
1852				 <&gcc GCC_BLSP2_AHB_CLK>;
1853			clock-names = "core", "iface";
1854			clock-frequency = <400000>;
1855			dmas = <&blsp2_dma 8>, <&blsp2_dma 9>;
1856			dma-names = "tx", "rx";
1857
1858			pinctrl-names = "default", "sleep";
1859			pinctrl-0 = <&i2c7_default>;
1860			pinctrl-1 = <&i2c7_sleep>;
1861			#address-cells = <1>;
1862			#size-cells = <0>;
1863			status = "disabled";
1864		};
1865
1866		blsp_i2c8: i2c@c1b8000 {
1867			compatible = "qcom,i2c-qup-v2.2.1";
1868			reg = <0x0c1b8000 0x600>;
1869			interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
1870
1871			clocks = <&gcc GCC_BLSP2_QUP4_I2C_APPS_CLK>,
1872				 <&gcc GCC_BLSP2_AHB_CLK>;
1873			clock-names = "core", "iface";
1874			clock-frequency = <400000>;
1875			dmas = <&blsp2_dma 10>, <&blsp2_dma 11>;
1876			dma-names = "tx", "rx";
1877
1878			pinctrl-names = "default", "sleep";
1879			pinctrl-0 = <&i2c8_default>;
1880			pinctrl-1 = <&i2c8_sleep>;
1881			#address-cells = <1>;
1882			#size-cells = <0>;
1883			status = "disabled";
1884		};
1885
1886		sram@146bf000 {
1887			compatible = "qcom,sdm630-imem", "syscon", "simple-mfd";
1888			reg = <0x146bf000 0x1000>;
1889
1890			#address-cells = <1>;
1891			#size-cells = <1>;
1892
1893			ranges = <0 0x146bf000 0x1000>;
1894
1895			pil-reloc@94c {
1896				compatible = "qcom,pil-reloc-info";
1897				reg = <0x94c 0xc8>;
1898			};
1899		};
1900
1901		camss: camss@ca00020 {
1902			compatible = "qcom,sdm660-camss";
1903			reg = <0x0ca00020 0x10>,
1904			      <0x0ca30000 0x100>,
1905			      <0x0ca30400 0x100>,
1906			      <0x0ca30800 0x100>,
1907			      <0x0ca30c00 0x100>,
1908			      <0x0c824000 0x1000>,
1909			      <0x0ca00120 0x4>,
1910			      <0x0c825000 0x1000>,
1911			      <0x0ca00124 0x4>,
1912			      <0x0c826000 0x1000>,
1913			      <0x0ca00128 0x4>,
1914			      <0x0ca31000 0x500>,
1915			      <0x0ca10000 0x1000>,
1916			      <0x0ca14000 0x1000>;
1917			reg-names = "csi_clk_mux",
1918				    "csid0",
1919				    "csid1",
1920				    "csid2",
1921				    "csid3",
1922				    "csiphy0",
1923				    "csiphy0_clk_mux",
1924				    "csiphy1",
1925				    "csiphy1_clk_mux",
1926				    "csiphy2",
1927				    "csiphy2_clk_mux",
1928				    "ispif",
1929				    "vfe0",
1930				    "vfe1";
1931			interrupts = <GIC_SPI 296 IRQ_TYPE_EDGE_RISING>,
1932				     <GIC_SPI 297 IRQ_TYPE_EDGE_RISING>,
1933				     <GIC_SPI 298 IRQ_TYPE_EDGE_RISING>,
1934				     <GIC_SPI 299 IRQ_TYPE_EDGE_RISING>,
1935				     <GIC_SPI 78 IRQ_TYPE_EDGE_RISING>,
1936				     <GIC_SPI 79 IRQ_TYPE_EDGE_RISING>,
1937				     <GIC_SPI 80 IRQ_TYPE_EDGE_RISING>,
1938				     <GIC_SPI 309 IRQ_TYPE_EDGE_RISING>,
1939				     <GIC_SPI 314 IRQ_TYPE_EDGE_RISING>,
1940				     <GIC_SPI 315 IRQ_TYPE_EDGE_RISING>;
1941			interrupt-names = "csid0",
1942					  "csid1",
1943					  "csid2",
1944					  "csid3",
1945					  "csiphy0",
1946					  "csiphy1",
1947					  "csiphy2",
1948					  "ispif",
1949					  "vfe0",
1950					  "vfe1";
1951			clocks = <&mmcc CAMSS_AHB_CLK>,
1952				 <&mmcc CAMSS_CPHY_CSID0_CLK>,
1953				 <&mmcc CAMSS_CPHY_CSID1_CLK>,
1954				 <&mmcc CAMSS_CPHY_CSID2_CLK>,
1955				 <&mmcc CAMSS_CPHY_CSID3_CLK>,
1956				 <&mmcc CAMSS_CSI0_AHB_CLK>,
1957				 <&mmcc CAMSS_CSI0_CLK>,
1958				 <&mmcc CAMSS_CPHY_CSID0_CLK>,
1959				 <&mmcc CAMSS_CSI0PIX_CLK>,
1960				 <&mmcc CAMSS_CSI0RDI_CLK>,
1961				 <&mmcc CAMSS_CSI1_AHB_CLK>,
1962				 <&mmcc CAMSS_CSI1_CLK>,
1963				 <&mmcc CAMSS_CPHY_CSID1_CLK>,
1964				 <&mmcc CAMSS_CSI1PIX_CLK>,
1965				 <&mmcc CAMSS_CSI1RDI_CLK>,
1966				 <&mmcc CAMSS_CSI2_AHB_CLK>,
1967				 <&mmcc CAMSS_CSI2_CLK>,
1968				 <&mmcc CAMSS_CPHY_CSID2_CLK>,
1969				 <&mmcc CAMSS_CSI2PIX_CLK>,
1970				 <&mmcc CAMSS_CSI2RDI_CLK>,
1971				 <&mmcc CAMSS_CSI3_AHB_CLK>,
1972				 <&mmcc CAMSS_CSI3_CLK>,
1973				 <&mmcc CAMSS_CPHY_CSID3_CLK>,
1974				 <&mmcc CAMSS_CSI3PIX_CLK>,
1975				 <&mmcc CAMSS_CSI3RDI_CLK>,
1976				 <&mmcc CAMSS_CSI0PHYTIMER_CLK>,
1977				 <&mmcc CAMSS_CSI1PHYTIMER_CLK>,
1978				 <&mmcc CAMSS_CSI2PHYTIMER_CLK>,
1979				 <&mmcc CSIPHY_AHB2CRIF_CLK>,
1980				 <&mmcc CAMSS_CSI_VFE0_CLK>,
1981				 <&mmcc CAMSS_CSI_VFE1_CLK>,
1982				 <&mmcc CAMSS_ISPIF_AHB_CLK>,
1983				 <&mmcc THROTTLE_CAMSS_AXI_CLK>,
1984				 <&mmcc CAMSS_TOP_AHB_CLK>,
1985				 <&mmcc CAMSS_VFE0_AHB_CLK>,
1986				 <&mmcc CAMSS_VFE0_CLK>,
1987				 <&mmcc CAMSS_VFE0_STREAM_CLK>,
1988				 <&mmcc CAMSS_VFE1_AHB_CLK>,
1989				 <&mmcc CAMSS_VFE1_CLK>,
1990				 <&mmcc CAMSS_VFE1_STREAM_CLK>,
1991				 <&mmcc CAMSS_VFE_VBIF_AHB_CLK>,
1992				 <&mmcc CAMSS_VFE_VBIF_AXI_CLK>;
1993			clock-names = "ahb",
1994				      "cphy_csid0",
1995				      "cphy_csid1",
1996				      "cphy_csid2",
1997				      "cphy_csid3",
1998				      "csi0_ahb",
1999				      "csi0",
2000				      "csi0_phy",
2001				      "csi0_pix",
2002				      "csi0_rdi",
2003				      "csi1_ahb",
2004				      "csi1",
2005				      "csi1_phy",
2006				      "csi1_pix",
2007				      "csi1_rdi",
2008				      "csi2_ahb",
2009				      "csi2",
2010				      "csi2_phy",
2011				      "csi2_pix",
2012				      "csi2_rdi",
2013				      "csi3_ahb",
2014				      "csi3",
2015				      "csi3_phy",
2016				      "csi3_pix",
2017				      "csi3_rdi",
2018				      "csiphy0_timer",
2019				      "csiphy1_timer",
2020				      "csiphy2_timer",
2021				      "csiphy_ahb2crif",
2022				      "csi_vfe0",
2023				      "csi_vfe1",
2024				      "ispif_ahb",
2025				      "throttle_axi",
2026				      "top_ahb",
2027				      "vfe0_ahb",
2028				      "vfe0",
2029				      "vfe0_stream",
2030				      "vfe1_ahb",
2031				      "vfe1",
2032				      "vfe1_stream",
2033				      "vfe_ahb",
2034				      "vfe_axi";
2035			interconnects = <&mnoc 5 &bimc 5>;
2036			interconnect-names = "vfe-mem";
2037			iommus = <&mmss_smmu 0xc00>,
2038				 <&mmss_smmu 0xc01>,
2039				 <&mmss_smmu 0xc02>,
2040				 <&mmss_smmu 0xc03>;
2041			power-domains = <&mmcc CAMSS_VFE0_GDSC>,
2042					<&mmcc CAMSS_VFE1_GDSC>;
2043			status = "disabled";
2044
2045			ports {
2046				#address-cells = <1>;
2047				#size-cells = <0>;
2048			};
2049		};
2050
2051		cci: cci@ca0c000 {
2052			compatible = "qcom,msm8996-cci";
2053			#address-cells = <1>;
2054			#size-cells = <0>;
2055			reg = <0x0ca0c000 0x1000>;
2056			interrupts = <GIC_SPI 295 IRQ_TYPE_EDGE_RISING>;
2057
2058			assigned-clocks = <&mmcc CAMSS_CCI_AHB_CLK>,
2059					  <&mmcc CAMSS_CCI_CLK>;
2060			assigned-clock-rates = <80800000>, <37500000>;
2061			clocks = <&mmcc CAMSS_TOP_AHB_CLK>,
2062				 <&mmcc CAMSS_CCI_AHB_CLK>,
2063				 <&mmcc CAMSS_CCI_CLK>,
2064				 <&mmcc CAMSS_AHB_CLK>;
2065			clock-names = "camss_top_ahb",
2066				      "cci_ahb",
2067				      "cci",
2068				      "camss_ahb";
2069
2070			pinctrl-names = "default";
2071			pinctrl-0 = <&cci0_default &cci1_default>;
2072			power-domains = <&mmcc CAMSS_TOP_GDSC>;
2073			status = "disabled";
2074
2075			cci_i2c0: i2c-bus@0 {
2076				reg = <0>;
2077				clock-frequency = <400000>;
2078				#address-cells = <1>;
2079				#size-cells = <0>;
2080			};
2081
2082			cci_i2c1: i2c-bus@1 {
2083				reg = <1>;
2084				clock-frequency = <400000>;
2085				#address-cells = <1>;
2086				#size-cells = <0>;
2087			};
2088		};
2089
2090		venus: video-codec@cc00000 {
2091			compatible = "qcom,sdm660-venus";
2092			reg = <0x0cc00000 0xff000>;
2093			clocks = <&mmcc VIDEO_CORE_CLK>,
2094				 <&mmcc VIDEO_AHB_CLK>,
2095				 <&mmcc VIDEO_AXI_CLK>,
2096				 <&mmcc THROTTLE_VIDEO_AXI_CLK>;
2097			clock-names = "core", "iface", "bus", "bus_throttle";
2098			interconnects = <&gnoc 0 &mnoc 13>,
2099					<&mnoc 4 &bimc 5>;
2100			interconnect-names = "cpu-cfg", "video-mem";
2101			interrupts = <GIC_SPI 287 IRQ_TYPE_LEVEL_HIGH>;
2102			iommus = <&mmss_smmu 0x400>,
2103				 <&mmss_smmu 0x401>,
2104				 <&mmss_smmu 0x40a>,
2105				 <&mmss_smmu 0x407>,
2106				 <&mmss_smmu 0x40e>,
2107				 <&mmss_smmu 0x40f>,
2108				 <&mmss_smmu 0x408>,
2109				 <&mmss_smmu 0x409>,
2110				 <&mmss_smmu 0x40b>,
2111				 <&mmss_smmu 0x40c>,
2112				 <&mmss_smmu 0x40d>,
2113				 <&mmss_smmu 0x410>,
2114				 <&mmss_smmu 0x421>,
2115				 <&mmss_smmu 0x428>,
2116				 <&mmss_smmu 0x429>,
2117				 <&mmss_smmu 0x42b>,
2118				 <&mmss_smmu 0x42c>,
2119				 <&mmss_smmu 0x42d>,
2120				 <&mmss_smmu 0x411>,
2121				 <&mmss_smmu 0x431>;
2122			memory-region = <&venus_region>;
2123			power-domains = <&mmcc VENUS_GDSC>;
2124			status = "disabled";
2125
2126			video-decoder {
2127				compatible = "venus-decoder";
2128				clocks = <&mmcc VIDEO_SUBCORE0_CLK>;
2129				clock-names = "vcodec0_core";
2130				power-domains = <&mmcc VENUS_CORE0_GDSC>;
2131			};
2132
2133			video-encoder {
2134				compatible = "venus-encoder";
2135				clocks = <&mmcc VIDEO_SUBCORE0_CLK>;
2136				clock-names = "vcodec0_core";
2137				power-domains = <&mmcc VENUS_CORE0_GDSC>;
2138			};
2139		};
2140
2141		mmss_smmu: iommu@cd00000 {
2142			compatible = "qcom,sdm630-smmu-v2", "qcom,smmu-v2";
2143			reg = <0x0cd00000 0x40000>;
2144
2145			clocks = <&mmcc MNOC_AHB_CLK>,
2146				 <&mmcc BIMC_SMMU_AHB_CLK>,
2147				 <&rpmcc RPM_SMD_MMSSNOC_AXI_CLK>,
2148				 <&mmcc BIMC_SMMU_AXI_CLK>;
2149			clock-names = "iface-mm", "iface-smmu",
2150				      "bus-mm", "bus-smmu";
2151			#global-interrupts = <2>;
2152			#iommu-cells = <1>;
2153
2154			interrupts =
2155				<GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>,
2156				<GIC_SPI 231 IRQ_TYPE_LEVEL_HIGH>,
2157
2158				<GIC_SPI 263 IRQ_TYPE_LEVEL_HIGH>,
2159				<GIC_SPI 266 IRQ_TYPE_LEVEL_HIGH>,
2160				<GIC_SPI 267 IRQ_TYPE_LEVEL_HIGH>,
2161				<GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>,
2162				<GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>,
2163				<GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>,
2164				<GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>,
2165				<GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>,
2166				<GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>,
2167				<GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>,
2168				<GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>,
2169				<GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>,
2170				<GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>,
2171				<GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>,
2172				<GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>,
2173				<GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>,
2174				<GIC_SPI 260 IRQ_TYPE_LEVEL_HIGH>,
2175				<GIC_SPI 261 IRQ_TYPE_LEVEL_HIGH>,
2176				<GIC_SPI 262 IRQ_TYPE_LEVEL_HIGH>,
2177				<GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>,
2178				<GIC_SPI 273 IRQ_TYPE_LEVEL_HIGH>,
2179				<GIC_SPI 274 IRQ_TYPE_LEVEL_HIGH>,
2180				<GIC_SPI 275 IRQ_TYPE_LEVEL_HIGH>,
2181				<GIC_SPI 276 IRQ_TYPE_LEVEL_HIGH>;
2182
2183			status = "disabled";
2184		};
2185
2186		adsp_pil: remoteproc@15700000 {
2187			compatible = "qcom,sdm660-adsp-pas";
2188			reg = <0x15700000 0x4040>;
2189
2190			interrupts-extended =
2191				<&intc GIC_SPI 162 IRQ_TYPE_EDGE_RISING>,
2192				<&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
2193				<&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
2194				<&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
2195				<&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
2196			interrupt-names = "wdog", "fatal", "ready",
2197					  "handover", "stop-ack";
2198
2199			clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>;
2200			clock-names = "xo";
2201
2202			memory-region = <&adsp_region>;
2203			power-domains = <&rpmpd SDM660_VDDCX>;
2204			power-domain-names = "cx";
2205
2206			qcom,smem-states = <&adsp_smp2p_out 0>;
2207			qcom,smem-state-names = "stop";
2208
2209			glink-edge {
2210				interrupts = <GIC_SPI 157 IRQ_TYPE_EDGE_RISING>;
2211
2212				label = "lpass";
2213				mboxes = <&apcs_glb 9>;
2214				qcom,remote-pid = <2>;
2215
2216				apr {
2217					compatible = "qcom,apr-v2";
2218					qcom,glink-channels = "apr_audio_svc";
2219					qcom,domain = <APR_DOMAIN_ADSP>;
2220					#address-cells = <1>;
2221					#size-cells = <0>;
2222
2223					service@3 {
2224						reg = <APR_SVC_ADSP_CORE>;
2225						compatible = "qcom,q6core";
2226					};
2227
2228					q6afe: service@4 {
2229						compatible = "qcom,q6afe";
2230						reg = <APR_SVC_AFE>;
2231						q6afedai: dais {
2232							compatible = "qcom,q6afe-dais";
2233							#address-cells = <1>;
2234							#size-cells = <0>;
2235							#sound-dai-cells = <1>;
2236						};
2237					};
2238
2239					q6asm: service@7 {
2240						compatible = "qcom,q6asm";
2241						reg = <APR_SVC_ASM>;
2242						q6asmdai: dais {
2243							compatible = "qcom,q6asm-dais";
2244							#address-cells = <1>;
2245							#size-cells = <0>;
2246							#sound-dai-cells = <1>;
2247							iommus = <&lpass_smmu 1>;
2248						};
2249					};
2250
2251					q6adm: service@8 {
2252						compatible = "qcom,q6adm";
2253						reg = <APR_SVC_ADM>;
2254						q6routing: routing {
2255							compatible = "qcom,q6adm-routing";
2256							#sound-dai-cells = <0>;
2257						};
2258					};
2259				};
2260			};
2261		};
2262
2263		gnoc: interconnect@17900000 {
2264			compatible = "qcom,sdm660-gnoc";
2265			reg = <0x17900000 0xe000>;
2266			#interconnect-cells = <1>;
2267			/*
2268			 * This one apparently features no clocks,
2269			 * so let's not mess with the driver needlessly
2270			 */
2271			clock-names = "bus", "bus_a";
2272			clocks = <&xo_board>, <&xo_board>;
2273		};
2274
2275		apcs_glb: mailbox@17911000 {
2276			compatible = "qcom,sdm660-apcs-hmss-global",
2277				     "qcom,msm8994-apcs-kpss-global";
2278			reg = <0x17911000 0x1000>;
2279
2280			#mbox-cells = <1>;
2281		};
2282
2283		timer@17920000 {
2284			#address-cells = <1>;
2285			#size-cells = <1>;
2286			ranges;
2287			compatible = "arm,armv7-timer-mem";
2288			reg = <0x17920000 0x1000>;
2289			clock-frequency = <19200000>;
2290
2291			frame@17921000 {
2292				frame-number = <0>;
2293				interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
2294					     <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
2295				reg = <0x17921000 0x1000>,
2296					<0x17922000 0x1000>;
2297			};
2298
2299			frame@17923000 {
2300				frame-number = <1>;
2301				interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
2302				reg = <0x17923000 0x1000>;
2303				status = "disabled";
2304			};
2305
2306			frame@17924000 {
2307				frame-number = <2>;
2308				interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
2309				reg = <0x17924000 0x1000>;
2310				status = "disabled";
2311			};
2312
2313			frame@17925000 {
2314				frame-number = <3>;
2315				interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
2316				reg = <0x17925000 0x1000>;
2317				status = "disabled";
2318			};
2319
2320			frame@17926000 {
2321				frame-number = <4>;
2322				interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
2323				reg = <0x17926000 0x1000>;
2324				status = "disabled";
2325			};
2326
2327			frame@17927000 {
2328				frame-number = <5>;
2329				interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
2330				reg = <0x17927000 0x1000>;
2331				status = "disabled";
2332			};
2333
2334			frame@17928000 {
2335				frame-number = <6>;
2336				interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
2337				reg = <0x17928000 0x1000>;
2338				status = "disabled";
2339			};
2340		};
2341
2342		intc: interrupt-controller@17a00000 {
2343			compatible = "arm,gic-v3";
2344			reg = <0x17a00000 0x10000>,	   /* GICD */
2345				  <0x17b00000 0x100000>;	  /* GICR * 8 */
2346			#interrupt-cells = <3>;
2347			#address-cells = <1>;
2348			#size-cells = <1>;
2349			ranges;
2350			interrupt-controller;
2351			#redistributor-regions = <1>;
2352			redistributor-stride = <0x0 0x20000>;
2353			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
2354		};
2355	};
2356
2357	sound: sound {
2358	};
2359
2360	thermal-zones {
2361		aoss-thermal {
2362			polling-delay-passive = <250>;
2363			polling-delay = <1000>;
2364
2365			thermal-sensors = <&tsens 0>;
2366
2367			trips {
2368				aoss_alert0: trip-point0 {
2369					temperature = <105000>;
2370					hysteresis = <1000>;
2371					type = "hot";
2372				};
2373			};
2374		};
2375
2376		cpuss0-thermal {
2377			polling-delay-passive = <250>;
2378			polling-delay = <1000>;
2379
2380			thermal-sensors = <&tsens 1>;
2381
2382			trips {
2383				cpuss0_alert0: trip-point0 {
2384					temperature = <125000>;
2385					hysteresis = <1000>;
2386					type = "hot";
2387				};
2388			};
2389		};
2390
2391		cpuss1-thermal {
2392			polling-delay-passive = <250>;
2393			polling-delay = <1000>;
2394
2395			thermal-sensors = <&tsens 2>;
2396
2397			trips {
2398				cpuss1_alert0: trip-point0 {
2399					temperature = <125000>;
2400					hysteresis = <1000>;
2401					type = "hot";
2402				};
2403			};
2404		};
2405
2406		cpu0-thermal {
2407			polling-delay-passive = <250>;
2408			polling-delay = <1000>;
2409
2410			thermal-sensors = <&tsens 3>;
2411
2412			trips {
2413				cpu0_alert0: trip-point0 {
2414					temperature = <70000>;
2415					hysteresis = <1000>;
2416					type = "passive";
2417				};
2418
2419				cpu0_crit: cpu-crit {
2420					temperature = <110000>;
2421					hysteresis = <1000>;
2422					type = "critical";
2423				};
2424			};
2425		};
2426
2427		cpu1-thermal {
2428			polling-delay-passive = <250>;
2429			polling-delay = <1000>;
2430
2431			thermal-sensors = <&tsens 4>;
2432
2433			trips {
2434				cpu1_alert0: trip-point0 {
2435					temperature = <70000>;
2436					hysteresis = <1000>;
2437					type = "passive";
2438				};
2439
2440				cpu1_crit: cpu-crit {
2441					temperature = <110000>;
2442					hysteresis = <1000>;
2443					type = "critical";
2444				};
2445			};
2446		};
2447
2448		cpu2-thermal {
2449			polling-delay-passive = <250>;
2450			polling-delay = <1000>;
2451
2452			thermal-sensors = <&tsens 5>;
2453
2454			trips {
2455				cpu2_alert0: trip-point0 {
2456					temperature = <70000>;
2457					hysteresis = <1000>;
2458					type = "passive";
2459				};
2460
2461				cpu2_crit: cpu-crit {
2462					temperature = <110000>;
2463					hysteresis = <1000>;
2464					type = "critical";
2465				};
2466			};
2467		};
2468
2469		cpu3-thermal {
2470			polling-delay-passive = <250>;
2471			polling-delay = <1000>;
2472
2473			thermal-sensors = <&tsens 6>;
2474
2475			trips {
2476				cpu3_alert0: trip-point0 {
2477					temperature = <70000>;
2478					hysteresis = <1000>;
2479					type = "passive";
2480				};
2481
2482				cpu3_crit: cpu-crit {
2483					temperature = <110000>;
2484					hysteresis = <1000>;
2485					type = "critical";
2486				};
2487			};
2488		};
2489
2490		/*
2491		 * According to what downstream DTS says,
2492		 * the entire power efficient cluster has
2493		 * only a single thermal sensor.
2494		 */
2495
2496		pwr-cluster-thermal {
2497			polling-delay-passive = <250>;
2498			polling-delay = <1000>;
2499
2500			thermal-sensors = <&tsens 7>;
2501
2502			trips {
2503				pwr_cluster_alert0: trip-point0 {
2504					temperature = <70000>;
2505					hysteresis = <1000>;
2506					type = "passive";
2507				};
2508
2509				pwr_cluster_crit: cpu-crit {
2510					temperature = <110000>;
2511					hysteresis = <1000>;
2512					type = "critical";
2513				};
2514			};
2515		};
2516
2517		gpu-thermal {
2518			polling-delay-passive = <250>;
2519			polling-delay = <1000>;
2520
2521			thermal-sensors = <&tsens 8>;
2522
2523			trips {
2524				gpu_alert0: trip-point0 {
2525					temperature = <90000>;
2526					hysteresis = <1000>;
2527					type = "hot";
2528				};
2529			};
2530		};
2531	};
2532
2533	timer {
2534		compatible = "arm,armv8-timer";
2535		interrupts = <GIC_PPI 1 0xf08>,
2536				 <GIC_PPI 2 0xf08>,
2537				 <GIC_PPI 3 0xf08>,
2538				 <GIC_PPI 0 0xf08>;
2539	};
2540};
2541
2542