xref: /linux/arch/arm64/boot/dts/qcom/sm8750.dtsi (revision df9c299371054cb725eef730fd0f1d0fe2ed6bb0)
1// SPDX-License-Identifier: BSD-3-Clause
2/*
3 * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
4 */
5
6#include <dt-bindings/clock/qcom,rpmh.h>
7#include <dt-bindings/clock/qcom,sm8750-gcc.h>
8#include <dt-bindings/clock/qcom,sm8750-tcsr.h>
9#include <dt-bindings/dma/qcom-gpi.h>
10#include <dt-bindings/interconnect/qcom,icc.h>
11#include <dt-bindings/interconnect/qcom,sm8750-rpmh.h>
12#include <dt-bindings/interrupt-controller/arm-gic.h>
13#include <dt-bindings/mailbox/qcom-ipcc.h>
14#include <dt-bindings/power/qcom,rpmhpd.h>
15#include <dt-bindings/power/qcom-rpmpd.h>
16#include <dt-bindings/soc/qcom,gpr.h>
17#include <dt-bindings/soc/qcom,rpmh-rsc.h>
18#include <dt-bindings/sound/qcom,q6dsp-lpass-ports.h>
19
20/ {
21	interrupt-parent = <&intc>;
22
23	#address-cells = <2>;
24	#size-cells = <2>;
25
26	cpus {
27		#address-cells = <2>;
28		#size-cells = <0>;
29
30		cpu0: cpu@0 {
31			device_type = "cpu";
32			compatible = "qcom,oryon";
33			reg = <0x0 0x0>;
34			enable-method = "psci";
35			next-level-cache = <&l2_0>;
36			power-domains = <&cpu_pd0>;
37			power-domain-names = "psci";
38
39			l2_0: l2-cache {
40				compatible = "cache";
41				cache-level = <2>;
42				cache-unified;
43			};
44		};
45
46		cpu1: cpu@100 {
47			device_type = "cpu";
48			compatible = "qcom,oryon";
49			reg = <0x0 0x100>;
50			enable-method = "psci";
51			next-level-cache = <&l2_0>;
52			power-domains = <&cpu_pd1>;
53			power-domain-names = "psci";
54		};
55
56		cpu2: cpu@200 {
57			device_type = "cpu";
58			compatible = "qcom,oryon";
59			reg = <0x0 0x200>;
60			enable-method = "psci";
61			next-level-cache = <&l2_0>;
62			power-domains = <&cpu_pd2>;
63			power-domain-names = "psci";
64		};
65
66		cpu3: cpu@300 {
67			device_type = "cpu";
68			compatible = "qcom,oryon";
69			reg = <0x0 0x300>;
70			enable-method = "psci";
71			next-level-cache = <&l2_0>;
72			power-domains = <&cpu_pd3>;
73			power-domain-names = "psci";
74		};
75
76		cpu4: cpu@400 {
77			device_type = "cpu";
78			compatible = "qcom,oryon";
79			reg = <0x0 0x400>;
80			enable-method = "psci";
81			next-level-cache = <&l2_0>;
82			power-domains = <&cpu_pd4>;
83			power-domain-names = "psci";
84		};
85
86		cpu5: cpu@500 {
87			device_type = "cpu";
88			compatible = "qcom,oryon";
89			reg = <0x0 0x500>;
90			enable-method = "psci";
91			next-level-cache = <&l2_0>;
92			power-domains = <&cpu_pd5>;
93			power-domain-names = "psci";
94		};
95
96		cpu6: cpu@10000 {
97			device_type = "cpu";
98			compatible = "qcom,oryon";
99			reg = <0x0 0x10000>;
100			enable-method = "psci";
101			next-level-cache = <&l2_1>;
102			power-domains = <&cpu_pd6>;
103			power-domain-names = "psci";
104
105			l2_1: l2-cache {
106				compatible = "cache";
107				cache-level = <2>;
108				cache-unified;
109			};
110		};
111
112		cpu7: cpu@10100 {
113			device_type = "cpu";
114			compatible = "qcom,oryon";
115			reg = <0x0 0x10100>;
116			enable-method = "psci";
117			next-level-cache = <&l2_1>;
118			power-domains = <&cpu_pd7>;
119			power-domain-names = "psci";
120		};
121
122		cpu-map {
123			cluster0 {
124				core0 {
125					cpu = <&cpu0>;
126				};
127
128				core1 {
129					cpu = <&cpu1>;
130				};
131
132				core2 {
133					cpu = <&cpu2>;
134				};
135
136				core3 {
137					cpu = <&cpu3>;
138				};
139
140				core4 {
141					cpu = <&cpu4>;
142				};
143
144				core5 {
145					cpu = <&cpu5>;
146				};
147			};
148
149			cluster1 {
150				core0 {
151					cpu = <&cpu6>;
152				};
153
154				core1 {
155					cpu = <&cpu7>;
156				};
157			};
158		};
159
160		idle-states {
161			entry-method = "psci";
162
163			cluster0_c4: cpu-sleep-0 {
164				compatible = "arm,idle-state";
165				idle-state-name = "ret";
166				arm,psci-suspend-param = <0x00000004>;
167				entry-latency-us = <93>;
168				exit-latency-us = <129>;
169				min-residency-us = <560>;
170			};
171
172			cluster1_c4: cpu-sleep-1 {
173				compatible = "arm,idle-state";
174				idle-state-name = "ret";
175				arm,psci-suspend-param = <0x00000004>;
176				entry-latency-us = <172>;
177				exit-latency-us = <130>;
178				min-residency-us = <686>;
179			};
180
181		};
182
183		domain-idle-states {
184			cluster_cl5: cluster-sleep-0 {
185				compatible = "domain-idle-state";
186				arm,psci-suspend-param = <0x01000054>;
187				entry-latency-us = <2150>;
188				exit-latency-us = <1983>;
189				min-residency-us = <9144>;
190			};
191
192			domain_ss3: domain-sleep-0 {
193				compatible = "domain-idle-state";
194				arm,psci-suspend-param = <0x0200c354>;
195				entry-latency-us = <2800>;
196				exit-latency-us = <4400>;
197				min-residency-us = <10150>;
198			};
199		};
200	};
201
202	firmware {
203		scm: scm {
204			compatible = "qcom,scm-sm8750", "qcom,scm";
205			interconnects = <&aggre2_noc MASTER_CRYPTO QCOM_ICC_TAG_ALWAYS
206					 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
207		};
208	};
209
210	clk_virt: interconnect-0 {
211		compatible = "qcom,sm8750-clk-virt";
212		#interconnect-cells = <2>;
213		qcom,bcm-voters = <&apps_bcm_voter>;
214	};
215
216	mc_virt: interconnect-1 {
217		compatible = "qcom,sm8750-mc-virt";
218		#interconnect-cells = <2>;
219		qcom,bcm-voters = <&apps_bcm_voter>;
220	};
221
222	memory@a0000000 {
223		device_type = "memory";
224		/* We expect the bootloader to fill in the size */
225		reg = <0x0 0xa0000000 0x0 0x0>;
226	};
227
228	pmu {
229		compatible = "arm,armv8-pmuv3";
230		interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW>;
231	};
232
233	psci {
234		compatible = "arm,psci-1.0";
235		method = "smc";
236
237		cpu_pd0: power-domain-cpu0 {
238			#power-domain-cells = <0>;
239			power-domains = <&cluster0_pd>;
240			domain-idle-states = <&cluster0_c4>;
241		};
242
243		cpu_pd1: power-domain-cpu1 {
244			#power-domain-cells = <0>;
245			power-domains = <&cluster0_pd>;
246			domain-idle-states = <&cluster0_c4>;
247		};
248
249		cpu_pd2: power-domain-cpu2 {
250			#power-domain-cells = <0>;
251			power-domains = <&cluster0_pd>;
252			domain-idle-states = <&cluster0_c4>;
253		};
254
255		cpu_pd3: power-domain-cpu3 {
256			#power-domain-cells = <0>;
257			power-domains = <&cluster0_pd>;
258			domain-idle-states = <&cluster0_c4>;
259		};
260
261		cpu_pd4: power-domain-cpu4 {
262			#power-domain-cells = <0>;
263			power-domains = <&cluster0_pd>;
264			domain-idle-states = <&cluster0_c4>;
265		};
266
267		cpu_pd5: power-domain-cpu5 {
268			#power-domain-cells = <0>;
269			power-domains = <&cluster0_pd>;
270			domain-idle-states = <&cluster0_c4>;
271		};
272
273		cpu_pd6: power-domain-cpu6 {
274			#power-domain-cells = <0>;
275			power-domains = <&cluster1_pd>;
276			domain-idle-states = <&cluster1_c4>;
277		};
278
279		cpu_pd7: power-domain-cpu7 {
280			#power-domain-cells = <0>;
281			power-domains = <&cluster1_pd>;
282			domain-idle-states = <&cluster1_c4>;
283		};
284
285		cluster0_pd: power-domain-cluster0 {
286			#power-domain-cells = <0>;
287			domain-idle-states = <&cluster_cl5>;
288			power-domains = <&system_pd>;
289		};
290
291		cluster1_pd: power-domain-cluster1 {
292			#power-domain-cells = <0>;
293			domain-idle-states = <&cluster_cl5>;
294			power-domains = <&system_pd>;
295		};
296
297		system_pd: power-domain-system {
298			#power-domain-cells = <0>;
299			domain-idle-states = <&domain_ss3>;
300		};
301	};
302
303	reserved-memory {
304		#address-cells = <2>;
305		#size-cells = <2>;
306		ranges;
307
308		gunyah_hyp_mem: gunyah-hyp@80000000 {
309			reg = <0x0 0x80000000 0x0 0xe00000>;
310			no-map;
311		};
312
313		cpusys_vm_mem: cpusys-vm-mem@80e00000 {
314			reg = <0x0 0x80e00000 0x0 0x40000>;
315			no-map;
316		};
317
318		cpucp_mem: cpucp@81200000 {
319			reg = <0x0 0x81200000 0x0 0x200000>;
320			no-map;
321		};
322
323		xbl_dtlog_mem: xbl-dtlog@81a00000 {
324			reg = <0x0 0x81a00000 0x0 0x40000>;
325			no-map;
326		};
327
328		aop_image_mem: aop-image@81c00000 {
329			reg = <0x0 0x81c00000 0x0 0x60000>;
330			no-map;
331		};
332
333		aop_cmd_db_mem: aop-cmd-db@81c60000 {
334			compatible = "qcom,cmd-db";
335			reg = <0x0 0x81c60000 0x0 0x20000>;
336			no-map;
337		};
338
339		/* Merged aop_config, tme_crash_dump, tme_log and uefi_log regions */
340		aop_tme_uefi_merged_mem: aop-tme-uefi-merged@81c80000 {
341			reg = <0x0 0x81c80000 0x0 0x74000>;
342			no-map;
343		};
344
345		/* Secdata region can be reused by apps */
346
347		smem_mem: smem@81d00000 {
348			compatible = "qcom,smem";
349			reg = <0x0 0x81d00000 0x0 0x200000>;
350			hwlocks = <&tcsr_mutex 3>;
351			no-map;
352		};
353
354		pdp_ns_shared_mem: pdp-ns-shared@81f00000 {
355			reg = <0x0 0x81f00000 0x0 0x100000>;
356			no-map;
357		};
358
359		cpucp_scandump_mem: cpucp-scandump@82000000 {
360			reg = <0x0 0x82000000 0x0 0x380000>;
361			no-map;
362		};
363
364		adsp_mhi_mem: adsp-mhi@82380000 {
365			reg = <0x0 0x82380000 0x0 0x20000>;
366			no-map;
367		};
368
369		soccp_sdi_mem: soccp-sdi@823a0000 {
370			reg = <0x0 0x823a0000 0x0 0x40000>;
371			no-map;
372		};
373
374		pmic_minii_dump_mem: pmic-minii-dump@823e0000 {
375			reg = <0x0 0x823e0000 0x0 0x80000>;
376			no-map;
377		};
378
379		pvmfw_mem: pvmfw@824a0000 {
380			reg = <0x0 0x824a0000 0x0 0x100000>;
381			no-map;
382		};
383
384		global_sync_mem: global-sync@82600000 {
385			reg = <0x0 0x82600000 0x0 0x100000>;
386			no-map;
387		};
388
389		tz_stat_mem: tz-stat@82700000 {
390			reg = <0x0 0x82700000 0x0 0x100000>;
391			no-map;
392		};
393
394		qdss_mem: qdss@82800000 {
395			reg = <0x0 0x82800000 0x0 0x2000000>;
396			no-map;
397		};
398
399		dsm_partition_1_mem: dsm-partition-1@84a00000 {
400			reg = <0x0 0x84a00000 0x0 0x4900000>;
401			no-map;
402		};
403
404		dsm_partition_2_mem: dsm-partition-2@89300000 {
405			reg = <0x0 0x89300000 0x0 0xa80000>;
406			no-map;
407		};
408
409		mpss_mem: mpss@8ba00000 {
410			reg = <0x0 0x8ba00000 0x0 0xf600000>;
411			no-map;
412		};
413
414		q6_mpss_dtb_mem: q6-mpss-dtb@9b000000 {
415			reg = <0x0 0x9b000000 0x0 0x80000>;
416			no-map;
417		};
418
419		ipa_fw_mem: ipa-fw@9b080000 {
420			reg = <0x0 0x9b080000 0x0 0x10000>;
421			no-map;
422		};
423
424		ipa_gsi_mem: ipa-gsi@9b090000 {
425			reg = <0x0 0x9b090000 0x0 0xa000>;
426			no-map;
427		};
428
429		gpu_micro_code_mem: gpu-micro-code@9b09a000 {
430			reg = <0x0 0x9b09a000 0x0 0x2000>;
431			no-map;
432		};
433
434		spss_region_mem: spss@9b0a0000  {
435			reg = <0x0 0x9b0a0000 0x0 0x1e0000>;
436			no-map;
437		};
438
439		/* First part of the "SPU secure shared memory" region */
440		spu_tz_shared_mem: spu-tz-shared@9b280000 {
441			reg = <0x0 0x9b280000 0x0 0x40000>;
442			no-map;
443		};
444
445		/* Second part of the "SPU secure shared memory" region */
446		spu_modem_shared_mem: spu-modem-shared@9b2c0000 {
447			reg = <0x0 0x9b2c0000 0x0 0x40000>;
448			no-map;
449		};
450
451		camera_mem: camera@9b300000 {
452			reg = <0x0 0x9b300000 0x0 0x800000>;
453			no-map;
454		};
455
456		camera_2_mem: camera-2@9bb00000 {
457			reg = <0x0 0x9bb00000 0x0 0x800000>;
458			no-map;
459		};
460
461		video_mem: video@9c300000 {
462			reg = <0x0 0x9c300000 0x0 0x800000>;
463			no-map;
464		};
465
466		cvp_mem: cvp@9cb00000 {
467			reg = <0x0 0x9cb00000 0x0 0x700000>;
468			no-map;
469		};
470
471		cdsp_mem: cdsp@9d200000 {
472			reg = <0x0 0x9d200000 0x0 0x1900000>;
473			no-map;
474		};
475
476		q6_cdsp_dtb_mem: q6-cdsp-dtb@9eb00000 {
477			reg = <0x0 0x9eb00000 0x0 0x80000>;
478			no-map;
479		};
480
481		soccp_mem: soccp@9ec00000 {
482			reg = <0x0 0x9ec00000 0x0 0x180000>;
483			no-map;
484		};
485
486		q6_adsp_dtb_mem: q6-adsp-dtb@9ed80000 {
487			reg = <0x0 0x9ed80000 0x0 0x80000>;
488			no-map;
489		};
490
491		adspslpi_mem: adspslpi@9ee00000 {
492			reg = <0x0 0x9ee00000 0x0 0x3a80000>;
493			no-map;
494		};
495
496		xbl_ramdump_mem: xbl-ramdump@b8000000 {
497			reg = <0x0 0xb8000000 0x0 0x1c0000>;
498			no-map;
499		};
500
501		hwfence_shbuf: hwfence-shbuf@d4e23000 {
502			no-map;
503			reg = <0x0 0xd4e23000 0x0 0x2dd000>;
504		};
505
506		/* Merged tz_reserved, xbl_sc, and qtee regions */
507		tz_merged_mem: tz-merged@d8000000 {
508			reg = <0x0 0xd8000000 0x0 0x600000>;
509			no-map;
510		};
511
512		trust_ui_vm_mem: trust-ui-vm@f3800000 {
513			reg = <0x0 0xf3800000 0x0 0x4400000>;
514			no-map;
515		};
516
517		oem_vm_mem: oem-vm@f7c00000 {
518			reg = <0x0 0xf7c00000 0x0 0x4c00000>;
519			no-map;
520		};
521
522		llcc_lpi_mem: llcc-lpi@ff800000 {
523			reg = <0x0 0xff800000 0x0 0x800000>;
524			no-map;
525		};
526	};
527
528	smp2p-adsp {
529		compatible = "qcom,smp2p";
530
531		interrupts-extended = <&ipcc IPCC_CLIENT_LPASS
532					     IPCC_MPROC_SIGNAL_SMP2P
533					     IRQ_TYPE_EDGE_RISING>;
534
535		mboxes = <&ipcc IPCC_CLIENT_LPASS
536				IPCC_MPROC_SIGNAL_SMP2P>;
537
538		qcom,smem = <443>, <429>;
539		qcom,local-pid = <0>;
540		qcom,remote-pid = <2>;
541
542		smp2p_adsp_out: master-kernel {
543			qcom,entry-name = "master-kernel";
544			#qcom,smem-state-cells = <1>;
545		};
546
547		smp2p_adsp_in: slave-kernel {
548			qcom,entry-name = "slave-kernel";
549			interrupt-controller;
550			#interrupt-cells = <2>;
551		};
552	};
553
554	smp2p-cdsp {
555		compatible = "qcom,smp2p";
556
557		interrupts-extended = <&ipcc IPCC_CLIENT_CDSP
558					     IPCC_MPROC_SIGNAL_SMP2P
559					     IRQ_TYPE_EDGE_RISING>;
560
561		mboxes = <&ipcc IPCC_CLIENT_CDSP
562				IPCC_MPROC_SIGNAL_SMP2P>;
563
564		qcom,smem = <94>, <432>;
565		qcom,local-pid = <0>;
566		qcom,remote-pid = <5>;
567
568		smp2p_cdsp_out: master-kernel {
569			qcom,entry-name = "master-kernel";
570			#qcom,smem-state-cells = <1>;
571		};
572
573		smp2p_cdsp_in: slave-kernel {
574			qcom,entry-name = "slave-kernel";
575			interrupt-controller;
576			#interrupt-cells = <2>;
577		};
578	};
579
580	smp2p-modem {
581		compatible = "qcom,smp2p";
582
583		interrupts-extended = <&ipcc IPCC_CLIENT_MPSS
584					     IPCC_MPROC_SIGNAL_SMP2P
585					     IRQ_TYPE_EDGE_RISING>;
586
587		mboxes = <&ipcc IPCC_CLIENT_MPSS
588				IPCC_MPROC_SIGNAL_SMP2P>;
589
590		qcom,smem = <435>, <428>;
591		qcom,local-pid = <0>;
592		qcom,remote-pid = <1>;
593
594		smp2p_modem_out: master-kernel {
595			qcom,entry-name = "master-kernel";
596			#qcom,smem-state-cells = <1>;
597		};
598
599		smp2p_modem_in: slave-kernel {
600			qcom,entry-name = "slave-kernel";
601			interrupt-controller;
602			#interrupt-cells = <2>;
603		};
604
605		ipa_smp2p_out: ipa-ap-to-modem {
606			qcom,entry-name = "ipa";
607			#qcom,smem-state-cells = <1>;
608		};
609
610		ipa_smp2p_in: ipa-modem-to-ap {
611			qcom,entry-name = "ipa";
612			interrupt-controller;
613			#interrupt-cells = <2>;
614		};
615
616		/* TODO: smem mailbox in and out */
617	};
618
619	soc: soc@0 {
620		compatible = "simple-bus";
621
622		#address-cells = <2>;
623		#size-cells = <2>;
624		dma-ranges = <0 0 0 0 0x10 0>;
625		ranges = <0 0 0 0 0x10 0>;
626
627		gcc: clock-controller@100000 {
628			compatible = "qcom,sm8750-gcc";
629			reg = <0x0 0x00100000 0x0 0x1f4200>;
630
631			clocks = <&bi_tcxo_div2>,
632				 <0>,
633				 <&sleep_clk>,
634				 <0>,
635				 <0>,
636				 <0>,
637				 <0>,
638				 <0>;
639
640			#clock-cells = <1>;
641			#reset-cells = <1>;
642			#power-domain-cells = <1>;
643		};
644
645		ipcc: mailbox@406000 {
646			compatible = "qcom,sm8750-ipcc", "qcom,ipcc";
647			reg = <0x0 0x00406000 0x0 0x1000>;
648
649			interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>;
650			interrupt-controller;
651			#interrupt-cells = <3>;
652
653			#mbox-cells = <2>;
654		};
655
656		gpi_dma2: dma-controller@800000 {
657			compatible = "qcom,sm8750-gpi-dma", "qcom,sm6350-gpi-dma";
658			reg = <0x0 0x00800000 0x0 0x60000>;
659
660			interrupts = <GIC_SPI 588 IRQ_TYPE_LEVEL_HIGH>,
661				     <GIC_SPI 589 IRQ_TYPE_LEVEL_HIGH>,
662				     <GIC_SPI 590 IRQ_TYPE_LEVEL_HIGH>,
663				     <GIC_SPI 591 IRQ_TYPE_LEVEL_HIGH>,
664				     <GIC_SPI 592 IRQ_TYPE_LEVEL_HIGH>,
665				     <GIC_SPI 593 IRQ_TYPE_LEVEL_HIGH>,
666				     <GIC_SPI 594 IRQ_TYPE_LEVEL_HIGH>,
667				     <GIC_SPI 595 IRQ_TYPE_LEVEL_HIGH>,
668				     <GIC_SPI 596 IRQ_TYPE_LEVEL_HIGH>,
669				     <GIC_SPI 597 IRQ_TYPE_LEVEL_HIGH>,
670				     <GIC_SPI 598 IRQ_TYPE_LEVEL_HIGH>,
671				     <GIC_SPI 599 IRQ_TYPE_LEVEL_HIGH>;
672
673			dma-channels = <12>;
674			dma-channel-mask = <0x1e>;
675			#dma-cells = <3>;
676
677			iommus = <&apps_smmu 0x436 0x0>;
678
679			status = "disabled";
680		};
681
682		qupv3_2: geniqup@8c0000 {
683			compatible = "qcom,geni-se-qup";
684			reg = <0x0 0x008c0000 0x0 0x2000>;
685
686			clocks = <&gcc GCC_QUPV3_WRAP_2_M_AHB_CLK>,
687				 <&gcc GCC_QUPV3_WRAP_2_S_AHB_CLK>;
688			clock-names = "m-ahb",
689				      "s-ahb";
690
691			iommus = <&apps_smmu 0x423 0x0>;
692
693			#address-cells = <2>;
694			#size-cells = <2>;
695			ranges;
696
697			status = "disabled";
698
699			i2c8: i2c@880000 {
700				compatible = "qcom,geni-i2c";
701				reg = <0x0 0x00880000 0x0 0x4000>;
702
703				interrupts = <GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>;
704
705				clocks = <&gcc GCC_QUPV3_WRAP2_S0_CLK>;
706				clock-names = "se";
707
708				interconnects = <&clk_virt MASTER_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS
709						 &clk_virt SLAVE_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS>,
710						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
711						 &config_noc SLAVE_QUP_2 QCOM_ICC_TAG_ALWAYS>,
712						<&aggre2_noc MASTER_QUP_2 QCOM_ICC_TAG_ALWAYS
713						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
714				interconnect-names = "qup-core",
715						     "qup-config",
716						     "qup-memory";
717
718				dmas = <&gpi_dma2 0 0 QCOM_GPI_I2C>,
719				       <&gpi_dma2 1 0 QCOM_GPI_I2C>;
720				dma-names = "tx",
721					    "rx";
722
723				pinctrl-0 = <&qup_i2c8_data_clk>;
724				pinctrl-names = "default";
725
726				#address-cells = <1>;
727				#size-cells = <0>;
728
729				status = "disabled";
730			};
731
732			spi8: spi@880000 {
733				compatible = "qcom,geni-spi";
734				reg = <0x0 0x00880000 0x0 0x4000>;
735
736				interrupts = <GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>;
737
738				clocks = <&gcc GCC_QUPV3_WRAP2_S0_CLK>;
739				clock-names = "se";
740
741				interconnects = <&clk_virt MASTER_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS
742						 &clk_virt SLAVE_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS>,
743						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
744						 &config_noc SLAVE_QUP_2 QCOM_ICC_TAG_ALWAYS>,
745						<&aggre2_noc MASTER_QUP_2 QCOM_ICC_TAG_ALWAYS
746						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
747				interconnect-names = "qup-core",
748						     "qup-config",
749						     "qup-memory";
750
751				dmas = <&gpi_dma2 0 0 QCOM_GPI_SPI>,
752				       <&gpi_dma2 1 0 QCOM_GPI_SPI>;
753				dma-names = "tx",
754					    "rx";
755
756				pinctrl-0 = <&qup_spi8_data_clk>, <&qup_spi8_cs>;
757				pinctrl-names = "default";
758
759				#address-cells = <1>;
760				#size-cells = <0>;
761
762				status = "disabled";
763			};
764
765			i2c9: i2c@884000 {
766				compatible = "qcom,geni-i2c";
767				reg = <0x0 0x00884000 0x0 0x4000>;
768
769				interrupts = <GIC_SPI 583 IRQ_TYPE_LEVEL_HIGH>;
770
771				clocks = <&gcc GCC_QUPV3_WRAP2_S1_CLK>;
772				clock-names = "se";
773
774				interconnects = <&clk_virt MASTER_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS
775						 &clk_virt SLAVE_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS>,
776						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
777						 &config_noc SLAVE_QUP_2 QCOM_ICC_TAG_ALWAYS>,
778						<&aggre2_noc MASTER_QUP_2 QCOM_ICC_TAG_ALWAYS
779						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
780				interconnect-names = "qup-core",
781						     "qup-config",
782						     "qup-memory";
783
784				dmas = <&gpi_dma2 0 1 QCOM_GPI_I2C>,
785				       <&gpi_dma2 1 1 QCOM_GPI_I2C>;
786				dma-names = "tx",
787					    "rx";
788
789				pinctrl-0 = <&qup_i2c9_data_clk>;
790				pinctrl-names = "default";
791
792				#address-cells = <1>;
793				#size-cells = <0>;
794
795				status = "disabled";
796			};
797
798			spi9: spi@884000 {
799				compatible = "qcom,geni-spi";
800				reg = <0x0 0x00884000 0x0 0x4000>;
801
802				interrupts = <GIC_SPI 583 IRQ_TYPE_LEVEL_HIGH>;
803
804				clocks = <&gcc GCC_QUPV3_WRAP2_S1_CLK>;
805				clock-names = "se";
806
807				interconnects = <&clk_virt MASTER_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS
808						 &clk_virt SLAVE_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS>,
809						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
810						 &config_noc SLAVE_QUP_2 QCOM_ICC_TAG_ALWAYS>,
811						<&aggre2_noc MASTER_QUP_2 QCOM_ICC_TAG_ALWAYS
812						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
813				interconnect-names = "qup-core",
814						     "qup-config",
815						     "qup-memory";
816
817				dmas = <&gpi_dma2 0 1 QCOM_GPI_SPI>,
818				       <&gpi_dma2 1 1 QCOM_GPI_SPI>;
819				dma-names = "tx",
820					    "rx";
821
822				pinctrl-0 = <&qup_spi9_data_clk>, <&qup_spi9_cs>;
823				pinctrl-names = "default";
824
825				#address-cells = <1>;
826				#size-cells = <0>;
827
828				status = "disabled";
829			};
830
831			i2c10: i2c@888000 {
832				compatible = "qcom,geni-i2c";
833				reg = <0x0 0x00888000 0x0 0x4000>;
834
835				interrupts = <GIC_SPI 584 IRQ_TYPE_LEVEL_HIGH>;
836
837				clocks = <&gcc GCC_QUPV3_WRAP2_S2_CLK>;
838				clock-names = "se";
839
840				interconnects = <&clk_virt MASTER_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS
841						 &clk_virt SLAVE_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS>,
842						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
843						 &config_noc SLAVE_QUP_2 QCOM_ICC_TAG_ALWAYS>,
844						<&aggre2_noc MASTER_QUP_2 QCOM_ICC_TAG_ALWAYS
845						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
846				interconnect-names = "qup-core",
847						     "qup-config",
848						     "qup-memory";
849
850				dmas = <&gpi_dma2 0 2 QCOM_GPI_I2C>,
851				       <&gpi_dma2 1 2 QCOM_GPI_I2C>;
852				dma-names = "tx",
853					    "rx";
854
855				pinctrl-0 = <&qup_i2c10_data_clk>;
856				pinctrl-names = "default";
857
858				#address-cells = <1>;
859				#size-cells = <0>;
860
861				status = "disabled";
862			};
863
864			spi10: spi@888000 {
865				compatible = "qcom,geni-spi";
866				reg = <0x0 0x00888000 0x0 0x4000>;
867
868				interrupts = <GIC_SPI 584 IRQ_TYPE_LEVEL_HIGH>;
869
870				clocks = <&gcc GCC_QUPV3_WRAP2_S2_CLK>;
871				clock-names = "se";
872
873				interconnects = <&clk_virt MASTER_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS
874						 &clk_virt SLAVE_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS>,
875						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
876						 &config_noc SLAVE_QUP_2 QCOM_ICC_TAG_ALWAYS>,
877						<&aggre2_noc MASTER_QUP_2 QCOM_ICC_TAG_ALWAYS
878						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
879				interconnect-names = "qup-core",
880						     "qup-config",
881						     "qup-memory";
882
883				dmas = <&gpi_dma2 0 2 QCOM_GPI_SPI>,
884				       <&gpi_dma2 1 2 QCOM_GPI_SPI>;
885				dma-names = "tx",
886					    "rx";
887
888				pinctrl-0 = <&qup_spi10_data_clk>, <&qup_spi10_cs>;
889				pinctrl-names = "default";
890
891				#address-cells = <1>;
892				#size-cells = <0>;
893
894				status = "disabled";
895			};
896
897			i2c11: i2c@88c000 {
898				compatible = "qcom,geni-i2c";
899				reg = <0x0 0x0088c000 0x0 0x4000>;
900
901				interrupts = <GIC_SPI 585 IRQ_TYPE_LEVEL_HIGH>;
902
903				clocks = <&gcc GCC_QUPV3_WRAP2_S3_CLK>;
904				clock-names = "se";
905
906				interconnects = <&clk_virt MASTER_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS
907						 &clk_virt SLAVE_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS>,
908						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
909						 &config_noc SLAVE_QUP_2 QCOM_ICC_TAG_ALWAYS>,
910						<&aggre2_noc MASTER_QUP_2 QCOM_ICC_TAG_ALWAYS
911						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
912				interconnect-names = "qup-core",
913						     "qup-config",
914						     "qup-memory";
915
916				dmas = <&gpi_dma2 0 3 QCOM_GPI_I2C>,
917				       <&gpi_dma2 1 3 QCOM_GPI_I2C>;
918				dma-names = "tx",
919					    "rx";
920
921				pinctrl-0 = <&qup_i2c11_data_clk>;
922				pinctrl-names = "default";
923
924				#address-cells = <1>;
925				#size-cells = <0>;
926
927				status = "disabled";
928			};
929
930			spi11: spi@88c000 {
931				compatible = "qcom,geni-spi";
932				reg = <0x0 0x0088c000 0x0 0x4000>;
933
934				interrupts = <GIC_SPI 585 IRQ_TYPE_LEVEL_HIGH>;
935
936				clocks = <&gcc GCC_QUPV3_WRAP2_S3_CLK>;
937				clock-names = "se";
938
939				interconnects = <&clk_virt MASTER_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS
940						 &clk_virt SLAVE_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS>,
941						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
942						 &config_noc SLAVE_QUP_2 QCOM_ICC_TAG_ALWAYS>,
943						<&aggre2_noc MASTER_QUP_2 QCOM_ICC_TAG_ALWAYS
944						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
945				interconnect-names = "qup-core",
946						     "qup-config",
947						     "qup-memory";
948
949				dmas = <&gpi_dma2 0 3 QCOM_GPI_SPI>,
950				       <&gpi_dma2 1 3 QCOM_GPI_SPI>;
951				dma-names = "tx",
952					    "rx";
953
954				pinctrl-0 = <&qup_spi11_data_clk>, <&qup_spi11_cs>;
955				pinctrl-names = "default";
956
957				#address-cells = <1>;
958				#size-cells = <0>;
959
960				status = "disabled";
961			};
962
963			i2c12: i2c@890000 {
964				compatible = "qcom,geni-i2c";
965				reg = <0x0 0x00890000 0x0 0x4000>;
966
967				interrupts = <GIC_SPI 586 IRQ_TYPE_LEVEL_HIGH>;
968
969				clocks = <&gcc GCC_QUPV3_WRAP2_S4_CLK>;
970				clock-names = "se";
971
972				interconnects = <&clk_virt MASTER_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS
973						 &clk_virt SLAVE_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS>,
974						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
975						 &config_noc SLAVE_QUP_2 QCOM_ICC_TAG_ALWAYS>,
976						<&aggre2_noc MASTER_QUP_2 QCOM_ICC_TAG_ALWAYS
977						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
978				interconnect-names = "qup-core",
979						     "qup-config",
980						     "qup-memory";
981
982				dmas = <&gpi_dma2 0 4 QCOM_GPI_I2C>,
983				       <&gpi_dma2 1 4 QCOM_GPI_I2C>;
984				dma-names = "tx",
985					    "rx";
986
987				pinctrl-0 = <&qup_i2c12_data_clk>;
988				pinctrl-names = "default";
989
990				#address-cells = <1>;
991				#size-cells = <0>;
992
993				status = "disabled";
994			};
995
996			spi12: spi@890000 {
997				compatible = "qcom,geni-spi";
998				reg = <0x0 0x00890000 0x0 0x4000>;
999
1000				interrupts = <GIC_SPI 586 IRQ_TYPE_LEVEL_HIGH>;
1001
1002				clocks = <&gcc GCC_QUPV3_WRAP2_S4_CLK>;
1003				clock-names = "se";
1004
1005				interconnects = <&clk_virt MASTER_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS
1006						 &clk_virt SLAVE_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS>,
1007						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1008						 &config_noc SLAVE_QUP_2 QCOM_ICC_TAG_ALWAYS>,
1009						<&aggre2_noc MASTER_QUP_2 QCOM_ICC_TAG_ALWAYS
1010						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1011				interconnect-names = "qup-core",
1012						     "qup-config",
1013						     "qup-memory";
1014
1015				dmas = <&gpi_dma2 0 4 QCOM_GPI_SPI>,
1016				       <&gpi_dma2 1 4 QCOM_GPI_SPI>;
1017				dma-names = "tx",
1018					    "rx";
1019
1020				pinctrl-0 = <&qup_spi12_data_clk>, <&qup_spi12_cs>;
1021				pinctrl-names = "default";
1022
1023				#address-cells = <1>;
1024				#size-cells = <0>;
1025
1026				status = "disabled";
1027			};
1028
1029			i2c13: i2c@894000 {
1030				compatible = "qcom,geni-i2c";
1031				reg = <0x0 0x00894000 0x0 0x4000>;
1032
1033				interrupts = <GIC_SPI 587 IRQ_TYPE_LEVEL_HIGH>;
1034
1035				clocks = <&gcc GCC_QUPV3_WRAP2_S5_CLK>;
1036				clock-names = "se";
1037
1038				interconnects = <&clk_virt MASTER_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS
1039						 &clk_virt SLAVE_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS>,
1040						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1041						 &config_noc SLAVE_QUP_2 QCOM_ICC_TAG_ALWAYS>,
1042						<&aggre2_noc MASTER_QUP_2 QCOM_ICC_TAG_ALWAYS
1043						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1044				interconnect-names = "qup-core",
1045						     "qup-config",
1046						     "qup-memory";
1047
1048				dmas = <&gpi_dma2 0 5 QCOM_GPI_I2C>,
1049				       <&gpi_dma2 1 5 QCOM_GPI_I2C>;
1050				dma-names = "tx",
1051					    "rx";
1052
1053				pinctrl-0 = <&qup_i2c13_data_clk>;
1054				pinctrl-names = "default";
1055
1056				#address-cells = <1>;
1057				#size-cells = <0>;
1058
1059				status = "disabled";
1060			};
1061
1062			spi13: spi@894000 {
1063				compatible = "qcom,geni-spi";
1064				reg = <0x0 0x00894000 0x0 0x4000>;
1065
1066				interrupts = <GIC_SPI 587 IRQ_TYPE_LEVEL_HIGH>;
1067
1068				clocks = <&gcc GCC_QUPV3_WRAP2_S5_CLK>;
1069				clock-names = "se";
1070
1071				interconnects = <&clk_virt MASTER_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS
1072						 &clk_virt SLAVE_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS>,
1073						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1074						 &config_noc SLAVE_QUP_2 QCOM_ICC_TAG_ALWAYS>,
1075						<&aggre2_noc MASTER_QUP_2 QCOM_ICC_TAG_ALWAYS
1076						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1077				interconnect-names = "qup-core",
1078						     "qup-config",
1079						     "qup-memory";
1080
1081				dmas = <&gpi_dma2 0 5 QCOM_GPI_SPI>,
1082				       <&gpi_dma2 1 5 QCOM_GPI_SPI>;
1083				dma-names = "tx",
1084					    "rx";
1085
1086				pinctrl-0 = <&qup_spi13_data_clk>, <&qup_spi13_cs>;
1087				pinctrl-names = "default";
1088
1089				#address-cells = <1>;
1090				#size-cells = <0>;
1091
1092				status = "disabled";
1093			};
1094
1095			uart14: serial@898000 {
1096				compatible = "qcom,geni-uart";
1097				reg = <0x0 0x00898000 0x0 0x4000>;
1098
1099				interrupts = <GIC_SPI 461 IRQ_TYPE_LEVEL_HIGH>;
1100
1101				clocks = <&gcc GCC_QUPV3_WRAP2_S6_CLK>;
1102				clock-names = "se";
1103
1104				interconnects = <&clk_virt MASTER_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS
1105						 &clk_virt SLAVE_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS>,
1106						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1107						 &config_noc SLAVE_QUP_2 QCOM_ICC_TAG_ALWAYS>;
1108				interconnect-names = "qup-core",
1109						     "qup-config";
1110
1111				pinctrl-0 = <&qup_uart14_default>;
1112				pinctrl-names = "default";
1113
1114				status = "disabled";
1115			};
1116
1117			i2c15: i2c@89c000 {
1118				compatible = "qcom,geni-i2c";
1119				reg = <0x0 0x0089c000 0x0 0x4000>;
1120
1121				interrupts = <GIC_SPI 462 IRQ_TYPE_LEVEL_HIGH>;
1122
1123				clocks = <&gcc GCC_QUPV3_WRAP2_S7_CLK>;
1124				clock-names = "se";
1125
1126				interconnects = <&clk_virt MASTER_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS
1127						 &clk_virt SLAVE_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS>,
1128						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1129						 &config_noc SLAVE_QUP_2 QCOM_ICC_TAG_ALWAYS>,
1130						<&aggre2_noc MASTER_QUP_2 QCOM_ICC_TAG_ALWAYS
1131						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1132				interconnect-names = "qup-core",
1133						     "qup-config",
1134						     "qup-memory";
1135
1136				dmas = <&gpi_dma2 0 7 QCOM_GPI_I2C>,
1137				       <&gpi_dma2 1 7 QCOM_GPI_I2C>;
1138				dma-names = "tx",
1139					    "rx";
1140
1141				pinctrl-0 = <&qup_i2c15_data_clk>;
1142				pinctrl-names = "default";
1143
1144				#address-cells = <1>;
1145				#size-cells = <0>;
1146
1147				status = "disabled";
1148			};
1149
1150			spi15: spi@89c000 {
1151				compatible = "qcom,geni-spi";
1152				reg = <0x0 0x0089c000 0x0 0x4000>;
1153
1154				interrupts = <GIC_SPI 462 IRQ_TYPE_LEVEL_HIGH>;
1155
1156				clocks = <&gcc GCC_QUPV3_WRAP2_S7_CLK>;
1157				clock-names = "se";
1158
1159				interconnects = <&clk_virt MASTER_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS
1160						 &clk_virt SLAVE_QUP_CORE_2 QCOM_ICC_TAG_ALWAYS>,
1161						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1162						 &config_noc SLAVE_QUP_2 QCOM_ICC_TAG_ALWAYS>,
1163						<&aggre2_noc MASTER_QUP_2 QCOM_ICC_TAG_ALWAYS
1164						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1165				interconnect-names = "qup-core",
1166						     "qup-config",
1167						     "qup-memory";
1168
1169				dmas = <&gpi_dma2 0 7 QCOM_GPI_SPI>,
1170				       <&gpi_dma2 1 7 QCOM_GPI_SPI>;
1171				dma-names = "tx",
1172					    "rx";
1173
1174				pinctrl-0 = <&qup_spi15_data_clk>, <&qup_spi15_cs>;
1175				pinctrl-names = "default";
1176
1177				#address-cells = <1>;
1178				#size-cells = <0>;
1179
1180				status = "disabled";
1181			};
1182		};
1183
1184		i2c_master_hub_0: geniqup@9c0000 {
1185			compatible = "qcom,geni-se-i2c-master-hub";
1186			reg = <0x0 0x009c0000 0x0 0x2000>;
1187
1188			clocks = <&gcc GCC_QUPV3_I2C_S_AHB_CLK>;
1189			clock-names = "s-ahb";
1190
1191			#address-cells = <2>;
1192			#size-cells = <2>;
1193			ranges;
1194
1195			status = "disabled";
1196
1197			i2c_hub_0: i2c@980000 {
1198				compatible = "qcom,geni-i2c-master-hub";
1199				reg = <0x0 0x00980000 0x0 0x4000>;
1200
1201				interrupts = <GIC_SPI 464 IRQ_TYPE_LEVEL_HIGH>;
1202
1203				clocks = <&gcc GCC_QUPV3_I2C_S0_CLK>,
1204					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1205				clock-names = "se",
1206					      "core";
1207
1208				interconnects = <&clk_virt MASTER_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS
1209						 &clk_virt SLAVE_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS>,
1210						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1211						 &config_noc SLAVE_I2C QCOM_ICC_TAG_ALWAYS>;
1212				interconnect-names = "qup-core",
1213						     "qup-config";
1214
1215				pinctrl-0 = <&hub_i2c0_data_clk>;
1216				pinctrl-names = "default";
1217
1218				#address-cells = <1>;
1219				#size-cells = <0>;
1220
1221				status = "disabled";
1222			};
1223
1224			i2c_hub_1: i2c@984000 {
1225				compatible = "qcom,geni-i2c-master-hub";
1226				reg = <0x0 0x00984000 0x0 0x4000>;
1227
1228				interrupts = <GIC_SPI 465 IRQ_TYPE_LEVEL_HIGH>;
1229
1230				clocks = <&gcc GCC_QUPV3_I2C_S1_CLK>,
1231					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1232				clock-names = "se",
1233					      "core";
1234
1235				interconnects = <&clk_virt MASTER_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS
1236						 &clk_virt SLAVE_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS>,
1237						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1238						 &config_noc SLAVE_I2C QCOM_ICC_TAG_ALWAYS>;
1239				interconnect-names = "qup-core",
1240						     "qup-config";
1241
1242				pinctrl-0 = <&hub_i2c1_data_clk>;
1243				pinctrl-names = "default";
1244
1245				#address-cells = <1>;
1246				#size-cells = <0>;
1247
1248				status = "disabled";
1249			};
1250
1251			i2c_hub_2: i2c@988000 {
1252				compatible = "qcom,geni-i2c-master-hub";
1253				reg = <0x0 0x00988000 0x0 0x4000>;
1254
1255				interrupts = <GIC_SPI 466 IRQ_TYPE_LEVEL_HIGH>;
1256
1257				clocks = <&gcc GCC_QUPV3_I2C_S2_CLK>,
1258					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1259				clock-names = "se",
1260					      "core";
1261
1262				interconnects = <&clk_virt MASTER_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS
1263						 &clk_virt SLAVE_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS>,
1264						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1265						 &config_noc SLAVE_I2C QCOM_ICC_TAG_ALWAYS>;
1266				interconnect-names = "qup-core",
1267						     "qup-config";
1268
1269				pinctrl-0 = <&hub_i2c2_data_clk>;
1270				pinctrl-names = "default";
1271
1272				#address-cells = <1>;
1273				#size-cells = <0>;
1274
1275				status = "disabled";
1276			};
1277
1278			i2c_hub_3: i2c@98c000 {
1279				compatible = "qcom,geni-i2c-master-hub";
1280				reg = <0x0 0x0098c000 0x0 0x4000>;
1281
1282				interrupts = <GIC_SPI 467 IRQ_TYPE_LEVEL_HIGH>;
1283
1284				clocks = <&gcc GCC_QUPV3_I2C_S3_CLK>,
1285					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1286				clock-names = "se",
1287					      "core";
1288
1289				interconnects = <&clk_virt MASTER_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS
1290						 &clk_virt SLAVE_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS>,
1291						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1292						 &config_noc SLAVE_I2C QCOM_ICC_TAG_ALWAYS>;
1293				interconnect-names = "qup-core",
1294						     "qup-config";
1295
1296				pinctrl-0 = <&hub_i2c3_data_clk>;
1297				pinctrl-names = "default";
1298
1299				#address-cells = <1>;
1300				#size-cells = <0>;
1301
1302				status = "disabled";
1303			};
1304
1305			i2c_hub_4: i2c@990000 {
1306				compatible = "qcom,geni-i2c-master-hub";
1307				reg = <0x0 0x00990000 0x0 0x4000>;
1308
1309				interrupts = <GIC_SPI 468 IRQ_TYPE_LEVEL_HIGH>;
1310
1311				clocks = <&gcc GCC_QUPV3_I2C_S4_CLK>,
1312					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1313				clock-names = "se",
1314					      "core";
1315
1316				interconnects = <&clk_virt MASTER_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS
1317						 &clk_virt SLAVE_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS>,
1318						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1319						 &config_noc SLAVE_I2C QCOM_ICC_TAG_ALWAYS>;
1320				interconnect-names = "qup-core",
1321						     "qup-config";
1322
1323				pinctrl-0 = <&hub_i2c4_data_clk>;
1324				pinctrl-names = "default";
1325
1326				#address-cells = <1>;
1327				#size-cells = <0>;
1328
1329				status = "disabled";
1330			};
1331
1332			i2c_hub_5: i2c@994000 {
1333				compatible = "qcom,geni-i2c-master-hub";
1334				reg = <0x0 0x00994000 0x0 0x4000>;
1335
1336				interrupts = <GIC_SPI 469 IRQ_TYPE_LEVEL_HIGH>;
1337
1338				clocks = <&gcc GCC_QUPV3_I2C_S5_CLK>,
1339					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1340				clock-names = "se",
1341					      "core";
1342
1343				interconnects = <&clk_virt MASTER_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS
1344						 &clk_virt SLAVE_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS>,
1345						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1346						 &config_noc SLAVE_I2C QCOM_ICC_TAG_ALWAYS>;
1347				interconnect-names = "qup-core",
1348						     "qup-config";
1349
1350				pinctrl-0 = <&hub_i2c5_data_clk>;
1351				pinctrl-names = "default";
1352
1353				#address-cells = <1>;
1354				#size-cells = <0>;
1355
1356				status = "disabled";
1357			};
1358
1359			i2c_hub_6: i2c@998000 {
1360				compatible = "qcom,geni-i2c-master-hub";
1361				reg = <0x0 0x00998000 0x0 0x4000>;
1362
1363				interrupts = <GIC_SPI 470 IRQ_TYPE_LEVEL_HIGH>;
1364
1365				clocks = <&gcc GCC_QUPV3_I2C_S6_CLK>,
1366					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1367				clock-names = "se",
1368					      "core";
1369
1370				interconnects = <&clk_virt MASTER_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS
1371						 &clk_virt SLAVE_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS>,
1372						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1373						 &config_noc SLAVE_I2C QCOM_ICC_TAG_ALWAYS>;
1374				interconnect-names = "qup-core",
1375						     "qup-config";
1376
1377				pinctrl-0 = <&hub_i2c6_data_clk>;
1378				pinctrl-names = "default";
1379
1380				#address-cells = <1>;
1381				#size-cells = <0>;
1382
1383				status = "disabled";
1384			};
1385
1386			i2c_hub_7: i2c@99c000 {
1387				compatible = "qcom,geni-i2c-master-hub";
1388				reg = <0x0 0x0099c000 0x0 0x4000>;
1389
1390				interrupts = <GIC_SPI 471 IRQ_TYPE_LEVEL_HIGH>;
1391
1392				clocks = <&gcc GCC_QUPV3_I2C_S7_CLK>,
1393					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1394				clock-names = "se",
1395					      "core";
1396
1397				interconnects = <&clk_virt MASTER_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS
1398						 &clk_virt SLAVE_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS>,
1399						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1400						 &config_noc SLAVE_I2C QCOM_ICC_TAG_ALWAYS>;
1401				interconnect-names = "qup-core",
1402						     "qup-config";
1403
1404				pinctrl-0 = <&hub_i2c7_data_clk>;
1405				pinctrl-names = "default";
1406
1407				#address-cells = <1>;
1408				#size-cells = <0>;
1409
1410				status = "disabled";
1411			};
1412
1413			i2c_hub_8: i2c@9a0000 {
1414				compatible = "qcom,geni-i2c-master-hub";
1415				reg = <0x0 0x009a0000 0x0 0x4000>;
1416
1417				interrupts = <GIC_SPI 472 IRQ_TYPE_LEVEL_HIGH>;
1418
1419				clocks = <&gcc GCC_QUPV3_I2C_S8_CLK>,
1420					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1421				clock-names = "se",
1422					      "core";
1423
1424				interconnects = <&clk_virt MASTER_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS
1425						 &clk_virt SLAVE_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS>,
1426						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1427						 &config_noc SLAVE_I2C QCOM_ICC_TAG_ALWAYS>;
1428				interconnect-names = "qup-core",
1429						     "qup-config";
1430
1431				pinctrl-0 = <&hub_i2c8_data_clk>;
1432				pinctrl-names = "default";
1433
1434				#address-cells = <1>;
1435				#size-cells = <0>;
1436
1437				status = "disabled";
1438			};
1439
1440			i2c_hub_9: i2c@9a4000 {
1441				compatible = "qcom,geni-i2c-master-hub";
1442				reg = <0x0 0x009a4000 0x0 0x4000>;
1443
1444				interrupts = <GIC_SPI 473 IRQ_TYPE_LEVEL_HIGH>;
1445
1446				clocks = <&gcc GCC_QUPV3_I2C_S9_CLK>,
1447					 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1448				clock-names = "se",
1449					      "core";
1450
1451				interconnects = <&clk_virt MASTER_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS
1452						 &clk_virt SLAVE_QUP_CORE_0 QCOM_ICC_TAG_ALWAYS>,
1453						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1454						 &config_noc SLAVE_I2C QCOM_ICC_TAG_ALWAYS>;
1455				interconnect-names = "qup-core",
1456						     "qup-config";
1457
1458				pinctrl-0 = <&hub_i2c9_data_clk>;
1459				pinctrl-names = "default";
1460
1461				#address-cells = <1>;
1462				#size-cells = <0>;
1463
1464				status = "disabled";
1465			};
1466		};
1467
1468		gpi_dma1: dma-controller@a00000 {
1469			compatible = "qcom,sm8750-gpi-dma", "qcom,sm6350-gpi-dma";
1470			reg = <0x0 0x00a00000 0x0 0x60000>;
1471
1472			interrupts = <GIC_SPI 279 IRQ_TYPE_LEVEL_HIGH>,
1473				     <GIC_SPI 280 IRQ_TYPE_LEVEL_HIGH>,
1474				     <GIC_SPI 281 IRQ_TYPE_LEVEL_HIGH>,
1475				     <GIC_SPI 282 IRQ_TYPE_LEVEL_HIGH>,
1476				     <GIC_SPI 283 IRQ_TYPE_LEVEL_HIGH>,
1477				     <GIC_SPI 284 IRQ_TYPE_LEVEL_HIGH>,
1478				     <GIC_SPI 293 IRQ_TYPE_LEVEL_HIGH>,
1479				     <GIC_SPI 294 IRQ_TYPE_LEVEL_HIGH>,
1480				     <GIC_SPI 295 IRQ_TYPE_LEVEL_HIGH>,
1481				     <GIC_SPI 296 IRQ_TYPE_LEVEL_HIGH>,
1482				     <GIC_SPI 297 IRQ_TYPE_LEVEL_HIGH>,
1483				     <GIC_SPI 298 IRQ_TYPE_LEVEL_HIGH>;
1484
1485			dma-channels = <12>;
1486			dma-channel-mask = <0x1e>;
1487			#dma-cells = <3>;
1488
1489			iommus = <&apps_smmu 0xb6 0x0>;
1490
1491			status = "disabled";
1492		};
1493
1494		qupv3_1: geniqup@ac0000 {
1495			compatible = "qcom,geni-se-qup";
1496			reg = <0x0 0x00ac0000 0x0 0x2000>;
1497
1498			clocks = <&gcc GCC_QUPV3_WRAP_1_M_AHB_CLK>,
1499				 <&gcc GCC_QUPV3_WRAP_1_S_AHB_CLK>;
1500			clock-names = "m-ahb",
1501				      "s-ahb";
1502
1503			iommus = <&apps_smmu 0xa3 0x0>;
1504
1505			#address-cells = <2>;
1506			#size-cells = <2>;
1507			ranges;
1508
1509			status = "disabled";
1510
1511			i2c0: i2c@a80000 {
1512				compatible = "qcom,geni-i2c";
1513				reg = <0x0 0x00a80000 0x0 0x4000>;
1514
1515				interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>;
1516
1517				clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>;
1518				clock-names = "se";
1519
1520				interconnects = <&clk_virt MASTER_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS
1521						 &clk_virt SLAVE_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS>,
1522						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1523						 &config_noc SLAVE_QUP_1 QCOM_ICC_TAG_ALWAYS>,
1524						<&aggre1_noc MASTER_QUP_1 QCOM_ICC_TAG_ALWAYS
1525						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1526				interconnect-names = "qup-core",
1527						     "qup-config",
1528						     "qup-memory";
1529
1530				dmas = <&gpi_dma1 0 0 QCOM_GPI_I2C>,
1531				       <&gpi_dma1 1 0 QCOM_GPI_I2C>;
1532				dma-names = "tx",
1533					    "rx";
1534
1535				pinctrl-0 = <&qup_i2c0_data_clk>;
1536				pinctrl-names = "default";
1537
1538				#address-cells = <1>;
1539				#size-cells = <0>;
1540
1541				status = "disabled";
1542			};
1543
1544			spi0: spi@a80000 {
1545				compatible = "qcom,geni-spi";
1546				reg = <0x0 0x00a80000 0x0 0x4000>;
1547
1548				interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>;
1549
1550				clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>;
1551				clock-names = "se";
1552
1553				interconnects = <&clk_virt MASTER_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS
1554						 &clk_virt SLAVE_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS>,
1555						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1556						 &config_noc SLAVE_QUP_1 QCOM_ICC_TAG_ALWAYS>,
1557						<&aggre1_noc MASTER_QUP_1 QCOM_ICC_TAG_ALWAYS
1558						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1559				interconnect-names = "qup-core",
1560						     "qup-config",
1561						     "qup-memory";
1562
1563				dmas = <&gpi_dma1 0 0 QCOM_GPI_SPI>,
1564				       <&gpi_dma1 1 0 QCOM_GPI_SPI>;
1565				dma-names = "tx",
1566					    "rx";
1567
1568				pinctrl-0 = <&qup_spi0_data_clk>, <&qup_spi0_cs>;
1569				pinctrl-names = "default";
1570
1571				#address-cells = <1>;
1572				#size-cells = <0>;
1573
1574				status = "disabled";
1575			};
1576
1577			i2c1: i2c@a84000 {
1578				compatible = "qcom,geni-i2c";
1579				reg = <0x0 0x00a84000 0x0 0x4000>;
1580
1581				interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>;
1582
1583				clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>;
1584				clock-names = "se";
1585
1586				interconnects = <&clk_virt MASTER_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS
1587						 &clk_virt SLAVE_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS>,
1588						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1589						 &config_noc SLAVE_QUP_1 QCOM_ICC_TAG_ALWAYS>,
1590						<&aggre1_noc MASTER_QUP_1 QCOM_ICC_TAG_ALWAYS
1591						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1592				interconnect-names = "qup-core",
1593						     "qup-config",
1594						     "qup-memory";
1595
1596				dmas = <&gpi_dma1 0 1 QCOM_GPI_I2C>,
1597				       <&gpi_dma1 1 1 QCOM_GPI_I2C>;
1598				dma-names = "tx",
1599					    "rx";
1600
1601				pinctrl-0 = <&qup_i2c1_data_clk>;
1602				pinctrl-names = "default";
1603
1604				#address-cells = <1>;
1605				#size-cells = <0>;
1606
1607				status = "disabled";
1608			};
1609
1610			spi1: spi@a84000 {
1611				compatible = "qcom,geni-spi";
1612				reg = <0x0 0x00a84000 0x0 0x4000>;
1613
1614				interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>;
1615
1616				clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>;
1617				clock-names = "se";
1618
1619				interconnects = <&clk_virt MASTER_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS
1620						 &clk_virt SLAVE_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS>,
1621						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1622						 &config_noc SLAVE_QUP_1 QCOM_ICC_TAG_ALWAYS>,
1623						<&aggre1_noc MASTER_QUP_1 QCOM_ICC_TAG_ALWAYS
1624						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1625				interconnect-names = "qup-core",
1626						     "qup-config",
1627						     "qup-memory";
1628
1629				dmas = <&gpi_dma1 0 1 QCOM_GPI_SPI>,
1630				       <&gpi_dma1 1 1 QCOM_GPI_SPI>;
1631				dma-names = "tx",
1632					    "rx";
1633
1634				pinctrl-0 = <&qup_spi1_data_clk>, <&qup_spi1_cs>;
1635				pinctrl-names = "default";
1636
1637				#address-cells = <1>;
1638				#size-cells = <0>;
1639
1640				status = "disabled";
1641			};
1642
1643			i2c2: i2c@a88000 {
1644				compatible = "qcom,geni-i2c";
1645				reg = <0x0 0x00a88000 0x0 0x4000>;
1646
1647				interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>;
1648
1649				clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>;
1650				clock-names = "se";
1651
1652				interconnects = <&clk_virt MASTER_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS
1653						 &clk_virt SLAVE_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS>,
1654						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1655						 &config_noc SLAVE_QUP_1 QCOM_ICC_TAG_ALWAYS>,
1656						<&aggre1_noc MASTER_QUP_1 QCOM_ICC_TAG_ALWAYS
1657						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1658				interconnect-names = "qup-core",
1659						     "qup-config",
1660						     "qup-memory";
1661
1662				dmas = <&gpi_dma1 0 2 QCOM_GPI_I2C>,
1663				       <&gpi_dma1 1 2 QCOM_GPI_I2C>;
1664				dma-names = "tx",
1665					    "rx";
1666
1667				pinctrl-0 = <&qup_i2c2_data_clk>;
1668				pinctrl-names = "default";
1669
1670				#address-cells = <1>;
1671				#size-cells = <0>;
1672
1673				status = "disabled";
1674			};
1675
1676			spi2: spi@a88000 {
1677				compatible = "qcom,geni-spi";
1678				reg = <0x0 0x00a88000 0x0 0x4000>;
1679
1680				interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>;
1681
1682				clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>;
1683				clock-names = "se";
1684
1685				interconnects = <&clk_virt MASTER_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS
1686						 &clk_virt SLAVE_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS>,
1687						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1688						 &config_noc SLAVE_QUP_1 QCOM_ICC_TAG_ALWAYS>,
1689						<&aggre1_noc MASTER_QUP_1 QCOM_ICC_TAG_ALWAYS
1690						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1691				interconnect-names = "qup-core",
1692						     "qup-config",
1693						     "qup-memory";
1694
1695				dmas = <&gpi_dma1 0 2 QCOM_GPI_SPI>,
1696				       <&gpi_dma1 1 2 QCOM_GPI_SPI>;
1697				dma-names = "tx",
1698					    "rx";
1699
1700				pinctrl-0 = <&qup_spi2_data_clk>, <&qup_spi2_cs>;
1701				pinctrl-names = "default";
1702
1703				#address-cells = <1>;
1704				#size-cells = <0>;
1705
1706				status = "disabled";
1707			};
1708
1709			i2c3: i2c@a8c000 {
1710				compatible = "qcom,geni-i2c";
1711				reg = <0x0 0x00a8c000 0x0 0x4000>;
1712
1713				interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
1714
1715				clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>;
1716				clock-names = "se";
1717
1718				interconnects = <&clk_virt MASTER_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS
1719						 &clk_virt SLAVE_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS>,
1720						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1721						 &config_noc SLAVE_QUP_1 QCOM_ICC_TAG_ALWAYS>,
1722						<&aggre1_noc MASTER_QUP_1 QCOM_ICC_TAG_ALWAYS
1723						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1724				interconnect-names = "qup-core",
1725						     "qup-config",
1726						     "qup-memory";
1727
1728				dmas = <&gpi_dma1 0 3 QCOM_GPI_I2C>,
1729				       <&gpi_dma1 1 3 QCOM_GPI_I2C>;
1730				dma-names = "tx",
1731					    "rx";
1732
1733				pinctrl-0 = <&qup_i2c3_data_clk>;
1734				pinctrl-names = "default";
1735
1736				#address-cells = <1>;
1737				#size-cells = <0>;
1738
1739				status = "disabled";
1740			};
1741
1742			spi3: spi@a8c000 {
1743				compatible = "qcom,geni-spi";
1744				reg = <0x0 0x00a8c000 0x0 0x4000>;
1745
1746				interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
1747
1748				clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>;
1749				clock-names = "se";
1750
1751				interconnects = <&clk_virt MASTER_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS
1752						 &clk_virt SLAVE_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS>,
1753						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1754						 &config_noc SLAVE_QUP_1 QCOM_ICC_TAG_ALWAYS>,
1755						<&aggre1_noc MASTER_QUP_1 QCOM_ICC_TAG_ALWAYS
1756						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1757				interconnect-names = "qup-core",
1758						     "qup-config",
1759						     "qup-memory";
1760
1761				dmas = <&gpi_dma1 0 3 QCOM_GPI_SPI>,
1762				       <&gpi_dma1 1 3 QCOM_GPI_SPI>;
1763				dma-names = "tx",
1764					    "rx";
1765
1766				pinctrl-0 = <&qup_spi3_data_clk>, <&qup_spi3_cs>;
1767				pinctrl-names = "default";
1768
1769				#address-cells = <1>;
1770				#size-cells = <0>;
1771
1772				status = "disabled";
1773			};
1774
1775			i2c4: i2c@a90000 {
1776				compatible = "qcom,geni-i2c";
1777				reg = <0x0 0x00a90000 0x0 0x4000>;
1778
1779				interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>;
1780
1781				clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>;
1782				clock-names = "se";
1783
1784				interconnects = <&clk_virt MASTER_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS
1785						 &clk_virt SLAVE_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS>,
1786						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1787						 &config_noc SLAVE_QUP_1 QCOM_ICC_TAG_ALWAYS>,
1788						<&aggre1_noc MASTER_QUP_1 QCOM_ICC_TAG_ALWAYS
1789						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1790				interconnect-names = "qup-core",
1791						     "qup-config",
1792						     "qup-memory";
1793
1794				dmas = <&gpi_dma1 0 4 QCOM_GPI_I2C>,
1795				       <&gpi_dma1 1 4 QCOM_GPI_I2C>;
1796				dma-names = "tx",
1797					    "rx";
1798
1799				pinctrl-0 = <&qup_i2c4_data_clk>;
1800				pinctrl-names = "default";
1801
1802				#address-cells = <1>;
1803				#size-cells = <0>;
1804
1805				status = "disabled";
1806			};
1807
1808			spi4: spi@a90000 {
1809				compatible = "qcom,geni-spi";
1810				reg = <0x0 0x00a90000 0x0 0x4000>;
1811
1812				interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>;
1813
1814				clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>;
1815				clock-names = "se";
1816
1817				interconnects = <&clk_virt MASTER_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS
1818						 &clk_virt SLAVE_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS>,
1819						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1820						 &config_noc SLAVE_QUP_1 QCOM_ICC_TAG_ALWAYS>,
1821						<&aggre1_noc MASTER_QUP_1 QCOM_ICC_TAG_ALWAYS
1822						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1823				interconnect-names = "qup-core",
1824						     "qup-config",
1825						     "qup-memory";
1826
1827				dmas = <&gpi_dma1 0 4 QCOM_GPI_SPI>,
1828				       <&gpi_dma1 1 4 QCOM_GPI_SPI>;
1829				dma-names = "tx",
1830					    "rx";
1831
1832				pinctrl-0 = <&qup_spi4_data_clk>, <&qup_spi4_cs>;
1833				pinctrl-names = "default";
1834
1835				#address-cells = <1>;
1836				#size-cells = <0>;
1837
1838				status = "disabled";
1839			};
1840
1841			i2c5: i2c@a94000 {
1842				compatible = "qcom,geni-i2c";
1843				reg = <0x0 0x00a94000 0x0 0x4000>;
1844
1845				interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>;
1846
1847				clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>;
1848				clock-names = "se";
1849
1850				interconnects = <&clk_virt MASTER_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS
1851						 &clk_virt SLAVE_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS>,
1852						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1853						 &config_noc SLAVE_QUP_1 QCOM_ICC_TAG_ALWAYS>,
1854						<&aggre1_noc MASTER_QUP_1 QCOM_ICC_TAG_ALWAYS
1855						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1856				interconnect-names = "qup-core",
1857						     "qup-config",
1858						     "qup-memory";
1859
1860				dmas = <&gpi_dma1 0 5 QCOM_GPI_I2C>,
1861				       <&gpi_dma1 1 5 QCOM_GPI_I2C>;
1862				dma-names = "tx",
1863					    "rx";
1864
1865				pinctrl-0 = <&qup_i2c5_data_clk>;
1866				pinctrl-names = "default";
1867
1868				#address-cells = <1>;
1869				#size-cells = <0>;
1870
1871				status = "disabled";
1872			};
1873
1874			spi5: spi@a94000 {
1875				compatible = "qcom,geni-spi";
1876				reg = <0x0 0x00a94000 0x0 0x4000>;
1877
1878				interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>;
1879
1880				clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>;
1881				clock-names = "se";
1882
1883				interconnects = <&clk_virt MASTER_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS
1884						 &clk_virt SLAVE_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS>,
1885						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1886						 &config_noc SLAVE_QUP_1 QCOM_ICC_TAG_ALWAYS>,
1887						<&aggre1_noc MASTER_QUP_1 QCOM_ICC_TAG_ALWAYS
1888						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1889				interconnect-names = "qup-core",
1890						     "qup-config",
1891						     "qup-memory";
1892
1893				dmas = <&gpi_dma1 0 5 QCOM_GPI_SPI>,
1894				       <&gpi_dma1 1 5 QCOM_GPI_SPI>;
1895				dma-names = "tx",
1896					    "rx";
1897
1898				pinctrl-0 = <&qup_spi5_data_clk>, <&qup_spi5_cs>;
1899				pinctrl-names = "default";
1900
1901				#address-cells = <1>;
1902				#size-cells = <0>;
1903
1904				status = "disabled";
1905			};
1906
1907			i2c6: i2c@a98000 {
1908				compatible = "qcom,geni-i2c";
1909				reg = <0x0 0x00a98000 0x0 0x4000>;
1910
1911				interrupts = <GIC_SPI 363 IRQ_TYPE_LEVEL_HIGH>;
1912
1913				clocks = <&gcc GCC_QUPV3_WRAP1_S6_CLK>;
1914				clock-names = "se";
1915
1916				interconnects = <&clk_virt MASTER_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS
1917						 &clk_virt SLAVE_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS>,
1918						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1919						 &config_noc SLAVE_QUP_1 QCOM_ICC_TAG_ALWAYS>,
1920						<&aggre1_noc MASTER_QUP_1 QCOM_ICC_TAG_ALWAYS
1921						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1922				interconnect-names = "qup-core",
1923						     "qup-config",
1924						     "qup-memory";
1925
1926				dmas = <&gpi_dma1 0 6 QCOM_GPI_I2C>,
1927				       <&gpi_dma1 1 6 QCOM_GPI_I2C>;
1928				dma-names = "tx",
1929					    "rx";
1930
1931				pinctrl-0 = <&qup_i2c6_data_clk>;
1932				pinctrl-names = "default";
1933
1934				#address-cells = <1>;
1935				#size-cells = <0>;
1936
1937				status = "disabled";
1938			};
1939
1940			spi6: spi@a98000 {
1941				compatible = "qcom,geni-spi";
1942				reg = <0x0 0x00a98000 0x0 0x4000>;
1943
1944				interrupts = <GIC_SPI 363 IRQ_TYPE_LEVEL_HIGH>;
1945
1946				clocks = <&gcc GCC_QUPV3_WRAP1_S6_CLK>;
1947				clock-names = "se";
1948
1949				interconnects = <&clk_virt MASTER_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS
1950						 &clk_virt SLAVE_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS>,
1951						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1952						 &config_noc SLAVE_QUP_1 QCOM_ICC_TAG_ALWAYS>,
1953						<&aggre1_noc MASTER_QUP_1 QCOM_ICC_TAG_ALWAYS
1954						 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
1955				interconnect-names = "qup-core",
1956						     "qup-config",
1957						     "qup-memory";
1958
1959				dmas = <&gpi_dma1 0 6 QCOM_GPI_SPI>,
1960				       <&gpi_dma1 1 6 QCOM_GPI_SPI>;
1961				dma-names = "tx",
1962					    "rx";
1963
1964				pinctrl-0 = <&qup_spi6_data_clk>, <&qup_spi6_cs>;
1965				pinctrl-names = "default";
1966
1967				#address-cells = <1>;
1968				#size-cells = <0>;
1969
1970				status = "disabled";
1971			};
1972
1973			uart7: serial@a9c000 {
1974				compatible = "qcom,geni-debug-uart";
1975				reg = <0x0 0x00a9c000 0x0 0x4000>;
1976
1977				interrupts = <GIC_SPI 579 IRQ_TYPE_LEVEL_HIGH>;
1978
1979				clocks = <&gcc GCC_QUPV3_WRAP1_S7_CLK>;
1980				clock-names = "se";
1981
1982				interconnects = <&clk_virt MASTER_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS
1983						 &clk_virt SLAVE_QUP_CORE_1 QCOM_ICC_TAG_ALWAYS>,
1984						<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
1985						 &config_noc SLAVE_QUP_1 QCOM_ICC_TAG_ALWAYS>;
1986				interconnect-names = "qup-core",
1987						     "qup-config";
1988
1989
1990				pinctrl-0 = <&qup_uart7_default>;
1991				pinctrl-names = "default";
1992
1993				status = "disabled";
1994			};
1995		};
1996
1997		rng: rng@10c3000 {
1998			compatible = "qcom,sm8750-trng", "qcom,trng";
1999			reg = <0x0 0x010c3000 0x0 0x1000>;
2000		};
2001
2002		cnoc_main: interconnect@1500000 {
2003			compatible = "qcom,sm8750-cnoc-main";
2004			reg = <0x0 0x01500000 0x0 0x16080>;
2005			qcom,bcm-voters = <&apps_bcm_voter>;
2006			#interconnect-cells = <2>;
2007		};
2008
2009		config_noc: interconnect@1600000 {
2010			compatible = "qcom,sm8750-config-noc";
2011			reg = <0x0 0x01600000 0x0 0x6200>;
2012			qcom,bcm-voters = <&apps_bcm_voter>;
2013			#interconnect-cells = <2>;
2014		};
2015
2016		system_noc: interconnect@1680000 {
2017			compatible = "qcom,sm8750-system-noc";
2018			reg = <0x0 0x01680000 0x0 0x1d080>;
2019			qcom,bcm-voters = <&apps_bcm_voter>;
2020			#interconnect-cells = <2>;
2021		};
2022
2023		pcie_noc: interconnect@16c0000 {
2024			compatible = "qcom,sm8750-pcie-anoc";
2025			reg = <0x0 0x016c0000 0x0 0x11400>;
2026			qcom,bcm-voters = <&apps_bcm_voter>;
2027			#interconnect-cells = <2>;
2028			clocks = <&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>,
2029				 <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>;
2030
2031		};
2032
2033		aggre1_noc: interconnect@16e0000 {
2034			compatible = "qcom,sm8750-aggre1-noc";
2035			reg = <0x0 0x016e0000 0x0 0x16400>;
2036			qcom,bcm-voters = <&apps_bcm_voter>;
2037			#interconnect-cells = <2>;
2038			clocks = <&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>,
2039				 <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>;
2040
2041		};
2042
2043		aggre2_noc: interconnect@1700000 {
2044			compatible = "qcom,sm8750-aggre2-noc";
2045			reg = <0x0 0x01700000 0x0 0x1f400>;
2046			qcom,bcm-voters = <&apps_bcm_voter>;
2047			#interconnect-cells = <2>;
2048			clocks = <&rpmhcc RPMH_IPA_CLK>;
2049		};
2050
2051		mmss_noc: interconnect@1780000 {
2052			compatible = "qcom,sm8750-mmss-noc";
2053			reg = <0x0 0x01780000 0x0 0x5b800>;
2054			qcom,bcm-voters = <&apps_bcm_voter>;
2055			#interconnect-cells = <2>;
2056		};
2057
2058		ice: crypto@1d88000 {
2059			compatible = "qcom,sm8750-inline-crypto-engine",
2060				     "qcom,inline-crypto-engine";
2061			reg = <0x0 0x01d88000 0x0 0x18000>;
2062
2063			clocks = <&gcc GCC_UFS_PHY_ICE_CORE_CLK>;
2064		};
2065
2066		cryptobam: dma-controller@1dc4000 {
2067			compatible = "qcom,bam-v1.7.4", "qcom,bam-v1.7.0";
2068			reg = <0x0 0x01dc4000 0x0 0x28000>;
2069
2070			interrupts = <GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>;
2071
2072			#dma-cells = <1>;
2073
2074			iommus = <&apps_smmu 0x480 0>,
2075				 <&apps_smmu 0x481 0>;
2076
2077			qcom,ee = <0>;
2078			qcom,controlled-remotely;
2079		};
2080
2081		crypto: crypto@1dfa000 {
2082			compatible = "qcom,sm8750-qce", "qcom,sm8150-qce", "qcom,qce";
2083			reg = <0x0 0x01dfa000 0x0 0x6000>;
2084
2085			interconnects = <&aggre2_noc MASTER_CRYPTO QCOM_ICC_TAG_ALWAYS
2086					 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
2087			interconnect-names = "memory";
2088
2089			dmas = <&cryptobam 4>, <&cryptobam 5>;
2090			dma-names = "rx", "tx";
2091
2092			iommus = <&apps_smmu 0x480 0>,
2093				 <&apps_smmu 0x481 0>;
2094		};
2095
2096		tcsr_mutex: hwlock@1f40000 {
2097			compatible = "qcom,tcsr-mutex";
2098			reg = <0x0 0x01f40000 0x0 0x20000>;
2099			#hwlock-cells = <1>;
2100		};
2101
2102		remoteproc_mpss: remoteproc@4080000 {
2103			compatible = "qcom,sm8750-mpss-pas";
2104			reg = <0x0 0x04080000 0x0 0x10000>;
2105
2106			interrupts-extended = <&intc GIC_SPI 264 IRQ_TYPE_EDGE_RISING>,
2107					      <&smp2p_modem_in 0 IRQ_TYPE_EDGE_RISING>,
2108					      <&smp2p_modem_in 1 IRQ_TYPE_EDGE_RISING>,
2109					      <&smp2p_modem_in 2 IRQ_TYPE_EDGE_RISING>,
2110					      <&smp2p_modem_in 3 IRQ_TYPE_EDGE_RISING>,
2111					      <&smp2p_modem_in 7 IRQ_TYPE_EDGE_RISING>;
2112			interrupt-names = "wdog",
2113					  "fatal",
2114					  "ready",
2115					  "handover",
2116					  "stop-ack",
2117					  "shutdown-ack";
2118
2119			clocks = <&rpmhcc RPMH_CXO_CLK>;
2120			clock-names = "xo";
2121
2122			interconnects = <&mc_virt MASTER_LLCC QCOM_ICC_TAG_ALWAYS
2123					 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
2124
2125			power-domains = <&rpmhpd RPMHPD_CX>,
2126					<&rpmhpd RPMHPD_MSS>;
2127			power-domain-names = "cx",
2128					     "mss";
2129
2130			memory-region = <&mpss_mem>, <&q6_mpss_dtb_mem>,
2131					<&dsm_partition_1_mem>,
2132					<&dsm_partition_2_mem>;
2133
2134			qcom,qmp = <&aoss_qmp>;
2135
2136			qcom,smem-states = <&smp2p_modem_out 0>;
2137			qcom,smem-state-names = "stop";
2138
2139			status = "disabled";
2140
2141			glink-edge {
2142				interrupts-extended = <&ipcc IPCC_CLIENT_MPSS
2143							     IPCC_MPROC_SIGNAL_GLINK_QMP
2144							     IRQ_TYPE_EDGE_RISING>;
2145
2146				mboxes = <&ipcc IPCC_CLIENT_MPSS
2147						IPCC_MPROC_SIGNAL_GLINK_QMP>;
2148
2149				qcom,remote-pid = <1>;
2150
2151				label = "mpss";
2152			};
2153		};
2154
2155		remoteproc_adsp: remoteproc@6800000 {
2156			compatible = "qcom,sm8750-adsp-pas", "qcom,sm8550-adsp-pas";
2157			reg = <0x0 0x06800000 0x0 0x10000>;
2158
2159			interrupts-extended = <&pdc 6 IRQ_TYPE_EDGE_RISING>,
2160					      <&smp2p_adsp_in 0 IRQ_TYPE_EDGE_RISING>,
2161					      <&smp2p_adsp_in 1 IRQ_TYPE_EDGE_RISING>,
2162					      <&smp2p_adsp_in 2 IRQ_TYPE_EDGE_RISING>,
2163					      <&smp2p_adsp_in 3 IRQ_TYPE_EDGE_RISING>,
2164					      <&smp2p_adsp_in 7 IRQ_TYPE_EDGE_RISING>;
2165			interrupt-names = "wdog",
2166					  "fatal",
2167					  "ready",
2168					  "handover",
2169					  "stop-ack",
2170					  "shutdown-ack";
2171
2172			clocks = <&rpmhcc RPMH_CXO_CLK>;
2173			clock-names = "xo";
2174
2175			interconnects = <&lpass_lpicx_noc MASTER_LPASS_PROC QCOM_ICC_TAG_ALWAYS
2176					 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
2177
2178			power-domains = <&rpmhpd RPMHPD_LCX>,
2179					<&rpmhpd RPMHPD_LMX>;
2180			power-domain-names = "lcx",
2181					     "lmx";
2182
2183			memory-region = <&adspslpi_mem>, <&q6_adsp_dtb_mem>;
2184
2185			qcom,qmp = <&aoss_qmp>;
2186
2187			qcom,smem-states = <&smp2p_adsp_out 0>;
2188			qcom,smem-state-names = "stop";
2189
2190			status = "disabled";
2191
2192			remoteproc_adsp_glink: glink-edge {
2193				interrupts-extended = <&ipcc IPCC_CLIENT_LPASS
2194							     IPCC_MPROC_SIGNAL_GLINK_QMP
2195							     IRQ_TYPE_EDGE_RISING>;
2196				mboxes = <&ipcc IPCC_CLIENT_LPASS
2197						IPCC_MPROC_SIGNAL_GLINK_QMP>;
2198				qcom,remote-pid = <2>;
2199				label = "lpass";
2200
2201				gpr {
2202					compatible = "qcom,gpr";
2203					qcom,glink-channels = "adsp_apps";
2204					qcom,domain = <GPR_DOMAIN_ID_ADSP>;
2205					qcom,intents = <512 20>;
2206					#address-cells = <1>;
2207					#size-cells = <0>;
2208
2209					q6apm: service@1 {
2210						compatible = "qcom,q6apm";
2211						reg = <GPR_APM_MODULE_IID>;
2212						#sound-dai-cells = <0>;
2213						qcom,protection-domain = "avs/audio",
2214									 "msm/adsp/audio_pd";
2215
2216						q6apmbedai: bedais {
2217							compatible = "qcom,q6apm-lpass-dais";
2218							#sound-dai-cells = <1>;
2219						};
2220
2221						q6apmdai: dais {
2222							compatible = "qcom,q6apm-dais";
2223							iommus = <&apps_smmu 0x1001 0x80>,
2224								 <&apps_smmu 0x1041 0x20>;
2225						};
2226					};
2227
2228					q6prm: service@2 {
2229						compatible = "qcom,q6prm";
2230						reg = <GPR_PRM_MODULE_IID>;
2231						qcom,protection-domain = "avs/audio",
2232									 "msm/adsp/audio_pd";
2233
2234						q6prmcc: clock-controller {
2235							compatible = "qcom,q6prm-lpass-clocks";
2236							#clock-cells = <2>;
2237						};
2238					};
2239				};
2240			};
2241		};
2242
2243		lpass_wsa2macro: codec@6aa0000 {
2244			compatible = "qcom,sm8750-lpass-wsa-macro", "qcom,sm8550-lpass-wsa-macro";
2245			reg = <0x0 0x06aa0000 0x0 0x1000>;
2246			clocks = <&q6prmcc LPASS_CLK_ID_WSA2_CORE_TX_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2247				 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2248				 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2249				 <&lpass_vamacro>;
2250			clock-names = "mclk",
2251				      "macro",
2252				      "dcodec",
2253				      "fsgen";
2254
2255			#clock-cells = <0>;
2256			clock-output-names = "wsa2-mclk";
2257			#sound-dai-cells = <1>;
2258		};
2259
2260		lpass_rxmacro: codec@6ac0000 {
2261			compatible = "qcom,sm8750-lpass-rx-macro", "qcom,sm8550-lpass-rx-macro";
2262			reg = <0x0 0x06ac0000 0x0 0x1000>;
2263			clocks = <&q6prmcc LPASS_CLK_ID_RX_CORE_TX_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2264				 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2265				 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2266				 <&lpass_vamacro>;
2267			clock-names = "mclk",
2268				      "macro",
2269				      "dcodec",
2270				      "fsgen";
2271
2272			#clock-cells = <0>;
2273			clock-output-names = "mclk";
2274			#sound-dai-cells = <1>;
2275		};
2276
2277		lpass_txmacro: codec@6ae0000 {
2278			compatible = "qcom,sm8750-lpass-tx-macro", "qcom,sm8550-lpass-tx-macro";
2279			reg = <0x0 0x06ae0000 0x0 0x1000>;
2280			clocks = <&q6prmcc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2281				 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2282				 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2283				 <&lpass_vamacro>;
2284			clock-names = "mclk",
2285				      "macro",
2286				      "dcodec",
2287				      "fsgen";
2288
2289			#clock-cells = <0>;
2290			clock-output-names = "mclk";
2291			#sound-dai-cells = <1>;
2292		};
2293
2294		lpass_wsamacro: codec@6b00000 {
2295			compatible = "qcom,sm8750-lpass-wsa-macro", "qcom,sm8550-lpass-wsa-macro";
2296			reg = <0x0 0x06b00000 0x0 0x1000>;
2297			clocks = <&q6prmcc LPASS_CLK_ID_WSA_CORE_TX_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2298				 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2299				 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2300				 <&lpass_vamacro>;
2301			clock-names = "mclk",
2302				      "macro",
2303				      "dcodec",
2304				      "fsgen";
2305
2306			#clock-cells = <0>;
2307			clock-output-names = "mclk";
2308			#sound-dai-cells = <1>;
2309		};
2310
2311		lpass_ag_noc: interconnect@7e40000 {
2312			compatible = "qcom,sm8750-lpass-ag-noc";
2313			reg = <0x0 0x07e40000 0x0 0xe080>;
2314			qcom,bcm-voters = <&apps_bcm_voter>;
2315			#interconnect-cells = <2>;
2316		};
2317
2318		lpass_lpiaon_noc: interconnect@7400000 {
2319			compatible = "qcom,sm8750-lpass-lpiaon-noc";
2320			reg = <0x0 0x07400000 0x0 0x19080>;
2321			qcom,bcm-voters = <&apps_bcm_voter>;
2322			#interconnect-cells = <2>;
2323		};
2324
2325		lpass_lpicx_noc: interconnect@7420000 {
2326			compatible = "qcom,sm8750-lpass-lpicx-noc";
2327			reg = <0x0 0x07420000 0x0 0x44080>;
2328			qcom,bcm-voters = <&apps_bcm_voter>;
2329			#interconnect-cells = <2>;
2330		};
2331
2332		lpass_vamacro: codec@7660000 {
2333			compatible = "qcom,sm8750-lpass-va-macro", "qcom,sm8550-lpass-va-macro";
2334			reg = <0x0 0x07660000 0x0 0x2000>;
2335			clocks = <&q6prmcc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2336				 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2337				 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>;
2338			clock-names = "mclk",
2339				      "macro",
2340				      "dcodec";
2341
2342			#clock-cells = <0>;
2343			clock-output-names = "fsgen";
2344			#sound-dai-cells = <1>;
2345		};
2346
2347		lpass_tlmm: pinctrl@7760000 {
2348			compatible = "qcom,sm8750-lpass-lpi-pinctrl",
2349				     "qcom,sm8650-lpass-lpi-pinctrl";
2350			reg = <0x0 0x07760000 0x0 0x20000>;
2351
2352			clocks = <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2353				 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>;
2354			clock-names = "core", "audio";
2355
2356			gpio-controller;
2357			#gpio-cells = <2>;
2358			gpio-ranges = <&lpass_tlmm 0 0 23>;
2359
2360			tx_swr_active: tx-swr-active-state {
2361				clk-pins {
2362					pins = "gpio0";
2363					function = "swr_tx_clk";
2364					drive-strength = <2>;
2365					slew-rate = <1>;
2366					bias-disable;
2367				};
2368
2369				data-pins {
2370					pins = "gpio1", "gpio2", "gpio14";
2371					function = "swr_tx_data";
2372					drive-strength = <2>;
2373					slew-rate = <1>;
2374					bias-bus-hold;
2375				};
2376			};
2377
2378			rx_swr_active: rx-swr-active-state {
2379				clk-pins {
2380					pins = "gpio3";
2381					function = "swr_rx_clk";
2382					drive-strength = <2>;
2383					slew-rate = <1>;
2384					bias-disable;
2385				};
2386
2387				data-pins {
2388					pins = "gpio4", "gpio5";
2389					function = "swr_rx_data";
2390					drive-strength = <2>;
2391					slew-rate = <1>;
2392					bias-bus-hold;
2393				};
2394			};
2395
2396			dmic01_default: dmic01-default-state {
2397				clk-pins {
2398					pins = "gpio6";
2399					function = "dmic1_clk";
2400					drive-strength = <8>;
2401					output-high;
2402				};
2403
2404				data-pins {
2405					pins = "gpio7";
2406					function = "dmic1_data";
2407					drive-strength = <8>;
2408					input-enable;
2409				};
2410			};
2411
2412			dmic23_default: dmic23-default-state {
2413				clk-pins {
2414					pins = "gpio8";
2415					function = "dmic2_clk";
2416					drive-strength = <8>;
2417					output-high;
2418				};
2419
2420				data-pins {
2421					pins = "gpio9";
2422					function = "dmic2_data";
2423					drive-strength = <8>;
2424					input-enable;
2425				};
2426			};
2427
2428			wsa_swr_active: wsa-swr-active-state {
2429				clk-pins {
2430					pins = "gpio10";
2431					function = "wsa_swr_clk";
2432					drive-strength = <2>;
2433					slew-rate = <1>;
2434					bias-disable;
2435				};
2436
2437				data-pins {
2438					pins = "gpio11";
2439					function = "wsa_swr_data";
2440					drive-strength = <2>;
2441					slew-rate = <1>;
2442					bias-bus-hold;
2443				};
2444			};
2445
2446			wsa2_swr_active: wsa2-swr-active-state {
2447				clk-pins {
2448					pins = "gpio15";
2449					function = "wsa2_swr_clk";
2450					drive-strength = <2>;
2451					slew-rate = <1>;
2452					bias-disable;
2453				};
2454
2455				data-pins {
2456					pins = "gpio16";
2457					function = "wsa2_swr_data";
2458					drive-strength = <2>;
2459					slew-rate = <1>;
2460					bias-bus-hold;
2461				};
2462			};
2463		};
2464
2465		pdc: interrupt-controller@b220000 {
2466			compatible = "qcom,sm8750-pdc", "qcom,pdc";
2467			reg = <0x0 0x0b220000 0x0 0x10000>, <0x0 0x164400f0 0x0 0x64>;
2468
2469			qcom,pdc-ranges = <0 745 51>, <51 527 47>,
2470					  <98 609 32>, <130 717 12>,
2471					  <142 251 5>, <147 796 16>;
2472			#interrupt-cells = <2>;
2473			interrupt-parent = <&intc>;
2474			interrupt-controller;
2475		};
2476
2477		aoss_qmp: power-management@c300000 {
2478			compatible = "qcom,sm8750-aoss-qmp", "qcom,aoss-qmp";
2479			reg = <0x0 0x0c300000 0x0 0x400>;
2480
2481			interrupt-parent = <&ipcc>;
2482			interrupts-extended = <&ipcc IPCC_CLIENT_AOP IPCC_MPROC_SIGNAL_GLINK_QMP
2483						     IRQ_TYPE_EDGE_RISING>;
2484
2485			mboxes = <&ipcc IPCC_CLIENT_AOP IPCC_MPROC_SIGNAL_GLINK_QMP>;
2486
2487			#clock-cells = <0>;
2488		};
2489
2490		sram@c3f0000 {
2491			compatible = "qcom,rpmh-stats";
2492			reg = <0x0 0x0c3f0000 0x0 0x400>;
2493		};
2494
2495		spmi_bus: spmi@c400000 {
2496			compatible = "qcom,spmi-pmic-arb";
2497			reg = <0x0 0x0c400000 0x0 0x3000>,
2498			      <0x0 0x0c500000 0x0 0x400000>,
2499			      <0x0 0x0c440000 0x0 0x80000>,
2500			      <0x0 0x0c4c0000 0x0 0x10000>,
2501			      <0x0 0x0c42d000 0x0 0x4000>;
2502			reg-names = "core",
2503				    "chnls",
2504				    "obsrvr",
2505				    "intr",
2506				    "cnfg";
2507
2508			interrupts-extended = <&pdc 1 IRQ_TYPE_LEVEL_HIGH>;
2509			interrupt-names = "periph_irq";
2510
2511			qcom,ee = <0>;
2512			qcom,channel = <0>;
2513			qcom,bus-id = <0>;
2514
2515			interrupt-controller;
2516			#interrupt-cells = <4>;
2517
2518			#address-cells = <2>;
2519			#size-cells = <0>;
2520		};
2521
2522		tlmm: pinctrl@f100000 {
2523			compatible = "qcom,sm8750-tlmm";
2524			reg = <0x0 0x0f100000 0x0 0x102000>;
2525
2526			interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
2527
2528			gpio-controller;
2529			#gpio-cells = <2>;
2530
2531			interrupt-controller;
2532			#interrupt-cells = <2>;
2533
2534			gpio-ranges = <&tlmm 0 0 216>;
2535			wakeup-parent = <&pdc>;
2536
2537			hub_i2c0_data_clk: hub-i2c0-data-clk-state {
2538				/* SDA, SCL */
2539				pins = "gpio64", "gpio65";
2540				function = "i2chub0_se0";
2541				drive-strength = <2>;
2542				bias-pull-up;
2543			};
2544
2545			hub_i2c1_data_clk: hub-i2c1-data-clk-state {
2546				/* SDA, SCL */
2547				pins = "gpio66", "gpio67";
2548				function = "i2chub0_se1";
2549				drive-strength = <2>;
2550				bias-pull-up;
2551			};
2552
2553			hub_i2c2_data_clk: hub-i2c2-data-clk-state {
2554				/* SDA, SCL */
2555				pins = "gpio68", "gpio69";
2556				function = "i2chub0_se2";
2557				drive-strength = <2>;
2558				bias-pull-up;
2559			};
2560
2561			hub_i2c3_data_clk: hub-i2c3-data-clk-state {
2562				/* SDA, SCL */
2563				pins = "gpio70", "gpio71";
2564				function = "i2chub0_se3";
2565				drive-strength = <2>;
2566				bias-pull-up;
2567			};
2568
2569			hub_i2c4_data_clk: hub-i2c4-data-clk-state {
2570				/* SDA, SCL */
2571				pins = "gpio72", "gpio73";
2572				function = "i2chub0_se4";
2573				drive-strength = <2>;
2574				bias-pull-up;
2575			};
2576
2577			hub_i2c5_data_clk: hub-i2c5-data-clk-state {
2578				/* SDA, SCL */
2579				pins = "gpio74", "gpio75";
2580				function = "i2chub0_se5";
2581				drive-strength = <2>;
2582				bias-pull-up;
2583			};
2584
2585			hub_i2c6_data_clk: hub-i2c6-data-clk-state {
2586				/* SDA, SCL */
2587				pins = "gpio76", "gpio77";
2588				function = "i2chub0_se6";
2589				drive-strength = <2>;
2590				bias-pull-up;
2591			};
2592
2593			hub_i2c7_data_clk: hub-i2c7-data-clk-state {
2594				/* SDA, SCL */
2595				pins = "gpio82", "gpio83";
2596				function = "i2chub0_se7";
2597				drive-strength = <2>;
2598				bias-pull-up;
2599			};
2600
2601			hub_i2c8_data_clk: hub-i2c8-data-clk-state {
2602				/* SDA, SCL */
2603				pins = "gpio206", "gpio207";
2604				function = "i2chub0_se8";
2605				drive-strength = <2>;
2606				bias-pull-up;
2607			};
2608
2609			hub_i2c9_data_clk: hub-i2c9-data-clk-state {
2610				/* SDA, SCL */
2611				pins = "gpio80", "gpio81";
2612				function = "i2chub0_se9";
2613				drive-strength = <2>;
2614				bias-pull-up;
2615			};
2616
2617			pcie0_default_state: pcie0-default-state {
2618				perst-pins {
2619					pins = "gpio102";
2620					function = "gpio";
2621					drive-strength = <2>;
2622					bias-pull-down;
2623				};
2624
2625				clkreq-pins {
2626					pins = "gpio103";
2627					function = "pcie0_clk_req_n";
2628					drive-strength = <2>;
2629					bias-pull-up;
2630				};
2631
2632				wake-pins {
2633					pins = "gpio104";
2634					function = "gpio";
2635					drive-strength = <2>;
2636					bias-pull-up;
2637				};
2638			};
2639
2640			qup_i2c0_data_clk: qup-i2c0-data-clk-state {
2641				/* SDA, SCL */
2642				pins = "gpio32", "gpio33";
2643				function = "qup1_se0";
2644				drive-strength = <2>;
2645				bias-pull-up;
2646			};
2647
2648			qup_i2c1_data_clk: qup-i2c1-data-clk-state {
2649				/* SDA, SCL */
2650				pins = "gpio36", "gpio37";
2651				function = "qup1_se1";
2652				drive-strength = <2>;
2653				bias-pull-up;
2654			};
2655
2656			qup_i2c2_data_clk: qup-i2c2-data-clk-state {
2657				/* SDA, SCL */
2658				pins = "gpio40", "gpio41";
2659				function = "qup1_se2";
2660				drive-strength = <2>;
2661				bias-pull-up;
2662			};
2663
2664			qup_i2c3_data_clk: qup-i2c3-data-clk-state {
2665				/* SDA, SCL */
2666				pins = "gpio44", "gpio45";
2667				function = "qup1_se3";
2668				drive-strength = <2>;
2669				bias-pull-up;
2670			};
2671
2672			qup_i2c4_data_clk: qup-i2c4-data-clk-state {
2673				/* SDA, SCL */
2674				pins = "gpio48", "gpio49";
2675				function = "qup1_se4";
2676				drive-strength = <2>;
2677				bias-pull-up;
2678			};
2679
2680			qup_i2c5_data_clk: qup-i2c5-data-clk-state {
2681				/* SDA, SCL */
2682				pins = "gpio52", "gpio53";
2683				function = "qup1_se5";
2684				drive-strength = <2>;
2685				bias-pull-up;
2686			};
2687
2688			qup_i2c6_data_clk: qup-i2c6-data-clk-state {
2689				/* SDA, SCL */
2690				pins = "gpio56", "gpio57";
2691				function = "qup1_se6";
2692				drive-strength = <2>;
2693				bias-pull-up;
2694			};
2695
2696			qup_i2c8_data_clk: qup-i2c8-data-clk-state {
2697				/* SDA, SCL */
2698				pins = "gpio0", "gpio1";
2699				function = "qup2_se0";
2700				drive-strength = <2>;
2701				bias-pull-up;
2702			};
2703
2704			qup_i2c9_data_clk: qup-i2c9-data-clk-state {
2705				/* SDA, SCL */
2706				pins = "gpio4", "gpio5";
2707				function = "qup2_se1";
2708				drive-strength = <2>;
2709				bias-pull-up;
2710			};
2711
2712			qup_i2c10_data_clk: qup-i2c10-data-clk-state {
2713				/* SDA, SCL */
2714				pins = "gpio8", "gpio9";
2715				function = "qup2_se2";
2716				drive-strength = <2>;
2717				bias-pull-up;
2718			};
2719
2720			qup_i2c11_data_clk: qup-i2c11-data-clk-state {
2721				/* SDA, SCL */
2722				pins = "gpio12", "gpio13";
2723				function = "qup2_se3";
2724				drive-strength = <2>;
2725				bias-pull-up;
2726			};
2727
2728			qup_i2c12_data_clk: qup-i2c12-data-clk-state {
2729				/* SDA, SCL */
2730				pins = "gpio16", "gpio17";
2731				function = "qup2_se4";
2732				drive-strength = <2>;
2733				bias-pull-up;
2734			};
2735
2736			qup_i2c13_data_clk: qup-i2c13-data-clk-state {
2737				/* SDA, SCL */
2738				pins = "gpio20", "gpio21";
2739				function = "qup2_se5";
2740				drive-strength = <2>;
2741				bias-pull-up;
2742			};
2743
2744			qup_i2c15_data_clk: qup-i2c15-data-clk-state {
2745				/* SDA, SCL */
2746				pins = "gpio28", "gpio29";
2747				function = "qup2_se7";
2748				drive-strength = <2>;
2749				bias-pull-up;
2750			};
2751
2752			qup_spi0_cs: qup-spi0-cs-state {
2753				pins = "gpio35";
2754				function = "qup1_se0";
2755				drive-strength = <6>;
2756				bias-disable;
2757			};
2758
2759			qup_spi0_data_clk: qup-spi0-data-clk-state {
2760				/* MISO, MOSI, CLK */
2761				pins = "gpio32", "gpio33", "gpio34";
2762				function = "qup1_se0";
2763				drive-strength = <6>;
2764				bias-disable;
2765			};
2766
2767			qup_spi1_cs: qup-spi1-cs-state {
2768				pins = "gpio39";
2769				function = "qup1_se1";
2770				drive-strength = <6>;
2771				bias-disable;
2772			};
2773
2774			qup_spi1_data_clk: qup-spi1-data-clk-state {
2775				/* MISO, MOSI, CLK */
2776				pins = "gpio36", "gpio37", "gpio38";
2777				function = "qup1_se1";
2778				drive-strength = <6>;
2779				bias-disable;
2780			};
2781
2782			qup_spi2_cs: qup-spi2-cs-state {
2783				pins = "gpio43";
2784				function = "qup1_se2";
2785				drive-strength = <6>;
2786				bias-disable;
2787			};
2788
2789			qup_spi2_data_clk: qup-spi2-data-clk-state {
2790				/* MISO, MOSI, CLK */
2791				pins = "gpio40", "gpio41", "gpio42";
2792				function = "qup1_se2";
2793				drive-strength = <6>;
2794				bias-disable;
2795			};
2796
2797			qup_spi3_cs: qup-spi3-cs-state {
2798				pins = "gpio47";
2799				function = "qup1_se3";
2800				drive-strength = <6>;
2801				bias-disable;
2802			};
2803
2804			qup_spi3_data_clk: qup-spi3-data-clk-state {
2805				/* MISO, MOSI, CLK */
2806				pins = "gpio44", "gpio45", "gpio46";
2807				function = "qup1_se3";
2808				drive-strength = <6>;
2809				bias-disable;
2810			};
2811
2812			qup_spi4_cs: qup-spi4-cs-state {
2813				pins = "gpio51";
2814				function = "qup1_se4";
2815				drive-strength = <6>;
2816				bias-disable;
2817			};
2818
2819			qup_spi4_data_clk: qup-spi4-data-clk-state {
2820				/* MISO, MOSI, CLK */
2821				pins = "gpio48", "gpio49", "gpio50";
2822				function = "qup1_se4";
2823				drive-strength = <6>;
2824				bias-disable;
2825			};
2826
2827			qup_spi5_cs: qup-spi5-cs-state {
2828				pins = "gpio55";
2829				function = "qup1_se5";
2830				drive-strength = <6>;
2831				bias-disable;
2832			};
2833
2834			qup_spi5_data_clk: qup-spi5-data-clk-state {
2835				/* MISO, MOSI, CLK */
2836				pins = "gpio52", "gpio53", "gpio54";
2837				function = "qup1_se5";
2838				drive-strength = <6>;
2839				bias-disable;
2840			};
2841
2842			qup_spi6_cs: qup-spi6-cs-state {
2843				pins = "gpio59";
2844				function = "qup1_se6";
2845				drive-strength = <6>;
2846				bias-disable;
2847			};
2848
2849			qup_spi6_data_clk: qup-spi6-data-clk-state {
2850				/* MISO, MOSI, CLK */
2851				pins = "gpio56", "gpio57", "gpio58";
2852				function = "qup1_se6";
2853				drive-strength = <6>;
2854				bias-disable;
2855			};
2856
2857			qup_spi8_cs: qup-spi8-cs-state {
2858				pins = "gpio3";
2859				function = "qup2_se0";
2860				drive-strength = <6>;
2861				bias-disable;
2862			};
2863
2864			qup_spi8_data_clk: qup-spi8-data-clk-state {
2865				/* MISO, MOSI, CLK */
2866				pins = "gpio0", "gpio1", "gpio2";
2867				function = "qup2_se0";
2868				drive-strength = <6>;
2869				bias-disable;
2870			};
2871
2872			qup_spi9_cs: qup-spi9-cs-state {
2873				pins = "gpio7";
2874				function = "qup2_se1";
2875				drive-strength = <6>;
2876				bias-disable;
2877			};
2878
2879			qup_spi9_data_clk: qup-spi9-data-clk-state {
2880				/* MISO, MOSI, CLK */
2881				pins = "gpio4", "gpio5", "gpio6";
2882				function = "qup2_se1";
2883				drive-strength = <6>;
2884				bias-disable;
2885			};
2886
2887			qup_spi10_cs: qup-spi10-cs-state {
2888				pins = "gpio11";
2889				function = "qup2_se2";
2890				drive-strength = <6>;
2891				bias-disable;
2892			};
2893
2894			qup_spi10_data_clk: qup-spi10-data-clk-state {
2895				/* MISO, MOSI, CLK */
2896				pins = "gpio8", "gpio9", "gpio10";
2897				function = "qup2_se2";
2898				drive-strength = <6>;
2899				bias-disable;
2900			};
2901
2902			qup_spi11_cs: qup-spi11-cs-state {
2903				pins = "gpio15";
2904				function = "qup2_se3";
2905				drive-strength = <6>;
2906				bias-disable;
2907			};
2908
2909			qup_spi11_data_clk: qup-spi11-data-clk-state {
2910				/* MISO, MOSI, CLK */
2911				pins = "gpio12", "gpio13", "gpio14";
2912				function = "qup2_se3";
2913				drive-strength = <6>;
2914				bias-disable;
2915			};
2916
2917			qup_spi12_cs: qup-spi12-cs-state {
2918				pins = "gpio19";
2919				function = "qup2_se4";
2920				drive-strength = <6>;
2921				bias-disable;
2922			};
2923
2924			qup_spi12_data_clk: qup-spi12-data-clk-state {
2925				/* MISO, MOSI, CLK */
2926				pins = "gpio16", "gpio17", "gpio18";
2927				function = "qup2_se4";
2928				drive-strength = <6>;
2929				bias-disable;
2930			};
2931
2932			qup_spi13_cs: qup-spi13-cs-state {
2933				pins = "gpio23";
2934				function = "qup2_se5";
2935				drive-strength = <6>;
2936				bias-pull-up;
2937			};
2938
2939			qup_spi13_data_clk: qup-spi13-data-clk-state {
2940				/* MISO, MOSI, CLK */
2941				pins = "gpio20", "gpio21", "gpio22";
2942				function = "qup2_se5";
2943				drive-strength = <6>;
2944				bias-disable;
2945			};
2946
2947			qup_spi15_cs: qup-spi15-cs-state {
2948				pins = "gpio31";
2949				function = "qup2_se7";
2950				drive-strength = <6>;
2951				bias-disable;
2952			};
2953
2954			qup_spi15_data_clk: qup-spi15-data-clk-state {
2955				/* MISO, MOSI, CLK */
2956				pins = "gpio28", "gpio29", "gpio30";
2957				function = "qup2_se7";
2958				drive-strength = <6>;
2959				bias-disable;
2960			};
2961
2962			qup_uart7_default: qup-uart7-default-state {
2963				/* TX, RX */
2964				pins = "gpio62", "gpio63";
2965				function = "qup1_se7";
2966				drive-strength = <2>;
2967				bias-disable;
2968			};
2969
2970			qup_uart14_default: qup-uart14-default-state {
2971				/* TX, RX */
2972				pins = "gpio26", "gpio27";
2973				function = "qup2_se6";
2974				drive-strength = <2>;
2975				bias-pull-up;
2976			};
2977
2978			qup_uart14_cts_rts: qup-uart14-cts-rts-state {
2979				/* CTS, RTS */
2980				pins = "gpio24", "gpio25";
2981				function = "qup2_se6";
2982				drive-strength = <2>;
2983				bias-pull-down;
2984			};
2985
2986			sdc2_sleep: sdc2-sleep-state {
2987				clk-pins {
2988					pins = "sdc2_clk";
2989					drive-strength = <2>;
2990					bias-disable;
2991				};
2992
2993				cmd-pins {
2994					pins = "sdc2_cmd";
2995					drive-strength = <2>;
2996					bias-pull-up;
2997				};
2998
2999				data-pins {
3000					pins = "sdc2_data";
3001					drive-strength = <2>;
3002					bias-pull-up;
3003				};
3004			};
3005
3006			sdc2_default: sdc2-default-state {
3007				clk-pins {
3008					pins = "sdc2_clk";
3009					drive-strength = <16>;
3010					bias-disable;
3011				};
3012
3013				cmd-pins {
3014					pins = "sdc2_cmd";
3015					drive-strength = <10>;
3016					bias-pull-up;
3017				};
3018
3019				data-pins {
3020					pins = "sdc2_data";
3021					drive-strength = <10>;
3022					bias-pull-up;
3023				};
3024			};
3025		};
3026
3027		tcsrcc: clock-controller@f204008 {
3028			compatible = "qcom,sm8750-tcsr", "syscon";
3029			reg = <0x0 0x0f204008 0x0 0x3004>;
3030
3031			clocks = <&rpmhcc RPMH_CXO_CLK>;
3032
3033			#clock-cells = <1>;
3034			#reset-cells = <1>;
3035		};
3036
3037		apps_smmu: iommu@15000000 {
3038			compatible = "qcom,sm8750-smmu-500", "qcom,smmu-500", "arm,mmu-500";
3039			reg = <0x0 0x15000000 0x0 0x100000>;
3040
3041			interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>,
3042				     <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>,
3043				     <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>,
3044				     <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>,
3045				     <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>,
3046				     <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>,
3047				     <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>,
3048				     <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,
3049				     <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>,
3050				     <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>,
3051				     <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>,
3052				     <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
3053				     <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
3054				     <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
3055				     <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
3056				     <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>,
3057				     <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
3058				     <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
3059				     <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
3060				     <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
3061				     <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
3062				     <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
3063				     <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
3064				     <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>,
3065				     <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>,
3066				     <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>,
3067				     <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>,
3068				     <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>,
3069				     <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>,
3070				     <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>,
3071				     <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>,
3072				     <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>,
3073				     <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>,
3074				     <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>,
3075				     <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>,
3076				     <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>,
3077				     <GIC_SPI 316 IRQ_TYPE_LEVEL_HIGH>,
3078				     <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>,
3079				     <GIC_SPI 318 IRQ_TYPE_LEVEL_HIGH>,
3080				     <GIC_SPI 319 IRQ_TYPE_LEVEL_HIGH>,
3081				     <GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH>,
3082				     <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>,
3083				     <GIC_SPI 322 IRQ_TYPE_LEVEL_HIGH>,
3084				     <GIC_SPI 323 IRQ_TYPE_LEVEL_HIGH>,
3085				     <GIC_SPI 324 IRQ_TYPE_LEVEL_HIGH>,
3086				     <GIC_SPI 325 IRQ_TYPE_LEVEL_HIGH>,
3087				     <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>,
3088				     <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>,
3089				     <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>,
3090				     <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>,
3091				     <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>,
3092				     <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>,
3093				     <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>,
3094				     <GIC_SPI 333 IRQ_TYPE_LEVEL_HIGH>,
3095				     <GIC_SPI 334 IRQ_TYPE_LEVEL_HIGH>,
3096				     <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>,
3097				     <GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH>,
3098				     <GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>,
3099				     <GIC_SPI 338 IRQ_TYPE_LEVEL_HIGH>,
3100				     <GIC_SPI 339 IRQ_TYPE_LEVEL_HIGH>,
3101				     <GIC_SPI 340 IRQ_TYPE_LEVEL_HIGH>,
3102				     <GIC_SPI 341 IRQ_TYPE_LEVEL_HIGH>,
3103				     <GIC_SPI 342 IRQ_TYPE_LEVEL_HIGH>,
3104				     <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>,
3105				     <GIC_SPI 344 IRQ_TYPE_LEVEL_HIGH>,
3106				     <GIC_SPI 345 IRQ_TYPE_LEVEL_HIGH>,
3107				     <GIC_SPI 395 IRQ_TYPE_LEVEL_HIGH>,
3108				     <GIC_SPI 396 IRQ_TYPE_LEVEL_HIGH>,
3109				     <GIC_SPI 397 IRQ_TYPE_LEVEL_HIGH>,
3110				     <GIC_SPI 398 IRQ_TYPE_LEVEL_HIGH>,
3111				     <GIC_SPI 399 IRQ_TYPE_LEVEL_HIGH>,
3112				     <GIC_SPI 400 IRQ_TYPE_LEVEL_HIGH>,
3113				     <GIC_SPI 401 IRQ_TYPE_LEVEL_HIGH>,
3114				     <GIC_SPI 402 IRQ_TYPE_LEVEL_HIGH>,
3115				     <GIC_SPI 403 IRQ_TYPE_LEVEL_HIGH>,
3116				     <GIC_SPI 404 IRQ_TYPE_LEVEL_HIGH>,
3117				     <GIC_SPI 405 IRQ_TYPE_LEVEL_HIGH>,
3118				     <GIC_SPI 406 IRQ_TYPE_LEVEL_HIGH>,
3119				     <GIC_SPI 407 IRQ_TYPE_LEVEL_HIGH>,
3120				     <GIC_SPI 408 IRQ_TYPE_LEVEL_HIGH>,
3121				     <GIC_SPI 409 IRQ_TYPE_LEVEL_HIGH>,
3122				     <GIC_SPI 418 IRQ_TYPE_LEVEL_HIGH>,
3123				     <GIC_SPI 419 IRQ_TYPE_LEVEL_HIGH>,
3124				     <GIC_SPI 412 IRQ_TYPE_LEVEL_HIGH>,
3125				     <GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>,
3126				     <GIC_SPI 707 IRQ_TYPE_LEVEL_HIGH>,
3127				     <GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>,
3128				     <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>,
3129				     <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>,
3130				     <GIC_SPI 690 IRQ_TYPE_LEVEL_HIGH>,
3131				     <GIC_SPI 691 IRQ_TYPE_LEVEL_HIGH>,
3132				     <GIC_SPI 692 IRQ_TYPE_LEVEL_HIGH>,
3133				     <GIC_SPI 693 IRQ_TYPE_LEVEL_HIGH>,
3134				     <GIC_SPI 694 IRQ_TYPE_LEVEL_HIGH>,
3135				     <GIC_SPI 695 IRQ_TYPE_LEVEL_HIGH>,
3136				     <GIC_SPI 696 IRQ_TYPE_LEVEL_HIGH>,
3137				     <GIC_SPI 697 IRQ_TYPE_LEVEL_HIGH>,
3138				     <GIC_SPI 410 IRQ_TYPE_LEVEL_HIGH>,
3139				     <GIC_SPI 488 IRQ_TYPE_LEVEL_HIGH>,
3140				     <GIC_SPI 489 IRQ_TYPE_LEVEL_HIGH>,
3141				     <GIC_SPI 490 IRQ_TYPE_LEVEL_HIGH>,
3142				     <GIC_SPI 491 IRQ_TYPE_LEVEL_HIGH>,
3143				     <GIC_SPI 492 IRQ_TYPE_LEVEL_HIGH>,
3144				     <GIC_SPI 493 IRQ_TYPE_LEVEL_HIGH>,
3145				     <GIC_SPI 494 IRQ_TYPE_LEVEL_HIGH>,
3146				     <GIC_SPI 495 IRQ_TYPE_LEVEL_HIGH>,
3147				     <GIC_SPI 496 IRQ_TYPE_LEVEL_HIGH>,
3148				     <GIC_SPI 497 IRQ_TYPE_LEVEL_HIGH>,
3149				     <GIC_SPI 498 IRQ_TYPE_LEVEL_HIGH>,
3150				     <GIC_SPI 499 IRQ_TYPE_LEVEL_HIGH>,
3151				     <GIC_SPI 500 IRQ_TYPE_LEVEL_HIGH>,
3152				     <GIC_SPI 501 IRQ_TYPE_LEVEL_HIGH>,
3153				     <GIC_SPI 502 IRQ_TYPE_LEVEL_HIGH>;
3154
3155			#iommu-cells = <2>;
3156			#global-interrupts = <1>;
3157
3158			dma-coherent;
3159		};
3160
3161		intc: interrupt-controller@16000000 {
3162			compatible = "arm,gic-v3";
3163			reg = <0x0 0x16000000 0x0 0x10000>,
3164			      <0x0 0x16080000 0x0 0x200000>;
3165
3166			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
3167
3168			#interrupt-cells = <3>;
3169			interrupt-controller;
3170
3171			#redistributor-regions = <1>;
3172			redistributor-stride = <0x0 0x40000>;
3173
3174			#address-cells = <2>;
3175			#size-cells = <2>;
3176			ranges;
3177
3178			gic_its: msi-controller@16040000 {
3179				compatible = "arm,gic-v3-its";
3180				reg = <0x0 0x16040000 0x0 0x20000>;
3181
3182				msi-controller;
3183				#msi-cells = <1>;
3184			};
3185		};
3186
3187		apps_rsc: rsc@16500000 {
3188			compatible = "qcom,rpmh-rsc";
3189			reg = <0x0 0x16500000 0x0 0x10000>,
3190			      <0x0 0x16510000 0x0 0x10000>,
3191			      <0x0 0x16520000 0x0 0x10000>;
3192			reg-names = "drv-0",
3193				    "drv-1",
3194				    "drv-2";
3195
3196			interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
3197				     <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
3198				     <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
3199			qcom,tcs-offset = <0xd00>;
3200			qcom,drv-id = <2>;
3201			qcom,tcs-config = <ACTIVE_TCS    3>, <SLEEP_TCS     2>,
3202					  <WAKE_TCS      2>, <CONTROL_TCS   0>;
3203
3204			label = "apps_rsc";
3205
3206			power-domains = <&system_pd>;
3207
3208			apps_bcm_voter: bcm-voter {
3209				compatible = "qcom,bcm-voter";
3210			};
3211
3212			rpmhcc: clock-controller {
3213				compatible = "qcom,sm8750-rpmh-clk";
3214
3215				clocks = <&xo_board>;
3216				clock-names = "xo";
3217
3218				#clock-cells = <1>;
3219			};
3220
3221			rpmhpd: power-controller {
3222				compatible = "qcom,sm8750-rpmhpd";
3223
3224				operating-points-v2 = <&rpmhpd_opp_table>;
3225
3226				#power-domain-cells = <1>;
3227
3228				rpmhpd_opp_table: opp-table {
3229					compatible = "operating-points-v2";
3230
3231					rpmhpd_opp_ret: opp-16 {
3232						opp-level = <RPMH_REGULATOR_LEVEL_RETENTION>;
3233					};
3234
3235					rpmhpd_opp_min_svs: opp-48 {
3236						opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
3237					};
3238
3239					rpmhpd_opp_low_svs_d3: opp-50 {
3240						opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_D3>;
3241					};
3242
3243					rpmhpd_opp_low_svs_d2: opp-52 {
3244						opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_D2>;
3245					};
3246
3247					rpmhpd_opp_low_svs_d1: opp-56 {
3248						opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_D1>;
3249					};
3250
3251					rpmhpd_opp_low_svs_d0: opp-60 {
3252						opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_D0>;
3253					};
3254
3255					rpmhpd_opp_low_svs: opp-64 {
3256						opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
3257					};
3258
3259					rpmhpd_opp_low_svs_l1: opp-80 {
3260						opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_L1>;
3261					};
3262
3263					rpmhpd_opp_svs: opp-128 {
3264						opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
3265					};
3266
3267					rpmhpd_opp_svs_l0: opp-144 {
3268						opp-level = <RPMH_REGULATOR_LEVEL_SVS_L0>;
3269					};
3270
3271					rpmhpd_opp_svs_l1: opp-192 {
3272						opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
3273					};
3274
3275					rpmhpd_opp_svs_l2: opp-224 {
3276						opp-level = <RPMH_REGULATOR_LEVEL_SVS_L2>;
3277					};
3278
3279					rpmhpd_opp_nom: opp-256 {
3280						opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
3281					};
3282
3283					rpmhpd_opp_nom_l1: opp-320 {
3284						opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
3285					};
3286
3287					rpmhpd_opp_nom_l2: opp-336 {
3288						opp-level = <RPMH_REGULATOR_LEVEL_NOM_L2>;
3289					};
3290
3291					rpmhpd_opp_turbo: opp-384 {
3292						opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
3293					};
3294
3295					rpmhpd_opp_turbo_l1: opp-416 {
3296						opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>;
3297					};
3298
3299					rpmhpd_opp_turbo_l2: opp-432 {
3300						opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L2>;
3301					};
3302
3303					rpmhpd_opp_turbo_l3: opp-448 {
3304						opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L3>;
3305					};
3306
3307					rpmhpd_opp_turbo_l4: opp-452 {
3308						opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L4>;
3309					};
3310
3311					rpmhpd_opp_super_turbo_no_cpr: opp-480 {
3312						opp-level =
3313							<RPMH_REGULATOR_LEVEL_SUPER_TURBO_NO_CPR>;
3314					};
3315				};
3316			};
3317		};
3318
3319		timer@16800000 {
3320			compatible = "arm,armv7-timer-mem";
3321			reg = <0x0 0x16800000 0x0 0x1000>;
3322
3323			#address-cells = <2>;
3324			#size-cells = <1>;
3325			ranges = <0 0 0 0 0x20000000>;
3326
3327			frame@16801000 {
3328				reg = <0x0 0x16801000 0x1000>,
3329				      <0x0 0x16802000 0x1000>;
3330
3331				interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
3332					     <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>;
3333
3334				frame-number = <0>;
3335			};
3336
3337			frame@16803000 {
3338				reg = <0x0 0x16803000 0x1000>;
3339
3340				interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
3341
3342				frame-number = <1>;
3343
3344				status = "disabled";
3345			};
3346
3347			frame@16805000 {
3348				reg = <0x0 0x16805000 0x1000>;
3349
3350				interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
3351
3352				frame-number = <2>;
3353
3354				status = "disabled";
3355			};
3356
3357			frame@16807000 {
3358				reg = <0x0 0x16807000 0x1000>;
3359
3360				interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
3361
3362				frame-number = <3>;
3363
3364				status = "disabled";
3365			};
3366
3367			frame@16809000 {
3368				reg = <0x0 0x16809000 0x1000>;
3369
3370				interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
3371
3372				frame-number = <4>;
3373
3374				status = "disabled";
3375			};
3376
3377			frame@1680b000 {
3378				reg = <0x0 0x1680b000 0x1000>;
3379
3380				interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
3381
3382				frame-number = <5>;
3383
3384				status = "disabled";
3385			};
3386
3387			frame@1680d000 {
3388				reg = <0x0 0x1680d000 0x1000>;
3389
3390				interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
3391
3392				frame-number = <6>;
3393
3394				status = "disabled";
3395			};
3396		};
3397
3398		gem_noc: interconnect@24100000 {
3399			compatible = "qcom,sm8750-gem-noc";
3400			reg = <0x0 0x24100000 0x0 0x14b080>;
3401			qcom,bcm-voters = <&apps_bcm_voter>;
3402			#interconnect-cells = <2>;
3403		};
3404
3405		system-cache-controller@24800000 {
3406			compatible = "qcom,sm8750-llcc";
3407			reg = <0x0 0x24800000 0x0 0x200000>,
3408			      <0x0 0x25800000 0x0 0x200000>,
3409			      <0x0 0x24c00000 0x0 0x200000>,
3410			      <0x0 0x25c00000 0x0 0x200000>,
3411			      <0x0 0x26800000 0x0 0x200000>,
3412			      <0x0 0x26c00000 0x0 0x200000>;
3413			reg-names = "llcc0_base",
3414				    "llcc1_base",
3415				    "llcc2_base",
3416				    "llcc3_base",
3417				    "llcc_broadcast_base",
3418				    "llcc_broadcast_and_base";
3419
3420			interrupts = <GIC_SPI 266 IRQ_TYPE_LEVEL_HIGH>;
3421		};
3422
3423		nsp_noc: interconnect@320c0000 {
3424			compatible = "qcom,sm8750-nsp-noc";
3425			reg = <0x0 0x320c0000 0x0 0x13080>;
3426			qcom,bcm-voters = <&apps_bcm_voter>;
3427			#interconnect-cells = <2>;
3428		};
3429
3430		remoteproc_cdsp: remoteproc@32300000 {
3431			compatible = "qcom,sm8750-cdsp-pas", "qcom,sm8650-cdsp-pas";
3432			reg = <0x0 0x32300000 0x0 0x10000>;
3433
3434			interrupts-extended = <&intc GIC_SPI 578 IRQ_TYPE_EDGE_RISING>,
3435					      <&smp2p_cdsp_in 0 IRQ_TYPE_EDGE_RISING>,
3436					      <&smp2p_cdsp_in 1 IRQ_TYPE_EDGE_RISING>,
3437					      <&smp2p_cdsp_in 2 IRQ_TYPE_EDGE_RISING>,
3438					      <&smp2p_cdsp_in 3 IRQ_TYPE_EDGE_RISING>,
3439					      <&smp2p_cdsp_in 7 IRQ_TYPE_EDGE_RISING>;
3440			interrupt-names = "wdog",
3441					  "fatal",
3442					  "ready",
3443					  "handover",
3444					  "stop-ack",
3445					  "shutdown-ack";
3446
3447			clocks = <&rpmhcc RPMH_CXO_CLK>;
3448			clock-names = "xo";
3449
3450			interconnects = <&nsp_noc MASTER_CDSP_PROC QCOM_ICC_TAG_ALWAYS
3451					 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
3452
3453			power-domains = <&rpmhpd RPMHPD_CX>,
3454					<&rpmhpd RPMHPD_MXC>,
3455					<&rpmhpd RPMHPD_NSP>;
3456			power-domain-names = "cx",
3457					     "mxc",
3458					     "nsp";
3459
3460			memory-region = <&cdsp_mem>, <&q6_cdsp_dtb_mem>, <&global_sync_mem>;
3461			qcom,qmp = <&aoss_qmp>;
3462			qcom,smem-states = <&smp2p_cdsp_out 0>;
3463			qcom,smem-state-names = "stop";
3464
3465			status = "disabled";
3466
3467			glink-edge {
3468				interrupts-extended = <&ipcc IPCC_CLIENT_CDSP
3469							     IPCC_MPROC_SIGNAL_GLINK_QMP
3470							     IRQ_TYPE_EDGE_RISING>;
3471				mboxes = <&ipcc IPCC_CLIENT_CDSP
3472						IPCC_MPROC_SIGNAL_GLINK_QMP>;
3473				qcom,remote-pid = <5>;
3474				label = "cdsp";
3475
3476				fastrpc {
3477					compatible = "qcom,fastrpc";
3478					qcom,glink-channels = "fastrpcglink-apps-dsp";
3479					label = "cdsp";
3480					qcom,non-secure-domain;
3481					#address-cells = <1>;
3482					#size-cells = <0>;
3483
3484					compute-cb@1 {
3485						compatible = "qcom,fastrpc-compute-cb";
3486						reg = <1>;
3487						iommus = <&apps_smmu 0x19c1 0x0>,
3488							 <&apps_smmu 0x0c21 0x0>,
3489							 <&apps_smmu 0x0c01 0x40>;
3490						dma-coherent;
3491					};
3492
3493					compute-cb@2 {
3494						compatible = "qcom,fastrpc-compute-cb";
3495						reg = <2>;
3496						iommus = <&apps_smmu 0x1962 0x0>,
3497							 <&apps_smmu 0x0c02 0x20>,
3498							 <&apps_smmu 0x0c42 0x0>,
3499							 <&apps_smmu 0x19c2 0x0>;
3500						dma-coherent;
3501					};
3502
3503					compute-cb@3 {
3504						compatible = "qcom,fastrpc-compute-cb";
3505						reg = <3>;
3506						iommus = <&apps_smmu 0x1963 0x0>,
3507							 <&apps_smmu 0x0c23 0x0>,
3508							 <&apps_smmu 0x0c03 0x40>,
3509							 <&apps_smmu 0x19c3 0x0>;
3510						dma-coherent;
3511					};
3512
3513					compute-cb@4 {
3514						compatible = "qcom,fastrpc-compute-cb";
3515						reg = <4>;
3516						iommus = <&apps_smmu 0x1964 0x0>,
3517							 <&apps_smmu 0x0c24 0x0>,
3518							 <&apps_smmu 0x0c04 0x40>,
3519							 <&apps_smmu 0x19c4 0x0>;
3520						dma-coherent;
3521					};
3522
3523					compute-cb@5 {
3524						compatible = "qcom,fastrpc-compute-cb";
3525						reg = <5>;
3526						iommus = <&apps_smmu 0x1965 0x0>,
3527							 <&apps_smmu 0x0c25 0x0>,
3528							 <&apps_smmu 0x0c05 0x40>,
3529							 <&apps_smmu 0x19c5 0x0>;
3530						dma-coherent;
3531					};
3532
3533					compute-cb@6 {
3534						compatible = "qcom,fastrpc-compute-cb";
3535						reg = <6>;
3536						iommus = <&apps_smmu 0x1966 0x0>,
3537							 <&apps_smmu 0x0c06 0x20>,
3538							 <&apps_smmu 0x0c46 0x0>,
3539							 <&apps_smmu 0x19c6 0x0>;
3540						dma-coherent;
3541					};
3542
3543					compute-cb@7 {
3544						compatible = "qcom,fastrpc-compute-cb";
3545						reg = <7>;
3546						iommus = <&apps_smmu 0x1967 0x0>,
3547							 <&apps_smmu 0x0c27 0x0>,
3548							 <&apps_smmu 0x0c07 0x40>,
3549							 <&apps_smmu 0x19c7 0x0>;
3550						dma-coherent;
3551					};
3552
3553					compute-cb@8 {
3554						compatible = "qcom,fastrpc-compute-cb";
3555						reg = <8>;
3556						iommus = <&apps_smmu 0x1968 0x0>,
3557							 <&apps_smmu 0x0c08 0x20>,
3558							 <&apps_smmu 0x0c48 0x0>,
3559							 <&apps_smmu 0x19c8 0x0>;
3560						dma-coherent;
3561					};
3562
3563					/* note: secure cb9 in downstream */
3564
3565					compute-cb@12 {
3566						compatible = "qcom,fastrpc-compute-cb";
3567						reg = <12>;
3568						iommus = <&apps_smmu 0x196c 0x0>,
3569							 <&apps_smmu 0x0c2c 0x20>,
3570							 <&apps_smmu 0x0c0c 0x40>,
3571							 <&apps_smmu 0x19cc 0x0>;
3572						dma-coherent;
3573					};
3574
3575					compute-cb@13 {
3576						compatible = "qcom,fastrpc-compute-cb";
3577						reg = <13>;
3578						iommus = <&apps_smmu 0x196d 0x0>,
3579							 <&apps_smmu 0x0c0d 0x20>,
3580							 <&apps_smmu 0x0c2e 0x0>,
3581							 <&apps_smmu 0x0c4d 0x0>,
3582							 <&apps_smmu 0x19cd 0x0>;
3583						dma-coherent;
3584					};
3585
3586					compute-cb@14 {
3587						compatible = "qcom,fastrpc-compute-cb";
3588						reg = <14>;
3589						iommus = <&apps_smmu 0x196e 0x0>,
3590							 <&apps_smmu 0x0c0e 0x20>,
3591							 <&apps_smmu 0x19ce 0x0>;
3592						dma-coherent;
3593					};
3594				};
3595			};
3596		};
3597	};
3598
3599	timer {
3600		compatible = "arm,armv8-timer";
3601
3602		interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>,
3603			     <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>,
3604			     <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>,
3605			     <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>;
3606	};
3607};
3608