xref: /linux/arch/arm64/boot/dts/qcom/sm8550.dtsi (revision 06a130e42a5bfc84795464bff023bff4c16f58c5)
1// SPDX-License-Identifier: BSD-3-Clause
2/*
3 * Copyright (c) 2022, Linaro Limited
4 */
5
6#include <dt-bindings/clock/qcom,rpmh.h>
7#include <dt-bindings/clock/qcom,sm8450-videocc.h>
8#include <dt-bindings/clock/qcom,sm8550-camcc.h>
9#include <dt-bindings/clock/qcom,sm8550-gcc.h>
10#include <dt-bindings/clock/qcom,sm8550-gpucc.h>
11#include <dt-bindings/clock/qcom,sm8550-tcsr.h>
12#include <dt-bindings/clock/qcom,sm8550-dispcc.h>
13#include <dt-bindings/dma/qcom-gpi.h>
14#include <dt-bindings/firmware/qcom,scm.h>
15#include <dt-bindings/gpio/gpio.h>
16#include <dt-bindings/interrupt-controller/arm-gic.h>
17#include <dt-bindings/interconnect/qcom,sm8550-rpmh.h>
18#include <dt-bindings/mailbox/qcom-ipcc.h>
19#include <dt-bindings/power/qcom-rpmpd.h>
20#include <dt-bindings/power/qcom,rpmhpd.h>
21#include <dt-bindings/soc/qcom,gpr.h>
22#include <dt-bindings/soc/qcom,rpmh-rsc.h>
23#include <dt-bindings/sound/qcom,q6dsp-lpass-ports.h>
24#include <dt-bindings/phy/phy-qcom-qmp.h>
25#include <dt-bindings/thermal/thermal.h>
26
27/ {
28	interrupt-parent = <&intc>;
29
30	#address-cells = <2>;
31	#size-cells = <2>;
32
33	chosen { };
34
35	clocks {
36		xo_board: xo-board {
37			compatible = "fixed-clock";
38			#clock-cells = <0>;
39		};
40
41		sleep_clk: sleep-clk {
42			compatible = "fixed-clock";
43			#clock-cells = <0>;
44		};
45
46		bi_tcxo_div2: bi-tcxo-div2-clk {
47			#clock-cells = <0>;
48			compatible = "fixed-factor-clock";
49			clocks = <&rpmhcc RPMH_CXO_CLK>;
50			clock-mult = <1>;
51			clock-div = <2>;
52		};
53
54		bi_tcxo_ao_div2: bi-tcxo-ao-div2-clk {
55			#clock-cells = <0>;
56			compatible = "fixed-factor-clock";
57			clocks = <&rpmhcc RPMH_CXO_CLK_A>;
58			clock-mult = <1>;
59			clock-div = <2>;
60		};
61	};
62
63	cpus {
64		#address-cells = <2>;
65		#size-cells = <0>;
66
67		CPU0: cpu@0 {
68			device_type = "cpu";
69			compatible = "arm,cortex-a510";
70			reg = <0 0>;
71			clocks = <&cpufreq_hw 0>;
72			enable-method = "psci";
73			next-level-cache = <&L2_0>;
74			power-domains = <&CPU_PD0>;
75			power-domain-names = "psci";
76			qcom,freq-domain = <&cpufreq_hw 0>;
77			capacity-dmips-mhz = <1024>;
78			dynamic-power-coefficient = <100>;
79			#cooling-cells = <2>;
80			L2_0: l2-cache {
81				compatible = "cache";
82				cache-level = <2>;
83				cache-unified;
84				next-level-cache = <&L3_0>;
85				L3_0: l3-cache {
86					compatible = "cache";
87					cache-level = <3>;
88					cache-unified;
89				};
90			};
91		};
92
93		CPU1: cpu@100 {
94			device_type = "cpu";
95			compatible = "arm,cortex-a510";
96			reg = <0 0x100>;
97			clocks = <&cpufreq_hw 0>;
98			enable-method = "psci";
99			next-level-cache = <&L2_100>;
100			power-domains = <&CPU_PD1>;
101			power-domain-names = "psci";
102			qcom,freq-domain = <&cpufreq_hw 0>;
103			capacity-dmips-mhz = <1024>;
104			dynamic-power-coefficient = <100>;
105			#cooling-cells = <2>;
106			L2_100: l2-cache {
107				compatible = "cache";
108				cache-level = <2>;
109				cache-unified;
110				next-level-cache = <&L3_0>;
111			};
112		};
113
114		CPU2: cpu@200 {
115			device_type = "cpu";
116			compatible = "arm,cortex-a510";
117			reg = <0 0x200>;
118			clocks = <&cpufreq_hw 0>;
119			enable-method = "psci";
120			next-level-cache = <&L2_200>;
121			power-domains = <&CPU_PD2>;
122			power-domain-names = "psci";
123			qcom,freq-domain = <&cpufreq_hw 0>;
124			capacity-dmips-mhz = <1024>;
125			dynamic-power-coefficient = <100>;
126			#cooling-cells = <2>;
127			L2_200: l2-cache {
128				compatible = "cache";
129				cache-level = <2>;
130				cache-unified;
131				next-level-cache = <&L3_0>;
132			};
133		};
134
135		CPU3: cpu@300 {
136			device_type = "cpu";
137			compatible = "arm,cortex-a715";
138			reg = <0 0x300>;
139			clocks = <&cpufreq_hw 1>;
140			enable-method = "psci";
141			next-level-cache = <&L2_300>;
142			power-domains = <&CPU_PD3>;
143			power-domain-names = "psci";
144			qcom,freq-domain = <&cpufreq_hw 1>;
145			capacity-dmips-mhz = <1792>;
146			dynamic-power-coefficient = <270>;
147			#cooling-cells = <2>;
148			L2_300: l2-cache {
149				compatible = "cache";
150				cache-level = <2>;
151				cache-unified;
152				next-level-cache = <&L3_0>;
153			};
154		};
155
156		CPU4: cpu@400 {
157			device_type = "cpu";
158			compatible = "arm,cortex-a715";
159			reg = <0 0x400>;
160			clocks = <&cpufreq_hw 1>;
161			enable-method = "psci";
162			next-level-cache = <&L2_400>;
163			power-domains = <&CPU_PD4>;
164			power-domain-names = "psci";
165			qcom,freq-domain = <&cpufreq_hw 1>;
166			capacity-dmips-mhz = <1792>;
167			dynamic-power-coefficient = <270>;
168			#cooling-cells = <2>;
169			L2_400: l2-cache {
170				compatible = "cache";
171				cache-level = <2>;
172				cache-unified;
173				next-level-cache = <&L3_0>;
174			};
175		};
176
177		CPU5: cpu@500 {
178			device_type = "cpu";
179			compatible = "arm,cortex-a710";
180			reg = <0 0x500>;
181			clocks = <&cpufreq_hw 1>;
182			enable-method = "psci";
183			next-level-cache = <&L2_500>;
184			power-domains = <&CPU_PD5>;
185			power-domain-names = "psci";
186			qcom,freq-domain = <&cpufreq_hw 1>;
187			capacity-dmips-mhz = <1792>;
188			dynamic-power-coefficient = <270>;
189			#cooling-cells = <2>;
190			L2_500: l2-cache {
191				compatible = "cache";
192				cache-level = <2>;
193				cache-unified;
194				next-level-cache = <&L3_0>;
195			};
196		};
197
198		CPU6: cpu@600 {
199			device_type = "cpu";
200			compatible = "arm,cortex-a710";
201			reg = <0 0x600>;
202			clocks = <&cpufreq_hw 1>;
203			enable-method = "psci";
204			next-level-cache = <&L2_600>;
205			power-domains = <&CPU_PD6>;
206			power-domain-names = "psci";
207			qcom,freq-domain = <&cpufreq_hw 1>;
208			capacity-dmips-mhz = <1792>;
209			dynamic-power-coefficient = <270>;
210			#cooling-cells = <2>;
211			L2_600: l2-cache {
212				compatible = "cache";
213				cache-level = <2>;
214				cache-unified;
215				next-level-cache = <&L3_0>;
216			};
217		};
218
219		CPU7: cpu@700 {
220			device_type = "cpu";
221			compatible = "arm,cortex-x3";
222			reg = <0 0x700>;
223			clocks = <&cpufreq_hw 2>;
224			enable-method = "psci";
225			next-level-cache = <&L2_700>;
226			power-domains = <&CPU_PD7>;
227			power-domain-names = "psci";
228			qcom,freq-domain = <&cpufreq_hw 2>;
229			capacity-dmips-mhz = <1894>;
230			dynamic-power-coefficient = <588>;
231			#cooling-cells = <2>;
232			L2_700: l2-cache {
233				compatible = "cache";
234				cache-level = <2>;
235				cache-unified;
236				next-level-cache = <&L3_0>;
237			};
238		};
239
240		cpu-map {
241			cluster0 {
242				core0 {
243					cpu = <&CPU0>;
244				};
245
246				core1 {
247					cpu = <&CPU1>;
248				};
249
250				core2 {
251					cpu = <&CPU2>;
252				};
253
254				core3 {
255					cpu = <&CPU3>;
256				};
257
258				core4 {
259					cpu = <&CPU4>;
260				};
261
262				core5 {
263					cpu = <&CPU5>;
264				};
265
266				core6 {
267					cpu = <&CPU6>;
268				};
269
270				core7 {
271					cpu = <&CPU7>;
272				};
273			};
274		};
275
276		idle-states {
277			entry-method = "psci";
278
279			LITTLE_CPU_SLEEP_0: cpu-sleep-0-0 {
280				compatible = "arm,idle-state";
281				idle-state-name = "silver-rail-power-collapse";
282				arm,psci-suspend-param = <0x40000004>;
283				entry-latency-us = <550>;
284				exit-latency-us = <750>;
285				min-residency-us = <6700>;
286				local-timer-stop;
287			};
288
289			BIG_CPU_SLEEP_0: cpu-sleep-1-0 {
290				compatible = "arm,idle-state";
291				idle-state-name = "gold-rail-power-collapse";
292				arm,psci-suspend-param = <0x40000004>;
293				entry-latency-us = <600>;
294				exit-latency-us = <1300>;
295				min-residency-us = <8136>;
296				local-timer-stop;
297			};
298
299			PRIME_CPU_SLEEP_0: cpu-sleep-2-0 {
300				compatible = "arm,idle-state";
301				idle-state-name = "goldplus-rail-power-collapse";
302				arm,psci-suspend-param = <0x40000004>;
303				entry-latency-us = <500>;
304				exit-latency-us = <1350>;
305				min-residency-us = <7480>;
306				local-timer-stop;
307			};
308		};
309
310		domain-idle-states {
311			CLUSTER_SLEEP_0: cluster-sleep-0 {
312				compatible = "domain-idle-state";
313				arm,psci-suspend-param = <0x41000044>;
314				entry-latency-us = <750>;
315				exit-latency-us = <2350>;
316				min-residency-us = <9144>;
317			};
318
319			CLUSTER_SLEEP_1: cluster-sleep-1 {
320				compatible = "domain-idle-state";
321				arm,psci-suspend-param = <0x4100c344>;
322				entry-latency-us = <2800>;
323				exit-latency-us = <4400>;
324				min-residency-us = <10150>;
325			};
326		};
327	};
328
329	firmware {
330		scm: scm {
331			compatible = "qcom,scm-sm8550", "qcom,scm";
332			qcom,dload-mode = <&tcsr 0x19000>;
333			interconnects = <&aggre2_noc MASTER_CRYPTO 0 &mc_virt SLAVE_EBI1 0>;
334		};
335	};
336
337	clk_virt: interconnect-0 {
338		compatible = "qcom,sm8550-clk-virt";
339		#interconnect-cells = <2>;
340		qcom,bcm-voters = <&apps_bcm_voter>;
341	};
342
343	mc_virt: interconnect-1 {
344		compatible = "qcom,sm8550-mc-virt";
345		#interconnect-cells = <2>;
346		qcom,bcm-voters = <&apps_bcm_voter>;
347	};
348
349	memory@a0000000 {
350		device_type = "memory";
351		/* We expect the bootloader to fill in the size */
352		reg = <0 0xa0000000 0 0>;
353	};
354
355	pmu-a510 {
356		compatible = "arm,cortex-a510-pmu";
357		interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW>;
358	};
359
360	pmu-a710 {
361		compatible = "arm,cortex-a710-pmu";
362		interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW>;
363	};
364
365	pmu-a715 {
366		compatible = "arm,cortex-a715-pmu";
367		interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW>;
368	};
369
370	pmu-x3 {
371		compatible = "arm,cortex-x3-pmu";
372		interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW>;
373	};
374
375	psci {
376		compatible = "arm,psci-1.0";
377		method = "smc";
378
379		CPU_PD0: power-domain-cpu0 {
380			#power-domain-cells = <0>;
381			power-domains = <&CLUSTER_PD>;
382			domain-idle-states = <&LITTLE_CPU_SLEEP_0>;
383		};
384
385		CPU_PD1: power-domain-cpu1 {
386			#power-domain-cells = <0>;
387			power-domains = <&CLUSTER_PD>;
388			domain-idle-states = <&LITTLE_CPU_SLEEP_0>;
389		};
390
391		CPU_PD2: power-domain-cpu2 {
392			#power-domain-cells = <0>;
393			power-domains = <&CLUSTER_PD>;
394			domain-idle-states = <&LITTLE_CPU_SLEEP_0>;
395		};
396
397		CPU_PD3: power-domain-cpu3 {
398			#power-domain-cells = <0>;
399			power-domains = <&CLUSTER_PD>;
400			domain-idle-states = <&BIG_CPU_SLEEP_0>;
401		};
402
403		CPU_PD4: power-domain-cpu4 {
404			#power-domain-cells = <0>;
405			power-domains = <&CLUSTER_PD>;
406			domain-idle-states = <&BIG_CPU_SLEEP_0>;
407		};
408
409		CPU_PD5: power-domain-cpu5 {
410			#power-domain-cells = <0>;
411			power-domains = <&CLUSTER_PD>;
412			domain-idle-states = <&BIG_CPU_SLEEP_0>;
413		};
414
415		CPU_PD6: power-domain-cpu6 {
416			#power-domain-cells = <0>;
417			power-domains = <&CLUSTER_PD>;
418			domain-idle-states = <&BIG_CPU_SLEEP_0>;
419		};
420
421		CPU_PD7: power-domain-cpu7 {
422			#power-domain-cells = <0>;
423			power-domains = <&CLUSTER_PD>;
424			domain-idle-states = <&PRIME_CPU_SLEEP_0>;
425		};
426
427		CLUSTER_PD: power-domain-cluster {
428			#power-domain-cells = <0>;
429			domain-idle-states = <&CLUSTER_SLEEP_0>, <&CLUSTER_SLEEP_1>;
430		};
431	};
432
433	reserved_memory: reserved-memory {
434		#address-cells = <2>;
435		#size-cells = <2>;
436		ranges;
437
438		hyp_mem: hyp-region@80000000 {
439			reg = <0 0x80000000 0 0xa00000>;
440			no-map;
441		};
442
443		cpusys_vm_mem: cpusys-vm-region@80a00000 {
444			reg = <0 0x80a00000 0 0x400000>;
445			no-map;
446		};
447
448		hyp_tags_mem: hyp-tags-region@80e00000 {
449			reg = <0 0x80e00000 0 0x3d0000>;
450			no-map;
451		};
452
453		xbl_sc_mem: xbl-sc-region@d8100000 {
454			reg = <0 0xd8100000 0 0x40000>;
455			no-map;
456		};
457
458		hyp_tags_reserved_mem: hyp-tags-reserved-region@811d0000 {
459			reg = <0 0x811d0000 0 0x30000>;
460			no-map;
461		};
462
463		/* merged xbl_dt_log, xbl_ramdump, aop_image */
464		xbl_dt_log_merged_mem: xbl-dt-log-merged-region@81a00000 {
465			reg = <0 0x81a00000 0 0x260000>;
466			no-map;
467		};
468
469		aop_cmd_db_mem: aop-cmd-db-region@81c60000 {
470			compatible = "qcom,cmd-db";
471			reg = <0 0x81c60000 0 0x20000>;
472			no-map;
473		};
474
475		/* merged aop_config, tme_crash_dump, tme_log, uefi_log */
476		aop_config_merged_mem: aop-config-merged-region@81c80000 {
477			reg = <0 0x81c80000 0 0x74000>;
478			no-map;
479		};
480
481		/* secdata region can be reused by apps */
482		smem: smem@81d00000 {
483			compatible = "qcom,smem";
484			reg = <0 0x81d00000 0 0x200000>;
485			hwlocks = <&tcsr_mutex 3>;
486			no-map;
487		};
488
489		adsp_mhi_mem: adsp-mhi-region@81f00000 {
490			reg = <0 0x81f00000 0 0x20000>;
491			no-map;
492		};
493
494		global_sync_mem: global-sync-region@82600000 {
495			reg = <0 0x82600000 0 0x100000>;
496			no-map;
497		};
498
499		tz_stat_mem: tz-stat-region@82700000 {
500			reg = <0 0x82700000 0 0x100000>;
501			no-map;
502		};
503
504		cdsp_secure_heap_mem: cdsp-secure-heap-region@82800000 {
505			reg = <0 0x82800000 0 0x4600000>;
506			no-map;
507		};
508
509		mpss_mem: mpss-region@8a800000 {
510			reg = <0 0x8a800000 0 0x10800000>;
511			no-map;
512		};
513
514		q6_mpss_dtb_mem: q6-mpss-dtb-region@9b000000 {
515			reg = <0 0x9b000000 0 0x80000>;
516			no-map;
517		};
518
519		ipa_fw_mem: ipa-fw-region@9b080000 {
520			reg = <0 0x9b080000 0 0x10000>;
521			no-map;
522		};
523
524		ipa_gsi_mem: ipa-gsi-region@9b090000 {
525			reg = <0 0x9b090000 0 0xa000>;
526			no-map;
527		};
528
529		gpu_micro_code_mem: gpu-micro-code-region@9b09a000 {
530			reg = <0 0x9b09a000 0 0x2000>;
531			no-map;
532		};
533
534		spss_region_mem: spss-region@9b100000 {
535			reg = <0 0x9b100000 0 0x180000>;
536			no-map;
537		};
538
539		/* First part of the "SPU secure shared memory" region */
540		spu_tz_shared_mem: spu-tz-shared-region@9b280000 {
541			reg = <0 0x9b280000 0 0x60000>;
542			no-map;
543		};
544
545		/* Second part of the "SPU secure shared memory" region */
546		spu_modem_shared_mem: spu-modem-shared-region@9b2e0000 {
547			reg = <0 0x9b2e0000 0 0x20000>;
548			no-map;
549		};
550
551		camera_mem: camera-region@9b300000 {
552			reg = <0 0x9b300000 0 0x800000>;
553			no-map;
554		};
555
556		video_mem: video-region@9bb00000 {
557			reg = <0 0x9bb00000 0 0x700000>;
558			no-map;
559		};
560
561		cvp_mem: cvp-region@9c200000 {
562			reg = <0 0x9c200000 0 0x700000>;
563			no-map;
564		};
565
566		cdsp_mem: cdsp-region@9c900000 {
567			reg = <0 0x9c900000 0 0x2000000>;
568			no-map;
569		};
570
571		q6_cdsp_dtb_mem: q6-cdsp-dtb-region@9e900000 {
572			reg = <0 0x9e900000 0 0x80000>;
573			no-map;
574		};
575
576		q6_adsp_dtb_mem: q6-adsp-dtb-region@9e980000 {
577			reg = <0 0x9e980000 0 0x80000>;
578			no-map;
579		};
580
581		adspslpi_mem: adspslpi-region@9ea00000 {
582			reg = <0 0x9ea00000 0 0x4080000>;
583			no-map;
584		};
585
586		/* uefi region can be reused by apps */
587
588		/* Linux kernel image is loaded at 0xa8000000 */
589
590		rmtfs_mem: rmtfs-region@d4a80000 {
591			compatible = "qcom,rmtfs-mem";
592			reg = <0x0 0xd4a80000 0x0 0x280000>;
593			no-map;
594
595			qcom,client-id = <1>;
596			qcom,vmid = <QCOM_SCM_VMID_MSS_MSA>;
597		};
598
599		mpss_dsm_mem: mpss-dsm-region@d4d00000 {
600			reg = <0 0xd4d00000 0 0x3300000>;
601			no-map;
602		};
603
604		tz_reserved_mem: tz-reserved-region@d8000000 {
605			reg = <0 0xd8000000 0 0x100000>;
606			no-map;
607		};
608
609		cpucp_fw_mem: cpucp-fw-region@d8140000 {
610			reg = <0 0xd8140000 0 0x1c0000>;
611			no-map;
612		};
613
614		qtee_mem: qtee-region@d8300000 {
615			reg = <0 0xd8300000 0 0x500000>;
616			no-map;
617		};
618
619		ta_mem: ta-region@d8800000 {
620			reg = <0 0xd8800000 0 0x8a00000>;
621			no-map;
622		};
623
624		tz_tags_mem: tz-tags-region@e1200000 {
625			reg = <0 0xe1200000 0 0x2740000>;
626			no-map;
627		};
628
629		hwfence_shbuf: hwfence-shbuf-region@e6440000 {
630			reg = <0 0xe6440000 0 0x279000>;
631			no-map;
632		};
633
634		trust_ui_vm_mem: trust-ui-vm-region@f3600000 {
635			reg = <0 0xf3600000 0 0x4aee000>;
636			no-map;
637		};
638
639		trust_ui_vm_dump: trust-ui-vm-dump-region@f80ee000 {
640			reg = <0 0xf80ee000 0 0x1000>;
641			no-map;
642		};
643
644		trust_ui_vm_qrtr: trust-ui-vm-qrt-region@f80ef000 {
645			reg = <0 0xf80ef000 0 0x9000>;
646			no-map;
647		};
648
649		trust_ui_vm_vblk0_ring: trust-ui-vm-vblk0-ring-region@f80f8000 {
650			reg = <0 0xf80f8000 0 0x4000>;
651			no-map;
652		};
653
654		trust_ui_vm_vblk1_ring: trust-ui-vm-vblk1-ring-region@f80fc000 {
655			reg = <0 0xf80fc000 0 0x4000>;
656			no-map;
657		};
658
659		trust_ui_vm_swiotlb: trust-ui-vm-swiotlb-region@f8100000 {
660			reg = <0 0xf8100000 0 0x100000>;
661			no-map;
662		};
663
664		oem_vm_mem: oem-vm-region@f8400000 {
665			reg = <0 0xf8400000 0 0x4800000>;
666			no-map;
667		};
668
669		oem_vm_vblk0_ring: oem-vm-vblk0-ring-region@fcc00000 {
670			reg = <0 0xfcc00000 0 0x4000>;
671			no-map;
672		};
673
674		oem_vm_swiotlb: oem-vm-swiotlb-region@fcc04000 {
675			reg = <0 0xfcc04000 0 0x100000>;
676			no-map;
677		};
678
679		hyp_ext_tags_mem: hyp-ext-tags-region@fce00000 {
680			reg = <0 0xfce00000 0 0x2900000>;
681			no-map;
682		};
683
684		hyp_ext_reserved_mem: hyp-ext-reserved-region@ff700000 {
685			reg = <0 0xff700000 0 0x100000>;
686			no-map;
687		};
688	};
689
690	smp2p-adsp {
691		compatible = "qcom,smp2p";
692		qcom,smem = <443>, <429>;
693		interrupts-extended = <&ipcc IPCC_CLIENT_LPASS
694					     IPCC_MPROC_SIGNAL_SMP2P
695					     IRQ_TYPE_EDGE_RISING>;
696		mboxes = <&ipcc IPCC_CLIENT_LPASS
697				IPCC_MPROC_SIGNAL_SMP2P>;
698
699		qcom,local-pid = <0>;
700		qcom,remote-pid = <2>;
701
702		smp2p_adsp_out: master-kernel {
703			qcom,entry-name = "master-kernel";
704			#qcom,smem-state-cells = <1>;
705		};
706
707		smp2p_adsp_in: slave-kernel {
708			qcom,entry-name = "slave-kernel";
709			interrupt-controller;
710			#interrupt-cells = <2>;
711		};
712	};
713
714	smp2p-cdsp {
715		compatible = "qcom,smp2p";
716		qcom,smem = <94>, <432>;
717		interrupts-extended = <&ipcc IPCC_CLIENT_CDSP
718					     IPCC_MPROC_SIGNAL_SMP2P
719					     IRQ_TYPE_EDGE_RISING>;
720		mboxes = <&ipcc IPCC_CLIENT_CDSP
721				IPCC_MPROC_SIGNAL_SMP2P>;
722
723		qcom,local-pid = <0>;
724		qcom,remote-pid = <5>;
725
726		smp2p_cdsp_out: master-kernel {
727			qcom,entry-name = "master-kernel";
728			#qcom,smem-state-cells = <1>;
729		};
730
731		smp2p_cdsp_in: slave-kernel {
732			qcom,entry-name = "slave-kernel";
733			interrupt-controller;
734			#interrupt-cells = <2>;
735		};
736	};
737
738	smp2p-modem {
739		compatible = "qcom,smp2p";
740		qcom,smem = <435>, <428>;
741		interrupts-extended = <&ipcc IPCC_CLIENT_MPSS
742					     IPCC_MPROC_SIGNAL_SMP2P
743					     IRQ_TYPE_EDGE_RISING>;
744		mboxes = <&ipcc IPCC_CLIENT_MPSS
745				IPCC_MPROC_SIGNAL_SMP2P>;
746
747		qcom,local-pid = <0>;
748		qcom,remote-pid = <1>;
749
750		smp2p_modem_out: master-kernel {
751			qcom,entry-name = "master-kernel";
752			#qcom,smem-state-cells = <1>;
753		};
754
755		smp2p_modem_in: slave-kernel {
756			qcom,entry-name = "slave-kernel";
757			interrupt-controller;
758			#interrupt-cells = <2>;
759		};
760
761		ipa_smp2p_out: ipa-ap-to-modem {
762			qcom,entry-name = "ipa";
763			#qcom,smem-state-cells = <1>;
764		};
765
766		ipa_smp2p_in: ipa-modem-to-ap {
767			qcom,entry-name = "ipa";
768			interrupt-controller;
769			#interrupt-cells = <2>;
770		};
771	};
772
773	soc: soc@0 {
774		compatible = "simple-bus";
775		ranges = <0 0 0 0 0x10 0>;
776		dma-ranges = <0 0 0 0 0x10 0>;
777
778		#address-cells = <2>;
779		#size-cells = <2>;
780
781		gcc: clock-controller@100000 {
782			compatible = "qcom,sm8550-gcc";
783			reg = <0 0x00100000 0 0x1f4200>;
784			#clock-cells = <1>;
785			#reset-cells = <1>;
786			#power-domain-cells = <1>;
787			clocks = <&bi_tcxo_div2>, <&sleep_clk>,
788				 <&pcie0_phy>,
789				 <&pcie1_phy QMP_PCIE_PIPE_CLK>,
790				 <&pcie1_phy QMP_PCIE_PHY_AUX_CLK>,
791				 <&ufs_mem_phy 0>,
792				 <&ufs_mem_phy 1>,
793				 <&ufs_mem_phy 2>,
794				 <&usb_dp_qmpphy QMP_USB43DP_USB3_PIPE_CLK>;
795		};
796
797		ipcc: mailbox@408000 {
798			compatible = "qcom,sm8550-ipcc", "qcom,ipcc";
799			reg = <0 0x00408000 0 0x1000>;
800			interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>;
801			interrupt-controller;
802			#interrupt-cells = <3>;
803			#mbox-cells = <2>;
804		};
805
806		gpi_dma2: dma-controller@800000 {
807			compatible = "qcom,sm8550-gpi-dma", "qcom,sm6350-gpi-dma";
808			#dma-cells = <3>;
809			reg = <0 0x00800000 0 0x60000>;
810			interrupts = <GIC_SPI 588 IRQ_TYPE_LEVEL_HIGH>,
811				     <GIC_SPI 589 IRQ_TYPE_LEVEL_HIGH>,
812				     <GIC_SPI 590 IRQ_TYPE_LEVEL_HIGH>,
813				     <GIC_SPI 591 IRQ_TYPE_LEVEL_HIGH>,
814				     <GIC_SPI 592 IRQ_TYPE_LEVEL_HIGH>,
815				     <GIC_SPI 593 IRQ_TYPE_LEVEL_HIGH>,
816				     <GIC_SPI 594 IRQ_TYPE_LEVEL_HIGH>,
817				     <GIC_SPI 595 IRQ_TYPE_LEVEL_HIGH>,
818				     <GIC_SPI 596 IRQ_TYPE_LEVEL_HIGH>,
819				     <GIC_SPI 597 IRQ_TYPE_LEVEL_HIGH>,
820				     <GIC_SPI 598 IRQ_TYPE_LEVEL_HIGH>,
821				     <GIC_SPI 599 IRQ_TYPE_LEVEL_HIGH>;
822			dma-channels = <12>;
823			dma-channel-mask = <0x3e>;
824			iommus = <&apps_smmu 0x436 0>;
825			dma-coherent;
826			status = "disabled";
827		};
828
829		qupv3_id_1: geniqup@8c0000 {
830			compatible = "qcom,geni-se-qup";
831			reg = <0 0x008c0000 0 0x2000>;
832			ranges;
833			clock-names = "m-ahb", "s-ahb";
834			clocks = <&gcc GCC_QUPV3_WRAP_2_M_AHB_CLK>,
835				 <&gcc GCC_QUPV3_WRAP_2_S_AHB_CLK>;
836			iommus = <&apps_smmu 0x423 0>;
837			dma-coherent;
838			#address-cells = <2>;
839			#size-cells = <2>;
840			status = "disabled";
841
842			i2c8: i2c@880000 {
843				compatible = "qcom,geni-i2c";
844				reg = <0 0x00880000 0 0x4000>;
845				clock-names = "se";
846				clocks = <&gcc GCC_QUPV3_WRAP2_S0_CLK>;
847				pinctrl-names = "default";
848				pinctrl-0 = <&qup_i2c8_data_clk>;
849				interrupts = <GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>;
850				#address-cells = <1>;
851				#size-cells = <0>;
852				interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
853						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
854						<&aggre2_noc MASTER_QUP_2 0 &mc_virt  SLAVE_EBI1 0>;
855				interconnect-names = "qup-core", "qup-config", "qup-memory";
856				dmas = <&gpi_dma2 0 0 QCOM_GPI_I2C>,
857				       <&gpi_dma2 1 0 QCOM_GPI_I2C>;
858				dma-names = "tx", "rx";
859				status = "disabled";
860			};
861
862			spi8: spi@880000 {
863				compatible = "qcom,geni-spi";
864				reg = <0 0x00880000 0 0x4000>;
865				clock-names = "se";
866				clocks = <&gcc GCC_QUPV3_WRAP2_S0_CLK>;
867				interrupts = <GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>;
868				pinctrl-names = "default";
869				pinctrl-0 = <&qup_spi8_data_clk>, <&qup_spi8_cs>;
870				interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
871						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
872						<&aggre2_noc MASTER_QUP_2 0 &mc_virt  SLAVE_EBI1 0>;
873				interconnect-names = "qup-core", "qup-config", "qup-memory";
874				dmas = <&gpi_dma2 0 0 QCOM_GPI_SPI>,
875				       <&gpi_dma2 1 0 QCOM_GPI_SPI>;
876				dma-names = "tx", "rx";
877				#address-cells = <1>;
878				#size-cells = <0>;
879				status = "disabled";
880			};
881
882			i2c9: i2c@884000 {
883				compatible = "qcom,geni-i2c";
884				reg = <0 0x00884000 0 0x4000>;
885				clock-names = "se";
886				clocks = <&gcc GCC_QUPV3_WRAP2_S1_CLK>;
887				pinctrl-names = "default";
888				pinctrl-0 = <&qup_i2c9_data_clk>;
889				interrupts = <GIC_SPI 583 IRQ_TYPE_LEVEL_HIGH>;
890				#address-cells = <1>;
891				#size-cells = <0>;
892				interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
893						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
894						<&aggre2_noc MASTER_QUP_2 0 &mc_virt  SLAVE_EBI1 0>;
895				interconnect-names = "qup-core", "qup-config", "qup-memory";
896				dmas = <&gpi_dma2 0 1 QCOM_GPI_I2C>,
897				       <&gpi_dma2 1 1 QCOM_GPI_I2C>;
898				dma-names = "tx", "rx";
899				status = "disabled";
900			};
901
902			spi9: spi@884000 {
903				compatible = "qcom,geni-spi";
904				reg = <0 0x00884000 0 0x4000>;
905				clock-names = "se";
906				clocks = <&gcc GCC_QUPV3_WRAP2_S1_CLK>;
907				interrupts = <GIC_SPI 583 IRQ_TYPE_LEVEL_HIGH>;
908				pinctrl-names = "default";
909				pinctrl-0 = <&qup_spi9_data_clk>, <&qup_spi9_cs>;
910				interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
911						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
912						<&aggre2_noc MASTER_QUP_2 0 &mc_virt  SLAVE_EBI1 0>;
913				interconnect-names = "qup-core", "qup-config", "qup-memory";
914				dmas = <&gpi_dma2 0 1 QCOM_GPI_SPI>,
915				       <&gpi_dma2 1 1 QCOM_GPI_SPI>;
916				dma-names = "tx", "rx";
917				#address-cells = <1>;
918				#size-cells = <0>;
919				status = "disabled";
920			};
921
922			i2c10: i2c@888000 {
923				compatible = "qcom,geni-i2c";
924				reg = <0 0x00888000 0 0x4000>;
925				clock-names = "se";
926				clocks = <&gcc GCC_QUPV3_WRAP2_S2_CLK>;
927				pinctrl-names = "default";
928				pinctrl-0 = <&qup_i2c10_data_clk>;
929				interrupts = <GIC_SPI 584 IRQ_TYPE_LEVEL_HIGH>;
930				#address-cells = <1>;
931				#size-cells = <0>;
932				interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
933						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
934						<&aggre2_noc MASTER_QUP_2 0 &mc_virt  SLAVE_EBI1 0>;
935				interconnect-names = "qup-core", "qup-config", "qup-memory";
936				dmas = <&gpi_dma2 0 2 QCOM_GPI_I2C>,
937				       <&gpi_dma2 1 2 QCOM_GPI_I2C>;
938				dma-names = "tx", "rx";
939				status = "disabled";
940			};
941
942			spi10: spi@888000 {
943				compatible = "qcom,geni-spi";
944				reg = <0 0x00888000 0 0x4000>;
945				clock-names = "se";
946				clocks = <&gcc GCC_QUPV3_WRAP2_S2_CLK>;
947				interrupts = <GIC_SPI 584 IRQ_TYPE_LEVEL_HIGH>;
948				pinctrl-names = "default";
949				pinctrl-0 = <&qup_spi10_data_clk>, <&qup_spi10_cs>;
950				interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
951						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
952						<&aggre2_noc MASTER_QUP_2 0 &mc_virt  SLAVE_EBI1 0>;
953				interconnect-names = "qup-core", "qup-config", "qup-memory";
954				dmas = <&gpi_dma2 0 2 QCOM_GPI_SPI>,
955				       <&gpi_dma2 1 2 QCOM_GPI_SPI>;
956				dma-names = "tx", "rx";
957				#address-cells = <1>;
958				#size-cells = <0>;
959				status = "disabled";
960			};
961
962			i2c11: i2c@88c000 {
963				compatible = "qcom,geni-i2c";
964				reg = <0 0x0088c000 0 0x4000>;
965				clock-names = "se";
966				clocks = <&gcc GCC_QUPV3_WRAP2_S3_CLK>;
967				pinctrl-names = "default";
968				pinctrl-0 = <&qup_i2c11_data_clk>;
969				interrupts = <GIC_SPI 585 IRQ_TYPE_LEVEL_HIGH>;
970				#address-cells = <1>;
971				#size-cells = <0>;
972				interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
973						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
974						<&aggre2_noc MASTER_QUP_2 0 &mc_virt  SLAVE_EBI1 0>;
975				interconnect-names = "qup-core", "qup-config", "qup-memory";
976				dmas = <&gpi_dma2 0 3 QCOM_GPI_I2C>,
977				       <&gpi_dma2 1 3 QCOM_GPI_I2C>;
978				dma-names = "tx", "rx";
979				status = "disabled";
980			};
981
982			spi11: spi@88c000 {
983				compatible = "qcom,geni-spi";
984				reg = <0 0x0088c000 0 0x4000>;
985				clock-names = "se";
986				clocks = <&gcc GCC_QUPV3_WRAP2_S3_CLK>;
987				interrupts = <GIC_SPI 585 IRQ_TYPE_LEVEL_HIGH>;
988				pinctrl-names = "default";
989				pinctrl-0 = <&qup_spi11_data_clk>, <&qup_spi11_cs>;
990				interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
991						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
992						<&aggre2_noc MASTER_QUP_2 0 &mc_virt  SLAVE_EBI1 0>;
993				interconnect-names = "qup-core", "qup-config", "qup-memory";
994				dmas = <&gpi_dma2 0 3 QCOM_GPI_I2C>,
995				       <&gpi_dma2 1 3 QCOM_GPI_I2C>;
996				dma-names = "tx", "rx";
997				#address-cells = <1>;
998				#size-cells = <0>;
999				status = "disabled";
1000			};
1001
1002			i2c12: i2c@890000 {
1003				compatible = "qcom,geni-i2c";
1004				reg = <0 0x00890000 0 0x4000>;
1005				clock-names = "se";
1006				clocks = <&gcc GCC_QUPV3_WRAP2_S4_CLK>;
1007				pinctrl-names = "default";
1008				pinctrl-0 = <&qup_i2c12_data_clk>;
1009				interrupts = <GIC_SPI 586 IRQ_TYPE_LEVEL_HIGH>;
1010				#address-cells = <1>;
1011				#size-cells = <0>;
1012				interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
1013						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
1014						<&aggre2_noc MASTER_QUP_2 0 &mc_virt  SLAVE_EBI1 0>;
1015				interconnect-names = "qup-core", "qup-config", "qup-memory";
1016				dmas = <&gpi_dma2 0 4 QCOM_GPI_I2C>,
1017				       <&gpi_dma2 1 4 QCOM_GPI_I2C>;
1018				dma-names = "tx", "rx";
1019				status = "disabled";
1020			};
1021
1022			spi12: spi@890000 {
1023				compatible = "qcom,geni-spi";
1024				reg = <0 0x00890000 0 0x4000>;
1025				clock-names = "se";
1026				clocks = <&gcc GCC_QUPV3_WRAP2_S4_CLK>;
1027				interrupts = <GIC_SPI 586 IRQ_TYPE_LEVEL_HIGH>;
1028				pinctrl-names = "default";
1029				pinctrl-0 = <&qup_spi12_data_clk>, <&qup_spi12_cs>;
1030				interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
1031						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
1032						<&aggre2_noc MASTER_QUP_2 0 &mc_virt  SLAVE_EBI1 0>;
1033				interconnect-names = "qup-core", "qup-config", "qup-memory";
1034				dmas = <&gpi_dma2 0 4 QCOM_GPI_I2C>,
1035				       <&gpi_dma2 1 4 QCOM_GPI_I2C>;
1036				dma-names = "tx", "rx";
1037				#address-cells = <1>;
1038				#size-cells = <0>;
1039				status = "disabled";
1040			};
1041
1042			i2c13: i2c@894000 {
1043				compatible = "qcom,geni-i2c";
1044				reg = <0 0x00894000 0 0x4000>;
1045				clock-names = "se";
1046				clocks = <&gcc GCC_QUPV3_WRAP2_S5_CLK>;
1047				pinctrl-names = "default";
1048				pinctrl-0 = <&qup_i2c13_data_clk>;
1049				interrupts = <GIC_SPI 587 IRQ_TYPE_LEVEL_HIGH>;
1050				#address-cells = <1>;
1051				#size-cells = <0>;
1052				interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
1053						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
1054						<&aggre2_noc MASTER_QUP_2 0 &mc_virt  SLAVE_EBI1 0>;
1055				interconnect-names = "qup-core", "qup-config", "qup-memory";
1056				dmas = <&gpi_dma2 0 5 QCOM_GPI_I2C>,
1057				       <&gpi_dma2 1 5 QCOM_GPI_I2C>;
1058				dma-names = "tx", "rx";
1059				status = "disabled";
1060			};
1061
1062			spi13: spi@894000 {
1063				compatible = "qcom,geni-spi";
1064				reg = <0 0x00894000 0 0x4000>;
1065				clock-names = "se";
1066				clocks = <&gcc GCC_QUPV3_WRAP2_S5_CLK>;
1067				interrupts = <GIC_SPI 587 IRQ_TYPE_LEVEL_HIGH>;
1068				pinctrl-names = "default";
1069				pinctrl-0 = <&qup_spi13_data_clk>, <&qup_spi13_cs>;
1070				interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
1071						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
1072						<&aggre2_noc MASTER_QUP_2 0 &mc_virt  SLAVE_EBI1 0>;
1073				interconnect-names = "qup-core", "qup-config", "qup-memory";
1074				dmas = <&gpi_dma2 0 5 QCOM_GPI_SPI>,
1075				       <&gpi_dma2 1 5 QCOM_GPI_SPI>;
1076				dma-names = "tx", "rx";
1077				#address-cells = <1>;
1078				#size-cells = <0>;
1079				status = "disabled";
1080			};
1081
1082			uart14: serial@898000 {
1083				compatible = "qcom,geni-uart";
1084				reg = <0 0x898000 0 0x4000>;
1085				clock-names = "se";
1086				clocks = <&gcc GCC_QUPV3_WRAP2_S6_CLK>;
1087				pinctrl-names = "default";
1088				pinctrl-0 = <&qup_uart14_default>, <&qup_uart14_cts_rts>;
1089				interrupts = <GIC_SPI 461 IRQ_TYPE_LEVEL_HIGH>;
1090				interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
1091						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>;
1092				interconnect-names = "qup-core", "qup-config";
1093				status = "disabled";
1094			};
1095
1096			i2c15: i2c@89c000 {
1097				compatible = "qcom,geni-i2c";
1098				reg = <0 0x0089c000 0 0x4000>;
1099				clock-names = "se";
1100				clocks = <&gcc GCC_QUPV3_WRAP2_S7_CLK>;
1101				pinctrl-names = "default";
1102				pinctrl-0 = <&qup_i2c15_data_clk>;
1103				interrupts = <GIC_SPI 462 IRQ_TYPE_LEVEL_HIGH>;
1104				#address-cells = <1>;
1105				#size-cells = <0>;
1106				interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
1107						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
1108						<&aggre2_noc MASTER_QUP_2 0 &mc_virt  SLAVE_EBI1 0>;
1109				interconnect-names = "qup-core", "qup-config", "qup-memory";
1110				dmas = <&gpi_dma2 0 7 QCOM_GPI_I2C>,
1111				       <&gpi_dma2 1 7 QCOM_GPI_I2C>;
1112				dma-names = "tx", "rx";
1113				status = "disabled";
1114			};
1115
1116			spi15: spi@89c000 {
1117				compatible = "qcom,geni-spi";
1118				reg = <0 0x0089c000 0 0x4000>;
1119				clock-names = "se";
1120				clocks = <&gcc GCC_QUPV3_WRAP2_S7_CLK>;
1121				interrupts = <GIC_SPI 462 IRQ_TYPE_LEVEL_HIGH>;
1122				pinctrl-names = "default";
1123				pinctrl-0 = <&qup_spi15_data_clk>, <&qup_spi15_cs>;
1124				interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
1125						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
1126						<&aggre2_noc MASTER_QUP_2 0 &mc_virt  SLAVE_EBI1 0>;
1127				interconnect-names = "qup-core", "qup-config", "qup-memory";
1128				dmas = <&gpi_dma2 0 7 QCOM_GPI_SPI>,
1129				       <&gpi_dma2 1 7 QCOM_GPI_SPI>;
1130				dma-names = "tx", "rx";
1131				#address-cells = <1>;
1132				#size-cells = <0>;
1133				status = "disabled";
1134			};
1135		};
1136
1137		i2c_master_hub_0: geniqup@9c0000 {
1138			compatible = "qcom,geni-se-i2c-master-hub";
1139			reg = <0x0 0x009c0000 0x0 0x2000>;
1140			clock-names = "s-ahb";
1141			clocks = <&gcc GCC_QUPV3_I2C_S_AHB_CLK>;
1142			#address-cells = <2>;
1143			#size-cells = <2>;
1144			ranges;
1145			status = "disabled";
1146
1147			i2c_hub_0: i2c@980000 {
1148				compatible = "qcom,geni-i2c-master-hub";
1149				reg = <0x0 0x00980000 0x0 0x4000>;
1150				clock-names = "se", "core";
1151				clocks = <&gcc GCC_QUPV3_I2C_S0_CLK>,
1152					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1153				pinctrl-names = "default";
1154				pinctrl-0 = <&hub_i2c0_data_clk>;
1155				interrupts = <GIC_SPI 464 IRQ_TYPE_LEVEL_HIGH>;
1156				#address-cells = <1>;
1157				#size-cells = <0>;
1158				interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1159						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1160				interconnect-names = "qup-core", "qup-config";
1161				status = "disabled";
1162			};
1163
1164			i2c_hub_1: i2c@984000 {
1165				compatible = "qcom,geni-i2c-master-hub";
1166				reg = <0x0 0x00984000 0x0 0x4000>;
1167				clock-names = "se", "core";
1168				clocks = <&gcc GCC_QUPV3_I2C_S1_CLK>,
1169					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1170				pinctrl-names = "default";
1171				pinctrl-0 = <&hub_i2c1_data_clk>;
1172				interrupts = <GIC_SPI 465 IRQ_TYPE_LEVEL_HIGH>;
1173				#address-cells = <1>;
1174				#size-cells = <0>;
1175				interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1176						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1177				interconnect-names = "qup-core", "qup-config";
1178				status = "disabled";
1179			};
1180
1181			i2c_hub_2: i2c@988000 {
1182				compatible = "qcom,geni-i2c-master-hub";
1183				reg = <0x0 0x00988000 0x0 0x4000>;
1184				clock-names = "se", "core";
1185				clocks = <&gcc GCC_QUPV3_I2C_S2_CLK>,
1186					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1187				pinctrl-names = "default";
1188				pinctrl-0 = <&hub_i2c2_data_clk>;
1189				interrupts = <GIC_SPI 466 IRQ_TYPE_LEVEL_HIGH>;
1190				#address-cells = <1>;
1191				#size-cells = <0>;
1192				interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1193						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1194				interconnect-names = "qup-core", "qup-config";
1195				status = "disabled";
1196			};
1197
1198			i2c_hub_3: i2c@98c000 {
1199				compatible = "qcom,geni-i2c-master-hub";
1200				reg = <0x0 0x0098c000 0x0 0x4000>;
1201				clock-names = "se", "core";
1202				clocks = <&gcc GCC_QUPV3_I2C_S3_CLK>,
1203					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1204				pinctrl-names = "default";
1205				pinctrl-0 = <&hub_i2c3_data_clk>;
1206				interrupts = <GIC_SPI 467 IRQ_TYPE_LEVEL_HIGH>;
1207				#address-cells = <1>;
1208				#size-cells = <0>;
1209				interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1210						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1211				interconnect-names = "qup-core", "qup-config";
1212				status = "disabled";
1213			};
1214
1215			i2c_hub_4: i2c@990000 {
1216				compatible = "qcom,geni-i2c-master-hub";
1217				reg = <0x0 0x00990000 0x0 0x4000>;
1218				clock-names = "se", "core";
1219				clocks = <&gcc GCC_QUPV3_I2C_S4_CLK>,
1220					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1221				pinctrl-names = "default";
1222				pinctrl-0 = <&hub_i2c4_data_clk>;
1223				interrupts = <GIC_SPI 468 IRQ_TYPE_LEVEL_HIGH>;
1224				#address-cells = <1>;
1225				#size-cells = <0>;
1226				interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1227						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1228				interconnect-names = "qup-core", "qup-config";
1229				status = "disabled";
1230			};
1231
1232			i2c_hub_5: i2c@994000 {
1233				compatible = "qcom,geni-i2c-master-hub";
1234				reg = <0 0x00994000 0 0x4000>;
1235				clock-names = "se", "core";
1236				clocks = <&gcc GCC_QUPV3_I2C_S5_CLK>,
1237					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1238				pinctrl-names = "default";
1239				pinctrl-0 = <&hub_i2c5_data_clk>;
1240				interrupts = <GIC_SPI 469 IRQ_TYPE_LEVEL_HIGH>;
1241				#address-cells = <1>;
1242				#size-cells = <0>;
1243				interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1244						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1245				interconnect-names = "qup-core", "qup-config";
1246				status = "disabled";
1247			};
1248
1249			i2c_hub_6: i2c@998000 {
1250				compatible = "qcom,geni-i2c-master-hub";
1251				reg = <0 0x00998000 0 0x4000>;
1252				clock-names = "se", "core";
1253				clocks = <&gcc GCC_QUPV3_I2C_S6_CLK>,
1254					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1255				pinctrl-names = "default";
1256				pinctrl-0 = <&hub_i2c6_data_clk>;
1257				interrupts = <GIC_SPI 470 IRQ_TYPE_LEVEL_HIGH>;
1258				#address-cells = <1>;
1259				#size-cells = <0>;
1260				interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1261						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1262				interconnect-names = "qup-core", "qup-config";
1263				status = "disabled";
1264			};
1265
1266			i2c_hub_7: i2c@99c000 {
1267				compatible = "qcom,geni-i2c-master-hub";
1268				reg = <0 0x0099c000 0 0x4000>;
1269				clock-names = "se", "core";
1270				clocks = <&gcc GCC_QUPV3_I2C_S7_CLK>,
1271					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1272				pinctrl-names = "default";
1273				pinctrl-0 = <&hub_i2c7_data_clk>;
1274				interrupts = <GIC_SPI 471 IRQ_TYPE_LEVEL_HIGH>;
1275				#address-cells = <1>;
1276				#size-cells = <0>;
1277				interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1278						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1279				interconnect-names = "qup-core", "qup-config";
1280				status = "disabled";
1281			};
1282
1283			i2c_hub_8: i2c@9a0000 {
1284				compatible = "qcom,geni-i2c-master-hub";
1285				reg = <0 0x009a0000 0 0x4000>;
1286				clock-names = "se", "core";
1287				clocks = <&gcc GCC_QUPV3_I2C_S8_CLK>,
1288					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1289				pinctrl-names = "default";
1290				pinctrl-0 = <&hub_i2c8_data_clk>;
1291				interrupts = <GIC_SPI 472 IRQ_TYPE_LEVEL_HIGH>;
1292				#address-cells = <1>;
1293				#size-cells = <0>;
1294				interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1295						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1296				interconnect-names = "qup-core", "qup-config";
1297				status = "disabled";
1298			};
1299
1300			i2c_hub_9: i2c@9a4000 {
1301				compatible = "qcom,geni-i2c-master-hub";
1302				reg = <0 0x009a4000 0 0x4000>;
1303				clock-names = "se", "core";
1304				clocks = <&gcc GCC_QUPV3_I2C_S9_CLK>,
1305					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1306				pinctrl-names = "default";
1307				pinctrl-0 = <&hub_i2c9_data_clk>;
1308				interrupts = <GIC_SPI 473 IRQ_TYPE_LEVEL_HIGH>;
1309				#address-cells = <1>;
1310				#size-cells = <0>;
1311				interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1312						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1313				interconnect-names = "qup-core", "qup-config";
1314				status = "disabled";
1315			};
1316		};
1317
1318		gpi_dma1: dma-controller@a00000 {
1319			compatible = "qcom,sm8550-gpi-dma", "qcom,sm6350-gpi-dma";
1320			#dma-cells = <3>;
1321			reg = <0 0x00a00000 0 0x60000>;
1322			interrupts = <GIC_SPI 279 IRQ_TYPE_LEVEL_HIGH>,
1323				     <GIC_SPI 280 IRQ_TYPE_LEVEL_HIGH>,
1324				     <GIC_SPI 281 IRQ_TYPE_LEVEL_HIGH>,
1325				     <GIC_SPI 282 IRQ_TYPE_LEVEL_HIGH>,
1326				     <GIC_SPI 283 IRQ_TYPE_LEVEL_HIGH>,
1327				     <GIC_SPI 284 IRQ_TYPE_LEVEL_HIGH>,
1328				     <GIC_SPI 293 IRQ_TYPE_LEVEL_HIGH>,
1329				     <GIC_SPI 294 IRQ_TYPE_LEVEL_HIGH>,
1330				     <GIC_SPI 295 IRQ_TYPE_LEVEL_HIGH>,
1331				     <GIC_SPI 296 IRQ_TYPE_LEVEL_HIGH>,
1332				     <GIC_SPI 297 IRQ_TYPE_LEVEL_HIGH>,
1333				     <GIC_SPI 298 IRQ_TYPE_LEVEL_HIGH>;
1334			dma-channels = <12>;
1335			dma-channel-mask = <0x1e>;
1336			iommus = <&apps_smmu 0xb6 0>;
1337			dma-coherent;
1338			status = "disabled";
1339		};
1340
1341		qupv3_id_0: geniqup@ac0000 {
1342			compatible = "qcom,geni-se-qup";
1343			reg = <0 0x00ac0000 0 0x2000>;
1344			ranges;
1345			clock-names = "m-ahb", "s-ahb";
1346			clocks = <&gcc GCC_QUPV3_WRAP_1_M_AHB_CLK>,
1347				 <&gcc GCC_QUPV3_WRAP_1_S_AHB_CLK>;
1348			iommus = <&apps_smmu 0xa3 0>;
1349			interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>;
1350			interconnect-names = "qup-core";
1351			dma-coherent;
1352			#address-cells = <2>;
1353			#size-cells = <2>;
1354			status = "disabled";
1355
1356			i2c0: i2c@a80000 {
1357				compatible = "qcom,geni-i2c";
1358				reg = <0 0x00a80000 0 0x4000>;
1359				clock-names = "se";
1360				clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>;
1361				pinctrl-names = "default";
1362				pinctrl-0 = <&qup_i2c0_data_clk>;
1363				interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>;
1364				#address-cells = <1>;
1365				#size-cells = <0>;
1366				interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1367						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1368						<&aggre1_noc MASTER_QUP_1 0 &mc_virt  SLAVE_EBI1 0>;
1369				interconnect-names = "qup-core", "qup-config", "qup-memory";
1370				dmas = <&gpi_dma1 0 0 QCOM_GPI_I2C>,
1371				       <&gpi_dma1 1 0 QCOM_GPI_I2C>;
1372				dma-names = "tx", "rx";
1373				status = "disabled";
1374			};
1375
1376			spi0: spi@a80000 {
1377				compatible = "qcom,geni-spi";
1378				reg = <0 0x00a80000 0 0x4000>;
1379				clock-names = "se";
1380				clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>;
1381				interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>;
1382				pinctrl-names = "default";
1383				pinctrl-0 = <&qup_spi0_data_clk>, <&qup_spi0_cs>;
1384				interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1385						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1386						<&aggre1_noc MASTER_QUP_1 0 &mc_virt  SLAVE_EBI1 0>;
1387				interconnect-names = "qup-core", "qup-config", "qup-memory";
1388				dmas = <&gpi_dma1 0 0 QCOM_GPI_SPI>,
1389				       <&gpi_dma1 1 0 QCOM_GPI_SPI>;
1390				dma-names = "tx", "rx";
1391				#address-cells = <1>;
1392				#size-cells = <0>;
1393				status = "disabled";
1394			};
1395
1396			i2c1: i2c@a84000 {
1397				compatible = "qcom,geni-i2c";
1398				reg = <0 0x00a84000 0 0x4000>;
1399				clock-names = "se";
1400				clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>;
1401				pinctrl-names = "default";
1402				pinctrl-0 = <&qup_i2c1_data_clk>;
1403				interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>;
1404				#address-cells = <1>;
1405				#size-cells = <0>;
1406				interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1407						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1408						<&aggre1_noc MASTER_QUP_1 0 &mc_virt  SLAVE_EBI1 0>;
1409				interconnect-names = "qup-core", "qup-config", "qup-memory";
1410				dmas = <&gpi_dma1 0 1 QCOM_GPI_I2C>,
1411				       <&gpi_dma1 1 1 QCOM_GPI_I2C>;
1412				dma-names = "tx", "rx";
1413				status = "disabled";
1414			};
1415
1416			spi1: spi@a84000 {
1417				compatible = "qcom,geni-spi";
1418				reg = <0 0x00a84000 0 0x4000>;
1419				clock-names = "se";
1420				clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>;
1421				interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>;
1422				pinctrl-names = "default";
1423				pinctrl-0 = <&qup_spi1_data_clk>, <&qup_spi1_cs>;
1424				interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1425						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1426						<&aggre1_noc MASTER_QUP_1 0 &mc_virt  SLAVE_EBI1 0>;
1427				interconnect-names = "qup-core", "qup-config", "qup-memory";
1428				dmas = <&gpi_dma1 0 1 QCOM_GPI_SPI>,
1429				       <&gpi_dma1 1 1 QCOM_GPI_SPI>;
1430				dma-names = "tx", "rx";
1431				#address-cells = <1>;
1432				#size-cells = <0>;
1433				status = "disabled";
1434			};
1435
1436			i2c2: i2c@a88000 {
1437				compatible = "qcom,geni-i2c";
1438				reg = <0 0x00a88000 0 0x4000>;
1439				clock-names = "se";
1440				clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>;
1441				pinctrl-names = "default";
1442				pinctrl-0 = <&qup_i2c2_data_clk>;
1443				interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>;
1444				#address-cells = <1>;
1445				#size-cells = <0>;
1446				interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1447						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1448						<&aggre1_noc MASTER_QUP_1 0 &mc_virt  SLAVE_EBI1 0>;
1449				interconnect-names = "qup-core", "qup-config", "qup-memory";
1450				dmas = <&gpi_dma1 0 2 QCOM_GPI_I2C>,
1451				       <&gpi_dma1 1 2 QCOM_GPI_I2C>;
1452				dma-names = "tx", "rx";
1453				status = "disabled";
1454			};
1455
1456			spi2: spi@a88000 {
1457				compatible = "qcom,geni-spi";
1458				reg = <0 0x00a88000 0 0x4000>;
1459				clock-names = "se";
1460				clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>;
1461				interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>;
1462				pinctrl-names = "default";
1463				pinctrl-0 = <&qup_spi2_data_clk>, <&qup_spi2_cs>;
1464				interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1465						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1466						<&aggre1_noc MASTER_QUP_1 0 &mc_virt  SLAVE_EBI1 0>;
1467				interconnect-names = "qup-core", "qup-config", "qup-memory";
1468				dmas = <&gpi_dma1 0 2 QCOM_GPI_SPI>,
1469				       <&gpi_dma1 1 2 QCOM_GPI_SPI>;
1470				dma-names = "tx", "rx";
1471				#address-cells = <1>;
1472				#size-cells = <0>;
1473				status = "disabled";
1474			};
1475
1476			i2c3: i2c@a8c000 {
1477				compatible = "qcom,geni-i2c";
1478				reg = <0 0x00a8c000 0 0x4000>;
1479				clock-names = "se";
1480				clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>;
1481				pinctrl-names = "default";
1482				pinctrl-0 = <&qup_i2c3_data_clk>;
1483				interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
1484				#address-cells = <1>;
1485				#size-cells = <0>;
1486				interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1487						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1488						<&aggre1_noc MASTER_QUP_1 0 &mc_virt  SLAVE_EBI1 0>;
1489				interconnect-names = "qup-core", "qup-config", "qup-memory";
1490				dmas = <&gpi_dma1 0 3 QCOM_GPI_I2C>,
1491				       <&gpi_dma1 1 3 QCOM_GPI_I2C>;
1492				dma-names = "tx", "rx";
1493				status = "disabled";
1494			};
1495
1496			spi3: spi@a8c000 {
1497				compatible = "qcom,geni-spi";
1498				reg = <0 0x00a8c000 0 0x4000>;
1499				clock-names = "se";
1500				clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>;
1501				interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
1502				pinctrl-names = "default";
1503				pinctrl-0 = <&qup_spi3_data_clk>, <&qup_spi3_cs>;
1504				interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1505						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1506						<&aggre1_noc MASTER_QUP_1 0 &mc_virt  SLAVE_EBI1 0>;
1507				interconnect-names = "qup-core", "qup-config", "qup-memory";
1508				dmas = <&gpi_dma1 0 3 QCOM_GPI_SPI>,
1509				       <&gpi_dma1 1 3 QCOM_GPI_SPI>;
1510				dma-names = "tx", "rx";
1511				#address-cells = <1>;
1512				#size-cells = <0>;
1513				status = "disabled";
1514			};
1515
1516			i2c4: i2c@a90000 {
1517				compatible = "qcom,geni-i2c";
1518				reg = <0 0x00a90000 0 0x4000>;
1519				clock-names = "se";
1520				clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>;
1521				pinctrl-names = "default";
1522				pinctrl-0 = <&qup_i2c4_data_clk>;
1523				interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>;
1524				#address-cells = <1>;
1525				#size-cells = <0>;
1526				interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1527						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1528						<&aggre1_noc MASTER_QUP_1 0 &mc_virt  SLAVE_EBI1 0>;
1529				interconnect-names = "qup-core", "qup-config", "qup-memory";
1530				dmas = <&gpi_dma1 0 4 QCOM_GPI_I2C>,
1531				       <&gpi_dma1 1 4 QCOM_GPI_I2C>;
1532				dma-names = "tx", "rx";
1533				status = "disabled";
1534			};
1535
1536			spi4: spi@a90000 {
1537				compatible = "qcom,geni-spi";
1538				reg = <0 0x00a90000 0 0x4000>;
1539				clock-names = "se";
1540				clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>;
1541				interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>;
1542				pinctrl-names = "default";
1543				pinctrl-0 = <&qup_spi4_data_clk>, <&qup_spi4_cs>;
1544				interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1545						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1546						<&aggre1_noc MASTER_QUP_1 0 &mc_virt  SLAVE_EBI1 0>;
1547				interconnect-names = "qup-core", "qup-config", "qup-memory";
1548				dmas = <&gpi_dma1 0 4 QCOM_GPI_SPI>,
1549				       <&gpi_dma1 1 4 QCOM_GPI_SPI>;
1550				dma-names = "tx", "rx";
1551				#address-cells = <1>;
1552				#size-cells = <0>;
1553				status = "disabled";
1554			};
1555
1556			i2c5: i2c@a94000 {
1557				compatible = "qcom,geni-i2c";
1558				reg = <0 0x00a94000 0 0x4000>;
1559				clock-names = "se";
1560				clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>;
1561				pinctrl-names = "default";
1562				pinctrl-0 = <&qup_i2c5_data_clk>;
1563				interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>;
1564				interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1565						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1566						<&aggre1_noc MASTER_QUP_1 0 &mc_virt  SLAVE_EBI1 0>;
1567				interconnect-names = "qup-core", "qup-config", "qup-memory";
1568				dmas = <&gpi_dma1 0 5 QCOM_GPI_I2C>,
1569				       <&gpi_dma1 1 5 QCOM_GPI_I2C>;
1570				dma-names = "tx", "rx";
1571				#address-cells = <1>;
1572				#size-cells = <0>;
1573				status = "disabled";
1574			};
1575
1576			spi5: spi@a94000 {
1577				compatible = "qcom,geni-spi";
1578				reg = <0 0x00a94000 0 0x4000>;
1579				clock-names = "se";
1580				clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>;
1581				interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>;
1582				pinctrl-names = "default";
1583				pinctrl-0 = <&qup_spi5_data_clk>, <&qup_spi5_cs>;
1584				interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1585						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1586						<&aggre1_noc MASTER_QUP_1 0 &mc_virt  SLAVE_EBI1 0>;
1587				interconnect-names = "qup-core", "qup-config", "qup-memory";
1588				dmas = <&gpi_dma1 0 5 QCOM_GPI_SPI>,
1589				       <&gpi_dma1 1 5 QCOM_GPI_SPI>;
1590				dma-names = "tx", "rx";
1591				#address-cells = <1>;
1592				#size-cells = <0>;
1593				status = "disabled";
1594			};
1595
1596			i2c6: i2c@a98000 {
1597				compatible = "qcom,geni-i2c";
1598				reg = <0 0x00a98000 0 0x4000>;
1599				clock-names = "se";
1600				clocks = <&gcc GCC_QUPV3_WRAP1_S6_CLK>;
1601				pinctrl-names = "default";
1602				pinctrl-0 = <&qup_i2c6_data_clk>;
1603				interrupts = <GIC_SPI 363 IRQ_TYPE_LEVEL_HIGH>;
1604				interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1605						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1606						<&aggre1_noc MASTER_QUP_1 0 &mc_virt  SLAVE_EBI1 0>;
1607				interconnect-names = "qup-core", "qup-config", "qup-memory";
1608				dmas = <&gpi_dma1 0 6 QCOM_GPI_I2C>,
1609				       <&gpi_dma1 1 6 QCOM_GPI_I2C>;
1610				dma-names = "tx", "rx";
1611				#address-cells = <1>;
1612				#size-cells = <0>;
1613				status = "disabled";
1614			};
1615
1616			spi6: spi@a98000 {
1617				compatible = "qcom,geni-spi";
1618				reg = <0 0x00a98000 0 0x4000>;
1619				clock-names = "se";
1620				clocks = <&gcc GCC_QUPV3_WRAP1_S6_CLK>;
1621				interrupts = <GIC_SPI 363 IRQ_TYPE_LEVEL_HIGH>;
1622				pinctrl-names = "default";
1623				pinctrl-0 = <&qup_spi6_data_clk>, <&qup_spi6_cs>;
1624				interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1625						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1626						<&aggre1_noc MASTER_QUP_1 0 &mc_virt  SLAVE_EBI1 0>;
1627				interconnect-names = "qup-core", "qup-config", "qup-memory";
1628				dmas = <&gpi_dma1 0 6 QCOM_GPI_SPI>,
1629				       <&gpi_dma1 1 6 QCOM_GPI_SPI>;
1630				dma-names = "tx", "rx";
1631				#address-cells = <1>;
1632				#size-cells = <0>;
1633				status = "disabled";
1634			};
1635
1636			uart7: serial@a9c000 {
1637				compatible = "qcom,geni-debug-uart";
1638				reg = <0 0x00a9c000 0 0x4000>;
1639				clock-names = "se";
1640				clocks = <&gcc GCC_QUPV3_WRAP1_S7_CLK>;
1641				pinctrl-names = "default";
1642				pinctrl-0 = <&qup_uart7_default>;
1643				interrupts = <GIC_SPI 579 IRQ_TYPE_LEVEL_HIGH>;
1644				interconnect-names = "qup-core", "qup-config";
1645				interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1646						<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>;
1647				status = "disabled";
1648			};
1649		};
1650
1651		cnoc_main: interconnect@1500000 {
1652			compatible = "qcom,sm8550-cnoc-main";
1653			reg = <0 0x01500000 0 0x13080>;
1654			#interconnect-cells = <2>;
1655			qcom,bcm-voters = <&apps_bcm_voter>;
1656		};
1657
1658		config_noc: interconnect@1600000 {
1659			compatible = "qcom,sm8550-config-noc";
1660			reg = <0 0x01600000 0 0x6200>;
1661			#interconnect-cells = <2>;
1662			qcom,bcm-voters = <&apps_bcm_voter>;
1663		};
1664
1665		system_noc: interconnect@1680000 {
1666			compatible = "qcom,sm8550-system-noc";
1667			reg = <0 0x01680000 0 0x1d080>;
1668			#interconnect-cells = <2>;
1669			qcom,bcm-voters = <&apps_bcm_voter>;
1670		};
1671
1672		pcie_noc: interconnect@16c0000 {
1673			compatible = "qcom,sm8550-pcie-anoc";
1674			reg = <0 0x016c0000 0 0x12200>;
1675			#interconnect-cells = <2>;
1676			clocks = <&gcc GCC_AGGRE_NOC_PCIE_AXI_CLK>,
1677				 <&gcc GCC_CFG_NOC_PCIE_ANOC_AHB_CLK>;
1678			qcom,bcm-voters = <&apps_bcm_voter>;
1679		};
1680
1681		aggre1_noc: interconnect@16e0000 {
1682			compatible = "qcom,sm8550-aggre1-noc";
1683			reg = <0 0x016e0000 0 0x14400>;
1684			#interconnect-cells = <2>;
1685			clocks = <&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>,
1686				 <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>;
1687			qcom,bcm-voters = <&apps_bcm_voter>;
1688		};
1689
1690		aggre2_noc: interconnect@1700000 {
1691			compatible = "qcom,sm8550-aggre2-noc";
1692			reg = <0 0x01700000 0 0x1e400>;
1693			#interconnect-cells = <2>;
1694			clocks = <&rpmhcc RPMH_IPA_CLK>;
1695			qcom,bcm-voters = <&apps_bcm_voter>;
1696		};
1697
1698		mmss_noc: interconnect@1780000 {
1699			compatible = "qcom,sm8550-mmss-noc";
1700			reg = <0 0x01780000 0 0x5b800>;
1701			#interconnect-cells = <2>;
1702			qcom,bcm-voters = <&apps_bcm_voter>;
1703		};
1704
1705		rng: rng@10c3000 {
1706			compatible = "qcom,sm8550-trng", "qcom,trng";
1707			reg = <0 0x010c3000 0 0x1000>;
1708		};
1709
1710		pcie0: pcie@1c00000 {
1711			device_type = "pci";
1712			compatible = "qcom,pcie-sm8550";
1713			reg = <0 0x01c00000 0 0x3000>,
1714			      <0 0x60000000 0 0xf1d>,
1715			      <0 0x60000f20 0 0xa8>,
1716			      <0 0x60001000 0 0x1000>,
1717			      <0 0x60100000 0 0x100000>;
1718			reg-names = "parf", "dbi", "elbi", "atu", "config";
1719			#address-cells = <3>;
1720			#size-cells = <2>;
1721			ranges = <0x01000000 0x0 0x00000000 0x0 0x60200000 0x0 0x100000>,
1722				 <0x02000000 0x0 0x60300000 0x0 0x60300000 0x0 0x3d00000>;
1723			bus-range = <0x00 0xff>;
1724
1725			dma-coherent;
1726
1727			linux,pci-domain = <0>;
1728			num-lanes = <2>;
1729
1730			interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>,
1731				     <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>,
1732				     <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>,
1733				     <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>,
1734				     <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>,
1735				     <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>,
1736				     <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>,
1737				     <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
1738			interrupt-names = "msi0",
1739					  "msi1",
1740					  "msi2",
1741					  "msi3",
1742					  "msi4",
1743					  "msi5",
1744					  "msi6",
1745					  "msi7";
1746			#interrupt-cells = <1>;
1747			interrupt-map-mask = <0 0 0 0x7>;
1748			interrupt-map = <0 0 0 1 &intc 0 0 0 149 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
1749					<0 0 0 2 &intc 0 0 0 150 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
1750					<0 0 0 3 &intc 0 0 0 151 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
1751					<0 0 0 4 &intc 0 0 0 152 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
1752
1753			clocks = <&gcc GCC_PCIE_0_AUX_CLK>,
1754				 <&gcc GCC_PCIE_0_CFG_AHB_CLK>,
1755				 <&gcc GCC_PCIE_0_MSTR_AXI_CLK>,
1756				 <&gcc GCC_PCIE_0_SLV_AXI_CLK>,
1757				 <&gcc GCC_PCIE_0_SLV_Q2A_AXI_CLK>,
1758				 <&gcc GCC_DDRSS_PCIE_SF_QTB_CLK>,
1759				 <&gcc GCC_AGGRE_NOC_PCIE_AXI_CLK>;
1760			clock-names = "aux",
1761				      "cfg",
1762				      "bus_master",
1763				      "bus_slave",
1764				      "slave_q2a",
1765				      "ddrss_sf_tbu",
1766				      "noc_aggr";
1767
1768			interconnects = <&pcie_noc MASTER_PCIE_0 0 &mc_virt SLAVE_EBI1 0>,
1769					<&gem_noc MASTER_APPSS_PROC 0 &cnoc_main SLAVE_PCIE_0 0>;
1770			interconnect-names = "pcie-mem", "cpu-pcie";
1771
1772			msi-map = <0x0 &gic_its 0x1400 0x1>,
1773				  <0x100 &gic_its 0x1401 0x1>;
1774			iommu-map = <0x0   &apps_smmu 0x1400 0x1>,
1775				    <0x100 &apps_smmu 0x1401 0x1>;
1776
1777			resets = <&gcc GCC_PCIE_0_BCR>;
1778			reset-names = "pci";
1779
1780			power-domains = <&gcc PCIE_0_GDSC>;
1781
1782			phys = <&pcie0_phy>;
1783			phy-names = "pciephy";
1784
1785			status = "disabled";
1786
1787			pcieport0: pcie@0 {
1788				device_type = "pci";
1789				reg = <0x0 0x0 0x0 0x0 0x0>;
1790				bus-range = <0x01 0xff>;
1791
1792				#address-cells = <3>;
1793				#size-cells = <2>;
1794				ranges;
1795			};
1796		};
1797
1798		pcie0_phy: phy@1c06000 {
1799			compatible = "qcom,sm8550-qmp-gen3x2-pcie-phy";
1800			reg = <0 0x01c06000 0 0x2000>;
1801
1802			clocks = <&gcc GCC_PCIE_0_AUX_CLK>,
1803				 <&gcc GCC_PCIE_0_CFG_AHB_CLK>,
1804				 <&tcsr TCSR_PCIE_0_CLKREF_EN>,
1805				 <&gcc GCC_PCIE_0_PHY_RCHNG_CLK>,
1806				 <&gcc GCC_PCIE_0_PIPE_CLK>;
1807			clock-names = "aux", "cfg_ahb", "ref", "rchng",
1808				      "pipe";
1809
1810			resets = <&gcc GCC_PCIE_0_PHY_BCR>;
1811			reset-names = "phy";
1812
1813			assigned-clocks = <&gcc GCC_PCIE_0_PHY_RCHNG_CLK>;
1814			assigned-clock-rates = <100000000>;
1815
1816			power-domains = <&gcc PCIE_0_PHY_GDSC>;
1817
1818			#clock-cells = <0>;
1819			clock-output-names = "pcie0_pipe_clk";
1820
1821			#phy-cells = <0>;
1822
1823			status = "disabled";
1824		};
1825
1826		pcie1: pcie@1c08000 {
1827			device_type = "pci";
1828			compatible = "qcom,pcie-sm8550";
1829			reg = <0x0 0x01c08000 0x0 0x3000>,
1830			      <0x0 0x40000000 0x0 0xf1d>,
1831			      <0x0 0x40000f20 0x0 0xa8>,
1832			      <0x0 0x40001000 0x0 0x1000>,
1833			      <0x0 0x40100000 0x0 0x100000>;
1834			reg-names = "parf", "dbi", "elbi", "atu", "config";
1835			#address-cells = <3>;
1836			#size-cells = <2>;
1837			ranges = <0x01000000 0x0 0x00000000 0x0 0x40200000 0x0 0x100000>,
1838				 <0x02000000 0x0 0x40300000 0x0 0x40300000 0x0 0x1fd00000>;
1839			bus-range = <0x00 0xff>;
1840
1841			dma-coherent;
1842
1843			linux,pci-domain = <1>;
1844			num-lanes = <2>;
1845
1846			interrupts = <GIC_SPI 307 IRQ_TYPE_LEVEL_HIGH>,
1847				     <GIC_SPI 308 IRQ_TYPE_LEVEL_HIGH>,
1848				     <GIC_SPI 309 IRQ_TYPE_LEVEL_HIGH>,
1849				     <GIC_SPI 312 IRQ_TYPE_LEVEL_HIGH>,
1850				     <GIC_SPI 313 IRQ_TYPE_LEVEL_HIGH>,
1851				     <GIC_SPI 314 IRQ_TYPE_LEVEL_HIGH>,
1852				     <GIC_SPI 374 IRQ_TYPE_LEVEL_HIGH>,
1853				     <GIC_SPI 375 IRQ_TYPE_LEVEL_HIGH>;
1854			interrupt-names = "msi0",
1855					  "msi1",
1856					  "msi2",
1857					  "msi3",
1858					  "msi4",
1859					  "msi5",
1860					  "msi6",
1861					  "msi7";
1862			#interrupt-cells = <1>;
1863			interrupt-map-mask = <0 0 0 0x7>;
1864			interrupt-map = <0 0 0 1 &intc 0 0 0 434 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
1865					<0 0 0 2 &intc 0 0 0 435 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
1866					<0 0 0 3 &intc 0 0 0 438 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
1867					<0 0 0 4 &intc 0 0 0 439 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
1868
1869			clocks = <&gcc GCC_PCIE_1_AUX_CLK>,
1870				 <&gcc GCC_PCIE_1_CFG_AHB_CLK>,
1871				 <&gcc GCC_PCIE_1_MSTR_AXI_CLK>,
1872				 <&gcc GCC_PCIE_1_SLV_AXI_CLK>,
1873				 <&gcc GCC_PCIE_1_SLV_Q2A_AXI_CLK>,
1874				 <&gcc GCC_DDRSS_PCIE_SF_QTB_CLK>,
1875				 <&gcc GCC_AGGRE_NOC_PCIE_AXI_CLK>,
1876				 <&gcc GCC_CNOC_PCIE_SF_AXI_CLK>;
1877			clock-names = "aux",
1878				      "cfg",
1879				      "bus_master",
1880				      "bus_slave",
1881				      "slave_q2a",
1882				      "ddrss_sf_tbu",
1883				      "noc_aggr",
1884				      "cnoc_sf_axi";
1885
1886			assigned-clocks = <&gcc GCC_PCIE_1_AUX_CLK>;
1887			assigned-clock-rates = <19200000>;
1888
1889			interconnects = <&pcie_noc MASTER_PCIE_1 0 &mc_virt SLAVE_EBI1 0>,
1890					<&gem_noc MASTER_APPSS_PROC 0 &cnoc_main SLAVE_PCIE_1 0>;
1891			interconnect-names = "pcie-mem", "cpu-pcie";
1892
1893			msi-map = <0x0 &gic_its 0x1480 0x1>,
1894				  <0x100 &gic_its 0x1481 0x1>;
1895			iommu-map = <0x0   &apps_smmu 0x1480 0x1>,
1896				    <0x100 &apps_smmu 0x1481 0x1>;
1897
1898			resets = <&gcc GCC_PCIE_1_BCR>,
1899				<&gcc GCC_PCIE_1_LINK_DOWN_BCR>;
1900			reset-names = "pci", "link_down";
1901
1902			power-domains = <&gcc PCIE_1_GDSC>;
1903
1904			phys = <&pcie1_phy>;
1905			phy-names = "pciephy";
1906
1907			status = "disabled";
1908
1909			pcie@0 {
1910				device_type = "pci";
1911				reg = <0x0 0x0 0x0 0x0 0x0>;
1912				bus-range = <0x01 0xff>;
1913
1914				#address-cells = <3>;
1915				#size-cells = <2>;
1916				ranges;
1917			};
1918		};
1919
1920		pcie1_phy: phy@1c0e000 {
1921			compatible = "qcom,sm8550-qmp-gen4x2-pcie-phy";
1922			reg = <0x0 0x01c0e000 0x0 0x2000>;
1923
1924			clocks = <&gcc GCC_PCIE_1_PHY_AUX_CLK>,
1925				 <&gcc GCC_PCIE_1_CFG_AHB_CLK>,
1926				 <&tcsr TCSR_PCIE_1_CLKREF_EN>,
1927				 <&gcc GCC_PCIE_1_PHY_RCHNG_CLK>,
1928				 <&gcc GCC_PCIE_1_PIPE_CLK>;
1929			clock-names = "aux", "cfg_ahb", "ref", "rchng",
1930				      "pipe";
1931
1932			resets = <&gcc GCC_PCIE_1_PHY_BCR>,
1933				 <&gcc GCC_PCIE_1_NOCSR_COM_PHY_BCR>;
1934			reset-names = "phy", "phy_nocsr";
1935
1936			assigned-clocks = <&gcc GCC_PCIE_1_PHY_RCHNG_CLK>;
1937			assigned-clock-rates = <100000000>;
1938
1939			power-domains = <&gcc PCIE_1_PHY_GDSC>;
1940
1941			#clock-cells = <1>;
1942			clock-output-names = "pcie1_pipe_clk";
1943
1944			#phy-cells = <0>;
1945
1946			status = "disabled";
1947		};
1948
1949		cryptobam: dma-controller@1dc4000 {
1950			compatible = "qcom,bam-v1.7.4", "qcom,bam-v1.7.0";
1951			reg = <0x0 0x01dc4000 0x0 0x28000>;
1952			interrupts = <GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>;
1953			#dma-cells = <1>;
1954			qcom,ee = <0>;
1955			qcom,controlled-remotely;
1956			iommus = <&apps_smmu 0x480 0x0>,
1957				 <&apps_smmu 0x481 0x0>;
1958		};
1959
1960		crypto: crypto@1dfa000 {
1961			compatible = "qcom,sm8550-qce", "qcom,sm8150-qce", "qcom,qce";
1962			reg = <0x0 0x01dfa000 0x0 0x6000>;
1963			dmas = <&cryptobam 4>, <&cryptobam 5>;
1964			dma-names = "rx", "tx";
1965			iommus = <&apps_smmu 0x480 0x0>,
1966				 <&apps_smmu 0x481 0x0>;
1967			interconnects = <&aggre2_noc MASTER_CRYPTO 0 &mc_virt SLAVE_EBI1 0>;
1968			interconnect-names = "memory";
1969		};
1970
1971		ufs_mem_phy: phy@1d80000 {
1972			compatible = "qcom,sm8550-qmp-ufs-phy";
1973			reg = <0x0 0x01d80000 0x0 0x2000>;
1974			clocks = <&rpmhcc RPMH_CXO_CLK>,
1975				 <&gcc GCC_UFS_PHY_PHY_AUX_CLK>,
1976				 <&tcsr TCSR_UFS_CLKREF_EN>;
1977			clock-names = "ref",
1978				      "ref_aux",
1979				      "qref";
1980
1981			power-domains = <&gcc UFS_MEM_PHY_GDSC>;
1982
1983			resets = <&ufs_mem_hc 0>;
1984			reset-names = "ufsphy";
1985
1986			#clock-cells = <1>;
1987			#phy-cells = <0>;
1988
1989			status = "disabled";
1990		};
1991
1992		ufs_mem_hc: ufs@1d84000 {
1993			compatible = "qcom,sm8550-ufshc", "qcom,ufshc",
1994				     "jedec,ufs-2.0";
1995			reg = <0x0 0x01d84000 0x0 0x3000>;
1996			interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>;
1997			phys = <&ufs_mem_phy>;
1998			phy-names = "ufsphy";
1999			lanes-per-direction = <2>;
2000			#reset-cells = <1>;
2001			resets = <&gcc GCC_UFS_PHY_BCR>;
2002			reset-names = "rst";
2003
2004			power-domains = <&gcc UFS_PHY_GDSC>;
2005			required-opps = <&rpmhpd_opp_nom>;
2006
2007			iommus = <&apps_smmu 0x60 0x0>;
2008			dma-coherent;
2009
2010			operating-points-v2 = <&ufs_opp_table>;
2011			interconnects = <&aggre1_noc MASTER_UFS_MEM 0 &mc_virt SLAVE_EBI1 0>,
2012					<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_UFS_MEM_CFG 0>;
2013
2014			interconnect-names = "ufs-ddr", "cpu-ufs";
2015			clock-names = "core_clk",
2016				      "bus_aggr_clk",
2017				      "iface_clk",
2018				      "core_clk_unipro",
2019				      "ref_clk",
2020				      "tx_lane0_sync_clk",
2021				      "rx_lane0_sync_clk",
2022				      "rx_lane1_sync_clk";
2023			clocks = <&gcc GCC_UFS_PHY_AXI_CLK>,
2024				 <&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>,
2025				 <&gcc GCC_UFS_PHY_AHB_CLK>,
2026				 <&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>,
2027				 <&tcsr TCSR_UFS_PAD_CLKREF_EN>,
2028				 <&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>,
2029				 <&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>,
2030				 <&gcc GCC_UFS_PHY_RX_SYMBOL_1_CLK>;
2031			qcom,ice = <&ice>;
2032
2033			status = "disabled";
2034
2035			ufs_opp_table: opp-table {
2036				compatible = "operating-points-v2";
2037
2038				opp-75000000 {
2039					opp-hz = /bits/ 64 <75000000>,
2040						 /bits/ 64 <0>,
2041						 /bits/ 64 <0>,
2042						 /bits/ 64 <75000000>,
2043						 /bits/ 64 <0>,
2044						 /bits/ 64 <0>,
2045						 /bits/ 64 <0>,
2046						 /bits/ 64 <0>;
2047					required-opps = <&rpmhpd_opp_low_svs>;
2048				};
2049
2050				opp-150000000 {
2051					opp-hz = /bits/ 64 <150000000>,
2052						 /bits/ 64 <0>,
2053						 /bits/ 64 <0>,
2054						 /bits/ 64 <150000000>,
2055						 /bits/ 64 <0>,
2056						 /bits/ 64 <0>,
2057						 /bits/ 64 <0>,
2058						 /bits/ 64 <0>;
2059					required-opps = <&rpmhpd_opp_svs>;
2060				};
2061
2062				opp-300000000 {
2063					opp-hz = /bits/ 64 <300000000>,
2064						 /bits/ 64 <0>,
2065						 /bits/ 64 <0>,
2066						 /bits/ 64 <300000000>,
2067						 /bits/ 64 <0>,
2068						 /bits/ 64 <0>,
2069						 /bits/ 64 <0>,
2070						 /bits/ 64 <0>;
2071					required-opps = <&rpmhpd_opp_nom>;
2072				};
2073			};
2074		};
2075
2076		ice: crypto@1d88000 {
2077			compatible = "qcom,sm8550-inline-crypto-engine",
2078				     "qcom,inline-crypto-engine";
2079			reg = <0 0x01d88000 0 0x8000>;
2080			clocks = <&gcc GCC_UFS_PHY_ICE_CORE_CLK>;
2081		};
2082
2083		tcsr_mutex: hwlock@1f40000 {
2084			compatible = "qcom,tcsr-mutex";
2085			reg = <0 0x01f40000 0 0x20000>;
2086			#hwlock-cells = <1>;
2087		};
2088
2089		tcsr: clock-controller@1fc0000 {
2090			compatible = "qcom,sm8550-tcsr", "syscon";
2091			reg = <0 0x01fc0000 0 0x30000>;
2092			clocks = <&rpmhcc RPMH_CXO_CLK>;
2093			#clock-cells = <1>;
2094			#reset-cells = <1>;
2095		};
2096
2097		gpu: gpu@3d00000 {
2098			compatible = "qcom,adreno-43050a01", "qcom,adreno";
2099			reg = <0x0 0x03d00000 0x0 0x40000>,
2100			      <0x0 0x03d9e000 0x0 0x1000>,
2101			      <0x0 0x03d61000 0x0 0x800>;
2102			reg-names = "kgsl_3d0_reg_memory",
2103				    "cx_mem",
2104				    "cx_dbgc";
2105
2106			interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>;
2107
2108			iommus = <&adreno_smmu 0 0x0>,
2109				 <&adreno_smmu 1 0x0>;
2110
2111			operating-points-v2 = <&gpu_opp_table>;
2112
2113			qcom,gmu = <&gmu>;
2114			#cooling-cells = <2>;
2115
2116			status = "disabled";
2117
2118			zap-shader {
2119				memory-region = <&gpu_micro_code_mem>;
2120			};
2121
2122			/* Speedbin needs more work on A740+, keep only lower freqs */
2123			gpu_opp_table: opp-table {
2124				compatible = "operating-points-v2";
2125
2126				opp-680000000 {
2127					opp-hz = /bits/ 64 <680000000>;
2128					opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
2129				};
2130
2131				opp-615000000 {
2132					opp-hz = /bits/ 64 <615000000>;
2133					opp-level = <RPMH_REGULATOR_LEVEL_SVS_L0>;
2134				};
2135
2136				opp-550000000 {
2137					opp-hz = /bits/ 64 <550000000>;
2138					opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
2139				};
2140
2141				opp-475000000 {
2142					opp-hz = /bits/ 64 <475000000>;
2143					opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_L1>;
2144				};
2145
2146				opp-401000000 {
2147					opp-hz = /bits/ 64 <401000000>;
2148					opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
2149				};
2150
2151				opp-348000000 {
2152					opp-hz = /bits/ 64 <348000000>;
2153					opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_D0>;
2154				};
2155
2156				opp-295000000 {
2157					opp-hz = /bits/ 64 <295000000>;
2158					opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_D1>;
2159				};
2160
2161				opp-220000000 {
2162					opp-hz = /bits/ 64 <220000000>;
2163					opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_D2>;
2164				};
2165			};
2166		};
2167
2168		gmu: gmu@3d6a000 {
2169			compatible = "qcom,adreno-gmu-740.1", "qcom,adreno-gmu";
2170			reg = <0x0 0x03d6a000 0x0 0x35000>,
2171			      <0x0 0x03d50000 0x0 0x10000>,
2172			      <0x0 0x0b280000 0x0 0x10000>;
2173			reg-names = "gmu", "rscc", "gmu_pdc";
2174
2175			interrupts = <GIC_SPI 304 IRQ_TYPE_LEVEL_HIGH>,
2176				     <GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>;
2177			interrupt-names = "hfi", "gmu";
2178
2179			clocks = <&gpucc GPU_CC_AHB_CLK>,
2180				 <&gpucc GPU_CC_CX_GMU_CLK>,
2181				 <&gpucc GPU_CC_CXO_CLK>,
2182				 <&gcc GCC_DDRSS_GPU_AXI_CLK>,
2183				 <&gcc GCC_GPU_MEMNOC_GFX_CLK>,
2184				 <&gpucc GPU_CC_HUB_CX_INT_CLK>,
2185				 <&gpucc GPU_CC_DEMET_CLK>;
2186			clock-names = "ahb",
2187				      "gmu",
2188				      "cxo",
2189				      "axi",
2190				      "memnoc",
2191				      "hub",
2192				      "demet";
2193
2194			power-domains = <&gpucc GPU_CC_CX_GDSC>,
2195					<&gpucc GPU_CC_GX_GDSC>;
2196			power-domain-names = "cx",
2197					     "gx";
2198
2199			iommus = <&adreno_smmu 5 0x0>;
2200
2201			qcom,qmp = <&aoss_qmp>;
2202
2203			operating-points-v2 = <&gmu_opp_table>;
2204
2205			gmu_opp_table: opp-table {
2206				compatible = "operating-points-v2";
2207
2208				opp-500000000 {
2209					opp-hz = /bits/ 64 <500000000>;
2210					opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
2211				};
2212
2213				opp-200000000 {
2214					opp-hz = /bits/ 64 <200000000>;
2215					opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
2216				};
2217			};
2218		};
2219
2220		gpucc: clock-controller@3d90000 {
2221			compatible = "qcom,sm8550-gpucc";
2222			reg = <0 0x03d90000 0 0xa000>;
2223			clocks = <&bi_tcxo_div2>,
2224				 <&gcc GCC_GPU_GPLL0_CLK_SRC>,
2225				 <&gcc GCC_GPU_GPLL0_DIV_CLK_SRC>;
2226			#clock-cells = <1>;
2227			#reset-cells = <1>;
2228			#power-domain-cells = <1>;
2229		};
2230
2231		adreno_smmu: iommu@3da0000 {
2232			compatible = "qcom,sm8550-smmu-500", "qcom,adreno-smmu",
2233				     "qcom,smmu-500", "arm,mmu-500";
2234			reg = <0x0 0x03da0000 0x0 0x40000>;
2235			#iommu-cells = <2>;
2236			#global-interrupts = <1>;
2237			interrupts = <GIC_SPI 673 IRQ_TYPE_LEVEL_HIGH>,
2238				     <GIC_SPI 677 IRQ_TYPE_LEVEL_HIGH>,
2239				     <GIC_SPI 678 IRQ_TYPE_LEVEL_HIGH>,
2240				     <GIC_SPI 679 IRQ_TYPE_LEVEL_HIGH>,
2241				     <GIC_SPI 680 IRQ_TYPE_LEVEL_HIGH>,
2242				     <GIC_SPI 681 IRQ_TYPE_LEVEL_HIGH>,
2243				     <GIC_SPI 682 IRQ_TYPE_LEVEL_HIGH>,
2244				     <GIC_SPI 683 IRQ_TYPE_LEVEL_HIGH>,
2245				     <GIC_SPI 684 IRQ_TYPE_LEVEL_HIGH>,
2246				     <GIC_SPI 685 IRQ_TYPE_LEVEL_HIGH>,
2247				     <GIC_SPI 686 IRQ_TYPE_LEVEL_HIGH>,
2248				     <GIC_SPI 687 IRQ_TYPE_LEVEL_HIGH>,
2249				     <GIC_SPI 422 IRQ_TYPE_LEVEL_HIGH>,
2250				     <GIC_SPI 476 IRQ_TYPE_LEVEL_HIGH>,
2251				     <GIC_SPI 574 IRQ_TYPE_LEVEL_HIGH>,
2252				     <GIC_SPI 575 IRQ_TYPE_LEVEL_HIGH>,
2253				     <GIC_SPI 576 IRQ_TYPE_LEVEL_HIGH>,
2254				     <GIC_SPI 577 IRQ_TYPE_LEVEL_HIGH>,
2255				     <GIC_SPI 659 IRQ_TYPE_LEVEL_HIGH>,
2256				     <GIC_SPI 661 IRQ_TYPE_LEVEL_HIGH>,
2257				     <GIC_SPI 664 IRQ_TYPE_LEVEL_HIGH>,
2258				     <GIC_SPI 665 IRQ_TYPE_LEVEL_HIGH>,
2259				     <GIC_SPI 666 IRQ_TYPE_LEVEL_HIGH>,
2260				     <GIC_SPI 668 IRQ_TYPE_LEVEL_HIGH>,
2261				     <GIC_SPI 669 IRQ_TYPE_LEVEL_HIGH>,
2262				     <GIC_SPI 699 IRQ_TYPE_LEVEL_HIGH>;
2263			clocks = <&gpucc GPU_CC_HLOS1_VOTE_GPU_SMMU_CLK>,
2264				 <&gcc GCC_GPU_MEMNOC_GFX_CLK>,
2265				 <&gcc GCC_GPU_SNOC_DVM_GFX_CLK>,
2266				 <&gpucc GPU_CC_AHB_CLK>;
2267			clock-names = "hlos",
2268				      "bus",
2269				      "iface",
2270				      "ahb";
2271			power-domains = <&gpucc GPU_CC_CX_GDSC>;
2272			dma-coherent;
2273		};
2274
2275		ipa: ipa@3f40000 {
2276			compatible = "qcom,sm8550-ipa";
2277
2278			iommus = <&apps_smmu 0x4a0 0x0>,
2279				 <&apps_smmu 0x4a2 0x0>;
2280			reg = <0 0x3f40000 0 0x10000>,
2281			      <0 0x3f50000 0 0x5000>,
2282			      <0 0x3e04000 0 0xfc000>;
2283			reg-names = "ipa-reg",
2284				    "ipa-shared",
2285				    "gsi";
2286
2287			interrupts-extended = <&intc GIC_SPI 654 IRQ_TYPE_EDGE_RISING>,
2288					      <&intc GIC_SPI 432 IRQ_TYPE_LEVEL_HIGH>,
2289					      <&ipa_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
2290					      <&ipa_smp2p_in 1 IRQ_TYPE_EDGE_RISING>;
2291			interrupt-names = "ipa",
2292					  "gsi",
2293					  "ipa-clock-query",
2294					  "ipa-setup-ready";
2295
2296			clocks = <&rpmhcc RPMH_IPA_CLK>;
2297			clock-names = "core";
2298
2299			interconnects = <&aggre2_noc MASTER_IPA 0 &mc_virt SLAVE_EBI1 0>,
2300					<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_IPA_CFG 0>;
2301			interconnect-names = "memory",
2302					     "config";
2303
2304			qcom,qmp = <&aoss_qmp>;
2305
2306			qcom,smem-states = <&ipa_smp2p_out 0>,
2307					   <&ipa_smp2p_out 1>;
2308			qcom,smem-state-names = "ipa-clock-enabled-valid",
2309						"ipa-clock-enabled";
2310
2311			status = "disabled";
2312		};
2313
2314		remoteproc_mpss: remoteproc@4080000 {
2315			compatible = "qcom,sm8550-mpss-pas";
2316			reg = <0x0 0x04080000 0x0 0x4040>;
2317
2318			interrupts-extended = <&intc GIC_SPI 264 IRQ_TYPE_EDGE_RISING>,
2319					      <&smp2p_modem_in 0 IRQ_TYPE_EDGE_RISING>,
2320					      <&smp2p_modem_in 1 IRQ_TYPE_EDGE_RISING>,
2321					      <&smp2p_modem_in 2 IRQ_TYPE_EDGE_RISING>,
2322					      <&smp2p_modem_in 3 IRQ_TYPE_EDGE_RISING>,
2323					      <&smp2p_modem_in 7 IRQ_TYPE_EDGE_RISING>;
2324			interrupt-names = "wdog", "fatal", "ready", "handover",
2325					  "stop-ack", "shutdown-ack";
2326
2327			clocks = <&rpmhcc RPMH_CXO_CLK>;
2328			clock-names = "xo";
2329
2330			power-domains = <&rpmhpd RPMHPD_CX>,
2331					<&rpmhpd RPMHPD_MSS>;
2332			power-domain-names = "cx", "mss";
2333
2334			interconnects = <&mc_virt MASTER_LLCC 0 &mc_virt SLAVE_EBI1 0>;
2335
2336			memory-region = <&mpss_mem>, <&q6_mpss_dtb_mem>, <&mpss_dsm_mem>;
2337
2338			qcom,qmp = <&aoss_qmp>;
2339
2340			qcom,smem-states = <&smp2p_modem_out 0>;
2341			qcom,smem-state-names = "stop";
2342
2343			status = "disabled";
2344
2345			glink-edge {
2346				interrupts-extended = <&ipcc IPCC_CLIENT_MPSS
2347							     IPCC_MPROC_SIGNAL_GLINK_QMP
2348							     IRQ_TYPE_EDGE_RISING>;
2349				mboxes = <&ipcc IPCC_CLIENT_MPSS
2350						IPCC_MPROC_SIGNAL_GLINK_QMP>;
2351				label = "mpss";
2352				qcom,remote-pid = <1>;
2353			};
2354		};
2355
2356		lpass_wsa2macro: codec@6aa0000 {
2357			compatible = "qcom,sm8550-lpass-wsa-macro";
2358			reg = <0 0x06aa0000 0 0x1000>;
2359			clocks = <&q6prmcc LPASS_CLK_ID_WSA2_CORE_TX_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2360				 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2361				 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2362				 <&lpass_vamacro>;
2363			clock-names = "mclk", "macro", "dcodec", "fsgen";
2364
2365			#clock-cells = <0>;
2366			clock-output-names = "wsa2-mclk";
2367			#sound-dai-cells = <1>;
2368		};
2369
2370		swr3: soundwire@6ab0000 {
2371			compatible = "qcom,soundwire-v2.0.0";
2372			reg = <0 0x06ab0000 0 0x10000>;
2373			interrupts = <GIC_SPI 171 IRQ_TYPE_LEVEL_HIGH>;
2374			clocks = <&lpass_wsa2macro>;
2375			clock-names = "iface";
2376			label = "WSA2";
2377
2378			pinctrl-0 = <&wsa2_swr_active>;
2379			pinctrl-names = "default";
2380
2381			qcom,din-ports = <4>;
2382			qcom,dout-ports = <9>;
2383
2384			qcom,ports-sinterval =		/bits/ 16 <0x07 0x1f 0x3f 0x07 0x1f 0x3f 0x18f 0xff 0xff 0x0f 0x0f 0xff 0x31f>;
2385			qcom,ports-offset1 =		/bits/ 8 <0x01 0x03 0x05 0x02 0x04 0x15 0x00 0xff 0xff 0x06 0x0d 0xff 0x00>;
2386			qcom,ports-offset2 =		/bits/ 8 <0xff 0x07 0x1f 0xff 0x07 0x1f 0xff 0xff 0xff 0xff 0xff 0xff 0xff>;
2387			qcom,ports-hstart =		/bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0x08 0xff 0xff 0xff 0xff 0xff 0x0f>;
2388			qcom,ports-hstop =		/bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0x08 0xff 0xff 0xff 0xff 0xff 0x0f>;
2389			qcom,ports-word-length =	/bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0x08 0xff 0xff 0xff 0xff 0xff 0x18>;
2390			qcom,ports-block-pack-mode =	/bits/ 8 <0x00 0x01 0x01 0x00 0x01 0x01 0x00 0x00 0x00 0x01 0x01 0x00 0x00>;
2391			qcom,ports-block-group-count =	/bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff>;
2392			qcom,ports-lane-control =	/bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff>;
2393
2394			#address-cells = <2>;
2395			#size-cells = <0>;
2396			#sound-dai-cells = <1>;
2397			status = "disabled";
2398		};
2399
2400		lpass_rxmacro: codec@6ac0000 {
2401			compatible = "qcom,sm8550-lpass-rx-macro";
2402			reg = <0 0x06ac0000 0 0x1000>;
2403			clocks = <&q6prmcc LPASS_CLK_ID_RX_CORE_TX_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2404				 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2405				 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2406				 <&lpass_vamacro>;
2407			clock-names = "mclk", "macro", "dcodec", "fsgen";
2408
2409			#clock-cells = <0>;
2410			clock-output-names = "mclk";
2411			#sound-dai-cells = <1>;
2412		};
2413
2414		swr1: soundwire@6ad0000 {
2415			compatible = "qcom,soundwire-v2.0.0";
2416			reg = <0 0x06ad0000 0 0x10000>;
2417			interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
2418			clocks = <&lpass_rxmacro>;
2419			clock-names = "iface";
2420			label = "RX";
2421
2422			pinctrl-0 = <&rx_swr_active>;
2423			pinctrl-names = "default";
2424
2425			qcom,din-ports = <1>;
2426			qcom,dout-ports = <11>;
2427
2428			qcom,ports-sinterval =		/bits/ 16 <0x03 0x3f 0x1f 0x07 0x00 0x18f 0xff 0xff 0xff 0xff 0xff 0xff>;
2429			qcom,ports-offset1 =		/bits/ 8 <0x00 0x00 0x0b 0x01 0x00 0x00 0xff 0xff 0xff 0xff 0xff 0xff>;
2430			qcom,ports-offset2 =		/bits/ 8 <0x00 0x00 0x0b 0x00 0x00 0x00 0xff 0xff 0xff 0xff 0xff 0xff>;
2431			qcom,ports-hstart =		/bits/ 8 <0xff 0x03 0xff 0xff 0xff 0x08 0xff 0xff 0xff 0xff 0xff 0xff>;
2432			qcom,ports-hstop =		/bits/ 8 <0xff 0x06 0xff 0xff 0xff 0x08 0xff 0xff 0xff 0xff 0xff 0xff>;
2433			qcom,ports-word-length =	/bits/ 8 <0x01 0x07 0x04 0xff 0xff 0x0f 0xff 0xff 0xff 0xff 0xff 0xff>;
2434			qcom,ports-block-pack-mode =	/bits/ 8 <0xff 0x00 0x01 0xff 0xff 0x00 0xff 0xff 0xff 0xff 0xff 0xff>;
2435			qcom,ports-block-group-count =	/bits/ 8 <0xff 0xff 0xff 0xff 0x00 0x00 0xff 0xff 0xff 0xff 0xff 0xff>;
2436			qcom,ports-lane-control =	/bits/ 8 <0x01 0x00 0x00 0x00 0x00 0x00 0xff 0xff 0xff 0xff 0xff 0xff>;
2437
2438			#address-cells = <2>;
2439			#size-cells = <0>;
2440			#sound-dai-cells = <1>;
2441			status = "disabled";
2442		};
2443
2444		lpass_txmacro: codec@6ae0000 {
2445			compatible = "qcom,sm8550-lpass-tx-macro";
2446			reg = <0 0x06ae0000 0 0x1000>;
2447			clocks = <&q6prmcc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2448				 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2449				 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2450				 <&lpass_vamacro>;
2451			clock-names = "mclk", "macro", "dcodec", "fsgen";
2452
2453			#clock-cells = <0>;
2454			clock-output-names = "mclk";
2455			#sound-dai-cells = <1>;
2456		};
2457
2458		lpass_wsamacro: codec@6b00000 {
2459			compatible = "qcom,sm8550-lpass-wsa-macro";
2460			reg = <0 0x06b00000 0 0x1000>;
2461			clocks = <&q6prmcc LPASS_CLK_ID_WSA_CORE_TX_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2462				 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2463				 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2464				 <&lpass_vamacro>;
2465			clock-names = "mclk", "macro", "dcodec", "fsgen";
2466
2467			#clock-cells = <0>;
2468			clock-output-names = "mclk";
2469			#sound-dai-cells = <1>;
2470		};
2471
2472		swr0: soundwire@6b10000 {
2473			compatible = "qcom,soundwire-v2.0.0";
2474			reg = <0 0x06b10000 0 0x10000>;
2475			interrupts = <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>;
2476			clocks = <&lpass_wsamacro>;
2477			clock-names = "iface";
2478			label = "WSA";
2479
2480			pinctrl-0 = <&wsa_swr_active>;
2481			pinctrl-names = "default";
2482
2483			qcom,din-ports = <4>;
2484			qcom,dout-ports = <9>;
2485
2486			qcom,ports-sinterval =		/bits/ 16 <0x07 0x1f 0x3f 0x07 0x1f 0x3f 0x18f 0xff 0xff 0x0f 0x0f 0xff 0x31f>;
2487			qcom,ports-offset1 =		/bits/ 8 <0x01 0x03 0x05 0x02 0x04 0x15 0x00 0xff 0xff 0x06 0x0d 0xff 0x00>;
2488			qcom,ports-offset2 =		/bits/ 8 <0xff 0x07 0x1f 0xff 0x07 0x1f 0xff 0xff 0xff 0xff 0xff 0xff 0xff>;
2489			qcom,ports-hstart =		/bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0x08 0xff 0xff 0xff 0xff 0xff 0x0f>;
2490			qcom,ports-hstop =		/bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0x08 0xff 0xff 0xff 0xff 0xff 0x0f>;
2491			qcom,ports-word-length =	/bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0x08 0xff 0xff 0xff 0xff 0xff 0x18>;
2492			qcom,ports-block-pack-mode =	/bits/ 8 <0x00 0x01 0x01 0x00 0x01 0x01 0x00 0x00 0x00 0x01 0x01 0x00 0x00>;
2493			qcom,ports-block-group-count =	/bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff>;
2494			qcom,ports-lane-control =	/bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff>;
2495
2496			#address-cells = <2>;
2497			#size-cells = <0>;
2498			#sound-dai-cells = <1>;
2499			status = "disabled";
2500		};
2501
2502		swr2: soundwire@6d30000 {
2503			compatible = "qcom,soundwire-v2.0.0";
2504			reg = <0 0x06d30000 0 0x10000>;
2505			interrupts = <GIC_SPI 496 IRQ_TYPE_LEVEL_HIGH>,
2506				     <GIC_SPI 520 IRQ_TYPE_LEVEL_HIGH>;
2507			interrupt-names = "core", "wakeup";
2508			clocks = <&lpass_txmacro>;
2509			clock-names = "iface";
2510			label = "TX";
2511
2512			pinctrl-0 = <&tx_swr_active>;
2513			pinctrl-names = "default";
2514
2515			qcom,din-ports = <4>;
2516			qcom,dout-ports = <0>;
2517			qcom,ports-sinterval-low =	/bits/ 8 <0x01 0x01 0x03 0x03>;
2518			qcom,ports-offset1 =		/bits/ 8 <0x00 0x00 0x01 0x01>;
2519			qcom,ports-offset2 =		/bits/ 8 <0x00 0x00 0x00 0x00>;
2520			qcom,ports-hstart =		/bits/ 8 <0xff 0xff 0xff 0xff>;
2521			qcom,ports-hstop =		/bits/ 8 <0xff 0xff 0xff 0xff>;
2522			qcom,ports-word-length =	/bits/ 8 <0xff 0xff 0xff 0xff>;
2523			qcom,ports-block-pack-mode =	/bits/ 8 <0xff 0xff 0xff 0xff>;
2524			qcom,ports-block-group-count =	/bits/ 8 <0xff 0xff 0xff 0xff>;
2525			qcom,ports-lane-control =	/bits/ 8 <0x01 0x02 0x00 0x00>;
2526
2527			#address-cells = <2>;
2528			#size-cells = <0>;
2529			#sound-dai-cells = <1>;
2530			status = "disabled";
2531		};
2532
2533		lpass_vamacro: codec@6d44000 {
2534			compatible = "qcom,sm8550-lpass-va-macro";
2535			reg = <0 0x06d44000 0 0x1000>;
2536			clocks = <&q6prmcc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2537				 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2538				 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>;
2539			clock-names = "mclk", "macro", "dcodec";
2540
2541			#clock-cells = <0>;
2542			clock-output-names = "fsgen";
2543			#sound-dai-cells = <1>;
2544		};
2545
2546		lpass_tlmm: pinctrl@6e80000 {
2547			compatible = "qcom,sm8550-lpass-lpi-pinctrl";
2548			reg = <0 0x06e80000 0 0x20000>,
2549			      <0 0x07250000 0 0x10000>;
2550			gpio-controller;
2551			#gpio-cells = <2>;
2552			gpio-ranges = <&lpass_tlmm 0 0 23>;
2553
2554			clocks = <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2555				 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>;
2556			clock-names = "core", "audio";
2557
2558			tx_swr_active: tx-swr-active-state {
2559				clk-pins {
2560					pins = "gpio0";
2561					function = "swr_tx_clk";
2562					drive-strength = <2>;
2563					slew-rate = <1>;
2564					bias-disable;
2565				};
2566
2567				data-pins {
2568					pins = "gpio1", "gpio2", "gpio14";
2569					function = "swr_tx_data";
2570					drive-strength = <2>;
2571					slew-rate = <1>;
2572					bias-bus-hold;
2573				};
2574			};
2575
2576			rx_swr_active: rx-swr-active-state {
2577				clk-pins {
2578					pins = "gpio3";
2579					function = "swr_rx_clk";
2580					drive-strength = <2>;
2581					slew-rate = <1>;
2582					bias-disable;
2583				};
2584
2585				data-pins {
2586					pins = "gpio4", "gpio5";
2587					function = "swr_rx_data";
2588					drive-strength = <2>;
2589					slew-rate = <1>;
2590					bias-bus-hold;
2591				};
2592			};
2593
2594			dmic01_default: dmic01-default-state {
2595				clk-pins {
2596					pins = "gpio6";
2597					function = "dmic1_clk";
2598					drive-strength = <8>;
2599					output-high;
2600				};
2601
2602				data-pins {
2603					pins = "gpio7";
2604					function = "dmic1_data";
2605					drive-strength = <8>;
2606					input-enable;
2607				};
2608			};
2609
2610			dmic23_default: dmic23-default-state {
2611				clk-pins {
2612					pins = "gpio8";
2613					function = "dmic2_clk";
2614					drive-strength = <8>;
2615					output-high;
2616				};
2617
2618				data-pins {
2619					pins = "gpio9";
2620					function = "dmic2_data";
2621					drive-strength = <8>;
2622					input-enable;
2623				};
2624			};
2625
2626			wsa_swr_active: wsa-swr-active-state {
2627				clk-pins {
2628					pins = "gpio10";
2629					function = "wsa_swr_clk";
2630					drive-strength = <2>;
2631					slew-rate = <1>;
2632					bias-disable;
2633				};
2634
2635				data-pins {
2636					pins = "gpio11";
2637					function = "wsa_swr_data";
2638					drive-strength = <2>;
2639					slew-rate = <1>;
2640					bias-bus-hold;
2641				};
2642			};
2643
2644			wsa2_swr_active: wsa2-swr-active-state {
2645				clk-pins {
2646					pins = "gpio15";
2647					function = "wsa2_swr_clk";
2648					drive-strength = <2>;
2649					slew-rate = <1>;
2650					bias-disable;
2651				};
2652
2653				data-pins {
2654					pins = "gpio16";
2655					function = "wsa2_swr_data";
2656					drive-strength = <2>;
2657					slew-rate = <1>;
2658					bias-bus-hold;
2659				};
2660			};
2661		};
2662
2663		lpass_lpiaon_noc: interconnect@7400000 {
2664			compatible = "qcom,sm8550-lpass-lpiaon-noc";
2665			reg = <0 0x07400000 0 0x19080>;
2666			#interconnect-cells = <2>;
2667			qcom,bcm-voters = <&apps_bcm_voter>;
2668		};
2669
2670		lpass_lpicx_noc: interconnect@7430000 {
2671			compatible = "qcom,sm8550-lpass-lpicx-noc";
2672			reg = <0 0x07430000 0 0x3a200>;
2673			#interconnect-cells = <2>;
2674			qcom,bcm-voters = <&apps_bcm_voter>;
2675		};
2676
2677		lpass_ag_noc: interconnect@7e40000 {
2678			compatible = "qcom,sm8550-lpass-ag-noc";
2679			reg = <0 0x07e40000 0 0xe080>;
2680			#interconnect-cells = <2>;
2681			qcom,bcm-voters = <&apps_bcm_voter>;
2682		};
2683
2684		sdhc_2: mmc@8804000 {
2685			compatible = "qcom,sm8550-sdhci", "qcom,sdhci-msm-v5";
2686			reg = <0 0x08804000 0 0x1000>;
2687
2688			interrupts = <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>,
2689				     <GIC_SPI 223 IRQ_TYPE_LEVEL_HIGH>;
2690			interrupt-names = "hc_irq", "pwr_irq";
2691
2692			clocks = <&gcc GCC_SDCC2_AHB_CLK>,
2693				 <&gcc GCC_SDCC2_APPS_CLK>,
2694				 <&rpmhcc RPMH_CXO_CLK>;
2695			clock-names = "iface", "core", "xo";
2696			iommus = <&apps_smmu 0x540 0>;
2697			qcom,dll-config = <0x0007642c>;
2698			qcom,ddr-config = <0x80040868>;
2699			power-domains = <&rpmhpd RPMHPD_CX>;
2700			operating-points-v2 = <&sdhc2_opp_table>;
2701
2702			interconnects = <&aggre2_noc MASTER_SDCC_2 0 &mc_virt SLAVE_EBI1 0>,
2703					<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_SDCC_2 0>;
2704			interconnect-names = "sdhc-ddr", "cpu-sdhc";
2705			bus-width = <4>;
2706			dma-coherent;
2707
2708			/* Forbid SDR104/SDR50 - broken hw! */
2709			sdhci-caps-mask = <0x3 0>;
2710
2711			status = "disabled";
2712
2713			sdhc2_opp_table: opp-table {
2714				compatible = "operating-points-v2";
2715
2716				opp-19200000 {
2717					opp-hz = /bits/ 64 <19200000>;
2718					required-opps = <&rpmhpd_opp_min_svs>;
2719				};
2720
2721				opp-50000000 {
2722					opp-hz = /bits/ 64 <50000000>;
2723					required-opps = <&rpmhpd_opp_low_svs>;
2724				};
2725
2726				opp-100000000 {
2727					opp-hz = /bits/ 64 <100000000>;
2728					required-opps = <&rpmhpd_opp_svs>;
2729				};
2730
2731				opp-202000000 {
2732					opp-hz = /bits/ 64 <202000000>;
2733					required-opps = <&rpmhpd_opp_svs_l1>;
2734				};
2735			};
2736		};
2737
2738		videocc: clock-controller@aaf0000 {
2739			compatible = "qcom,sm8550-videocc";
2740			reg = <0 0x0aaf0000 0 0x10000>;
2741			clocks = <&bi_tcxo_div2>,
2742				 <&gcc GCC_VIDEO_AHB_CLK>;
2743			power-domains = <&rpmhpd RPMHPD_MMCX>;
2744			required-opps = <&rpmhpd_opp_low_svs>;
2745			#clock-cells = <1>;
2746			#reset-cells = <1>;
2747			#power-domain-cells = <1>;
2748		};
2749
2750		cci0: cci@ac15000 {
2751			compatible = "qcom,sm8550-cci", "qcom,msm8996-cci";
2752			reg = <0 0x0ac15000 0 0x1000>;
2753			interrupts = <GIC_SPI 426 IRQ_TYPE_EDGE_RISING>;
2754			power-domains = <&camcc CAM_CC_TITAN_TOP_GDSC>;
2755			clocks = <&camcc CAM_CC_CAMNOC_AXI_CLK>,
2756				 <&camcc CAM_CC_CPAS_AHB_CLK>,
2757				 <&camcc CAM_CC_CCI_0_CLK>;
2758			clock-names = "camnoc_axi",
2759				      "cpas_ahb",
2760				      "cci";
2761			pinctrl-0 = <&cci0_0_default &cci0_1_default>;
2762			pinctrl-1 = <&cci0_0_sleep &cci0_1_sleep>;
2763			pinctrl-names = "default", "sleep";
2764			status = "disabled";
2765			#address-cells = <1>;
2766			#size-cells = <0>;
2767
2768			cci0_i2c0: i2c-bus@0 {
2769				reg = <0>;
2770				clock-frequency = <1000000>;
2771				#address-cells = <1>;
2772				#size-cells = <0>;
2773			};
2774
2775			cci0_i2c1: i2c-bus@1 {
2776				reg = <1>;
2777				clock-frequency = <1000000>;
2778				#address-cells = <1>;
2779				#size-cells = <0>;
2780			};
2781		};
2782
2783		cci1: cci@ac16000 {
2784			compatible = "qcom,sm8550-cci", "qcom,msm8996-cci";
2785			reg = <0 0x0ac16000 0 0x1000>;
2786			interrupts = <GIC_SPI 427 IRQ_TYPE_EDGE_RISING>;
2787			power-domains = <&camcc CAM_CC_TITAN_TOP_GDSC>;
2788			clocks = <&camcc CAM_CC_CAMNOC_AXI_CLK>,
2789				 <&camcc CAM_CC_CPAS_AHB_CLK>,
2790				 <&camcc CAM_CC_CCI_1_CLK>;
2791			clock-names = "camnoc_axi",
2792				      "cpas_ahb",
2793				      "cci";
2794			pinctrl-0 = <&cci1_0_default>;
2795			pinctrl-1 = <&cci1_0_sleep>;
2796			pinctrl-names = "default", "sleep";
2797			status = "disabled";
2798			#address-cells = <1>;
2799			#size-cells = <0>;
2800
2801			cci1_i2c0: i2c-bus@0 {
2802				reg = <0>;
2803				clock-frequency = <1000000>;
2804				#address-cells = <1>;
2805				#size-cells = <0>;
2806			};
2807		};
2808
2809		cci2: cci@ac17000 {
2810			compatible = "qcom,sm8550-cci", "qcom,msm8996-cci";
2811			reg = <0 0x0ac17000 0 0x1000>;
2812			interrupts = <GIC_SPI 428 IRQ_TYPE_EDGE_RISING>;
2813			power-domains = <&camcc CAM_CC_TITAN_TOP_GDSC>;
2814			clocks = <&camcc CAM_CC_CAMNOC_AXI_CLK>,
2815				 <&camcc CAM_CC_CPAS_AHB_CLK>,
2816				 <&camcc CAM_CC_CCI_2_CLK>;
2817			clock-names = "camnoc_axi",
2818				      "cpas_ahb",
2819				      "cci";
2820			pinctrl-0 = <&cci2_0_default &cci2_1_default>;
2821			pinctrl-1 = <&cci2_0_sleep &cci2_1_sleep>;
2822			pinctrl-names = "default", "sleep";
2823			status = "disabled";
2824			#address-cells = <1>;
2825			#size-cells = <0>;
2826
2827			cci2_i2c0: i2c-bus@0 {
2828				reg = <0>;
2829				clock-frequency = <1000000>;
2830				#address-cells = <1>;
2831				#size-cells = <0>;
2832			};
2833
2834			cci2_i2c1: i2c-bus@1 {
2835				reg = <1>;
2836				clock-frequency = <1000000>;
2837				#address-cells = <1>;
2838				#size-cells = <0>;
2839			};
2840		};
2841
2842		camcc: clock-controller@ade0000 {
2843			compatible = "qcom,sm8550-camcc";
2844			reg = <0 0x0ade0000 0 0x20000>;
2845			clocks = <&gcc GCC_CAMERA_AHB_CLK>,
2846				 <&bi_tcxo_div2>,
2847				 <&bi_tcxo_ao_div2>,
2848				 <&sleep_clk>;
2849			power-domains = <&rpmhpd SM8550_MMCX>;
2850			required-opps = <&rpmhpd_opp_low_svs>;
2851			#clock-cells = <1>;
2852			#reset-cells = <1>;
2853			#power-domain-cells = <1>;
2854		};
2855
2856		mdss: display-subsystem@ae00000 {
2857			compatible = "qcom,sm8550-mdss";
2858			reg = <0 0x0ae00000 0 0x1000>;
2859			reg-names = "mdss";
2860
2861			interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
2862			interrupt-controller;
2863			#interrupt-cells = <1>;
2864
2865			clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
2866				 <&gcc GCC_DISP_AHB_CLK>,
2867				 <&gcc GCC_DISP_HF_AXI_CLK>,
2868				 <&dispcc DISP_CC_MDSS_MDP_CLK>;
2869
2870			resets = <&dispcc DISP_CC_MDSS_CORE_BCR>;
2871
2872			power-domains = <&dispcc MDSS_GDSC>;
2873
2874			interconnects = <&mmss_noc MASTER_MDP 0 &gem_noc SLAVE_LLCC 0>,
2875					<&mc_virt MASTER_LLCC 0 &mc_virt SLAVE_EBI1 0>;
2876			interconnect-names = "mdp0-mem", "mdp1-mem";
2877
2878			iommus = <&apps_smmu 0x1c00 0x2>;
2879
2880			#address-cells = <2>;
2881			#size-cells = <2>;
2882			ranges;
2883
2884			status = "disabled";
2885
2886			mdss_mdp: display-controller@ae01000 {
2887				compatible = "qcom,sm8550-dpu";
2888				reg = <0 0x0ae01000 0 0x8f000>,
2889				      <0 0x0aeb0000 0 0x2008>;
2890				reg-names = "mdp", "vbif";
2891
2892				interrupt-parent = <&mdss>;
2893				interrupts = <0>;
2894
2895				clocks = <&gcc GCC_DISP_AHB_CLK>,
2896					 <&gcc GCC_DISP_HF_AXI_CLK>,
2897					 <&dispcc DISP_CC_MDSS_AHB_CLK>,
2898					 <&dispcc DISP_CC_MDSS_MDP_LUT_CLK>,
2899					 <&dispcc DISP_CC_MDSS_MDP_CLK>,
2900					 <&dispcc DISP_CC_MDSS_VSYNC_CLK>;
2901				clock-names = "bus",
2902					      "nrt_bus",
2903					      "iface",
2904					      "lut",
2905					      "core",
2906					      "vsync";
2907
2908				power-domains = <&rpmhpd RPMHPD_MMCX>;
2909
2910				assigned-clocks = <&dispcc DISP_CC_MDSS_VSYNC_CLK>;
2911				assigned-clock-rates = <19200000>;
2912
2913				operating-points-v2 = <&mdp_opp_table>;
2914
2915				ports {
2916					#address-cells = <1>;
2917					#size-cells = <0>;
2918
2919					port@0 {
2920						reg = <0>;
2921						dpu_intf1_out: endpoint {
2922							remote-endpoint = <&mdss_dsi0_in>;
2923						};
2924					};
2925
2926					port@1 {
2927						reg = <1>;
2928						dpu_intf2_out: endpoint {
2929							remote-endpoint = <&mdss_dsi1_in>;
2930						};
2931					};
2932
2933					port@2 {
2934						reg = <2>;
2935						dpu_intf0_out: endpoint {
2936							remote-endpoint = <&mdss_dp0_in>;
2937						};
2938					};
2939				};
2940
2941				mdp_opp_table: opp-table {
2942					compatible = "operating-points-v2";
2943
2944					opp-200000000 {
2945						opp-hz = /bits/ 64 <200000000>;
2946						required-opps = <&rpmhpd_opp_low_svs>;
2947					};
2948
2949					opp-325000000 {
2950						opp-hz = /bits/ 64 <325000000>;
2951						required-opps = <&rpmhpd_opp_svs>;
2952					};
2953
2954					opp-375000000 {
2955						opp-hz = /bits/ 64 <375000000>;
2956						required-opps = <&rpmhpd_opp_svs_l1>;
2957					};
2958
2959					opp-514000000 {
2960						opp-hz = /bits/ 64 <514000000>;
2961						required-opps = <&rpmhpd_opp_nom>;
2962					};
2963				};
2964			};
2965
2966			mdss_dp0: displayport-controller@ae90000 {
2967				compatible = "qcom,sm8550-dp", "qcom,sm8350-dp";
2968				reg = <0 0xae90000 0 0x200>,
2969				      <0 0xae90200 0 0x200>,
2970				      <0 0xae90400 0 0xc00>,
2971				      <0 0xae91000 0 0x400>,
2972				      <0 0xae91400 0 0x400>;
2973				interrupt-parent = <&mdss>;
2974				interrupts = <12>;
2975				clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
2976					 <&dispcc DISP_CC_MDSS_DPTX0_AUX_CLK>,
2977					 <&dispcc DISP_CC_MDSS_DPTX0_LINK_CLK>,
2978					 <&dispcc DISP_CC_MDSS_DPTX0_LINK_INTF_CLK>,
2979					 <&dispcc DISP_CC_MDSS_DPTX0_PIXEL0_CLK>;
2980				clock-names = "core_iface",
2981					      "core_aux",
2982					      "ctrl_link",
2983					      "ctrl_link_iface",
2984					      "stream_pixel";
2985
2986				assigned-clocks = <&dispcc DISP_CC_MDSS_DPTX0_LINK_CLK_SRC>,
2987						  <&dispcc DISP_CC_MDSS_DPTX0_PIXEL0_CLK_SRC>;
2988				assigned-clock-parents = <&usb_dp_qmpphy QMP_USB43DP_DP_LINK_CLK>,
2989							 <&usb_dp_qmpphy QMP_USB43DP_DP_VCO_DIV_CLK>;
2990
2991				phys = <&usb_dp_qmpphy QMP_USB43DP_DP_PHY>;
2992				phy-names = "dp";
2993
2994				#sound-dai-cells = <0>;
2995
2996				operating-points-v2 = <&dp_opp_table>;
2997				power-domains = <&rpmhpd RPMHPD_MMCX>;
2998
2999				status = "disabled";
3000
3001				ports {
3002					#address-cells = <1>;
3003					#size-cells = <0>;
3004
3005					port@0 {
3006						reg = <0>;
3007						mdss_dp0_in: endpoint {
3008							remote-endpoint = <&dpu_intf0_out>;
3009						};
3010					};
3011
3012					port@1 {
3013						reg = <1>;
3014						mdss_dp0_out: endpoint {
3015							remote-endpoint = <&usb_dp_qmpphy_dp_in>;
3016						};
3017					};
3018				};
3019
3020				dp_opp_table: opp-table {
3021					compatible = "operating-points-v2";
3022
3023					opp-162000000 {
3024						opp-hz = /bits/ 64 <162000000>;
3025						required-opps = <&rpmhpd_opp_low_svs_d1>;
3026					};
3027
3028					opp-270000000 {
3029						opp-hz = /bits/ 64 <270000000>;
3030						required-opps = <&rpmhpd_opp_low_svs>;
3031					};
3032
3033					opp-540000000 {
3034						opp-hz = /bits/ 64 <540000000>;
3035						required-opps = <&rpmhpd_opp_svs_l1>;
3036					};
3037
3038					opp-810000000 {
3039						opp-hz = /bits/ 64 <810000000>;
3040						required-opps = <&rpmhpd_opp_nom>;
3041					};
3042				};
3043			};
3044
3045			mdss_dsi0: dsi@ae94000 {
3046				compatible = "qcom,sm8550-dsi-ctrl", "qcom,mdss-dsi-ctrl";
3047				reg = <0 0x0ae94000 0 0x400>;
3048				reg-names = "dsi_ctrl";
3049
3050				interrupt-parent = <&mdss>;
3051				interrupts = <4>;
3052
3053				clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK>,
3054					 <&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>,
3055					 <&dispcc DISP_CC_MDSS_PCLK0_CLK>,
3056					 <&dispcc DISP_CC_MDSS_ESC0_CLK>,
3057					 <&dispcc DISP_CC_MDSS_AHB_CLK>,
3058					 <&gcc GCC_DISP_HF_AXI_CLK>;
3059				clock-names = "byte",
3060					      "byte_intf",
3061					      "pixel",
3062					      "core",
3063					      "iface",
3064					      "bus";
3065
3066				power-domains = <&rpmhpd RPMHPD_MMCX>;
3067
3068				assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK_SRC>,
3069						  <&dispcc DISP_CC_MDSS_PCLK0_CLK_SRC>;
3070				assigned-clock-parents = <&mdss_dsi0_phy 0>,
3071							 <&mdss_dsi0_phy 1>;
3072
3073				operating-points-v2 = <&mdss_dsi_opp_table>;
3074
3075				phys = <&mdss_dsi0_phy>;
3076				phy-names = "dsi";
3077
3078				#address-cells = <1>;
3079				#size-cells = <0>;
3080
3081				status = "disabled";
3082
3083				ports {
3084					#address-cells = <1>;
3085					#size-cells = <0>;
3086
3087					port@0 {
3088						reg = <0>;
3089						mdss_dsi0_in: endpoint {
3090							remote-endpoint = <&dpu_intf1_out>;
3091						};
3092					};
3093
3094					port@1 {
3095						reg = <1>;
3096						mdss_dsi0_out: endpoint {
3097						};
3098					};
3099				};
3100
3101				mdss_dsi_opp_table: opp-table {
3102					compatible = "operating-points-v2";
3103
3104					opp-187500000 {
3105						opp-hz = /bits/ 64 <187500000>;
3106						required-opps = <&rpmhpd_opp_low_svs>;
3107					};
3108
3109					opp-300000000 {
3110						opp-hz = /bits/ 64 <300000000>;
3111						required-opps = <&rpmhpd_opp_svs>;
3112					};
3113
3114					opp-358000000 {
3115						opp-hz = /bits/ 64 <358000000>;
3116						required-opps = <&rpmhpd_opp_svs_l1>;
3117					};
3118				};
3119			};
3120
3121			mdss_dsi0_phy: phy@ae95000 {
3122				compatible = "qcom,sm8550-dsi-phy-4nm";
3123				reg = <0 0x0ae95000 0 0x200>,
3124				      <0 0x0ae95200 0 0x280>,
3125				      <0 0x0ae95500 0 0x400>;
3126				reg-names = "dsi_phy",
3127					    "dsi_phy_lane",
3128					    "dsi_pll";
3129
3130				clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
3131					 <&rpmhcc RPMH_CXO_CLK>;
3132				clock-names = "iface", "ref";
3133
3134				#clock-cells = <1>;
3135				#phy-cells = <0>;
3136
3137				status = "disabled";
3138			};
3139
3140			mdss_dsi1: dsi@ae96000 {
3141				compatible = "qcom,sm8550-dsi-ctrl", "qcom,mdss-dsi-ctrl";
3142				reg = <0 0x0ae96000 0 0x400>;
3143				reg-names = "dsi_ctrl";
3144
3145				interrupt-parent = <&mdss>;
3146				interrupts = <5>;
3147
3148				clocks = <&dispcc DISP_CC_MDSS_BYTE1_CLK>,
3149					 <&dispcc DISP_CC_MDSS_BYTE1_INTF_CLK>,
3150					 <&dispcc DISP_CC_MDSS_PCLK1_CLK>,
3151					 <&dispcc DISP_CC_MDSS_ESC1_CLK>,
3152					 <&dispcc DISP_CC_MDSS_AHB_CLK>,
3153					 <&gcc GCC_DISP_HF_AXI_CLK>;
3154				clock-names = "byte",
3155					      "byte_intf",
3156					      "pixel",
3157					      "core",
3158					      "iface",
3159					      "bus";
3160
3161				power-domains = <&rpmhpd RPMHPD_MMCX>;
3162
3163				assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE1_CLK_SRC>,
3164						  <&dispcc DISP_CC_MDSS_PCLK1_CLK_SRC>;
3165				assigned-clock-parents = <&mdss_dsi1_phy 0>,
3166							 <&mdss_dsi1_phy 1>;
3167
3168				operating-points-v2 = <&mdss_dsi_opp_table>;
3169
3170				phys = <&mdss_dsi1_phy>;
3171				phy-names = "dsi";
3172
3173				#address-cells = <1>;
3174				#size-cells = <0>;
3175
3176				status = "disabled";
3177
3178				ports {
3179					#address-cells = <1>;
3180					#size-cells = <0>;
3181
3182					port@0 {
3183						reg = <0>;
3184						mdss_dsi1_in: endpoint {
3185							remote-endpoint = <&dpu_intf2_out>;
3186						};
3187					};
3188
3189					port@1 {
3190						reg = <1>;
3191						mdss_dsi1_out: endpoint {
3192						};
3193					};
3194				};
3195			};
3196
3197			mdss_dsi1_phy: phy@ae97000 {
3198				compatible = "qcom,sm8550-dsi-phy-4nm";
3199				reg = <0 0x0ae97000 0 0x200>,
3200				      <0 0x0ae97200 0 0x280>,
3201				      <0 0x0ae97500 0 0x400>;
3202				reg-names = "dsi_phy",
3203					    "dsi_phy_lane",
3204					    "dsi_pll";
3205
3206				clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
3207					 <&rpmhcc RPMH_CXO_CLK>;
3208				clock-names = "iface", "ref";
3209
3210				#clock-cells = <1>;
3211				#phy-cells = <0>;
3212
3213				status = "disabled";
3214			};
3215		};
3216
3217		dispcc: clock-controller@af00000 {
3218			compatible = "qcom,sm8550-dispcc";
3219			reg = <0 0x0af00000 0 0x20000>;
3220			clocks = <&bi_tcxo_div2>,
3221				 <&bi_tcxo_ao_div2>,
3222				 <&gcc GCC_DISP_AHB_CLK>,
3223				 <&sleep_clk>,
3224				 <&mdss_dsi0_phy 0>,
3225				 <&mdss_dsi0_phy 1>,
3226				 <&mdss_dsi1_phy 0>,
3227				 <&mdss_dsi1_phy 1>,
3228				 <&usb_dp_qmpphy QMP_USB43DP_DP_LINK_CLK>,
3229				 <&usb_dp_qmpphy QMP_USB43DP_DP_VCO_DIV_CLK>,
3230				 <0>, /* dp1 */
3231				 <0>,
3232				 <0>, /* dp2 */
3233				 <0>,
3234				 <0>, /* dp3 */
3235				 <0>;
3236			power-domains = <&rpmhpd RPMHPD_MMCX>;
3237			required-opps = <&rpmhpd_opp_low_svs>;
3238			#clock-cells = <1>;
3239			#reset-cells = <1>;
3240			#power-domain-cells = <1>;
3241		};
3242
3243		usb_1_hsphy: phy@88e3000 {
3244			compatible = "qcom,sm8550-snps-eusb2-phy";
3245			reg = <0x0 0x088e3000 0x0 0x154>;
3246			#phy-cells = <0>;
3247
3248			clocks = <&tcsr TCSR_USB2_CLKREF_EN>;
3249			clock-names = "ref";
3250
3251			resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>;
3252
3253			status = "disabled";
3254		};
3255
3256		usb_dp_qmpphy: phy@88e8000 {
3257			compatible = "qcom,sm8550-qmp-usb3-dp-phy";
3258			reg = <0x0 0x088e8000 0x0 0x3000>;
3259
3260			clocks = <&gcc GCC_USB3_PRIM_PHY_AUX_CLK>,
3261				 <&rpmhcc RPMH_CXO_CLK>,
3262				 <&gcc GCC_USB3_PRIM_PHY_COM_AUX_CLK>,
3263				 <&gcc GCC_USB3_PRIM_PHY_PIPE_CLK>;
3264			clock-names = "aux", "ref", "com_aux", "usb3_pipe";
3265
3266			power-domains = <&gcc USB3_PHY_GDSC>;
3267
3268			resets = <&gcc GCC_USB3_PHY_PRIM_BCR>,
3269				 <&gcc GCC_USB3_DP_PHY_PRIM_BCR>;
3270			reset-names = "phy", "common";
3271
3272			#clock-cells = <1>;
3273			#phy-cells = <1>;
3274
3275			orientation-switch;
3276
3277			status = "disabled";
3278
3279			ports {
3280				#address-cells = <1>;
3281				#size-cells = <0>;
3282
3283				port@0 {
3284					reg = <0>;
3285
3286					usb_dp_qmpphy_out: endpoint {
3287					};
3288				};
3289
3290				port@1 {
3291					reg = <1>;
3292
3293					usb_dp_qmpphy_usb_ss_in: endpoint {
3294						remote-endpoint = <&usb_1_dwc3_ss>;
3295					};
3296				};
3297
3298				port@2 {
3299					reg = <2>;
3300
3301					usb_dp_qmpphy_dp_in: endpoint {
3302						remote-endpoint = <&mdss_dp0_out>;
3303					};
3304				};
3305			};
3306		};
3307
3308		usb_1: usb@a6f8800 {
3309			compatible = "qcom,sm8550-dwc3", "qcom,dwc3";
3310			reg = <0x0 0x0a6f8800 0x0 0x400>;
3311			#address-cells = <2>;
3312			#size-cells = <2>;
3313			ranges;
3314
3315			clocks = <&gcc GCC_CFG_NOC_USB3_PRIM_AXI_CLK>,
3316				 <&gcc GCC_USB30_PRIM_MASTER_CLK>,
3317				 <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>,
3318				 <&gcc GCC_USB30_PRIM_SLEEP_CLK>,
3319				 <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>,
3320				 <&tcsr TCSR_USB3_CLKREF_EN>;
3321			clock-names = "cfg_noc",
3322				      "core",
3323				      "iface",
3324				      "sleep",
3325				      "mock_utmi",
3326				      "xo";
3327
3328			assigned-clocks = <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>,
3329					  <&gcc GCC_USB30_PRIM_MASTER_CLK>;
3330			assigned-clock-rates = <19200000>, <200000000>;
3331
3332			interrupts-extended = <&intc GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>,
3333					      <&intc GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
3334					      <&pdc 14 IRQ_TYPE_EDGE_BOTH>,
3335					      <&pdc 15 IRQ_TYPE_EDGE_BOTH>,
3336					      <&pdc 17 IRQ_TYPE_LEVEL_HIGH>;
3337			interrupt-names = "pwr_event",
3338					  "hs_phy_irq",
3339					  "dp_hs_phy_irq",
3340					  "dm_hs_phy_irq",
3341					  "ss_phy_irq";
3342
3343			power-domains = <&gcc USB30_PRIM_GDSC>;
3344			required-opps = <&rpmhpd_opp_nom>;
3345
3346			resets = <&gcc GCC_USB30_PRIM_BCR>;
3347
3348			interconnects = <&aggre1_noc MASTER_USB3_0 0 &mc_virt SLAVE_EBI1 0>,
3349					<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_USB3_0 0>;
3350			interconnect-names = "usb-ddr", "apps-usb";
3351
3352			status = "disabled";
3353
3354			usb_1_dwc3: usb@a600000 {
3355				compatible = "snps,dwc3";
3356				reg = <0x0 0x0a600000 0x0 0xcd00>;
3357				interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>;
3358				iommus = <&apps_smmu 0x40 0x0>;
3359				phys = <&usb_1_hsphy>,
3360				       <&usb_dp_qmpphy QMP_USB43DP_USB3_PHY>;
3361				phy-names = "usb2-phy", "usb3-phy";
3362				snps,hird-threshold = /bits/ 8 <0x0>;
3363				snps,usb2-gadget-lpm-disable;
3364				snps,dis_u2_susphy_quirk;
3365				snps,dis_enblslpm_quirk;
3366				snps,dis-u1-entry-quirk;
3367				snps,dis-u2-entry-quirk;
3368				snps,is-utmi-l1-suspend;
3369				snps,usb3_lpm_capable;
3370				snps,usb2-lpm-disable;
3371				snps,has-lpm-erratum;
3372				tx-fifo-resize;
3373				dma-coherent;
3374				usb-role-switch;
3375
3376				ports {
3377					#address-cells = <1>;
3378					#size-cells = <0>;
3379
3380					port@0 {
3381						reg = <0>;
3382
3383						usb_1_dwc3_hs: endpoint {
3384						};
3385					};
3386
3387					port@1 {
3388						reg = <1>;
3389
3390						usb_1_dwc3_ss: endpoint {
3391							remote-endpoint = <&usb_dp_qmpphy_usb_ss_in>;
3392						};
3393					};
3394				};
3395			};
3396		};
3397
3398		pdc: interrupt-controller@b220000 {
3399			compatible = "qcom,sm8550-pdc", "qcom,pdc";
3400			reg = <0 0x0b220000 0 0x30000>, <0 0x174000f0 0 0x64>;
3401			qcom,pdc-ranges = <0 480 94>, <94 609 31>,
3402					  <125 63 1>, <126 716 12>,
3403					  <138 251 5>;
3404			#interrupt-cells = <2>;
3405			interrupt-parent = <&intc>;
3406			interrupt-controller;
3407		};
3408
3409		tsens0: thermal-sensor@c271000 {
3410			compatible = "qcom,sm8550-tsens", "qcom,tsens-v2";
3411			reg = <0 0x0c271000 0 0x1000>, /* TM */
3412			      <0 0x0c222000 0 0x1000>; /* SROT */
3413			#qcom,sensors = <16>;
3414			interrupts = <GIC_SPI 506 IRQ_TYPE_LEVEL_HIGH>,
3415				     <GIC_SPI 640 IRQ_TYPE_LEVEL_HIGH>;
3416			interrupt-names = "uplow", "critical";
3417			#thermal-sensor-cells = <1>;
3418		};
3419
3420		tsens1: thermal-sensor@c272000 {
3421			compatible = "qcom,sm8550-tsens", "qcom,tsens-v2";
3422			reg = <0 0x0c272000 0 0x1000>, /* TM */
3423			      <0 0x0c223000 0 0x1000>; /* SROT */
3424			#qcom,sensors = <16>;
3425			interrupts = <GIC_SPI 507 IRQ_TYPE_LEVEL_HIGH>,
3426				     <GIC_SPI 641 IRQ_TYPE_LEVEL_HIGH>;
3427			interrupt-names = "uplow", "critical";
3428			#thermal-sensor-cells = <1>;
3429		};
3430
3431		tsens2: thermal-sensor@c273000 {
3432			compatible = "qcom,sm8550-tsens", "qcom,tsens-v2";
3433			reg = <0 0x0c273000 0 0x1000>, /* TM */
3434			      <0 0x0c224000 0 0x1000>; /* SROT */
3435			#qcom,sensors = <16>;
3436			interrupts = <GIC_SPI 508 IRQ_TYPE_LEVEL_HIGH>,
3437				     <GIC_SPI 642 IRQ_TYPE_LEVEL_HIGH>;
3438			interrupt-names = "uplow", "critical";
3439			#thermal-sensor-cells = <1>;
3440		};
3441
3442		aoss_qmp: power-management@c300000 {
3443			compatible = "qcom,sm8550-aoss-qmp", "qcom,aoss-qmp";
3444			reg = <0 0x0c300000 0 0x400>;
3445			interrupt-parent = <&ipcc>;
3446			interrupts-extended = <&ipcc IPCC_CLIENT_AOP IPCC_MPROC_SIGNAL_GLINK_QMP
3447						     IRQ_TYPE_EDGE_RISING>;
3448			mboxes = <&ipcc IPCC_CLIENT_AOP IPCC_MPROC_SIGNAL_GLINK_QMP>;
3449
3450			#clock-cells = <0>;
3451		};
3452
3453		sram@c3f0000 {
3454			compatible = "qcom,rpmh-stats";
3455			reg = <0 0x0c3f0000 0 0x400>;
3456		};
3457
3458		spmi_bus: spmi@c400000 {
3459			compatible = "qcom,spmi-pmic-arb";
3460			reg = <0 0x0c400000 0 0x3000>,
3461			      <0 0x0c500000 0 0x400000>,
3462			      <0 0x0c440000 0 0x80000>,
3463			      <0 0x0c4c0000 0 0x20000>,
3464			      <0 0x0c42d000 0 0x4000>;
3465			reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
3466			interrupt-names = "periph_irq";
3467			interrupts-extended = <&pdc 1 IRQ_TYPE_LEVEL_HIGH>;
3468			qcom,ee = <0>;
3469			qcom,channel = <0>;
3470			qcom,bus-id = <0>;
3471			#address-cells = <2>;
3472			#size-cells = <0>;
3473			interrupt-controller;
3474			#interrupt-cells = <4>;
3475		};
3476
3477		tlmm: pinctrl@f100000 {
3478			compatible = "qcom,sm8550-tlmm";
3479			reg = <0 0x0f100000 0 0x300000>;
3480			interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
3481			gpio-controller;
3482			#gpio-cells = <2>;
3483			interrupt-controller;
3484			#interrupt-cells = <2>;
3485			gpio-ranges = <&tlmm 0 0 211>;
3486			wakeup-parent = <&pdc>;
3487
3488			cci0_0_default: cci0-0-default-state {
3489				sda-pins {
3490					pins = "gpio110";
3491					function = "cci_i2c_sda";
3492					drive-strength = <2>;
3493					bias-pull-up = <2200>;
3494				};
3495
3496				scl-pins {
3497					pins = "gpio111";
3498					function = "cci_i2c_scl";
3499					drive-strength = <2>;
3500					bias-pull-up = <2200>;
3501				};
3502			};
3503
3504			cci0_0_sleep: cci0-0-sleep-state {
3505				sda-pins {
3506					pins = "gpio110";
3507					function = "cci_i2c_sda";
3508					drive-strength = <2>;
3509					bias-pull-down;
3510				};
3511
3512				scl-pins {
3513					pins = "gpio111";
3514					function = "cci_i2c_scl";
3515					drive-strength = <2>;
3516					bias-pull-down;
3517				};
3518			};
3519
3520			cci0_1_default: cci0-1-default-state {
3521				sda-pins {
3522					pins = "gpio112";
3523					function = "cci_i2c_sda";
3524					drive-strength = <2>;
3525					bias-pull-up = <2200>;
3526				};
3527
3528				scl-pins {
3529					pins = "gpio113";
3530					function = "cci_i2c_scl";
3531					drive-strength = <2>;
3532					bias-pull-up = <2200>;
3533				};
3534			};
3535
3536			cci0_1_sleep: cci0-1-sleep-state {
3537				sda-pins {
3538					pins = "gpio112";
3539					function = "cci_i2c_sda";
3540					drive-strength = <2>;
3541					bias-pull-down;
3542				};
3543
3544				scl-pins {
3545					pins = "gpio113";
3546					function = "cci_i2c_scl";
3547					drive-strength = <2>;
3548					bias-pull-down;
3549				};
3550			};
3551
3552			cci1_0_default: cci1-0-default-state {
3553				sda-pins {
3554					pins = "gpio114";
3555					function = "cci_i2c_sda";
3556					drive-strength = <2>;
3557					bias-pull-up = <2200>;
3558				};
3559
3560				scl-pins {
3561					pins = "gpio115";
3562					function = "cci_i2c_scl";
3563					drive-strength = <2>;
3564					bias-pull-up = <2200>;
3565				};
3566			};
3567
3568			cci1_0_sleep: cci1-0-sleep-state {
3569				sda-pins {
3570					pins = "gpio114";
3571					function = "cci_i2c_sda";
3572					drive-strength = <2>;
3573					bias-pull-down;
3574				};
3575
3576				scl-pins {
3577					pins = "gpio115";
3578					function = "cci_i2c_scl";
3579					drive-strength = <2>;
3580					bias-pull-down;
3581				};
3582			};
3583
3584			cci2_0_default: cci2-0-default-state {
3585				sda-pins {
3586					pins = "gpio74";
3587					function = "cci_i2c_sda";
3588					drive-strength = <2>;
3589					bias-pull-up = <2200>;
3590				};
3591
3592				scl-pins {
3593					pins = "gpio75";
3594					function = "cci_i2c_scl";
3595					drive-strength = <2>;
3596					bias-pull-up = <2200>;
3597				};
3598			};
3599
3600			cci2_0_sleep: cci2-0-sleep-state {
3601				sda-pins {
3602					pins = "gpio74";
3603					function = "cci_i2c_sda";
3604					drive-strength = <2>;
3605					bias-pull-down;
3606				};
3607
3608				scl-pins {
3609					pins = "gpio75";
3610					function = "cci_i2c_scl";
3611					drive-strength = <2>;
3612					bias-pull-down;
3613				};
3614			};
3615
3616			cci2_1_default: cci2-1-default-state {
3617				sda-pins {
3618					pins = "gpio0";
3619					function = "cci_i2c_sda";
3620					drive-strength = <2>;
3621					bias-pull-up = <2200>;
3622				};
3623
3624				scl-pins {
3625					pins = "gpio1";
3626					function = "cci_i2c_scl";
3627					drive-strength = <2>;
3628					bias-pull-up = <2200>;
3629				};
3630			};
3631
3632			cci2_1_sleep: cci2-1-sleep-state {
3633				sda-pins {
3634					pins = "gpio0";
3635					function = "cci_i2c_sda";
3636					drive-strength = <2>;
3637					bias-pull-down;
3638				};
3639
3640				scl-pins {
3641					pins = "gpio1";
3642					function = "cci_i2c_scl";
3643					drive-strength = <2>;
3644					bias-pull-down;
3645				};
3646			};
3647
3648			hub_i2c0_data_clk: hub-i2c0-data-clk-state {
3649				/* SDA, SCL */
3650				pins = "gpio16", "gpio17";
3651				function = "i2chub0_se0";
3652				drive-strength = <2>;
3653				bias-pull-up;
3654			};
3655
3656			hub_i2c1_data_clk: hub-i2c1-data-clk-state {
3657				/* SDA, SCL */
3658				pins = "gpio18", "gpio19";
3659				function = "i2chub0_se1";
3660				drive-strength = <2>;
3661				bias-pull-up;
3662			};
3663
3664			hub_i2c2_data_clk: hub-i2c2-data-clk-state {
3665				/* SDA, SCL */
3666				pins = "gpio20", "gpio21";
3667				function = "i2chub0_se2";
3668				drive-strength = <2>;
3669				bias-pull-up;
3670			};
3671
3672			hub_i2c3_data_clk: hub-i2c3-data-clk-state {
3673				/* SDA, SCL */
3674				pins = "gpio22", "gpio23";
3675				function = "i2chub0_se3";
3676				drive-strength = <2>;
3677				bias-pull-up;
3678			};
3679
3680			hub_i2c4_data_clk: hub-i2c4-data-clk-state {
3681				/* SDA, SCL */
3682				pins = "gpio4", "gpio5";
3683				function = "i2chub0_se4";
3684				drive-strength = <2>;
3685				bias-pull-up;
3686			};
3687
3688			hub_i2c5_data_clk: hub-i2c5-data-clk-state {
3689				/* SDA, SCL */
3690				pins = "gpio6", "gpio7";
3691				function = "i2chub0_se5";
3692				drive-strength = <2>;
3693				bias-pull-up;
3694			};
3695
3696			hub_i2c6_data_clk: hub-i2c6-data-clk-state {
3697				/* SDA, SCL */
3698				pins = "gpio8", "gpio9";
3699				function = "i2chub0_se6";
3700				drive-strength = <2>;
3701				bias-pull-up;
3702			};
3703
3704			hub_i2c7_data_clk: hub-i2c7-data-clk-state {
3705				/* SDA, SCL */
3706				pins = "gpio10", "gpio11";
3707				function = "i2chub0_se7";
3708				drive-strength = <2>;
3709				bias-pull-up;
3710			};
3711
3712			hub_i2c8_data_clk: hub-i2c8-data-clk-state {
3713				/* SDA, SCL */
3714				pins = "gpio206", "gpio207";
3715				function = "i2chub0_se8";
3716				drive-strength = <2>;
3717				bias-pull-up;
3718			};
3719
3720			hub_i2c9_data_clk: hub-i2c9-data-clk-state {
3721				/* SDA, SCL */
3722				pins = "gpio84", "gpio85";
3723				function = "i2chub0_se9";
3724				drive-strength = <2>;
3725				bias-pull-up;
3726			};
3727
3728			pcie0_default_state: pcie0-default-state {
3729				perst-pins {
3730					pins = "gpio94";
3731					function = "gpio";
3732					drive-strength = <2>;
3733					bias-pull-down;
3734				};
3735
3736				clkreq-pins {
3737					pins = "gpio95";
3738					function = "pcie0_clk_req_n";
3739					drive-strength = <2>;
3740					bias-pull-up;
3741				};
3742
3743				wake-pins {
3744					pins = "gpio96";
3745					function = "gpio";
3746					drive-strength = <2>;
3747					bias-pull-up;
3748				};
3749			};
3750
3751			pcie1_default_state: pcie1-default-state {
3752				perst-pins {
3753					pins = "gpio97";
3754					function = "gpio";
3755					drive-strength = <2>;
3756					bias-pull-down;
3757				};
3758
3759				clkreq-pins {
3760					pins = "gpio98";
3761					function = "pcie1_clk_req_n";
3762					drive-strength = <2>;
3763					bias-pull-up;
3764				};
3765
3766				wake-pins {
3767					pins = "gpio99";
3768					function = "gpio";
3769					drive-strength = <2>;
3770					bias-pull-up;
3771				};
3772			};
3773
3774			qup_i2c0_data_clk: qup-i2c0-data-clk-state {
3775				/* SDA, SCL */
3776				pins = "gpio28", "gpio29";
3777				function = "qup1_se0";
3778				drive-strength = <2>;
3779				bias-pull-up = <2200>;
3780			};
3781
3782			qup_i2c1_data_clk: qup-i2c1-data-clk-state {
3783				/* SDA, SCL */
3784				pins = "gpio32", "gpio33";
3785				function = "qup1_se1";
3786				drive-strength = <2>;
3787				bias-pull-up = <2200>;
3788			};
3789
3790			qup_i2c2_data_clk: qup-i2c2-data-clk-state {
3791				/* SDA, SCL */
3792				pins = "gpio36", "gpio37";
3793				function = "qup1_se2";
3794				drive-strength = <2>;
3795				bias-pull-up = <2200>;
3796			};
3797
3798			qup_i2c3_data_clk: qup-i2c3-data-clk-state {
3799				/* SDA, SCL */
3800				pins = "gpio40", "gpio41";
3801				function = "qup1_se3";
3802				drive-strength = <2>;
3803				bias-pull-up = <2200>;
3804			};
3805
3806			qup_i2c4_data_clk: qup-i2c4-data-clk-state {
3807				/* SDA, SCL */
3808				pins = "gpio44", "gpio45";
3809				function = "qup1_se4";
3810				drive-strength = <2>;
3811				bias-pull-up = <2200>;
3812			};
3813
3814			qup_i2c5_data_clk: qup-i2c5-data-clk-state {
3815				/* SDA, SCL */
3816				pins = "gpio52", "gpio53";
3817				function = "qup1_se5";
3818				drive-strength = <2>;
3819				bias-pull-up = <2200>;
3820			};
3821
3822			qup_i2c6_data_clk: qup-i2c6-data-clk-state {
3823				/* SDA, SCL */
3824				pins = "gpio48", "gpio49";
3825				function = "qup1_se6";
3826				drive-strength = <2>;
3827				bias-pull-up = <2200>;
3828			};
3829
3830			qup_i2c8_data_clk: qup-i2c8-data-clk-state {
3831				scl-pins {
3832					pins = "gpio57";
3833					function = "qup2_se0_l1_mira";
3834					drive-strength = <2>;
3835					bias-pull-up = <2200>;
3836				};
3837
3838				sda-pins {
3839					pins = "gpio56";
3840					function = "qup2_se0_l0_mira";
3841					drive-strength = <2>;
3842					bias-pull-up = <2200>;
3843				};
3844			};
3845
3846			qup_i2c9_data_clk: qup-i2c9-data-clk-state {
3847				/* SDA, SCL */
3848				pins = "gpio60", "gpio61";
3849				function = "qup2_se1";
3850				drive-strength = <2>;
3851				bias-pull-up = <2200>;
3852			};
3853
3854			qup_i2c10_data_clk: qup-i2c10-data-clk-state {
3855				/* SDA, SCL */
3856				pins = "gpio64", "gpio65";
3857				function = "qup2_se2";
3858				drive-strength = <2>;
3859				bias-pull-up = <2200>;
3860			};
3861
3862			qup_i2c11_data_clk: qup-i2c11-data-clk-state {
3863				/* SDA, SCL */
3864				pins = "gpio68", "gpio69";
3865				function = "qup2_se3";
3866				drive-strength = <2>;
3867				bias-pull-up = <2200>;
3868			};
3869
3870			qup_i2c12_data_clk: qup-i2c12-data-clk-state {
3871				/* SDA, SCL */
3872				pins = "gpio2", "gpio3";
3873				function = "qup2_se4";
3874				drive-strength = <2>;
3875				bias-pull-up = <2200>;
3876			};
3877
3878			qup_i2c13_data_clk: qup-i2c13-data-clk-state {
3879				/* SDA, SCL */
3880				pins = "gpio80", "gpio81";
3881				function = "qup2_se5";
3882				drive-strength = <2>;
3883				bias-pull-up = <2200>;
3884			};
3885
3886			qup_i2c15_data_clk: qup-i2c15-data-clk-state {
3887				/* SDA, SCL */
3888				pins = "gpio72", "gpio106";
3889				function = "qup2_se7";
3890				drive-strength = <2>;
3891				bias-pull-up = <2200>;
3892			};
3893
3894			qup_spi0_cs: qup-spi0-cs-state {
3895				pins = "gpio31";
3896				function = "qup1_se0";
3897				drive-strength = <6>;
3898				bias-disable;
3899			};
3900
3901			qup_spi0_data_clk: qup-spi0-data-clk-state {
3902				/* MISO, MOSI, CLK */
3903				pins = "gpio28", "gpio29", "gpio30";
3904				function = "qup1_se0";
3905				drive-strength = <6>;
3906				bias-disable;
3907			};
3908
3909			qup_spi1_cs: qup-spi1-cs-state {
3910				pins = "gpio35";
3911				function = "qup1_se1";
3912				drive-strength = <6>;
3913				bias-disable;
3914			};
3915
3916			qup_spi1_data_clk: qup-spi1-data-clk-state {
3917				/* MISO, MOSI, CLK */
3918				pins = "gpio32", "gpio33", "gpio34";
3919				function = "qup1_se1";
3920				drive-strength = <6>;
3921				bias-disable;
3922			};
3923
3924			qup_spi2_cs: qup-spi2-cs-state {
3925				pins = "gpio39";
3926				function = "qup1_se2";
3927				drive-strength = <6>;
3928				bias-disable;
3929			};
3930
3931			qup_spi2_data_clk: qup-spi2-data-clk-state {
3932				/* MISO, MOSI, CLK */
3933				pins = "gpio36", "gpio37", "gpio38";
3934				function = "qup1_se2";
3935				drive-strength = <6>;
3936				bias-disable;
3937			};
3938
3939			qup_spi3_cs: qup-spi3-cs-state {
3940				pins = "gpio43";
3941				function = "qup1_se3";
3942				drive-strength = <6>;
3943				bias-disable;
3944			};
3945
3946			qup_spi3_data_clk: qup-spi3-data-clk-state {
3947				/* MISO, MOSI, CLK */
3948				pins = "gpio40", "gpio41", "gpio42";
3949				function = "qup1_se3";
3950				drive-strength = <6>;
3951				bias-disable;
3952			};
3953
3954			qup_spi4_cs: qup-spi4-cs-state {
3955				pins = "gpio47";
3956				function = "qup1_se4";
3957				drive-strength = <6>;
3958				bias-disable;
3959			};
3960
3961			qup_spi4_data_clk: qup-spi4-data-clk-state {
3962				/* MISO, MOSI, CLK */
3963				pins = "gpio44", "gpio45", "gpio46";
3964				function = "qup1_se4";
3965				drive-strength = <6>;
3966				bias-disable;
3967			};
3968
3969			qup_spi5_cs: qup-spi5-cs-state {
3970				pins = "gpio55";
3971				function = "qup1_se5";
3972				drive-strength = <6>;
3973				bias-disable;
3974			};
3975
3976			qup_spi5_data_clk: qup-spi5-data-clk-state {
3977				/* MISO, MOSI, CLK */
3978				pins = "gpio52", "gpio53", "gpio54";
3979				function = "qup1_se5";
3980				drive-strength = <6>;
3981				bias-disable;
3982			};
3983
3984			qup_spi6_cs: qup-spi6-cs-state {
3985				pins = "gpio51";
3986				function = "qup1_se6";
3987				drive-strength = <6>;
3988				bias-disable;
3989			};
3990
3991			qup_spi6_data_clk: qup-spi6-data-clk-state {
3992				/* MISO, MOSI, CLK */
3993				pins = "gpio48", "gpio49", "gpio50";
3994				function = "qup1_se6";
3995				drive-strength = <6>;
3996				bias-disable;
3997			};
3998
3999			qup_spi8_cs: qup-spi8-cs-state {
4000				pins = "gpio59";
4001				function = "qup2_se0_l3_mira";
4002				drive-strength = <6>;
4003				bias-disable;
4004			};
4005
4006			qup_spi8_data_clk: qup-spi8-data-clk-state {
4007				/* MISO, MOSI, CLK */
4008				pins = "gpio56", "gpio57", "gpio58";
4009				function = "qup2_se0_l2_mira";
4010				drive-strength = <6>;
4011				bias-disable;
4012			};
4013
4014			qup_spi9_cs: qup-spi9-cs-state {
4015				pins = "gpio63";
4016				function = "qup2_se1";
4017				drive-strength = <6>;
4018				bias-disable;
4019			};
4020
4021			qup_spi9_data_clk: qup-spi9-data-clk-state {
4022				/* MISO, MOSI, CLK */
4023				pins = "gpio60", "gpio61", "gpio62";
4024				function = "qup2_se1";
4025				drive-strength = <6>;
4026				bias-disable;
4027			};
4028
4029			qup_spi10_cs: qup-spi10-cs-state {
4030				pins = "gpio67";
4031				function = "qup2_se2";
4032				drive-strength = <6>;
4033				bias-disable;
4034			};
4035
4036			qup_spi10_data_clk: qup-spi10-data-clk-state {
4037				/* MISO, MOSI, CLK */
4038				pins = "gpio64", "gpio65", "gpio66";
4039				function = "qup2_se2";
4040				drive-strength = <6>;
4041				bias-disable;
4042			};
4043
4044			qup_spi11_cs: qup-spi11-cs-state {
4045				pins = "gpio71";
4046				function = "qup2_se3";
4047				drive-strength = <6>;
4048				bias-disable;
4049			};
4050
4051			qup_spi11_data_clk: qup-spi11-data-clk-state {
4052				/* MISO, MOSI, CLK */
4053				pins = "gpio68", "gpio69", "gpio70";
4054				function = "qup2_se3";
4055				drive-strength = <6>;
4056				bias-disable;
4057			};
4058
4059			qup_spi12_cs: qup-spi12-cs-state {
4060				pins = "gpio119";
4061				function = "qup2_se4";
4062				drive-strength = <6>;
4063				bias-disable;
4064			};
4065
4066			qup_spi12_data_clk: qup-spi12-data-clk-state {
4067				/* MISO, MOSI, CLK */
4068				pins = "gpio2", "gpio3", "gpio118";
4069				function = "qup2_se4";
4070				drive-strength = <6>;
4071				bias-disable;
4072			};
4073
4074			qup_spi13_cs: qup-spi13-cs-state {
4075				pins = "gpio83";
4076				function = "qup2_se5";
4077				drive-strength = <6>;
4078				bias-disable;
4079			};
4080
4081			qup_spi13_data_clk: qup-spi13-data-clk-state {
4082				/* MISO, MOSI, CLK */
4083				pins = "gpio80", "gpio81", "gpio82";
4084				function = "qup2_se5";
4085				drive-strength = <6>;
4086				bias-disable;
4087			};
4088
4089			qup_spi15_cs: qup-spi15-cs-state {
4090				pins = "gpio75";
4091				function = "qup2_se7";
4092				drive-strength = <6>;
4093				bias-disable;
4094			};
4095
4096			qup_spi15_data_clk: qup-spi15-data-clk-state {
4097				/* MISO, MOSI, CLK */
4098				pins = "gpio72", "gpio106", "gpio74";
4099				function = "qup2_se7";
4100				drive-strength = <6>;
4101				bias-disable;
4102			};
4103
4104			qup_uart7_default: qup-uart7-default-state {
4105				/* TX, RX */
4106				pins = "gpio26", "gpio27";
4107				function = "qup1_se7";
4108				drive-strength = <2>;
4109				bias-disable;
4110			};
4111
4112			qup_uart14_default: qup-uart14-default-state {
4113				/* TX, RX */
4114				pins = "gpio78", "gpio79";
4115				function = "qup2_se6";
4116				drive-strength = <2>;
4117				bias-pull-up;
4118			};
4119
4120			qup_uart14_cts_rts: qup-uart14-cts-rts-state {
4121				/* CTS, RTS */
4122				pins = "gpio76", "gpio77";
4123				function = "qup2_se6";
4124				drive-strength = <2>;
4125				bias-pull-down;
4126			};
4127
4128			sdc2_sleep: sdc2-sleep-state {
4129				clk-pins {
4130					pins = "sdc2_clk";
4131					bias-disable;
4132					drive-strength = <2>;
4133				};
4134
4135				cmd-pins {
4136					pins = "sdc2_cmd";
4137					bias-pull-up;
4138					drive-strength = <2>;
4139				};
4140
4141				data-pins {
4142					pins = "sdc2_data";
4143					bias-pull-up;
4144					drive-strength = <2>;
4145				};
4146			};
4147
4148			sdc2_default: sdc2-default-state {
4149				clk-pins {
4150					pins = "sdc2_clk";
4151					bias-disable;
4152					drive-strength = <16>;
4153				};
4154
4155				cmd-pins {
4156					pins = "sdc2_cmd";
4157					bias-pull-up;
4158					drive-strength = <10>;
4159				};
4160
4161				data-pins {
4162					pins = "sdc2_data";
4163					bias-pull-up;
4164					drive-strength = <10>;
4165				};
4166			};
4167		};
4168
4169		apps_smmu: iommu@15000000 {
4170			compatible = "qcom,sm8550-smmu-500", "qcom,smmu-500", "arm,mmu-500";
4171			reg = <0 0x15000000 0 0x100000>;
4172			#iommu-cells = <2>;
4173			#global-interrupts = <1>;
4174			interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>,
4175				     <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>,
4176				     <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>,
4177				     <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>,
4178				     <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>,
4179				     <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>,
4180				     <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>,
4181				     <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,
4182				     <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>,
4183				     <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>,
4184				     <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>,
4185				     <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
4186				     <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
4187				     <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
4188				     <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
4189				     <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>,
4190				     <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
4191				     <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
4192				     <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
4193				     <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
4194				     <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
4195				     <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
4196				     <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
4197				     <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>,
4198				     <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>,
4199				     <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>,
4200				     <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>,
4201				     <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>,
4202				     <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>,
4203				     <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>,
4204				     <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>,
4205				     <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>,
4206				     <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>,
4207				     <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>,
4208				     <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>,
4209				     <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>,
4210				     <GIC_SPI 316 IRQ_TYPE_LEVEL_HIGH>,
4211				     <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>,
4212				     <GIC_SPI 318 IRQ_TYPE_LEVEL_HIGH>,
4213				     <GIC_SPI 319 IRQ_TYPE_LEVEL_HIGH>,
4214				     <GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH>,
4215				     <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>,
4216				     <GIC_SPI 322 IRQ_TYPE_LEVEL_HIGH>,
4217				     <GIC_SPI 323 IRQ_TYPE_LEVEL_HIGH>,
4218				     <GIC_SPI 324 IRQ_TYPE_LEVEL_HIGH>,
4219				     <GIC_SPI 325 IRQ_TYPE_LEVEL_HIGH>,
4220				     <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>,
4221				     <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>,
4222				     <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>,
4223				     <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>,
4224				     <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>,
4225				     <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>,
4226				     <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>,
4227				     <GIC_SPI 333 IRQ_TYPE_LEVEL_HIGH>,
4228				     <GIC_SPI 334 IRQ_TYPE_LEVEL_HIGH>,
4229				     <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>,
4230				     <GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH>,
4231				     <GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>,
4232				     <GIC_SPI 338 IRQ_TYPE_LEVEL_HIGH>,
4233				     <GIC_SPI 339 IRQ_TYPE_LEVEL_HIGH>,
4234				     <GIC_SPI 340 IRQ_TYPE_LEVEL_HIGH>,
4235				     <GIC_SPI 341 IRQ_TYPE_LEVEL_HIGH>,
4236				     <GIC_SPI 342 IRQ_TYPE_LEVEL_HIGH>,
4237				     <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>,
4238				     <GIC_SPI 344 IRQ_TYPE_LEVEL_HIGH>,
4239				     <GIC_SPI 345 IRQ_TYPE_LEVEL_HIGH>,
4240				     <GIC_SPI 395 IRQ_TYPE_LEVEL_HIGH>,
4241				     <GIC_SPI 396 IRQ_TYPE_LEVEL_HIGH>,
4242				     <GIC_SPI 397 IRQ_TYPE_LEVEL_HIGH>,
4243				     <GIC_SPI 398 IRQ_TYPE_LEVEL_HIGH>,
4244				     <GIC_SPI 399 IRQ_TYPE_LEVEL_HIGH>,
4245				     <GIC_SPI 400 IRQ_TYPE_LEVEL_HIGH>,
4246				     <GIC_SPI 401 IRQ_TYPE_LEVEL_HIGH>,
4247				     <GIC_SPI 402 IRQ_TYPE_LEVEL_HIGH>,
4248				     <GIC_SPI 403 IRQ_TYPE_LEVEL_HIGH>,
4249				     <GIC_SPI 404 IRQ_TYPE_LEVEL_HIGH>,
4250				     <GIC_SPI 405 IRQ_TYPE_LEVEL_HIGH>,
4251				     <GIC_SPI 406 IRQ_TYPE_LEVEL_HIGH>,
4252				     <GIC_SPI 407 IRQ_TYPE_LEVEL_HIGH>,
4253				     <GIC_SPI 408 IRQ_TYPE_LEVEL_HIGH>,
4254				     <GIC_SPI 409 IRQ_TYPE_LEVEL_HIGH>,
4255				     <GIC_SPI 418 IRQ_TYPE_LEVEL_HIGH>,
4256				     <GIC_SPI 419 IRQ_TYPE_LEVEL_HIGH>,
4257				     <GIC_SPI 412 IRQ_TYPE_LEVEL_HIGH>,
4258				     <GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>,
4259				     <GIC_SPI 706 IRQ_TYPE_LEVEL_HIGH>,
4260				     <GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>,
4261				     <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>,
4262				     <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>,
4263				     <GIC_SPI 689 IRQ_TYPE_LEVEL_HIGH>,
4264				     <GIC_SPI 690 IRQ_TYPE_LEVEL_HIGH>,
4265				     <GIC_SPI 691 IRQ_TYPE_LEVEL_HIGH>,
4266				     <GIC_SPI 692 IRQ_TYPE_LEVEL_HIGH>,
4267				     <GIC_SPI 693 IRQ_TYPE_LEVEL_HIGH>,
4268				     <GIC_SPI 694 IRQ_TYPE_LEVEL_HIGH>,
4269				     <GIC_SPI 695 IRQ_TYPE_LEVEL_HIGH>,
4270				     <GIC_SPI 696 IRQ_TYPE_LEVEL_HIGH>;
4271			dma-coherent;
4272		};
4273
4274		intc: interrupt-controller@17100000 {
4275			compatible = "arm,gic-v3";
4276			reg = <0 0x17100000 0 0x10000>,		/* GICD */
4277			      <0 0x17180000 0 0x200000>;	/* GICR * 8 */
4278			ranges;
4279			#interrupt-cells = <3>;
4280			interrupt-controller;
4281			#redistributor-regions = <1>;
4282			redistributor-stride = <0 0x40000>;
4283			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_LOW>;
4284			#address-cells = <2>;
4285			#size-cells = <2>;
4286
4287			gic_its: msi-controller@17140000 {
4288				compatible = "arm,gic-v3-its";
4289				reg = <0 0x17140000 0 0x20000>;
4290				msi-controller;
4291				#msi-cells = <1>;
4292			};
4293		};
4294
4295		timer@17420000 {
4296			compatible = "arm,armv7-timer-mem";
4297			reg = <0 0x17420000 0 0x1000>;
4298			ranges = <0 0 0 0x20000000>;
4299			#address-cells = <1>;
4300			#size-cells = <1>;
4301
4302			frame@17421000 {
4303				reg = <0x17421000 0x1000>,
4304				      <0x17422000 0x1000>;
4305				frame-number = <0>;
4306				interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
4307					     <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>;
4308			};
4309
4310			frame@17423000 {
4311				reg = <0x17423000 0x1000>;
4312				frame-number = <1>;
4313				interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
4314				status = "disabled";
4315			};
4316
4317			frame@17425000 {
4318				reg = <0x17425000 0x1000>;
4319				frame-number = <2>;
4320				interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
4321				status = "disabled";
4322			};
4323
4324			frame@17427000 {
4325				reg = <0x17427000 0x1000>;
4326				frame-number = <3>;
4327				interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
4328				status = "disabled";
4329			};
4330
4331			frame@17429000 {
4332				reg = <0x17429000 0x1000>;
4333				frame-number = <4>;
4334				interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
4335				status = "disabled";
4336			};
4337
4338			frame@1742b000 {
4339				reg = <0x1742b000 0x1000>;
4340				frame-number = <5>;
4341				interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
4342				status = "disabled";
4343			};
4344
4345			frame@1742d000 {
4346				reg = <0x1742d000 0x1000>;
4347				frame-number = <6>;
4348				interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
4349				status = "disabled";
4350			};
4351		};
4352
4353		apps_rsc: rsc@17a00000 {
4354			label = "apps_rsc";
4355			compatible = "qcom,rpmh-rsc";
4356			reg = <0 0x17a00000 0 0x10000>,
4357			      <0 0x17a10000 0 0x10000>,
4358			      <0 0x17a20000 0 0x10000>,
4359			      <0 0x17a30000 0 0x10000>;
4360			reg-names = "drv-0", "drv-1", "drv-2", "drv-3";
4361			interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
4362				     <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
4363				     <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
4364			qcom,tcs-offset = <0xd00>;
4365			qcom,drv-id = <2>;
4366			qcom,tcs-config = <ACTIVE_TCS    3>, <SLEEP_TCS     2>,
4367					  <WAKE_TCS      2>, <CONTROL_TCS   0>;
4368			power-domains = <&CLUSTER_PD>;
4369
4370			apps_bcm_voter: bcm-voter {
4371				compatible = "qcom,bcm-voter";
4372			};
4373
4374			rpmhcc: clock-controller {
4375				compatible = "qcom,sm8550-rpmh-clk";
4376				#clock-cells = <1>;
4377				clock-names = "xo";
4378				clocks = <&xo_board>;
4379			};
4380
4381			rpmhpd: power-controller {
4382				compatible = "qcom,sm8550-rpmhpd";
4383				#power-domain-cells = <1>;
4384				operating-points-v2 = <&rpmhpd_opp_table>;
4385
4386				rpmhpd_opp_table: opp-table {
4387					compatible = "operating-points-v2";
4388
4389					rpmhpd_opp_ret: opp-16 {
4390						opp-level = <RPMH_REGULATOR_LEVEL_RETENTION>;
4391					};
4392
4393					rpmhpd_opp_min_svs: opp-48 {
4394						opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
4395					};
4396
4397					rpmhpd_opp_low_svs_d2: opp-52 {
4398						opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_D2>;
4399					};
4400
4401					rpmhpd_opp_low_svs_d1: opp-56 {
4402						opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_D1>;
4403					};
4404
4405					rpmhpd_opp_low_svs_d0: opp-60 {
4406						opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_D0>;
4407					};
4408
4409					rpmhpd_opp_low_svs: opp-64 {
4410						opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
4411					};
4412
4413					rpmhpd_opp_low_svs_l1: opp-80 {
4414						opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_L1>;
4415					};
4416
4417					rpmhpd_opp_svs: opp-128 {
4418						opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
4419					};
4420
4421					rpmhpd_opp_svs_l0: opp-144 {
4422						opp-level = <RPMH_REGULATOR_LEVEL_SVS_L0>;
4423					};
4424
4425					rpmhpd_opp_svs_l1: opp-192 {
4426						opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
4427					};
4428
4429					rpmhpd_opp_nom: opp-256 {
4430						opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
4431					};
4432
4433					rpmhpd_opp_nom_l1: opp-320 {
4434						opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
4435					};
4436
4437					rpmhpd_opp_nom_l2: opp-336 {
4438						opp-level = <RPMH_REGULATOR_LEVEL_NOM_L2>;
4439					};
4440
4441					rpmhpd_opp_turbo: opp-384 {
4442						opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
4443					};
4444
4445					rpmhpd_opp_turbo_l1: opp-416 {
4446						opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>;
4447					};
4448				};
4449			};
4450		};
4451
4452		cpufreq_hw: cpufreq@17d91000 {
4453			compatible = "qcom,sm8550-cpufreq-epss", "qcom,cpufreq-epss";
4454			reg = <0 0x17d91000 0 0x1000>,
4455			      <0 0x17d92000 0 0x1000>,
4456			      <0 0x17d93000 0 0x1000>;
4457			reg-names = "freq-domain0", "freq-domain1", "freq-domain2";
4458			clocks = <&bi_tcxo_div2>, <&gcc GCC_GPLL0>;
4459			clock-names = "xo", "alternate";
4460			interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>,
4461				     <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>,
4462				     <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
4463			interrupt-names = "dcvsh-irq-0", "dcvsh-irq-1", "dcvsh-irq-2";
4464			#freq-domain-cells = <1>;
4465			#clock-cells = <1>;
4466		};
4467
4468		pmu@24091000 {
4469			compatible = "qcom,sm8550-llcc-bwmon", "qcom,sc7280-llcc-bwmon";
4470			reg = <0 0x24091000 0 0x1000>;
4471			interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
4472			interconnects = <&mc_virt MASTER_LLCC 3 &mc_virt SLAVE_EBI1 3>;
4473
4474			operating-points-v2 = <&llcc_bwmon_opp_table>;
4475
4476			llcc_bwmon_opp_table: opp-table {
4477				compatible = "operating-points-v2";
4478
4479				opp-0 {
4480					opp-peak-kBps = <2086000>;
4481				};
4482
4483				opp-1 {
4484					opp-peak-kBps = <2929000>;
4485				};
4486
4487				opp-2 {
4488					opp-peak-kBps = <5931000>;
4489				};
4490
4491				opp-3 {
4492					opp-peak-kBps = <6515000>;
4493				};
4494
4495				opp-4 {
4496					opp-peak-kBps = <7980000>;
4497				};
4498
4499				opp-5 {
4500					opp-peak-kBps = <10437000>;
4501				};
4502
4503				opp-6 {
4504					opp-peak-kBps = <12157000>;
4505				};
4506
4507				opp-7 {
4508					opp-peak-kBps = <14060000>;
4509				};
4510
4511				opp-8 {
4512					opp-peak-kBps = <16113000>;
4513				};
4514			};
4515		};
4516
4517		pmu@240b6400 {
4518			compatible = "qcom,sm8550-cpu-bwmon", "qcom,sdm845-bwmon";
4519			reg = <0 0x240b6400 0 0x600>;
4520			interrupts = <GIC_SPI 581 IRQ_TYPE_LEVEL_HIGH>;
4521			interconnects = <&gem_noc MASTER_APPSS_PROC 3 &gem_noc SLAVE_LLCC 3>;
4522
4523			operating-points-v2 = <&cpu_bwmon_opp_table>;
4524
4525			cpu_bwmon_opp_table: opp-table {
4526				compatible = "operating-points-v2";
4527
4528				opp-0 {
4529					opp-peak-kBps = <4577000>;
4530				};
4531
4532				opp-1 {
4533					opp-peak-kBps = <7110000>;
4534				};
4535
4536				opp-2 {
4537					opp-peak-kBps = <9155000>;
4538				};
4539
4540				opp-3 {
4541					opp-peak-kBps = <12298000>;
4542				};
4543
4544				opp-4 {
4545					opp-peak-kBps = <14236000>;
4546				};
4547
4548				opp-5 {
4549					opp-peak-kBps = <16265000>;
4550				};
4551			};
4552		};
4553
4554		gem_noc: interconnect@24100000 {
4555			compatible = "qcom,sm8550-gem-noc";
4556			reg = <0 0x24100000 0 0xbb800>;
4557			#interconnect-cells = <2>;
4558			qcom,bcm-voters = <&apps_bcm_voter>;
4559		};
4560
4561		system-cache-controller@25000000 {
4562			compatible = "qcom,sm8550-llcc";
4563			reg = <0 0x25000000 0 0x200000>,
4564			      <0 0x25200000 0 0x200000>,
4565			      <0 0x25400000 0 0x200000>,
4566			      <0 0x25600000 0 0x200000>,
4567			      <0 0x25800000 0 0x200000>,
4568			      <0 0x25a00000 0 0x200000>;
4569			reg-names = "llcc0_base",
4570				    "llcc1_base",
4571				    "llcc2_base",
4572				    "llcc3_base",
4573				    "llcc_broadcast_base",
4574				    "llcc_broadcast_and_base";
4575			interrupts = <GIC_SPI 266 IRQ_TYPE_LEVEL_HIGH>;
4576		};
4577
4578		remoteproc_adsp: remoteproc@30000000 {
4579			compatible = "qcom,sm8550-adsp-pas";
4580			reg = <0x0 0x30000000 0x0 0x100>;
4581
4582			interrupts-extended = <&pdc 6 IRQ_TYPE_EDGE_RISING>,
4583					      <&smp2p_adsp_in 0 IRQ_TYPE_EDGE_RISING>,
4584					      <&smp2p_adsp_in 1 IRQ_TYPE_EDGE_RISING>,
4585					      <&smp2p_adsp_in 2 IRQ_TYPE_EDGE_RISING>,
4586					      <&smp2p_adsp_in 3 IRQ_TYPE_EDGE_RISING>;
4587			interrupt-names = "wdog", "fatal", "ready",
4588					  "handover", "stop-ack";
4589
4590			clocks = <&rpmhcc RPMH_CXO_CLK>;
4591			clock-names = "xo";
4592
4593			power-domains = <&rpmhpd RPMHPD_LCX>,
4594					<&rpmhpd RPMHPD_LMX>;
4595			power-domain-names = "lcx", "lmx";
4596
4597			interconnects = <&lpass_lpicx_noc MASTER_LPASS_PROC 0 &mc_virt SLAVE_EBI1 0>;
4598
4599			memory-region = <&adspslpi_mem>, <&q6_adsp_dtb_mem>;
4600
4601			qcom,qmp = <&aoss_qmp>;
4602
4603			qcom,smem-states = <&smp2p_adsp_out 0>;
4604			qcom,smem-state-names = "stop";
4605
4606			status = "disabled";
4607
4608			remoteproc_adsp_glink: glink-edge {
4609				interrupts-extended = <&ipcc IPCC_CLIENT_LPASS
4610							     IPCC_MPROC_SIGNAL_GLINK_QMP
4611							     IRQ_TYPE_EDGE_RISING>;
4612				mboxes = <&ipcc IPCC_CLIENT_LPASS
4613						IPCC_MPROC_SIGNAL_GLINK_QMP>;
4614
4615				label = "lpass";
4616				qcom,remote-pid = <2>;
4617
4618				fastrpc {
4619					compatible = "qcom,fastrpc";
4620					qcom,glink-channels = "fastrpcglink-apps-dsp";
4621					label = "adsp";
4622					qcom,non-secure-domain;
4623					#address-cells = <1>;
4624					#size-cells = <0>;
4625
4626					compute-cb@3 {
4627						compatible = "qcom,fastrpc-compute-cb";
4628						reg = <3>;
4629						iommus = <&apps_smmu 0x1003 0x80>,
4630							 <&apps_smmu 0x1063 0x0>;
4631						dma-coherent;
4632					};
4633
4634					compute-cb@4 {
4635						compatible = "qcom,fastrpc-compute-cb";
4636						reg = <4>;
4637						iommus = <&apps_smmu 0x1004 0x80>,
4638							 <&apps_smmu 0x1064 0x0>;
4639						dma-coherent;
4640					};
4641
4642					compute-cb@5 {
4643						compatible = "qcom,fastrpc-compute-cb";
4644						reg = <5>;
4645						iommus = <&apps_smmu 0x1005 0x80>,
4646							 <&apps_smmu 0x1065 0x0>;
4647						dma-coherent;
4648					};
4649
4650					compute-cb@6 {
4651						compatible = "qcom,fastrpc-compute-cb";
4652						reg = <6>;
4653						iommus = <&apps_smmu 0x1006 0x80>,
4654							 <&apps_smmu 0x1066 0x0>;
4655						dma-coherent;
4656					};
4657
4658					compute-cb@7 {
4659						compatible = "qcom,fastrpc-compute-cb";
4660						reg = <7>;
4661						iommus = <&apps_smmu 0x1007 0x80>,
4662							 <&apps_smmu 0x1067 0x0>;
4663						dma-coherent;
4664					};
4665				};
4666
4667				gpr {
4668					compatible = "qcom,gpr";
4669					qcom,glink-channels = "adsp_apps";
4670					qcom,domain = <GPR_DOMAIN_ID_ADSP>;
4671					qcom,intents = <512 20>;
4672					#address-cells = <1>;
4673					#size-cells = <0>;
4674
4675					q6apm: service@1 {
4676						compatible = "qcom,q6apm";
4677						reg = <GPR_APM_MODULE_IID>;
4678						#sound-dai-cells = <0>;
4679						qcom,protection-domain = "avs/audio",
4680									 "msm/adsp/audio_pd";
4681
4682						q6apmdai: dais {
4683							compatible = "qcom,q6apm-dais";
4684							iommus = <&apps_smmu 0x1001 0x80>,
4685								 <&apps_smmu 0x1061 0x0>;
4686						};
4687
4688						q6apmbedai: bedais {
4689							compatible = "qcom,q6apm-lpass-dais";
4690							#sound-dai-cells = <1>;
4691						};
4692					};
4693
4694					q6prm: service@2 {
4695						compatible = "qcom,q6prm";
4696						reg = <GPR_PRM_MODULE_IID>;
4697						qcom,protection-domain = "avs/audio",
4698									 "msm/adsp/audio_pd";
4699
4700						q6prmcc: clock-controller {
4701							compatible = "qcom,q6prm-lpass-clocks";
4702							#clock-cells = <2>;
4703						};
4704					};
4705				};
4706			};
4707		};
4708
4709		nsp_noc: interconnect@320c0000 {
4710			compatible = "qcom,sm8550-nsp-noc";
4711			reg = <0 0x320c0000 0 0xe080>;
4712			#interconnect-cells = <2>;
4713			qcom,bcm-voters = <&apps_bcm_voter>;
4714		};
4715
4716		remoteproc_cdsp: remoteproc@32300000 {
4717			compatible = "qcom,sm8550-cdsp-pas";
4718			reg = <0x0 0x32300000 0x0 0x1400000>;
4719
4720			interrupts-extended = <&intc GIC_SPI 578 IRQ_TYPE_EDGE_RISING>,
4721					      <&smp2p_cdsp_in 0 IRQ_TYPE_EDGE_RISING>,
4722					      <&smp2p_cdsp_in 1 IRQ_TYPE_EDGE_RISING>,
4723					      <&smp2p_cdsp_in 2 IRQ_TYPE_EDGE_RISING>,
4724					      <&smp2p_cdsp_in 3 IRQ_TYPE_EDGE_RISING>;
4725			interrupt-names = "wdog", "fatal", "ready",
4726					  "handover", "stop-ack";
4727
4728			clocks = <&rpmhcc RPMH_CXO_CLK>;
4729			clock-names = "xo";
4730
4731			power-domains = <&rpmhpd RPMHPD_CX>,
4732					<&rpmhpd RPMHPD_MXC>,
4733					<&rpmhpd RPMHPD_NSP>;
4734			power-domain-names = "cx", "mxc", "nsp";
4735
4736			interconnects = <&nsp_noc MASTER_CDSP_PROC 0 &mc_virt SLAVE_EBI1 0>;
4737
4738			memory-region = <&cdsp_mem>, <&q6_cdsp_dtb_mem>;
4739
4740			qcom,qmp = <&aoss_qmp>;
4741
4742			qcom,smem-states = <&smp2p_cdsp_out 0>;
4743			qcom,smem-state-names = "stop";
4744
4745			status = "disabled";
4746
4747			glink-edge {
4748				interrupts-extended = <&ipcc IPCC_CLIENT_CDSP
4749							     IPCC_MPROC_SIGNAL_GLINK_QMP
4750							     IRQ_TYPE_EDGE_RISING>;
4751				mboxes = <&ipcc IPCC_CLIENT_CDSP
4752						IPCC_MPROC_SIGNAL_GLINK_QMP>;
4753
4754				label = "cdsp";
4755				qcom,remote-pid = <5>;
4756
4757				fastrpc {
4758					compatible = "qcom,fastrpc";
4759					qcom,glink-channels = "fastrpcglink-apps-dsp";
4760					label = "cdsp";
4761					qcom,non-secure-domain;
4762					#address-cells = <1>;
4763					#size-cells = <0>;
4764
4765					compute-cb@1 {
4766						compatible = "qcom,fastrpc-compute-cb";
4767						reg = <1>;
4768						iommus = <&apps_smmu 0x1961 0x0>,
4769							 <&apps_smmu 0x0c01 0x20>,
4770							 <&apps_smmu 0x19c1 0x10>;
4771						dma-coherent;
4772					};
4773
4774					compute-cb@2 {
4775						compatible = "qcom,fastrpc-compute-cb";
4776						reg = <2>;
4777						iommus = <&apps_smmu 0x1962 0x0>,
4778							 <&apps_smmu 0x0c02 0x20>,
4779							 <&apps_smmu 0x19c2 0x10>;
4780						dma-coherent;
4781					};
4782
4783					compute-cb@3 {
4784						compatible = "qcom,fastrpc-compute-cb";
4785						reg = <3>;
4786						iommus = <&apps_smmu 0x1963 0x0>,
4787							 <&apps_smmu 0x0c03 0x20>,
4788							 <&apps_smmu 0x19c3 0x10>;
4789						dma-coherent;
4790					};
4791
4792					compute-cb@4 {
4793						compatible = "qcom,fastrpc-compute-cb";
4794						reg = <4>;
4795						iommus = <&apps_smmu 0x1964 0x0>,
4796							 <&apps_smmu 0x0c04 0x20>,
4797							 <&apps_smmu 0x19c4 0x10>;
4798						dma-coherent;
4799					};
4800
4801					compute-cb@5 {
4802						compatible = "qcom,fastrpc-compute-cb";
4803						reg = <5>;
4804						iommus = <&apps_smmu 0x1965 0x0>,
4805							 <&apps_smmu 0x0c05 0x20>,
4806							 <&apps_smmu 0x19c5 0x10>;
4807						dma-coherent;
4808					};
4809
4810					compute-cb@6 {
4811						compatible = "qcom,fastrpc-compute-cb";
4812						reg = <6>;
4813						iommus = <&apps_smmu 0x1966 0x0>,
4814							 <&apps_smmu 0x0c06 0x20>,
4815							 <&apps_smmu 0x19c6 0x10>;
4816						dma-coherent;
4817					};
4818
4819					compute-cb@7 {
4820						compatible = "qcom,fastrpc-compute-cb";
4821						reg = <7>;
4822						iommus = <&apps_smmu 0x1967 0x0>,
4823							 <&apps_smmu 0x0c07 0x20>,
4824							 <&apps_smmu 0x19c7 0x10>;
4825						dma-coherent;
4826					};
4827
4828					compute-cb@8 {
4829						compatible = "qcom,fastrpc-compute-cb";
4830						reg = <8>;
4831						iommus = <&apps_smmu 0x1968 0x0>,
4832							 <&apps_smmu 0x0c08 0x20>,
4833							 <&apps_smmu 0x19c8 0x10>;
4834						dma-coherent;
4835					};
4836
4837					/* note: secure cb9 in downstream */
4838				};
4839			};
4840		};
4841	};
4842
4843	thermal-zones {
4844		aoss0-thermal {
4845			thermal-sensors = <&tsens0 0>;
4846
4847			trips {
4848				thermal-engine-config {
4849					temperature = <125000>;
4850					hysteresis = <1000>;
4851					type = "passive";
4852				};
4853
4854				reset-mon-config {
4855					temperature = <115000>;
4856					hysteresis = <5000>;
4857					type = "passive";
4858				};
4859			};
4860		};
4861
4862		cpuss0-thermal {
4863			thermal-sensors = <&tsens0 1>;
4864
4865			trips {
4866				thermal-engine-config {
4867					temperature = <125000>;
4868					hysteresis = <1000>;
4869					type = "passive";
4870				};
4871
4872				reset-mon-config {
4873					temperature = <115000>;
4874					hysteresis = <5000>;
4875					type = "passive";
4876				};
4877			};
4878		};
4879
4880		cpuss1-thermal {
4881			thermal-sensors = <&tsens0 2>;
4882
4883			trips {
4884				thermal-engine-config {
4885					temperature = <125000>;
4886					hysteresis = <1000>;
4887					type = "passive";
4888				};
4889
4890				reset-mon-config {
4891					temperature = <115000>;
4892					hysteresis = <5000>;
4893					type = "passive";
4894				};
4895			};
4896		};
4897
4898		cpuss2-thermal {
4899			thermal-sensors = <&tsens0 3>;
4900
4901			trips {
4902				thermal-engine-config {
4903					temperature = <125000>;
4904					hysteresis = <1000>;
4905					type = "passive";
4906				};
4907
4908				reset-mon-config {
4909					temperature = <115000>;
4910					hysteresis = <5000>;
4911					type = "passive";
4912				};
4913			};
4914		};
4915
4916		cpuss3-thermal {
4917			thermal-sensors = <&tsens0 4>;
4918
4919			trips {
4920				thermal-engine-config {
4921					temperature = <125000>;
4922					hysteresis = <1000>;
4923					type = "passive";
4924				};
4925
4926				reset-mon-config {
4927					temperature = <115000>;
4928					hysteresis = <5000>;
4929					type = "passive";
4930				};
4931			};
4932		};
4933
4934		cpu3-top-thermal {
4935			thermal-sensors = <&tsens0 5>;
4936
4937			trips {
4938				cpu3_top_alert0: trip-point0 {
4939					temperature = <90000>;
4940					hysteresis = <2000>;
4941					type = "passive";
4942				};
4943
4944				cpu3_top_alert1: trip-point1 {
4945					temperature = <95000>;
4946					hysteresis = <2000>;
4947					type = "passive";
4948				};
4949
4950				cpu3_top_crit: cpu-critical {
4951					temperature = <110000>;
4952					hysteresis = <1000>;
4953					type = "critical";
4954				};
4955			};
4956		};
4957
4958		cpu3-bottom-thermal {
4959			thermal-sensors = <&tsens0 6>;
4960
4961			trips {
4962				cpu3_bottom_alert0: trip-point0 {
4963					temperature = <90000>;
4964					hysteresis = <2000>;
4965					type = "passive";
4966				};
4967
4968				cpu3_bottom_alert1: trip-point1 {
4969					temperature = <95000>;
4970					hysteresis = <2000>;
4971					type = "passive";
4972				};
4973
4974				cpu3_bottom_crit: cpu-critical {
4975					temperature = <110000>;
4976					hysteresis = <1000>;
4977					type = "critical";
4978				};
4979			};
4980		};
4981
4982		cpu4-top-thermal {
4983			thermal-sensors = <&tsens0 7>;
4984
4985			trips {
4986				cpu4_top_alert0: trip-point0 {
4987					temperature = <90000>;
4988					hysteresis = <2000>;
4989					type = "passive";
4990				};
4991
4992				cpu4_top_alert1: trip-point1 {
4993					temperature = <95000>;
4994					hysteresis = <2000>;
4995					type = "passive";
4996				};
4997
4998				cpu4_top_crit: cpu-critical {
4999					temperature = <110000>;
5000					hysteresis = <1000>;
5001					type = "critical";
5002				};
5003			};
5004		};
5005
5006		cpu4-bottom-thermal {
5007			thermal-sensors = <&tsens0 8>;
5008
5009			trips {
5010				cpu4_bottom_alert0: trip-point0 {
5011					temperature = <90000>;
5012					hysteresis = <2000>;
5013					type = "passive";
5014				};
5015
5016				cpu4_bottom_alert1: trip-point1 {
5017					temperature = <95000>;
5018					hysteresis = <2000>;
5019					type = "passive";
5020				};
5021
5022				cpu4_bottom_crit: cpu-critical {
5023					temperature = <110000>;
5024					hysteresis = <1000>;
5025					type = "critical";
5026				};
5027			};
5028		};
5029
5030		cpu5-top-thermal {
5031			thermal-sensors = <&tsens0 9>;
5032
5033			trips {
5034				cpu5_top_alert0: trip-point0 {
5035					temperature = <90000>;
5036					hysteresis = <2000>;
5037					type = "passive";
5038				};
5039
5040				cpu5_top_alert1: trip-point1 {
5041					temperature = <95000>;
5042					hysteresis = <2000>;
5043					type = "passive";
5044				};
5045
5046				cpu5_top_crit: cpu-critical {
5047					temperature = <110000>;
5048					hysteresis = <1000>;
5049					type = "critical";
5050				};
5051			};
5052		};
5053
5054		cpu5-bottom-thermal {
5055			thermal-sensors = <&tsens0 10>;
5056
5057			trips {
5058				cpu5_bottom_alert0: trip-point0 {
5059					temperature = <90000>;
5060					hysteresis = <2000>;
5061					type = "passive";
5062				};
5063
5064				cpu5_bottom_alert1: trip-point1 {
5065					temperature = <95000>;
5066					hysteresis = <2000>;
5067					type = "passive";
5068				};
5069
5070				cpu5_bottom_crit: cpu-critical {
5071					temperature = <110000>;
5072					hysteresis = <1000>;
5073					type = "critical";
5074				};
5075			};
5076		};
5077
5078		cpu6-top-thermal {
5079			thermal-sensors = <&tsens0 11>;
5080
5081			trips {
5082				cpu6_top_alert0: trip-point0 {
5083					temperature = <90000>;
5084					hysteresis = <2000>;
5085					type = "passive";
5086				};
5087
5088				cpu6_top_alert1: trip-point1 {
5089					temperature = <95000>;
5090					hysteresis = <2000>;
5091					type = "passive";
5092				};
5093
5094				cpu6_top_crit: cpu-critical {
5095					temperature = <110000>;
5096					hysteresis = <1000>;
5097					type = "critical";
5098				};
5099			};
5100		};
5101
5102		cpu6-bottom-thermal {
5103			thermal-sensors = <&tsens0 12>;
5104
5105			trips {
5106				cpu6_bottom_alert0: trip-point0 {
5107					temperature = <90000>;
5108					hysteresis = <2000>;
5109					type = "passive";
5110				};
5111
5112				cpu6_bottom_alert1: trip-point1 {
5113					temperature = <95000>;
5114					hysteresis = <2000>;
5115					type = "passive";
5116				};
5117
5118				cpu6_bottom_crit: cpu-critical {
5119					temperature = <110000>;
5120					hysteresis = <1000>;
5121					type = "critical";
5122				};
5123			};
5124		};
5125
5126		cpu7-top-thermal {
5127			thermal-sensors = <&tsens0 13>;
5128
5129			trips {
5130				cpu7_top_alert0: trip-point0 {
5131					temperature = <90000>;
5132					hysteresis = <2000>;
5133					type = "passive";
5134				};
5135
5136				cpu7_top_alert1: trip-point1 {
5137					temperature = <95000>;
5138					hysteresis = <2000>;
5139					type = "passive";
5140				};
5141
5142				cpu7_top_crit: cpu-critical {
5143					temperature = <110000>;
5144					hysteresis = <1000>;
5145					type = "critical";
5146				};
5147			};
5148		};
5149
5150		cpu7-middle-thermal {
5151			thermal-sensors = <&tsens0 14>;
5152
5153			trips {
5154				cpu7_middle_alert0: trip-point0 {
5155					temperature = <90000>;
5156					hysteresis = <2000>;
5157					type = "passive";
5158				};
5159
5160				cpu7_middle_alert1: trip-point1 {
5161					temperature = <95000>;
5162					hysteresis = <2000>;
5163					type = "passive";
5164				};
5165
5166				cpu7_middle_crit: cpu-critical {
5167					temperature = <110000>;
5168					hysteresis = <1000>;
5169					type = "critical";
5170				};
5171			};
5172		};
5173
5174		cpu7-bottom-thermal {
5175			thermal-sensors = <&tsens0 15>;
5176
5177			trips {
5178				cpu7_bottom_alert0: trip-point0 {
5179					temperature = <90000>;
5180					hysteresis = <2000>;
5181					type = "passive";
5182				};
5183
5184				cpu7_bottom_alert1: trip-point1 {
5185					temperature = <95000>;
5186					hysteresis = <2000>;
5187					type = "passive";
5188				};
5189
5190				cpu7_bottom_crit: cpu-critical {
5191					temperature = <110000>;
5192					hysteresis = <1000>;
5193					type = "critical";
5194				};
5195			};
5196		};
5197
5198		aoss1-thermal {
5199			thermal-sensors = <&tsens1 0>;
5200
5201			trips {
5202				thermal-engine-config {
5203					temperature = <125000>;
5204					hysteresis = <1000>;
5205					type = "passive";
5206				};
5207
5208				reset-mon-config {
5209					temperature = <115000>;
5210					hysteresis = <5000>;
5211					type = "passive";
5212				};
5213			};
5214		};
5215
5216		cpu0-thermal {
5217			thermal-sensors = <&tsens1 1>;
5218
5219			trips {
5220				cpu0_alert0: trip-point0 {
5221					temperature = <90000>;
5222					hysteresis = <2000>;
5223					type = "passive";
5224				};
5225
5226				cpu0_alert1: trip-point1 {
5227					temperature = <95000>;
5228					hysteresis = <2000>;
5229					type = "passive";
5230				};
5231
5232				cpu0_crit: cpu-critical {
5233					temperature = <110000>;
5234					hysteresis = <1000>;
5235					type = "critical";
5236				};
5237			};
5238		};
5239
5240		cpu1-thermal {
5241			thermal-sensors = <&tsens1 2>;
5242
5243			trips {
5244				cpu1_alert0: trip-point0 {
5245					temperature = <90000>;
5246					hysteresis = <2000>;
5247					type = "passive";
5248				};
5249
5250				cpu1_alert1: trip-point1 {
5251					temperature = <95000>;
5252					hysteresis = <2000>;
5253					type = "passive";
5254				};
5255
5256				cpu1_crit: cpu-critical {
5257					temperature = <110000>;
5258					hysteresis = <1000>;
5259					type = "critical";
5260				};
5261			};
5262		};
5263
5264		cpu2-thermal {
5265			thermal-sensors = <&tsens1 3>;
5266
5267			trips {
5268				cpu2_alert0: trip-point0 {
5269					temperature = <90000>;
5270					hysteresis = <2000>;
5271					type = "passive";
5272				};
5273
5274				cpu2_alert1: trip-point1 {
5275					temperature = <95000>;
5276					hysteresis = <2000>;
5277					type = "passive";
5278				};
5279
5280				cpu2_crit: cpu-critical {
5281					temperature = <110000>;
5282					hysteresis = <1000>;
5283					type = "critical";
5284				};
5285			};
5286		};
5287
5288		cdsp0-thermal {
5289			polling-delay-passive = <10>;
5290
5291			thermal-sensors = <&tsens2 4>;
5292
5293			trips {
5294				thermal-engine-config {
5295					temperature = <125000>;
5296					hysteresis = <1000>;
5297					type = "passive";
5298				};
5299
5300				thermal-hal-config {
5301					temperature = <125000>;
5302					hysteresis = <1000>;
5303					type = "passive";
5304				};
5305
5306				reset-mon-config {
5307					temperature = <115000>;
5308					hysteresis = <5000>;
5309					type = "passive";
5310				};
5311
5312				cdsp0_junction_config: junction-config {
5313					temperature = <95000>;
5314					hysteresis = <5000>;
5315					type = "passive";
5316				};
5317			};
5318		};
5319
5320		cdsp1-thermal {
5321			polling-delay-passive = <10>;
5322
5323			thermal-sensors = <&tsens2 5>;
5324
5325			trips {
5326				thermal-engine-config {
5327					temperature = <125000>;
5328					hysteresis = <1000>;
5329					type = "passive";
5330				};
5331
5332				thermal-hal-config {
5333					temperature = <125000>;
5334					hysteresis = <1000>;
5335					type = "passive";
5336				};
5337
5338				reset-mon-config {
5339					temperature = <115000>;
5340					hysteresis = <5000>;
5341					type = "passive";
5342				};
5343
5344				cdsp1_junction_config: junction-config {
5345					temperature = <95000>;
5346					hysteresis = <5000>;
5347					type = "passive";
5348				};
5349			};
5350		};
5351
5352		cdsp2-thermal {
5353			polling-delay-passive = <10>;
5354
5355			thermal-sensors = <&tsens2 6>;
5356
5357			trips {
5358				thermal-engine-config {
5359					temperature = <125000>;
5360					hysteresis = <1000>;
5361					type = "passive";
5362				};
5363
5364				thermal-hal-config {
5365					temperature = <125000>;
5366					hysteresis = <1000>;
5367					type = "passive";
5368				};
5369
5370				reset-mon-config {
5371					temperature = <115000>;
5372					hysteresis = <5000>;
5373					type = "passive";
5374				};
5375
5376				cdsp2_junction_config: junction-config {
5377					temperature = <95000>;
5378					hysteresis = <5000>;
5379					type = "passive";
5380				};
5381			};
5382		};
5383
5384		cdsp3-thermal {
5385			polling-delay-passive = <10>;
5386
5387			thermal-sensors = <&tsens2 7>;
5388
5389			trips {
5390				thermal-engine-config {
5391					temperature = <125000>;
5392					hysteresis = <1000>;
5393					type = "passive";
5394				};
5395
5396				thermal-hal-config {
5397					temperature = <125000>;
5398					hysteresis = <1000>;
5399					type = "passive";
5400				};
5401
5402				reset-mon-config {
5403					temperature = <115000>;
5404					hysteresis = <5000>;
5405					type = "passive";
5406				};
5407
5408				cdsp3_junction_config: junction-config {
5409					temperature = <95000>;
5410					hysteresis = <5000>;
5411					type = "passive";
5412				};
5413			};
5414		};
5415
5416		video-thermal {
5417			thermal-sensors = <&tsens1 8>;
5418
5419			trips {
5420				thermal-engine-config {
5421					temperature = <125000>;
5422					hysteresis = <1000>;
5423					type = "passive";
5424				};
5425
5426				reset-mon-config {
5427					temperature = <115000>;
5428					hysteresis = <5000>;
5429					type = "passive";
5430				};
5431			};
5432		};
5433
5434		mem-thermal {
5435			polling-delay-passive = <10>;
5436
5437			thermal-sensors = <&tsens1 9>;
5438
5439			trips {
5440				thermal-engine-config {
5441					temperature = <125000>;
5442					hysteresis = <1000>;
5443					type = "passive";
5444				};
5445
5446				ddr_config0: ddr0-config {
5447					temperature = <90000>;
5448					hysteresis = <5000>;
5449					type = "passive";
5450				};
5451
5452				reset-mon-config {
5453					temperature = <115000>;
5454					hysteresis = <5000>;
5455					type = "passive";
5456				};
5457			};
5458		};
5459
5460		modem0-thermal {
5461			thermal-sensors = <&tsens1 10>;
5462
5463			trips {
5464				thermal-engine-config {
5465					temperature = <125000>;
5466					hysteresis = <1000>;
5467					type = "passive";
5468				};
5469
5470				mdmss0_config0: mdmss0-config0 {
5471					temperature = <102000>;
5472					hysteresis = <3000>;
5473					type = "passive";
5474				};
5475
5476				mdmss0_config1: mdmss0-config1 {
5477					temperature = <105000>;
5478					hysteresis = <3000>;
5479					type = "passive";
5480				};
5481
5482				reset-mon-config {
5483					temperature = <115000>;
5484					hysteresis = <5000>;
5485					type = "passive";
5486				};
5487			};
5488		};
5489
5490		modem1-thermal {
5491			thermal-sensors = <&tsens1 11>;
5492
5493			trips {
5494				thermal-engine-config {
5495					temperature = <125000>;
5496					hysteresis = <1000>;
5497					type = "passive";
5498				};
5499
5500				mdmss1_config0: mdmss1-config0 {
5501					temperature = <102000>;
5502					hysteresis = <3000>;
5503					type = "passive";
5504				};
5505
5506				mdmss1_config1: mdmss1-config1 {
5507					temperature = <105000>;
5508					hysteresis = <3000>;
5509					type = "passive";
5510				};
5511
5512				reset-mon-config {
5513					temperature = <115000>;
5514					hysteresis = <5000>;
5515					type = "passive";
5516				};
5517			};
5518		};
5519
5520		modem2-thermal {
5521			thermal-sensors = <&tsens1 12>;
5522
5523			trips {
5524				thermal-engine-config {
5525					temperature = <125000>;
5526					hysteresis = <1000>;
5527					type = "passive";
5528				};
5529
5530				mdmss2_config0: mdmss2-config0 {
5531					temperature = <102000>;
5532					hysteresis = <3000>;
5533					type = "passive";
5534				};
5535
5536				mdmss2_config1: mdmss2-config1 {
5537					temperature = <105000>;
5538					hysteresis = <3000>;
5539					type = "passive";
5540				};
5541
5542				reset-mon-config {
5543					temperature = <115000>;
5544					hysteresis = <5000>;
5545					type = "passive";
5546				};
5547			};
5548		};
5549
5550		modem3-thermal {
5551			thermal-sensors = <&tsens1 13>;
5552
5553			trips {
5554				thermal-engine-config {
5555					temperature = <125000>;
5556					hysteresis = <1000>;
5557					type = "passive";
5558				};
5559
5560				mdmss3_config0: mdmss3-config0 {
5561					temperature = <102000>;
5562					hysteresis = <3000>;
5563					type = "passive";
5564				};
5565
5566				mdmss3_config1: mdmss3-config1 {
5567					temperature = <105000>;
5568					hysteresis = <3000>;
5569					type = "passive";
5570				};
5571
5572				reset-mon-config {
5573					temperature = <115000>;
5574					hysteresis = <5000>;
5575					type = "passive";
5576				};
5577			};
5578		};
5579
5580		camera0-thermal {
5581			thermal-sensors = <&tsens1 14>;
5582
5583			trips {
5584				thermal-engine-config {
5585					temperature = <125000>;
5586					hysteresis = <1000>;
5587					type = "passive";
5588				};
5589
5590				reset-mon-config {
5591					temperature = <115000>;
5592					hysteresis = <5000>;
5593					type = "passive";
5594				};
5595			};
5596		};
5597
5598		camera1-thermal {
5599			thermal-sensors = <&tsens1 15>;
5600
5601			trips {
5602				thermal-engine-config {
5603					temperature = <125000>;
5604					hysteresis = <1000>;
5605					type = "passive";
5606				};
5607
5608				reset-mon-config {
5609					temperature = <115000>;
5610					hysteresis = <5000>;
5611					type = "passive";
5612				};
5613			};
5614		};
5615
5616		aoss2-thermal {
5617			thermal-sensors = <&tsens2 0>;
5618
5619			trips {
5620				thermal-engine-config {
5621					temperature = <125000>;
5622					hysteresis = <1000>;
5623					type = "passive";
5624				};
5625
5626				reset-mon-config {
5627					temperature = <115000>;
5628					hysteresis = <5000>;
5629					type = "passive";
5630				};
5631			};
5632		};
5633
5634		gpuss-0-thermal {
5635			polling-delay-passive = <10>;
5636
5637			thermal-sensors = <&tsens2 1>;
5638
5639			cooling-maps {
5640				map0 {
5641					trip = <&gpu0_alert0>;
5642					cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
5643				};
5644			};
5645
5646			trips {
5647				gpu0_alert0: trip-point0 {
5648					temperature = <85000>;
5649					hysteresis = <1000>;
5650					type = "passive";
5651				};
5652
5653				trip-point1 {
5654					temperature = <90000>;
5655					hysteresis = <1000>;
5656					type = "hot";
5657				};
5658
5659				trip-point2 {
5660					temperature = <110000>;
5661					hysteresis = <1000>;
5662					type = "critical";
5663				};
5664			};
5665		};
5666
5667		gpuss-1-thermal {
5668			polling-delay-passive = <10>;
5669
5670			thermal-sensors = <&tsens2 2>;
5671
5672			cooling-maps {
5673				map0 {
5674					trip = <&gpu1_alert0>;
5675					cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
5676				};
5677			};
5678
5679			trips {
5680				gpu1_alert0: trip-point0 {
5681					temperature = <85000>;
5682					hysteresis = <1000>;
5683					type = "passive";
5684				};
5685
5686				trip-point1 {
5687					temperature = <90000>;
5688					hysteresis = <1000>;
5689					type = "hot";
5690				};
5691
5692				trip-point2 {
5693					temperature = <110000>;
5694					hysteresis = <1000>;
5695					type = "critical";
5696				};
5697			};
5698		};
5699
5700		gpuss-2-thermal {
5701			polling-delay-passive = <10>;
5702
5703			thermal-sensors = <&tsens2 3>;
5704
5705			cooling-maps {
5706				map0 {
5707					trip = <&gpu2_alert0>;
5708					cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
5709				};
5710			};
5711
5712			trips {
5713				gpu2_alert0: trip-point0 {
5714					temperature = <85000>;
5715					hysteresis = <1000>;
5716					type = "passive";
5717				};
5718
5719				trip-point1 {
5720					temperature = <90000>;
5721					hysteresis = <1000>;
5722					type = "hot";
5723				};
5724
5725				trip-point2 {
5726					temperature = <110000>;
5727					hysteresis = <1000>;
5728					type = "critical";
5729				};
5730			};
5731		};
5732
5733		gpuss-3-thermal {
5734			polling-delay-passive = <10>;
5735
5736			thermal-sensors = <&tsens2 4>;
5737
5738			cooling-maps {
5739				map0 {
5740					trip = <&gpu3_alert0>;
5741					cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
5742				};
5743			};
5744
5745			trips {
5746				gpu3_alert0: trip-point0 {
5747					temperature = <85000>;
5748					hysteresis = <1000>;
5749					type = "passive";
5750				};
5751
5752				trip-point1 {
5753					temperature = <90000>;
5754					hysteresis = <1000>;
5755					type = "hot";
5756				};
5757
5758				trip-point2 {
5759					temperature = <110000>;
5760					hysteresis = <1000>;
5761					type = "critical";
5762				};
5763			};
5764		};
5765
5766		gpuss-4-thermal {
5767			polling-delay-passive = <10>;
5768
5769			thermal-sensors = <&tsens2 5>;
5770
5771			cooling-maps {
5772				map0 {
5773					trip = <&gpu4_alert0>;
5774					cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
5775				};
5776			};
5777
5778			trips {
5779				gpu4_alert0: trip-point0 {
5780					temperature = <85000>;
5781					hysteresis = <1000>;
5782					type = "passive";
5783				};
5784
5785				trip-point1 {
5786					temperature = <90000>;
5787					hysteresis = <1000>;
5788					type = "hot";
5789				};
5790
5791				trip-point2 {
5792					temperature = <110000>;
5793					hysteresis = <1000>;
5794					type = "critical";
5795				};
5796			};
5797		};
5798
5799		gpuss-5-thermal {
5800			polling-delay-passive = <10>;
5801
5802			thermal-sensors = <&tsens2 6>;
5803
5804			cooling-maps {
5805				map0 {
5806					trip = <&gpu5_alert0>;
5807					cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
5808				};
5809			};
5810
5811			trips {
5812				gpu5_alert0: trip-point0 {
5813					temperature = <85000>;
5814					hysteresis = <1000>;
5815					type = "passive";
5816				};
5817
5818				trip-point1 {
5819					temperature = <90000>;
5820					hysteresis = <1000>;
5821					type = "hot";
5822				};
5823
5824				trip-point2 {
5825					temperature = <110000>;
5826					hysteresis = <1000>;
5827					type = "critical";
5828				};
5829			};
5830		};
5831
5832		gpuss-6-thermal {
5833			polling-delay-passive = <10>;
5834
5835			thermal-sensors = <&tsens2 7>;
5836
5837			cooling-maps {
5838				map0 {
5839					trip = <&gpu6_alert0>;
5840					cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
5841				};
5842			};
5843
5844			trips {
5845				gpu6_alert0: trip-point0 {
5846					temperature = <85000>;
5847					hysteresis = <1000>;
5848					type = "passive";
5849				};
5850
5851				trip-point1 {
5852					temperature = <90000>;
5853					hysteresis = <1000>;
5854					type = "hot";
5855				};
5856
5857				trip-point2 {
5858					temperature = <110000>;
5859					hysteresis = <1000>;
5860					type = "critical";
5861				};
5862			};
5863		};
5864
5865		gpuss-7-thermal {
5866			polling-delay-passive = <10>;
5867
5868			thermal-sensors = <&tsens2 8>;
5869
5870			cooling-maps {
5871				map0 {
5872					trip = <&gpu7_alert0>;
5873					cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
5874				};
5875			};
5876
5877			trips {
5878				gpu7_alert0: trip-point0 {
5879					temperature = <85000>;
5880					hysteresis = <1000>;
5881					type = "passive";
5882				};
5883
5884				trip-point1 {
5885					temperature = <90000>;
5886					hysteresis = <1000>;
5887					type = "hot";
5888				};
5889
5890				trip-point2 {
5891					temperature = <110000>;
5892					hysteresis = <1000>;
5893					type = "critical";
5894				};
5895			};
5896		};
5897	};
5898
5899	timer {
5900		compatible = "arm,armv8-timer";
5901		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
5902			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
5903			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
5904			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>;
5905	};
5906};
5907