xref: /openbmc/linux/arch/arm64/boot/dts/qcom/qdu1000.dtsi (revision 2ae1beb3)
1// SPDX-License-Identifier: BSD-3-Clause
2/*
3 * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
4 */
5
6#include <dt-bindings/clock/qcom,qdu1000-gcc.h>
7#include <dt-bindings/clock/qcom,rpmh.h>
8#include <dt-bindings/dma/qcom-gpi.h>
9#include <dt-bindings/interconnect/qcom,qdu1000-rpmh.h>
10#include <dt-bindings/interrupt-controller/arm-gic.h>
11#include <dt-bindings/power/qcom-rpmpd.h>
12#include <dt-bindings/soc/qcom,rpmh-rsc.h>
13
14/ {
15	interrupt-parent = <&intc>;
16
17	#address-cells = <2>;
18	#size-cells = <2>;
19
20	chosen: chosen { };
21
22	cpus {
23		#address-cells = <2>;
24		#size-cells = <0>;
25
26		CPU0: cpu@0 {
27			device_type = "cpu";
28			compatible = "arm,cortex-a55";
29			reg = <0x0 0x0>;
30			clocks = <&cpufreq_hw 0>;
31			enable-method = "psci";
32			power-domains = <&CPU_PD0>;
33			power-domain-names = "psci";
34			qcom,freq-domains = <&cpufreq_hw 0>;
35			next-level-cache = <&L2_0>;
36			L2_0: l2-cache {
37				compatible = "cache";
38				cache-level = <2>;
39				cache-unified;
40				next-level-cache = <&L3_0>;
41				L3_0: l3-cache {
42					compatible = "cache";
43					cache-level = <3>;
44					cache-unified;
45				};
46			};
47		};
48
49		CPU1: cpu@100 {
50			device_type = "cpu";
51			compatible = "arm,cortex-a55";
52			reg = <0x0 0x100>;
53			clocks = <&cpufreq_hw 0>;
54			enable-method = "psci";
55			power-domains = <&CPU_PD1>;
56			power-domain-names = "psci";
57			qcom,freq-domains = <&cpufreq_hw 0>;
58			next-level-cache = <&L2_100>;
59			L2_100: l2-cache {
60				compatible = "cache";
61				cache-level = <2>;
62				cache-unified;
63				next-level-cache = <&L3_0>;
64			};
65		};
66
67		CPU2: cpu@200 {
68			device_type = "cpu";
69			compatible = "arm,cortex-a55";
70			reg = <0x0 0x200>;
71			clocks = <&cpufreq_hw 0>;
72			enable-method = "psci";
73			power-domains = <&CPU_PD2>;
74			power-domain-names = "psci";
75			qcom,freq-domains = <&cpufreq_hw 0>;
76			next-level-cache = <&L2_200>;
77			L2_200: l2-cache {
78				compatible = "cache";
79				cache-level = <2>;
80				cache-unified;
81				next-level-cache = <&L3_0>;
82			};
83		};
84
85		CPU3: cpu@300 {
86			device_type = "cpu";
87			compatible = "arm,cortex-a55";
88			reg = <0x0 0x300>;
89			clocks = <&cpufreq_hw 0>;
90			enable-method = "psci";
91			power-domains = <&CPU_PD3>;
92			power-domain-names = "psci";
93			qcom,freq-domains = <&cpufreq_hw 0>;
94			next-level-cache = <&L2_300>;
95			L2_300: l2-cache {
96				compatible = "cache";
97				cache-level = <2>;
98				cache-unified;
99				next-level-cache = <&L3_0>;
100			};
101		};
102
103		cpu-map {
104			cluster0 {
105				core0 {
106					cpu = <&CPU0>;
107				};
108
109				core1 {
110					cpu = <&CPU1>;
111				};
112
113				core2 {
114					cpu = <&CPU2>;
115				};
116
117				core3 {
118					cpu = <&CPU3>;
119				};
120			};
121		};
122	};
123
124	idle-states {
125		entry-method = "psci";
126
127		CPU_OFF: cpu-sleep-0 {
128			compatible = "arm,idle-state";
129			entry-latency-us = <274>;
130			exit-latency-us = <480>;
131			min-residency-us = <3934>;
132			arm,psci-suspend-param = <0x40000004>;
133			local-timer-stop;
134		};
135	};
136
137	domain-idle-states {
138		CLUSTER_SLEEP_0: cluster-sleep-0 {
139			compatible = "domain-idle-state";
140			entry-latency-us = <584>;
141			exit-latency-us = <2332>;
142			min-residency-us = <6118>;
143			arm,psci-suspend-param = <0x41000044>;
144		};
145
146		CLUSTER_SLEEP_1: cluster-sleep-1 {
147			compatible = "domain-idle-state";
148			entry-latency-us = <2893>;
149			exit-latency-us = <4023>;
150			min-residency-us = <9987>;
151			arm,psci-suspend-param = <0x41003344>;
152		};
153	};
154
155	firmware {
156		scm {
157			compatible = "qcom,scm-qdu1000", "qcom,scm";
158		};
159	};
160
161	mc_virt: interconnect-0 {
162		compatible = "qcom,qdu1000-mc-virt";
163		qcom,bcm-voters = <&apps_bcm_voter>;
164		#interconnect-cells = <2>;
165	};
166
167	clk_virt: interconnect-1 {
168		compatible = "qcom,qdu1000-clk-virt";
169		qcom,bcm-voters = <&apps_bcm_voter>;
170		#interconnect-cells = <2>;
171	};
172
173	memory@80000000 {
174		device_type = "memory";
175		/* We expect the bootloader to fill in the size */
176		reg = <0x0 0x80000000 0x0 0x0>;
177	};
178
179	pmu {
180		compatible = "arm,armv8-pmuv3";
181		interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH>;
182	};
183
184	psci {
185		compatible = "arm,psci-1.0";
186		method = "smc";
187
188		CPU_PD0: power-domain-cpu0 {
189			#power-domain-cells = <0>;
190			power-domains = <&CLUSTER_PD>;
191			domain-idle-states = <&CPU_OFF>;
192		};
193
194		CPU_PD1: power-domain-cpu1 {
195			#power-domain-cells = <0>;
196			power-domains = <&CLUSTER_PD>;
197			domain-idle-states = <&CPU_OFF>;
198		};
199
200		CPU_PD2: power-domain-cpu2 {
201			#power-domain-cells = <0>;
202			power-domains = <&CLUSTER_PD>;
203			domain-idle-states = <&CPU_OFF>;
204		};
205
206		CPU_PD3: power-domain-cpu3 {
207			#power-domain-cells = <0>;
208			power-domains = <&CLUSTER_PD>;
209			domain-idle-states = <&CPU_OFF>;
210		};
211
212		CLUSTER_PD: power-domain-cluster {
213			#power-domain-cells = <0>;
214			domain-idle-states = <&CLUSTER_SLEEP_0 &CLUSTER_SLEEP_1>;
215		};
216	};
217
218	reserved_memory: reserved-memory {
219		#address-cells = <2>;
220		#size-cells = <2>;
221		ranges;
222
223		hyp_mem: hyp@80000000 {
224			reg = <0x0 0x80000000 0x0 0x600000>;
225			no-map;
226		};
227
228		xbl_dt_log_mem: xbl-dt-log@80600000 {
229			reg = <0x0 0x80600000 0x0 0x40000>;
230			no-map;
231		};
232
233		xbl_ramdump_mem: xbl-ramdump@80640000 {
234			reg = <0x0 0x80640000 0x0 0x1c0000>;
235			no-map;
236		};
237
238		aop_image_mem: aop-image@80800000 {
239			reg = <0x0 0x80800000 0x0 0x60000>;
240			no-map;
241		};
242
243		aop_cmd_db_mem: aop-cmd-db@80860000 {
244			compatible = "qcom,cmd-db";
245			reg = <0x0 0x80860000 0x0 0x20000>;
246			no-map;
247		};
248
249		aop_config_mem: aop-config@80880000 {
250			reg = <0x0 0x80880000 0x0 0x20000>;
251			no-map;
252		};
253
254		tme_crash_dump_mem: tme-crash-dump@808a0000 {
255			reg = <0x0 0x808a0000 0x0 0x40000>;
256			no-map;
257		};
258
259		tme_log_mem: tme-log@808e0000 {
260			reg = <0x0 0x808e0000 0x0 0x4000>;
261			no-map;
262		};
263
264		uefi_log_mem: uefi-log@808e4000 {
265			reg = <0x0 0x808e4000 0x0 0x10000>;
266			no-map;
267		};
268
269		smem_mem: smem@80900000 {
270			compatible = "qcom,smem";
271			reg = <0x0 0x80900000 0x0 0x200000>;
272			no-map;
273			hwlocks = <&tcsr_mutex 3>;
274		};
275
276		cpucp_fw_mem: cpucp-fw@80b00000 {
277			reg = <0x0 0x80b00000 0x0 0x100000>;
278			no-map;
279		};
280
281		xbl_sc_mem: memory@80c00000 {
282			reg = <0x0 0x80c00000 0x0 0x40000>;
283			no-map;
284		};
285
286		tz_stat_mem: tz-stat@81d00000 {
287			reg = <0x0 0x81d00000 0x0 0x100000>;
288			no-map;
289		};
290
291		tags_mem: tags@81e00000 {
292			reg = <0x0 0x81e00000 0x0 0x500000>;
293			no-map;
294		};
295
296		qtee_mem: qtee@82300000 {
297			reg = <0x0 0x82300000 0x0 0x500000>;
298			no-map;
299		};
300
301		ta_mem: ta@82800000 {
302			reg = <0x0 0x82800000 0x0 0xa00000>;
303			no-map;
304		};
305
306		fs1_mem: fs1@83200000 {
307			reg = <0x0 0x83200000 0x0 0x400000>;
308			no-map;
309		};
310
311		fs2_mem: fs2@83600000 {
312			reg = <0x0 0x83600000 0x0 0x400000>;
313			no-map;
314		};
315
316		fs3_mem: fs3@83a00000 {
317			reg = <0x0 0x83a00000 0x0 0x400000>;
318			no-map;
319		};
320
321		/* Linux kernel image is loaded at 0x83e00000 */
322
323		ipa_fw_mem: ipa-fw@8be00000 {
324			reg = <0x0 0x8be00000 0x0 0x10000>;
325			no-map;
326		};
327
328		ipa_gsi_mem: ipa-gsi@8be10000 {
329			reg = <0x0 0x8be10000 0x0 0x14000>;
330			no-map;
331		};
332
333		mpss_mem: mpss@8c000000 {
334			reg = <0x0 0x8c000000 0x0 0x12c00000>;
335			no-map;
336		};
337
338		q6_mpss_dtb_mem: q6-mpss-dtb@9ec00000 {
339			reg = <0x0 0x9ec00000 0x0 0x80000>;
340			no-map;
341		};
342
343		tenx_mem: tenx@a0000000 {
344			reg = <0x0 0xa0000000 0x0 0x19600000>;
345			no-map;
346		};
347
348		oem_tenx_mem: oem-tenx@b9600000 {
349			reg = <0x0 0xb9600000 0x0 0x6a00000>;
350			no-map;
351		};
352
353		tenx_q6_buffer_mem: tenx-q6-buffer@c0000000 {
354			reg = <0x0 0xc0000000 0x0 0x3200000>;
355			no-map;
356		};
357
358		ipa_buffer_mem: ipa-buffer@c3200000 {
359			reg = <0x0 0xc3200000 0x0 0x12c00000>;
360			no-map;
361		};
362	};
363
364	soc: soc@0 {
365		compatible = "simple-bus";
366		#address-cells = <2>;
367		#size-cells = <2>;
368		ranges = <0 0 0 0 0x10 0>;
369		dma-ranges = <0 0 0 0 0x10 0>;
370
371		gcc: clock-controller@80000 {
372			compatible = "qcom,qdu1000-gcc";
373			reg = <0x0 0x80000 0x0 0x1f4200>;
374			clocks = <&rpmhcc RPMH_CXO_CLK>,
375				 <&sleep_clk>,
376				 <0>,
377				 <0>,
378				 <0>;
379			#clock-cells = <1>;
380			#reset-cells = <1>;
381			#power-domain-cells = <1>;
382		};
383
384		gpi_dma0: dma-controller@900000  {
385			compatible = "qcom,qdu1000-gpi-dma", "qcom,sm6350-gpi-dma";
386			reg = <0x0 0x900000 0x0 0x60000>;
387			interrupts = <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>,
388				     <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>,
389				     <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>,
390				     <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>,
391				     <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>,
392				     <GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>,
393				     <GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>,
394				     <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>,
395				     <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>,
396				     <GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>,
397				     <GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>,
398				     <GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>;
399			dma-channels = <12>;
400			dma-channel-mask = <0x3f>;
401			iommus = <&apps_smmu 0xf6 0x0>;
402			#dma-cells = <3>;
403		};
404
405		qupv3_id_0: geniqup@9c0000 {
406			compatible = "qcom,geni-se-qup";
407			reg = <0x0 0x9c0000 0x0 0x2000>;
408			clocks = <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
409				<&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
410			clock-names = "m-ahb", "s-ahb";
411			iommus = <&apps_smmu 0xe3 0x0>;
412			interconnects = <&clk_virt MASTER_QUP_CORE_0 0
413					 &clk_virt SLAVE_QUP_CORE_0 0>;
414			interconnect-names = "qup-core";
415
416			#address-cells = <2>;
417			#size-cells = <2>;
418			ranges;
419			status = "disabled";
420
421			uart0: serial@980000 {
422				compatible = "qcom,geni-uart";
423				reg = <0x0 0x980000 0x0 0x4000>;
424				clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>;
425				clock-names = "se";
426				pinctrl-0 = <&qup_uart0_default>;
427				pinctrl-names = "default";
428				interrupts = <GIC_SPI 601 IRQ_TYPE_LEVEL_HIGH>;
429				status = "disabled";
430			};
431
432			i2c1: i2c@984000 {
433				compatible = "qcom,geni-i2c";
434				reg = <0x0 0x984000 0x0 0x4000>;
435				clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>;
436				clock-names = "se";
437				interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>;
438				pinctrl-0 = <&qup_i2c1_data_clk>;
439				pinctrl-names = "default";
440				#address-cells = <1>;
441				#size-cells = <0>;
442				status = "disabled";
443			};
444
445			spi1: spi@984000 {
446				compatible = "qcom,geni-spi";
447				reg = <0x0 0x984000 0x0 0x4000>;
448				#address-cells = <1>;
449				#size-cells = <0>;
450				interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>;
451				clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>;
452				clock-names = "se";
453				pinctrl-0 = <&qup_spi1_data_clk>, <&qup_spi1_cs>;
454				pinctrl-names = "default";
455				status = "disabled";
456			};
457
458			i2c2: i2c@988000 {
459				compatible = "qcom,geni-i2c";
460				reg = <0x0 0x988000 0x0 0x4000>;
461				clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>;
462				clock-names = "se";
463				interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>;
464				pinctrl-0 = <&qup_i2c2_data_clk>;
465				pinctrl-names = "default";
466				#address-cells = <1>;
467				#size-cells = <0>;
468				status = "disabled";
469			};
470
471			spi2: spi@988000 {
472				compatible = "qcom,geni-spi";
473				reg = <0x0 0x988000 0x0 0x4000>;
474				#address-cells = <1>;
475				#size-cells = <0>;
476				interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>;
477				clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>;
478				clock-names = "se";
479				pinctrl-0 = <&qup_spi2_data_clk>, <&qup_spi2_cs>;
480				pinctrl-names = "default";
481				status = "disabled";
482			};
483
484			i2c3: i2c@98c000 {
485				compatible = "qcom,geni-i2c";
486				reg = <0x0 0x98c000 0x0 0x4000>;
487				clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>;
488				clock-names = "se";
489				interrupts = <GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>;
490				pinctrl-0 = <&qup_i2c3_data_clk>;
491				pinctrl-names = "default";
492				#address-cells = <1>;
493				#size-cells = <0>;
494				status = "disabled";
495			};
496
497			spi3: spi@98c000 {
498				compatible = "qcom,geni-spi";
499				reg = <0x0 0x98c000 0x0 0x4000>;
500				#address-cells = <1>;
501				#size-cells = <0>;
502				interrupts = <GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>;
503				clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>;
504				clock-names = "se";
505				pinctrl-0 = <&qup_spi3_data_clk>, <&qup_spi3_cs>;
506				pinctrl-names = "default";
507				status = "disabled";
508			};
509
510			i2c4: i2c@990000 {
511				compatible = "qcom,geni-i2c";
512				reg = <0x0 0x990000 0x0 0x4000>;
513				clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>;
514				clock-names = "se";
515				interrupts = <GIC_SPI 605 IRQ_TYPE_LEVEL_HIGH>;
516				pinctrl-0 = <&qup_i2c4_data_clk>;
517				pinctrl-names = "default";
518				#address-cells = <1>;
519				#size-cells = <0>;
520				status = "disabled";
521			};
522
523			spi4: spi@990000 {
524				compatible = "qcom,geni-spi";
525				reg = <0x0 0x990000 0x0 0x4000>;
526				#address-cells = <1>;
527				#size-cells = <0>;
528				interrupts = <GIC_SPI 605 IRQ_TYPE_LEVEL_HIGH>;
529				clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>;
530				clock-names = "se";
531				pinctrl-0 = <&qup_spi4_data_clk>, <&qup_spi4_cs>;
532				pinctrl-names = "default";
533				status = "disabled";
534			};
535
536			i2c5: i2c@994000 {
537				compatible = "qcom,geni-i2c";
538				reg = <0x0 0x994000 0x0 0x4000>;
539				clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>;
540				clock-names = "se";
541				interrupts = <GIC_SPI 606 IRQ_TYPE_LEVEL_HIGH>;
542				pinctrl-0 = <&qup_i2c5_data_clk>;
543				pinctrl-names = "default";
544				#address-cells = <1>;
545				#size-cells = <0>;
546				status = "disabled";
547			};
548
549			spi5: spi@994000 {
550				compatible = "qcom,geni-spi";
551				reg = <0x0 0x994000 0x0 0x4000>;
552				#address-cells = <1>;
553				#size-cells = <0>;
554				interrupts = <GIC_SPI 606 IRQ_TYPE_LEVEL_HIGH>;
555				clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>;
556				clock-names = "se";
557				pinctrl-0 = <&qup_spi5_data_clk>, <&qup_spi5_cs>;
558				pinctrl-names = "default";
559				status = "disabled";
560			};
561
562			i2c6: i2c@998000 {
563				compatible = "qcom,geni-i2c";
564				reg = <0x0 0x998000 0x0 0x4000>;
565				clocks = <&gcc GCC_QUPV3_WRAP0_S6_CLK>;
566				clock-names = "se";
567				interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>;
568				pinctrl-0 = <&qup_i2c6_data_clk>;
569				pinctrl-names = "default";
570				#address-cells = <1>;
571				#size-cells = <0>;
572				status = "disabled";
573			};
574
575			spi6: spi@998000 {
576				compatible = "qcom,geni-spi";
577				reg = <0x0 0x998000 0x0 0x4000>;
578				#address-cells = <1>;
579				#size-cells = <0>;
580				interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>;
581				clocks = <&gcc GCC_QUPV3_WRAP0_S6_CLK>;
582				clock-names = "se";
583				pinctrl-0 = <&qup_spi6_data_clk>, <&qup_spi6_cs>;
584				pinctrl-names = "default";
585				status = "disabled";
586			};
587
588			uart7: serial@99c000 {
589				compatible = "qcom,geni-debug-uart";
590				reg = <0x0 0x99c000 0x0 0x4000>;
591				clocks = <&gcc GCC_QUPV3_WRAP0_S7_CLK>;
592				clock-names = "se";
593				pinctrl-0 = <&qup_uart7_tx>, <&qup_uart7_rx>;
594				pinctrl-names = "default";
595				interrupts = <GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH>;
596				status = "disabled";
597			};
598		};
599
600		gpi_dma1: dma-controller@a00000  {
601			compatible = "qcom,qdu1000-gpi-dma", "qcom,sm6350-gpi-dma";
602			reg = <0x0 0xa00000 0x0 0x60000>;
603			interrupts = <GIC_SPI 279 IRQ_TYPE_LEVEL_HIGH>,
604				     <GIC_SPI 280 IRQ_TYPE_LEVEL_HIGH>,
605				     <GIC_SPI 281 IRQ_TYPE_LEVEL_HIGH>,
606				     <GIC_SPI 282 IRQ_TYPE_LEVEL_HIGH>,
607				     <GIC_SPI 283 IRQ_TYPE_LEVEL_HIGH>,
608				     <GIC_SPI 284 IRQ_TYPE_LEVEL_HIGH>,
609				     <GIC_SPI 293 IRQ_TYPE_LEVEL_HIGH>,
610				     <GIC_SPI 294 IRQ_TYPE_LEVEL_HIGH>,
611				     <GIC_SPI 295 IRQ_TYPE_LEVEL_HIGH>,
612				     <GIC_SPI 296 IRQ_TYPE_LEVEL_HIGH>,
613				     <GIC_SPI 297 IRQ_TYPE_LEVEL_HIGH>,
614				     <GIC_SPI 298 IRQ_TYPE_LEVEL_HIGH>;
615			dma-channels = <12>;
616			dma-channel-mask = <0x3f>;
617			iommus = <&apps_smmu 0x116 0x0>;
618			#dma-cells = <3>;
619		};
620
621		qupv3_id_1: geniqup@ac0000 {
622			compatible = "qcom,geni-se-qup";
623			reg = <0x0 0xac0000 0x0 0x2000>;
624			clocks = <&gcc GCC_QUPV3_WRAP_1_M_AHB_CLK>,
625				<&gcc GCC_QUPV3_WRAP_1_S_AHB_CLK>;
626			clock-names = "m-ahb", "s-ahb";
627			iommus = <&apps_smmu 0x103 0x0>;
628			#address-cells = <2>;
629			#size-cells = <2>;
630			ranges;
631			status = "disabled";
632
633			uart8: serial@a80000 {
634				compatible = "qcom,geni-uart";
635				reg = <0x0 0xa80000 0x0 0x4000>;
636				clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>;
637				clock-names = "se";
638				pinctrl-0 = <&qup_uart8_default>;
639				pinctrl-names = "default";
640				interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>;
641				#address-cells = <1>;
642				#size-cells = <0>;
643				status = "disabled";
644			};
645
646			i2c9: i2c@a84000 {
647				compatible = "qcom,geni-i2c";
648				reg = <0x0 0xa84000 0x0 0x4000>;
649				clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>;
650				clock-names = "se";
651				interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>;
652				pinctrl-0 = <&qup_i2c9_data_clk>;
653				pinctrl-names = "default";
654				#address-cells = <1>;
655				#size-cells = <0>;
656				status = "disabled";
657			};
658
659			spi9: spi@a84000 {
660				compatible = "qcom,geni-spi";
661				reg = <0x0 0xa84000 0x0 0x4000>;
662				#address-cells = <1>;
663				#size-cells = <0>;
664				interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>;
665				clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>;
666				clock-names = "se";
667				pinctrl-0 = <&qup_spi9_data_clk>, <&qup_spi9_cs>;
668				pinctrl-names = "default";
669				status = "disabled";
670			};
671
672			i2c10: i2c@a88000 {
673				compatible = "qcom,geni-i2c";
674				reg = <0x0 0xa88000 0x0 0x4000>;
675				clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>;
676				clock-names = "se";
677				interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>;
678				pinctrl-0 = <&qup_i2c10_data_clk>;
679				pinctrl-names = "default";
680				#address-cells = <1>;
681				#size-cells = <0>;
682				status = "disabled";
683			};
684
685			spi10: spi@a88000 {
686				compatible = "qcom,geni-spi";
687				reg = <0x0 0xa88000 0x0 0x4000>;
688				#address-cells = <1>;
689				#size-cells = <0>;
690				interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>;
691				clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>;
692				clock-names = "se";
693				pinctrl-0 = <&qup_spi10_data_clk>, <&qup_spi10_cs>;
694				pinctrl-names = "default";
695				status = "disabled";
696			};
697
698			i2c11: i2c@a8c000 {
699				compatible = "qcom,geni-i2c";
700				reg = <0x0 0xa8c000 0x0 0x4000>;
701				clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>;
702				clock-names = "se";
703				interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
704				pinctrl-0 = <&qup_i2c11_data_clk>;
705				pinctrl-names = "default";
706				#address-cells = <1>;
707				#size-cells = <0>;
708				status = "disabled";
709			};
710
711			spi11: spi@a8c000 {
712				compatible = "qcom,geni-spi";
713				reg = <0x0 0xa8c000 0x0 0x4000>;
714				#address-cells = <1>;
715				#size-cells = <0>;
716				interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
717				clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>;
718				clock-names = "se";
719				pinctrl-0 = <&qup_spi11_data_clk>, <&qup_spi11_cs>;
720				pinctrl-names = "default";
721				status = "disabled";
722			};
723
724			i2c12: i2c@a90000 {
725				compatible = "qcom,geni-i2c";
726				reg = <0x0 0xa90000 0x0 0x4000>;
727				clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>;
728				clock-names = "se";
729				interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>;
730				pinctrl-0 = <&qup_i2c12_data_clk>;
731				pinctrl-names = "default";
732				#address-cells = <1>;
733				#size-cells = <0>;
734				status = "disabled";
735			};
736
737			spi12: spi@a90000 {
738				compatible = "qcom,geni-spi";
739				reg = <0x0 0xa90000 0x0 0x4000>;
740				#address-cells = <1>;
741				#size-cells = <0>;
742				interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>;
743				clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>;
744				clock-names = "se";
745				pinctrl-0 = <&qup_spi12_data_clk>, <&qup_spi12_cs>;
746				pinctrl-names = "default";
747				status = "disabled";
748			};
749
750			i2c13: i2c@a94000 {
751				compatible = "qcom,geni-i2c";
752				reg = <0x0 0xa94000 0x0 0x4000>;
753				clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>;
754				clock-names = "se";
755				interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>;
756				pinctrl-0 = <&qup_i2c13_data_clk>;
757				pinctrl-names = "default";
758				#address-cells = <1>;
759				#size-cells = <0>;
760				status = "disabled";
761			};
762
763			uart13: serial@a94000 {
764				compatible = "qcom,geni-uart";
765				reg = <0x0 0xa94000 0x0 0x4000>;
766				clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>;
767				clock-names = "se";
768				pinctrl-0 = <&qup_uart13_default>;
769				pinctrl-names = "default";
770				interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>;
771				#address-cells = <1>;
772				#size-cells = <0>;
773				status = "disabled";
774			};
775
776			spi13: spi@a94000 {
777				compatible = "qcom,geni-spi";
778				reg = <0x0 0xa94000 0x0 0x4000>;
779				#address-cells = <1>;
780				#size-cells = <0>;
781				interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>;
782				clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>;
783				clock-names = "se";
784				pinctrl-0 = <&qup_spi13_data_clk>, <&qup_spi13_cs>;
785				pinctrl-names = "default";
786				status = "disabled";
787			};
788
789			i2c14: i2c@a98000 {
790				compatible = "qcom,geni-i2c";
791				reg = <0x0 0xa98000 0x0 0x4000>;
792				clocks = <&gcc GCC_QUPV3_WRAP1_S6_CLK>;
793				clock-names = "se";
794				interrupts = <GIC_SPI 363 IRQ_TYPE_LEVEL_HIGH>;
795				pinctrl-0 = <&qup_i2c14_data_clk>;
796				pinctrl-names = "default";
797				#address-cells = <1>;
798				#size-cells = <0>;
799				status = "disabled";
800			};
801
802			spi14: spi@a98000 {
803				compatible = "qcom,geni-spi";
804				reg = <0x0 0xa98000 0x0 0x4000>;
805				#address-cells = <1>;
806				#size-cells = <0>;
807				interrupts = <GIC_SPI 363 IRQ_TYPE_LEVEL_HIGH>;
808				clocks = <&gcc GCC_QUPV3_WRAP1_S6_CLK>;
809				clock-names = "se";
810				pinctrl-0 = <&qup_spi14_data_clk>, <&qup_spi14_cs>;
811				pinctrl-names = "default";
812				status = "disabled";
813			};
814
815			i2c15: i2c@a9c000 {
816				compatible = "qcom,geni-i2c";
817				reg = <0x0 0xa9c000 0x0 0x4000>;
818				clocks = <&gcc GCC_QUPV3_WRAP1_S7_CLK>;
819				clock-names = "se";
820				interrupts = <GIC_SPI 365 IRQ_TYPE_LEVEL_HIGH>;
821				pinctrl-0 = <&qup_i2c15_data_clk>;
822				pinctrl-names = "default";
823				#address-cells = <1>;
824				#size-cells = <0>;
825				status = "disabled";
826			};
827
828			spi15: spi@a9c000 {
829				compatible = "qcom,geni-spi";
830				reg = <0x0 0xa9c000 0x0 0x4000>;
831				#address-cells = <1>;
832				#size-cells = <0>;
833				interrupts = <GIC_SPI 365 IRQ_TYPE_LEVEL_HIGH>;
834				clocks = <&gcc GCC_QUPV3_WRAP1_S7_CLK>;
835				clock-names = "se";
836				pinctrl-0 = <&qup_spi15_data_clk>, <&qup_spi15_cs>;
837				pinctrl-names = "default";
838				status = "disabled";
839			};
840		};
841
842		system_noc: interconnect@1640000 {
843			compatible = "qcom,qdu1000-system-noc";
844			reg = <0x0 0x1640000 0x0 0x45080>;
845			qcom,bcm-voters = <&apps_bcm_voter>;
846			#interconnect-cells = <2>;
847		};
848
849		tcsr_mutex: hwlock@1f40000 {
850			compatible = "qcom,tcsr-mutex";
851			reg = <0x0 0x1f40000 0x0 0x20000>;
852			#hwlock-cells = <1>;
853		};
854
855		sdhc: mmc@8804000 {
856			compatible = "qcom,qdu1000-sdhci", "qcom,sdhci-msm-v5";
857			reg = <0x0 0x08804000 0x0 0x1000>,
858			      <0x0 0x08805000 0x0 0x1000>;
859			reg-names = "hc", "cqhci";
860
861			interrupts = <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>,
862				     <GIC_SPI 223 IRQ_TYPE_LEVEL_HIGH>;
863			interrupt-names = "hc_irq", "pwr_irq";
864
865			clocks = <&gcc GCC_SDCC5_AHB_CLK>,
866				 <&gcc GCC_SDCC5_APPS_CLK>,
867				 <&rpmhcc RPMH_CXO_CLK>;
868			clock-names = "iface",
869				      "core",
870				      "xo";
871
872			resets = <&gcc GCC_SDCC5_BCR>;
873
874			interconnects = <&system_noc MASTER_SDCC_1 0 &mc_virt SLAVE_EBI1 0>,
875					<&gem_noc MASTER_APPSS_PROC 0 &system_noc SLAVE_SDCC_2 0>;
876			interconnect-names = "sdhc-ddr", "cpu-sdhc";
877			power-domains = <&rpmhpd QDU1000_CX>;
878			operating-points-v2 = <&sdhc1_opp_table>;
879
880			iommus = <&apps_smmu 0x80 0x0>;
881			dma-coherent;
882
883			bus-width = <8>;
884
885			qcom,dll-config = <0x0007642c>;
886			qcom,ddr-config = <0x80040868>;
887
888			status = "disabled";
889
890			sdhc1_opp_table: opp-table {
891				compatible = "operating-points-v2";
892
893				opp-384000000 {
894					opp-hz = /bits/ 64 <384000000>;
895					required-opps = <&rpmhpd_opp_nom>;
896					opp-peak-kBps = <6528000 1652800>;
897					opp-avg-kBps = <400000 0>;
898				};
899			};
900		};
901
902		pdc: interrupt-controller@b220000 {
903			compatible = "qcom,qdu1000-pdc", "qcom,pdc";
904			reg = <0x0 0xb220000 0x0 0x30000>, <0x0 0x174000f0 0x0 0x64>;
905			qcom,pdc-ranges = <0 480 12>, <14 494 24>, <40 520 54>,
906					  <94 609 31>, <125 63 1>;
907			#interrupt-cells = <2>;
908			interrupt-parent = <&intc>;
909			interrupt-controller;
910		};
911
912		spmi_bus: spmi@c400000 {
913			compatible = "qcom,spmi-pmic-arb";
914			reg = <0x0 0xc400000 0x0 0x3000>,
915			      <0x0 0xc500000 0x0 0x400000>,
916			      <0x0 0xc440000 0x0 0x80000>,
917			      <0x0 0xc4c0000 0x0 0x10000>,
918			      <0x0 0xc42d000 0x0 0x4000>;
919			reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
920			interrupts-extended = <&pdc 1 IRQ_TYPE_LEVEL_HIGH>;
921			interrupt-names = "periph_irq";
922			qcom,ee = <0>;
923			qcom,channel = <0>;
924			#address-cells = <2>;
925			#size-cells = <0>;
926			interrupt-controller;
927			#interrupt-cells = <4>;
928		};
929
930		tlmm: pinctrl@f000000 {
931			compatible = "qcom,qdu1000-tlmm";
932			reg = <0x0 0xf000000 0x0 0x1000000>;
933			interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
934			gpio-controller;
935			#gpio-cells = <2>;
936			interrupt-controller;
937			#interrupt-cells = <2>;
938			gpio-ranges = <&tlmm 0 0 151>;
939			wakeup-parent = <&pdc>;
940
941			qup_uart0_default: qup-uart0-default-state {
942				pins = "gpio6", "gpio7", "gpio8", "gpio9";
943				function = "qup00";
944			};
945
946			qup_i2c1_data_clk: qup-i2c1-data-clk-state {
947				pins = "gpio10", "gpio11";
948				function = "qup01";
949			};
950
951			qup_spi1_data_clk: qup-spi1-data-clk-state {
952				pins = "gpio10", "gpio11", "gpio12";
953				function = "qup01";
954			};
955
956			qup_spi1_cs: qup-spi1-cs-state {
957				pins = "gpio13";
958				function = "gpio";
959			};
960
961			qup_i2c2_data_clk: qup-i2c2-data-clk-state {
962				pins = "gpio12", "gpio13";
963				function = "qup02";
964			};
965
966			qup_spi2_data_clk: qup-spi2-data-clk-state {
967				pins = "gpio12", "gpio13", "gpio10";
968				function = "qup02";
969			};
970
971			qup_spi2_cs: qup-spi2-cs-state {
972				pins = "gpio11";
973				function = "gpio";
974			};
975
976			qup_i2c3_data_clk: qup-i2c3-data-clk-state {
977				pins = "gpio14", "gpio15";
978				function = "qup03";
979			};
980
981			qup_spi3_data_clk: qup-spi3-data-clk-state {
982				pins = "gpio14", "gpio15", "gpio16";
983				function = "qup03";
984			};
985
986			qup_spi3_cs: qup-spi3-cs-state {
987				pins = "gpio17";
988				function = "gpio";
989			};
990
991			qup_i2c4_data_clk: qup-i2c4-data-clk-state {
992				pins = "gpio16", "gpio17";
993				function = "qup04";
994			};
995
996			qup_spi4_data_clk: qup-spi4-data-clk-state {
997				pins = "gpio16", "gpio17", "gpio14";
998				function = "qup04";
999			};
1000
1001			qup_spi4_cs: qup-spi4-cs-state {
1002				pins = "gpio15";
1003				function = "gpio";
1004			};
1005
1006			qup_i2c5_data_clk: qup-i2c5-data-clk-state {
1007				pins = "gpio130", "gpio131";
1008				function = "qup05";
1009			};
1010
1011			qup_spi5_data_clk: qup-spi5-data-clk-state {
1012				pins = "gpio130", "gpio131", "gpio132";
1013				function = "qup05";
1014			};
1015
1016			qup_spi5_cs: qup-spi5-cs-state {
1017				pins = "gpio133";
1018				function = "gpio";
1019			};
1020
1021			qup_i2c6_data_clk: qup-i2c6-data-clk-state {
1022				pins = "gpio132", "gpio133";
1023				function = "qup06";
1024			};
1025
1026			qup_spi6_data_clk: qup-spi6-data-clk-state {
1027				pins = "gpio132", "gpio133", "gpio130";
1028				function = "qup06";
1029			};
1030
1031			qup_spi6_cs: qup-spi6-cs-state {
1032				pins = "gpio131";
1033				function = "gpio";
1034			};
1035
1036			qup_uart7_rx: qup-uart7-rx-state {
1037				pins = "gpio135";
1038				function = "qup07";
1039			};
1040
1041			qup_uart7_tx: qup-uart7-tx-state  {
1042				pins = "gpio134";
1043				function = "qup07";
1044			};
1045
1046			qup_uart8_default: qup-uart8-default-state {
1047				pins = "gpio18", "gpio19", "gpio20", "gpio21";
1048				function = "qup10";
1049			};
1050
1051			qup_i2c9_data_clk: qup-i2c9-data-clk-state {
1052				pins = "gpio22", "gpio23";
1053				function = "qup11";
1054			};
1055
1056			qup_spi9_data_clk: qup-spi9-data-clk-state {
1057				pins = "gpio22", "gpio23", "gpio24";
1058				function = "qup11";
1059			};
1060
1061			qup_spi9_cs: qup-spi9-cs-state {
1062				pins = "gpio25";
1063				function = "gpio";
1064			};
1065
1066			qup_i2c10_data_clk: qup-i2c10-data-clk-state {
1067				pins = "gpio24", "gpio25";
1068				function = "qup12";
1069			};
1070
1071			qup_spi10_data_clk: qup-spi10-data-clk-state {
1072				pins = "gpio24", "gpio25", "gpio22";
1073				function = "qup12";
1074			};
1075
1076			qup_spi10_cs: qup-spi10-cs-state {
1077				pins = "gpio23";
1078				function = "gpio";
1079			};
1080
1081			qup_i2c11_data_clk: qup-i2c11-data-clk-state {
1082				pins = "gpio26", "gpio27";
1083				function = "qup13";
1084			};
1085
1086			qup_spi11_data_clk: qup-spi11-data-clk-state {
1087				pins = "gpio26", "gpio27", "gpio28";
1088				function = "qup13";
1089			};
1090
1091			qup_spi11_cs: qup-spi11-cs-state {
1092				pins = "gpio29";
1093				function = "gpio";
1094			};
1095
1096			qup_i2c12_data_clk: qup-i2c12-data-clk-state {
1097				pins = "gpio28", "gpio29";
1098				function = "qup14";
1099			};
1100
1101			qup_spi12_data_clk: qup-spi12-data-clk-state {
1102				pins = "gpio28", "gpio29", "gpio26";
1103				function = "qup14";
1104			};
1105
1106			qup_spi12_cs: qup-spi12-cs-state {
1107				pins = "gpio27";
1108				function = "gpio";
1109			};
1110
1111			qup_i2c13_data_clk: qup-i2c13-data-clk-state {
1112				pins = "gpio30", "gpio31";
1113				function = "qup15";
1114			};
1115
1116			qup_spi13_data_clk: qup-spi13-data-clk-state {
1117				pins = "gpio30", "gpio31", "gpio32";
1118				function = "qup15";
1119			};
1120
1121			qup_spi13_cs: qup-spi13-cs-state {
1122				pins = "gpio33";
1123				function = "gpio";
1124			};
1125
1126			qup_uart13_default: qup-uart13-default-state {
1127				pins = "gpio30", "gpio31", "gpio32", "gpio33";
1128				function = "qup15";
1129			};
1130
1131			qup_i2c14_data_clk: qup-i2c14-data-clk-state {
1132				pins = "gpio34", "gpio35";
1133				function = "qup16";
1134			};
1135
1136			qup_spi14_data_clk: qup-spi14-data-clk-state {
1137				pins = "gpio34", "gpio35", "gpio36";
1138				function = "qup16";
1139			};
1140
1141			qup_spi14_cs: qup-spi14-cs-state {
1142				pins = "gpio37", "gpio38";
1143				function = "gpio";
1144			};
1145
1146			qup_i2c15_data_clk: qup-i2c15-data-clk-state {
1147				pins = "gpio40", "gpio41";
1148				function = "qup17";
1149			};
1150
1151			qup_spi15_data_clk: qup-spi15-data-clk-state {
1152				pins = "gpio40", "gpio41", "gpio30";
1153				function = "qup17";
1154			};
1155
1156			qup_spi15_cs: qup-spi15-cs-state {
1157				pins = "gpio31";
1158				function = "gpio";
1159			};
1160
1161			sdc_on_state: sdc-on-state {
1162				clk-pins {
1163					pins = "sdc1_clk";
1164					drive-strength = <16>;
1165					bias-disable;
1166				};
1167
1168				cmd-pins {
1169					pins = "sdc1_cmd";
1170					drive-strength = <10>;
1171					bias-pull-up;
1172				};
1173
1174				data-pins {
1175					pins = "sdc1_data";
1176					drive-strength = <10>;
1177					bias-pull-up;
1178				};
1179
1180				rclk-pins {
1181					pins = "sdc1_rclk";
1182					bias-pull-down;
1183				};
1184			};
1185
1186			sdc_off_state: sdc-off-state {
1187				clk-pins {
1188					pins = "sdc1_clk";
1189					drive-strength = <2>;
1190					bias-disable;
1191				};
1192
1193				cmd-pins {
1194					pins = "sdc1_cmd";
1195					drive-strength = <2>;
1196					bias-pull-up;
1197				};
1198
1199				data-pins {
1200					pins = "sdc1_data";
1201					drive-strength = <2>;
1202					bias-pull-up;
1203				};
1204
1205				rclk-pins {
1206					pins = "sdc1_rclk";
1207					bias-pull-down;
1208				};
1209			};
1210		};
1211
1212		sram@14680000 {
1213			compatible = "qcom,qdu1000-imem", "syscon", "simple-mfd";
1214			reg = <0 0x14680000 0 0x1000>;
1215			ranges = <0 0 0x14680000 0x1000>;
1216			#address-cells = <1>;
1217			#size-cells = <1>;
1218
1219			pil-reloc@94c {
1220				compatible = "qcom,pil-reloc-info";
1221				reg = <0x94c 0xc8>;
1222			};
1223		};
1224
1225		apps_smmu: iommu@15000000 {
1226			compatible = "qcom,qdu1000-smmu-500", "qcom,smmu-500", "arm,mmu-500";
1227			reg = <0x0 0x15000000 0x0 0x100000>;
1228			#iommu-cells = <2>;
1229			#global-interrupts = <2>;
1230			interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>,
1231				     <GIC_SPI 426 IRQ_TYPE_LEVEL_HIGH>,
1232				     <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>,
1233				     <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>,
1234				     <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>,
1235				     <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>,
1236				     <GIC_SPI 671 IRQ_TYPE_LEVEL_HIGH>,
1237				     <GIC_SPI 672 IRQ_TYPE_LEVEL_HIGH>,
1238				     <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>,
1239				     <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>,
1240				     <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>,
1241				     <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>,
1242				     <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>,
1243				     <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>,
1244				     <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,
1245				     <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>,
1246				     <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>,
1247				     <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>,
1248				     <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
1249				     <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
1250				     <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
1251				     <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
1252				     <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>,
1253				     <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
1254				     <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
1255				     <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
1256				     <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
1257				     <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
1258				     <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
1259				     <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
1260				     <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>,
1261				     <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>,
1262				     <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>,
1263				     <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>,
1264				     <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>,
1265				     <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>,
1266				     <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>,
1267				     <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>,
1268				     <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>,
1269				     <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>,
1270				     <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>,
1271				     <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>,
1272				     <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>,
1273				     <GIC_SPI 316 IRQ_TYPE_LEVEL_HIGH>,
1274				     <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>,
1275				     <GIC_SPI 318 IRQ_TYPE_LEVEL_HIGH>,
1276				     <GIC_SPI 319 IRQ_TYPE_LEVEL_HIGH>,
1277				     <GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH>,
1278				     <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>;
1279		};
1280
1281		intc: interrupt-controller@17200000 {
1282			compatible = "arm,gic-v3";
1283			reg = <0x0 0x17200000 0x0 0x10000>,	/* GICD */
1284			      <0x0 0x17260000 0x0 0x80000>;	/* GICR * 4 */
1285			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_LOW>;
1286			#interrupt-cells = <3>;
1287			interrupt-controller;
1288			#redistributor-regions = <1>;
1289			redistributor-stride = <0x0 0x20000>;
1290		};
1291
1292		timer@17420000 {
1293			compatible = "arm,armv7-timer-mem";
1294			reg = <0x0 0x17420000 0x0 0x1000>;
1295			#address-cells = <1>;
1296			#size-cells = <1>;
1297			ranges = <0x0 0x0 0x0 0x20000000>;
1298
1299			frame@17421000 {
1300				reg = <0x17421000 0x1000>,
1301				      <0x17422000 0x1000>;
1302				interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
1303					     <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>;
1304				frame-number = <0>;
1305			};
1306
1307			frame@17423000 {
1308				reg = <0x17423000 0x1000>;
1309				interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
1310				frame-number = <1>;
1311				status = "disabled";
1312			};
1313
1314			frame@17425000 {
1315				reg = <0x17425000 0x1000>,
1316				      <0x17426000 0x1000>;
1317				interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
1318				frame-number = <2>;
1319				status = "disabled";
1320			};
1321
1322			frame@17427000 {
1323				reg = <0x17427000 0x1000>;
1324				interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
1325				frame-number = <3>;
1326				status = "disabled";
1327			};
1328
1329			frame@17429000 {
1330				reg = <0x17429000 0x1000>;
1331				interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
1332				frame-number = <4>;
1333				status = "disabled";
1334			};
1335
1336			frame@1742b000 {
1337				reg = <0x1742b000 0x1000>;
1338				interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
1339				frame-number = <5>;
1340				status = "disabled";
1341			};
1342
1343			frame@1742d000 {
1344				reg = <0x1742d000 0x1000>;
1345				interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
1346				frame-number = <6>;
1347				status = "disabled";
1348			};
1349		};
1350
1351		apps_rsc: rsc@17a00000 {
1352			compatible = "qcom,rpmh-rsc";
1353			reg = <0x0 0x17a00000 0x0 0x10000>,
1354			      <0x0 0x17a10000 0x0 0x10000>,
1355			      <0x0 0x17a20000 0x0 0x10000>;
1356			reg-names = "drv-0", "drv-1", "drv-2";
1357			interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
1358				     <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
1359				     <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
1360			qcom,tcs-offset = <0xd00>;
1361			qcom,drv-id = <2>;
1362			qcom,tcs-config = <ACTIVE_TCS    2>, <SLEEP_TCS     3>,
1363					  <WAKE_TCS      3>, <CONTROL_TCS   0>;
1364			label = "apps_rsc";
1365			power-domains = <&CLUSTER_PD>;
1366
1367			apps_bcm_voter: bcm-voter {
1368				compatible = "qcom,bcm-voter";
1369			};
1370
1371			rpmhcc: clock-controller {
1372				compatible = "qcom,qdu1000-rpmh-clk";
1373				clocks = <&xo_board>;
1374				clock-names = "xo";
1375				#clock-cells = <1>;
1376			};
1377
1378			rpmhpd: power-controller {
1379				compatible = "qcom,qdu1000-rpmhpd";
1380				#power-domain-cells = <1>;
1381				operating-points-v2 = <&rpmhpd_opp_table>;
1382
1383				rpmhpd_opp_table: opp-table {
1384					compatible = "operating-points-v2";
1385
1386					rpmhpd_opp_ret: opp1 {
1387						opp-level = <RPMH_REGULATOR_LEVEL_RETENTION>;
1388					};
1389
1390					rpmhpd_opp_min_svs: opp2 {
1391						opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
1392					};
1393
1394					rpmhpd_opp_low_svs: opp3 {
1395						opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
1396					};
1397
1398					rpmhpd_opp_svs: opp4 {
1399						opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
1400					};
1401
1402					rpmhpd_opp_svs_l1: opp5 {
1403						opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
1404					};
1405
1406					rpmhpd_opp_nom: opp6 {
1407						opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
1408					};
1409
1410					rpmhpd_opp_nom_l1: opp7 {
1411						opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
1412					};
1413
1414					rpmhpd_opp_nom_l2: opp8 {
1415						opp-level = <RPMH_REGULATOR_LEVEL_NOM_L2>;
1416					};
1417
1418					rpmhpd_opp_turbo: opp9 {
1419						opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
1420					};
1421
1422					rpmhpd_opp_turbo_l1: opp10 {
1423						opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>;
1424					};
1425				};
1426			};
1427		};
1428
1429		cpufreq_hw: cpufreq@17d90000 {
1430			compatible = "qcom,qdu1000-cpufreq-epss", "qcom,cpufreq-epss";
1431			reg = <0x0 0x17d90000 0x0 0x1000>, <0x0 0x17d91000 0x0 0x1000>;
1432			reg-names = "freq-domain0", "freq-domain1";
1433			clocks = <&rpmhcc RPMH_CXO_CLK>, <&gcc GCC_GPLL0>;
1434			clock-names = "xo", "alternate";
1435			#freq-domain-cells = <1>;
1436			#clock-cells = <1>;
1437		};
1438
1439		gem_noc: interconnect@19100000 {
1440			compatible = "qcom,qdu1000-gem-noc";
1441			reg = <0x0 0x19100000 0x0 0xB8080>;
1442			qcom,bcm-voters = <&apps_bcm_voter>;
1443			#interconnect-cells = <2>;
1444		};
1445
1446		system-cache-controller@19200000 {
1447			compatible = "qcom,qdu1000-llcc";
1448			reg = <0 0x19200000 0 0xd80000>,
1449			      <0 0x1a200000 0 0x80000>,
1450			      <0 0x221c8128 0 0x4>;
1451			reg-names = "llcc_base",
1452				    "llcc_broadcast_base",
1453				    "multi_channel_register";
1454			interrupts = <GIC_SPI 266 IRQ_TYPE_LEVEL_HIGH>;
1455
1456			nvmem-cells = <&multi_chan_ddr>;
1457			nvmem-cell-names = "multi-chan-ddr";
1458		};
1459
1460		sec_qfprom: efuse@221c8000 {
1461			compatible = "qcom,qdu1000-sec-qfprom", "qcom,sec-qfprom";
1462			reg = <0 0x221c8000 0 0x1000>;
1463			#address-cells = <1>;
1464			#size-cells = <1>;
1465
1466			multi_chan_ddr: multi-chan-ddr@12b {
1467				reg = <0x12b 0x1>;
1468				bits = <0 2>;
1469			};
1470		};
1471	};
1472
1473	timer {
1474		compatible = "arm,armv8-timer";
1475		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
1476			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
1477			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
1478			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
1479			     <GIC_PPI 12 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>;
1480	};
1481};
1482