xref: /openbmc/linux/arch/arm64/boot/dts/qcom/sm6115.dtsi (revision a72b9869)
1// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
2/*
3 * Copyright (c) 2021, Iskren Chernev <iskren.chernev@gmail.com>
4 */
5
6#include <dt-bindings/clock/qcom,gcc-sm6115.h>
7#include <dt-bindings/clock/qcom,sm6115-dispcc.h>
8#include <dt-bindings/clock/qcom,rpmcc.h>
9#include <dt-bindings/dma/qcom-gpi.h>
10#include <dt-bindings/gpio/gpio.h>
11#include <dt-bindings/interrupt-controller/arm-gic.h>
12#include <dt-bindings/power/qcom-rpmpd.h>
13
14/ {
15	interrupt-parent = <&intc>;
16
17	#address-cells = <2>;
18	#size-cells = <2>;
19
20	chosen { };
21
22	clocks {
23		xo_board: xo-board {
24			compatible = "fixed-clock";
25			#clock-cells = <0>;
26		};
27
28		sleep_clk: sleep-clk {
29			compatible = "fixed-clock";
30			#clock-cells = <0>;
31		};
32	};
33
34	cpus {
35		#address-cells = <2>;
36		#size-cells = <0>;
37
38		CPU0: cpu@0 {
39			device_type = "cpu";
40			compatible = "qcom,kryo260";
41			reg = <0x0 0x0>;
42			capacity-dmips-mhz = <1024>;
43			dynamic-power-coefficient = <100>;
44			enable-method = "psci";
45			next-level-cache = <&L2_0>;
46			qcom,freq-domain = <&cpufreq_hw 0>;
47			L2_0: l2-cache {
48				compatible = "cache";
49				cache-level = <2>;
50			};
51		};
52
53		CPU1: cpu@1 {
54			device_type = "cpu";
55			compatible = "qcom,kryo260";
56			reg = <0x0 0x1>;
57			capacity-dmips-mhz = <1024>;
58			dynamic-power-coefficient = <100>;
59			enable-method = "psci";
60			next-level-cache = <&L2_0>;
61			qcom,freq-domain = <&cpufreq_hw 0>;
62		};
63
64		CPU2: cpu@2 {
65			device_type = "cpu";
66			compatible = "qcom,kryo260";
67			reg = <0x0 0x2>;
68			capacity-dmips-mhz = <1024>;
69			dynamic-power-coefficient = <100>;
70			enable-method = "psci";
71			next-level-cache = <&L2_0>;
72			qcom,freq-domain = <&cpufreq_hw 0>;
73		};
74
75		CPU3: cpu@3 {
76			device_type = "cpu";
77			compatible = "qcom,kryo260";
78			reg = <0x0 0x3>;
79			capacity-dmips-mhz = <1024>;
80			dynamic-power-coefficient = <100>;
81			enable-method = "psci";
82			next-level-cache = <&L2_0>;
83			qcom,freq-domain = <&cpufreq_hw 0>;
84		};
85
86		CPU4: cpu@100 {
87			device_type = "cpu";
88			compatible = "qcom,kryo260";
89			reg = <0x0 0x100>;
90			enable-method = "psci";
91			capacity-dmips-mhz = <1638>;
92			dynamic-power-coefficient = <282>;
93			next-level-cache = <&L2_1>;
94			qcom,freq-domain = <&cpufreq_hw 1>;
95			L2_1: l2-cache {
96				compatible = "cache";
97				cache-level = <2>;
98			};
99		};
100
101		CPU5: cpu@101 {
102			device_type = "cpu";
103			compatible = "qcom,kryo260";
104			reg = <0x0 0x101>;
105			capacity-dmips-mhz = <1638>;
106			dynamic-power-coefficient = <282>;
107			enable-method = "psci";
108			next-level-cache = <&L2_1>;
109			qcom,freq-domain = <&cpufreq_hw 1>;
110		};
111
112		CPU6: cpu@102 {
113			device_type = "cpu";
114			compatible = "qcom,kryo260";
115			reg = <0x0 0x102>;
116			capacity-dmips-mhz = <1638>;
117			dynamic-power-coefficient = <282>;
118			enable-method = "psci";
119			next-level-cache = <&L2_1>;
120			qcom,freq-domain = <&cpufreq_hw 1>;
121		};
122
123		CPU7: cpu@103 {
124			device_type = "cpu";
125			compatible = "qcom,kryo260";
126			reg = <0x0 0x103>;
127			capacity-dmips-mhz = <1638>;
128			dynamic-power-coefficient = <282>;
129			enable-method = "psci";
130			next-level-cache = <&L2_1>;
131			qcom,freq-domain = <&cpufreq_hw 1>;
132		};
133
134		cpu-map {
135			cluster0 {
136				core0 {
137					cpu = <&CPU0>;
138				};
139
140				core1 {
141					cpu = <&CPU1>;
142				};
143
144				core2 {
145					cpu = <&CPU2>;
146				};
147
148				core3 {
149					cpu = <&CPU3>;
150				};
151			};
152
153			cluster1 {
154				core0 {
155					cpu = <&CPU4>;
156				};
157
158				core1 {
159					cpu = <&CPU5>;
160				};
161
162				core2 {
163					cpu = <&CPU6>;
164				};
165
166				core3 {
167					cpu = <&CPU7>;
168				};
169			};
170		};
171	};
172
173	firmware {
174		scm: scm {
175			compatible = "qcom,scm-sm6115", "qcom,scm";
176			#reset-cells = <1>;
177		};
178	};
179
180	memory@80000000 {
181		device_type = "memory";
182		/* We expect the bootloader to fill in the size */
183		reg = <0 0x80000000 0 0>;
184	};
185
186	pmu {
187		compatible = "arm,armv8-pmuv3";
188		interrupts = <GIC_PPI 6 IRQ_TYPE_LEVEL_HIGH>;
189	};
190
191	psci {
192		compatible = "arm,psci-1.0";
193		method = "smc";
194	};
195
196	reserved_memory: reserved-memory {
197		#address-cells = <2>;
198		#size-cells = <2>;
199		ranges;
200
201		hyp_mem: memory@45700000 {
202			reg = <0x0 0x45700000 0x0 0x600000>;
203			no-map;
204		};
205
206		xbl_aop_mem: memory@45e00000 {
207			reg = <0x0 0x45e00000 0x0 0x140000>;
208			no-map;
209		};
210
211		sec_apps_mem: memory@45fff000 {
212			reg = <0x0 0x45fff000 0x0 0x1000>;
213			no-map;
214		};
215
216		smem_mem: memory@46000000 {
217			compatible = "qcom,smem";
218			reg = <0x0 0x46000000 0x0 0x200000>;
219			no-map;
220
221			hwlocks = <&tcsr_mutex 3>;
222			qcom,rpm-msg-ram = <&rpm_msg_ram>;
223		};
224
225		cdsp_sec_mem: memory@46200000 {
226			reg = <0x0 0x46200000 0x0 0x1e00000>;
227			no-map;
228		};
229
230		pil_modem_mem: memory@4ab00000 {
231			reg = <0x0 0x4ab00000 0x0 0x6900000>;
232			no-map;
233		};
234
235		pil_video_mem: memory@51400000 {
236			reg = <0x0 0x51400000 0x0 0x500000>;
237			no-map;
238		};
239
240		wlan_msa_mem: memory@51900000 {
241			reg = <0x0 0x51900000 0x0 0x100000>;
242			no-map;
243		};
244
245		pil_cdsp_mem: memory@51a00000 {
246			reg = <0x0 0x51a00000 0x0 0x1e00000>;
247			no-map;
248		};
249
250		pil_adsp_mem: memory@53800000 {
251			reg = <0x0 0x53800000 0x0 0x2800000>;
252			no-map;
253		};
254
255		pil_ipa_fw_mem: memory@56100000 {
256			reg = <0x0 0x56100000 0x0 0x10000>;
257			no-map;
258		};
259
260		pil_ipa_gsi_mem: memory@56110000 {
261			reg = <0x0 0x56110000 0x0 0x5000>;
262			no-map;
263		};
264
265		pil_gpu_mem: memory@56115000 {
266			reg = <0x0 0x56115000 0x0 0x2000>;
267			no-map;
268		};
269
270		cont_splash_memory: memory@5c000000 {
271			reg = <0x0 0x5c000000 0x0 0x00f00000>;
272			no-map;
273		};
274
275		dfps_data_memory: memory@5cf00000 {
276			reg = <0x0 0x5cf00000 0x0 0x0100000>;
277			no-map;
278		};
279
280		removed_mem: memory@60000000 {
281			reg = <0x0 0x60000000 0x0 0x3900000>;
282			no-map;
283		};
284	};
285
286	rpm-glink {
287		compatible = "qcom,glink-rpm";
288
289		interrupts = <GIC_SPI 194 IRQ_TYPE_EDGE_RISING>;
290		qcom,rpm-msg-ram = <&rpm_msg_ram>;
291		mboxes = <&apcs_glb 0>;
292
293		rpm_requests: rpm-requests {
294			compatible = "qcom,rpm-sm6115";
295			qcom,glink-channels = "rpm_requests";
296
297			rpmcc: clock-controller {
298				compatible = "qcom,rpmcc-sm6115", "qcom,rpmcc";
299				clocks = <&xo_board>;
300				clock-names = "xo";
301				#clock-cells = <1>;
302			};
303
304			rpmpd: power-controller {
305				compatible = "qcom,sm6115-rpmpd";
306				#power-domain-cells = <1>;
307				operating-points-v2 = <&rpmpd_opp_table>;
308
309				rpmpd_opp_table: opp-table {
310					compatible = "operating-points-v2";
311
312					rpmpd_opp_min_svs: opp1 {
313						opp-level = <RPM_SMD_LEVEL_MIN_SVS>;
314					};
315
316					rpmpd_opp_low_svs: opp2 {
317						opp-level = <RPM_SMD_LEVEL_LOW_SVS>;
318					};
319
320					rpmpd_opp_svs: opp3 {
321						opp-level = <RPM_SMD_LEVEL_SVS>;
322					};
323
324					rpmpd_opp_svs_plus: opp4 {
325						opp-level = <RPM_SMD_LEVEL_SVS_PLUS>;
326					};
327
328					rpmpd_opp_nom: opp5 {
329						opp-level = <RPM_SMD_LEVEL_NOM>;
330					};
331
332					rpmpd_opp_nom_plus: opp6 {
333						opp-level = <RPM_SMD_LEVEL_NOM_PLUS>;
334					};
335
336					rpmpd_opp_turbo: opp7 {
337						opp-level = <RPM_SMD_LEVEL_TURBO>;
338					};
339
340					rpmpd_opp_turbo_plus: opp8 {
341						opp-level = <RPM_SMD_LEVEL_TURBO_NO_CPR>;
342					};
343				};
344			};
345		};
346	};
347
348	smp2p-adsp {
349		compatible = "qcom,smp2p";
350		qcom,smem = <443>, <429>;
351
352		interrupts = <GIC_SPI 279 IRQ_TYPE_EDGE_RISING>;
353
354		mboxes = <&apcs_glb 10>;
355
356		qcom,local-pid = <0>;
357		qcom,remote-pid = <2>;
358
359		adsp_smp2p_out: master-kernel {
360			qcom,entry-name = "master-kernel";
361			#qcom,smem-state-cells = <1>;
362		};
363
364		adsp_smp2p_in: slave-kernel {
365			qcom,entry-name = "slave-kernel";
366
367			interrupt-controller;
368			#interrupt-cells = <2>;
369		};
370	};
371
372	smp2p-cdsp {
373		compatible = "qcom,smp2p";
374		qcom,smem = <94>, <432>;
375
376		interrupts = <GIC_SPI 263 IRQ_TYPE_EDGE_RISING>;
377
378		mboxes = <&apcs_glb 30>;
379
380		qcom,local-pid = <0>;
381		qcom,remote-pid = <5>;
382
383		cdsp_smp2p_out: master-kernel {
384			qcom,entry-name = "master-kernel";
385			#qcom,smem-state-cells = <1>;
386		};
387
388		cdsp_smp2p_in: slave-kernel {
389			qcom,entry-name = "slave-kernel";
390
391			interrupt-controller;
392			#interrupt-cells = <2>;
393		};
394	};
395
396	smp2p-mpss {
397		compatible = "qcom,smp2p";
398		qcom,smem = <435>, <428>;
399
400		interrupts = <GIC_SPI 70 IRQ_TYPE_EDGE_RISING>;
401
402		mboxes = <&apcs_glb 14>;
403
404		qcom,local-pid = <0>;
405		qcom,remote-pid = <1>;
406
407		modem_smp2p_out: master-kernel {
408			qcom,entry-name = "master-kernel";
409			#qcom,smem-state-cells = <1>;
410		};
411
412		modem_smp2p_in: slave-kernel {
413			qcom,entry-name = "slave-kernel";
414
415			interrupt-controller;
416			#interrupt-cells = <2>;
417		};
418	};
419
420	soc: soc@0 {
421		compatible = "simple-bus";
422		#address-cells = <2>;
423		#size-cells = <2>;
424		ranges = <0 0 0 0 0x10 0>;
425		dma-ranges = <0 0 0 0 0x10 0>;
426
427		tcsr_mutex: hwlock@340000 {
428			compatible = "qcom,tcsr-mutex";
429			reg = <0x0 0x00340000 0x0 0x20000>;
430			#hwlock-cells = <1>;
431		};
432
433		tlmm: pinctrl@500000 {
434			compatible = "qcom,sm6115-tlmm";
435			reg = <0x0 0x00500000 0x0 0x400000>,
436			      <0x0 0x00900000 0x0 0x400000>,
437			      <0x0 0x00d00000 0x0 0x400000>;
438			reg-names = "west", "south", "east";
439			interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_HIGH>;
440			gpio-controller;
441			gpio-ranges = <&tlmm 0 0 114>; /* GPIOs + ufs_reset */
442			#gpio-cells = <2>;
443			interrupt-controller;
444			#interrupt-cells = <2>;
445
446			qup_i2c0_default: qup-i2c0-default-state {
447				pins = "gpio0", "gpio1";
448				function = "qup0";
449				drive-strength = <2>;
450				bias-pull-up;
451			};
452
453			qup_i2c1_default: qup-i2c1-default-state {
454				pins = "gpio4", "gpio5";
455				function = "qup1";
456				drive-strength = <2>;
457				bias-pull-up;
458			};
459
460			qup_i2c2_default: qup-i2c2-default-state {
461				pins = "gpio6", "gpio7";
462				function = "qup2";
463				drive-strength = <2>;
464				bias-pull-up;
465			};
466
467			qup_i2c3_default: qup-i2c3-default-state {
468				pins = "gpio8", "gpio9";
469				function = "qup3";
470				drive-strength = <2>;
471				bias-pull-up;
472			};
473
474			qup_i2c4_default: qup-i2c4-default-state {
475				pins = "gpio12", "gpio13";
476				function = "qup4";
477				drive-strength = <2>;
478				bias-pull-up;
479			};
480
481			qup_i2c5_default: qup-i2c5-default-state {
482				pins = "gpio14", "gpio15";
483				function = "qup5";
484				drive-strength = <2>;
485				bias-pull-up;
486			};
487
488			qup_spi0_default: qup-spi0-default-state {
489				pins = "gpio0", "gpio1","gpio2", "gpio3";
490				function = "qup0";
491				drive-strength = <2>;
492				bias-pull-up;
493			};
494
495			qup_spi1_default: qup-spi1-default-state {
496				pins = "gpio4", "gpio5", "gpio69", "gpio70";
497				function = "qup1";
498				drive-strength = <2>;
499				bias-pull-up;
500			};
501
502			qup_spi2_default: qup-spi2-default-state {
503				pins = "gpio6", "gpio7", "gpio71", "gpio80";
504				function = "qup2";
505				drive-strength = <2>;
506				bias-pull-up;
507			};
508
509			qup_spi3_default: qup-spi3-default-state {
510				pins = "gpio8", "gpio9", "gpio10", "gpio11";
511				function = "qup3";
512				drive-strength = <2>;
513				bias-pull-up;
514			};
515
516			qup_spi4_default: qup-spi4-default-state {
517				pins = "gpio12", "gpio13", "gpio96", "gpio97";
518				function = "qup4";
519				drive-strength = <2>;
520				bias-pull-up;
521			};
522
523			qup_spi5_default: qup-spi5-default-state {
524				pins = "gpio14", "gpio15", "gpio16", "gpio17";
525				function = "qup5";
526				drive-strength = <2>;
527				bias-pull-up;
528			};
529
530			sdc1_state_on: sdc1-on-state {
531				clk-pins {
532					pins = "sdc1_clk";
533					bias-disable;
534					drive-strength = <16>;
535				};
536
537				cmd-pins {
538					pins = "sdc1_cmd";
539					bias-pull-up;
540					drive-strength = <10>;
541				};
542
543				data-pins {
544					pins = "sdc1_data";
545					bias-pull-up;
546					drive-strength = <10>;
547				};
548
549				rclk-pins {
550					pins = "sdc1_rclk";
551					bias-pull-down;
552				};
553			};
554
555			sdc1_state_off: sdc1-off-state {
556				clk-pins {
557					pins = "sdc1_clk";
558					bias-disable;
559					drive-strength = <2>;
560				};
561
562				cmd-pins {
563					pins = "sdc1_cmd";
564					bias-pull-up;
565					drive-strength = <2>;
566				};
567
568				data-pins {
569					pins = "sdc1_data";
570					bias-pull-up;
571					drive-strength = <2>;
572				};
573
574				rclk-pins {
575					pins = "sdc1_rclk";
576					bias-pull-down;
577				};
578			};
579
580			sdc2_state_on: sdc2-on-state {
581				clk-pins {
582					pins = "sdc2_clk";
583					bias-disable;
584					drive-strength = <16>;
585				};
586
587				cmd-pins {
588					pins = "sdc2_cmd";
589					bias-pull-up;
590					drive-strength = <10>;
591				};
592
593				data-pins {
594					pins = "sdc2_data";
595					bias-pull-up;
596					drive-strength = <10>;
597				};
598
599				sd-cd-pins {
600					pins = "gpio88";
601					function = "gpio";
602					bias-pull-up;
603					drive-strength = <2>;
604				};
605			};
606
607			sdc2_state_off: sdc2-off-state {
608				clk-pins {
609					pins = "sdc2_clk";
610					bias-disable;
611					drive-strength = <2>;
612				};
613
614				cmd-pins {
615					pins = "sdc2_cmd";
616					bias-pull-up;
617					drive-strength = <2>;
618				};
619
620				data-pins {
621					pins = "sdc2_data";
622					bias-pull-up;
623					drive-strength = <2>;
624				};
625
626				sd-cd-pins {
627					pins = "gpio88";
628					function = "gpio";
629					bias-disable;
630					drive-strength = <2>;
631				};
632			};
633		};
634
635		gcc: clock-controller@1400000 {
636			compatible = "qcom,gcc-sm6115";
637			reg = <0x0 0x01400000 0x0 0x1f0000>;
638			clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, <&sleep_clk>;
639			clock-names = "bi_tcxo", "sleep_clk";
640			#clock-cells = <1>;
641			#reset-cells = <1>;
642			#power-domain-cells = <1>;
643		};
644
645		usb_1_hsphy: phy@1613000 {
646			compatible = "qcom,sm6115-qusb2-phy";
647			reg = <0x0 0x01613000 0x0 0x180>;
648			#phy-cells = <0>;
649
650			clocks = <&gcc GCC_AHB2PHY_USB_CLK>, <&rpmcc RPM_SMD_XO_CLK_SRC>;
651			clock-names = "cfg_ahb", "ref";
652
653			resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>;
654			nvmem-cells = <&qusb2_hstx_trim>;
655
656			status = "disabled";
657		};
658
659		qfprom@1b40000 {
660			compatible = "qcom,sm6115-qfprom", "qcom,qfprom";
661			reg = <0x0 0x01b40000 0x0 0x7000>;
662			#address-cells = <1>;
663			#size-cells = <1>;
664
665			qusb2_hstx_trim: hstx-trim@25b {
666				reg = <0x25b 0x1>;
667				bits = <1 4>;
668			};
669		};
670
671		rng: rng@1b53000 {
672			compatible = "qcom,prng-ee";
673			reg = <0x0 0x01b53000 0x0 0x1000>;
674			clocks = <&gcc GCC_PRNG_AHB_CLK>;
675			clock-names = "core";
676		};
677
678		spmi_bus: spmi@1c40000 {
679			compatible = "qcom,spmi-pmic-arb";
680			reg = <0x0 0x01c40000 0x0 0x1100>,
681			      <0x0 0x01e00000 0x0 0x2000000>,
682			      <0x0 0x03e00000 0x0 0x100000>,
683			      <0x0 0x03f00000 0x0 0xa0000>,
684			      <0x0 0x01c0a000 0x0 0x26000>;
685			reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
686			interrupt-names = "periph_irq";
687			interrupts = <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>;
688			qcom,ee = <0>;
689			qcom,channel = <0>;
690			#address-cells = <2>;
691			#size-cells = <0>;
692			interrupt-controller;
693			#interrupt-cells = <4>;
694		};
695
696		tsens0: thermal-sensor@4410000 {
697			compatible = "qcom,sm6115-tsens", "qcom,tsens-v2";
698			reg = <0x0 0x04411000 0x0 0x1ff>, /* TM */
699			      <0x0 0x04410000 0x0 0x8>; /* SROT */
700			#qcom,sensors = <16>;
701			interrupts = <GIC_SPI 275 IRQ_TYPE_LEVEL_HIGH>,
702				     <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
703			interrupt-names = "uplow", "critical";
704			#thermal-sensor-cells = <1>;
705		};
706
707		rpm_msg_ram: sram@45f0000 {
708			compatible = "qcom,rpm-msg-ram";
709			reg = <0x0 0x045f0000 0x0 0x7000>;
710		};
711
712		sram@4690000 {
713			compatible = "qcom,rpm-stats";
714			reg = <0x0 0x04690000 0x0 0x10000>;
715		};
716
717		sdhc_1: mmc@4744000 {
718			compatible = "qcom,sm6115-sdhci", "qcom,sdhci-msm-v5";
719			reg = <0x0 0x04744000 0x0 0x1000>,
720			      <0x0 0x04745000 0x0 0x1000>,
721			      <0x0 0x04748000 0x0 0x8000>;
722			reg-names = "hc", "cqhci", "ice";
723
724			interrupts = <GIC_SPI 348 IRQ_TYPE_LEVEL_HIGH>,
725				     <GIC_SPI 352 IRQ_TYPE_LEVEL_HIGH>;
726			interrupt-names = "hc_irq", "pwr_irq";
727
728			clocks = <&gcc GCC_SDCC1_AHB_CLK>,
729				 <&gcc GCC_SDCC1_APPS_CLK>,
730				 <&rpmcc RPM_SMD_XO_CLK_SRC>,
731				 <&gcc GCC_SDCC1_ICE_CORE_CLK>;
732			clock-names = "iface", "core", "xo", "ice";
733
734			pinctrl-0 = <&sdc1_state_on>;
735			pinctrl-1 = <&sdc1_state_off>;
736			pinctrl-names = "default", "sleep";
737
738			bus-width = <8>;
739			status = "disabled";
740		};
741
742		sdhc_2: mmc@4784000 {
743			compatible = "qcom,sm6115-sdhci", "qcom,sdhci-msm-v5";
744			reg = <0x0 0x04784000 0x0 0x1000>;
745			reg-names = "hc";
746
747			interrupts = <GIC_SPI 350 IRQ_TYPE_LEVEL_HIGH>,
748				     <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>;
749			interrupt-names = "hc_irq", "pwr_irq";
750
751			clocks = <&gcc GCC_SDCC2_AHB_CLK>,
752				 <&gcc GCC_SDCC2_APPS_CLK>,
753				 <&rpmcc RPM_SMD_XO_CLK_SRC>;
754			clock-names = "iface", "core", "xo";
755
756			pinctrl-0 = <&sdc2_state_on>;
757			pinctrl-1 = <&sdc2_state_off>;
758			pinctrl-names = "default", "sleep";
759
760			power-domains = <&rpmpd SM6115_VDDCX>;
761			operating-points-v2 = <&sdhc2_opp_table>;
762			iommus = <&apps_smmu 0x00a0 0x0>;
763			resets = <&gcc GCC_SDCC2_BCR>;
764
765			bus-width = <4>;
766			qcom,dll-config = <0x0007642c>;
767			qcom,ddr-config = <0x80040868>;
768			status = "disabled";
769
770			sdhc2_opp_table: opp-table {
771				compatible = "operating-points-v2";
772
773				opp-100000000 {
774					opp-hz = /bits/ 64 <100000000>;
775					required-opps = <&rpmpd_opp_low_svs>;
776				};
777
778				opp-202000000 {
779					opp-hz = /bits/ 64 <202000000>;
780					required-opps = <&rpmpd_opp_nom>;
781				};
782			};
783		};
784
785		ufs_mem_hc: ufs@4804000 {
786			compatible = "qcom,sm6115-ufshc", "qcom,ufshc", "jedec,ufs-2.0";
787			reg = <0x0 0x04804000 0x0 0x3000>, <0x0 0x04810000 0x0 0x8000>;
788			reg-names = "std", "ice";
789			interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
790			phys = <&ufs_mem_phy_lanes>;
791			phy-names = "ufsphy";
792			lanes-per-direction = <1>;
793			#reset-cells = <1>;
794			resets = <&gcc GCC_UFS_PHY_BCR>;
795			reset-names = "rst";
796
797			power-domains = <&gcc GCC_UFS_PHY_GDSC>;
798			iommus = <&apps_smmu 0x100 0>;
799
800			clocks = <&gcc GCC_UFS_PHY_AXI_CLK>,
801				 <&gcc GCC_SYS_NOC_UFS_PHY_AXI_CLK>,
802				 <&gcc GCC_UFS_PHY_AHB_CLK>,
803				 <&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>,
804				 <&rpmcc RPM_SMD_XO_CLK_SRC>,
805				 <&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>,
806				 <&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>,
807				 <&gcc GCC_UFS_PHY_ICE_CORE_CLK>;
808			clock-names = "core_clk",
809				      "bus_aggr_clk",
810				      "iface_clk",
811				      "core_clk_unipro",
812				      "ref_clk",
813				      "tx_lane0_sync_clk",
814				      "rx_lane0_sync_clk",
815				      "ice_core_clk";
816
817			freq-table-hz = <50000000 200000000>,
818					<0 0>,
819					<0 0>,
820					<37500000 150000000>,
821					<0 0>,
822					<0 0>,
823					<0 0>,
824					<75000000 300000000>;
825
826			status = "disabled";
827		};
828
829		ufs_mem_phy: phy@4807000 {
830			compatible = "qcom,sm6115-qmp-ufs-phy";
831			reg = <0x0 0x04807000 0x0 0x1c4>;
832			#address-cells = <2>;
833			#size-cells = <2>;
834			ranges;
835
836			clocks = <&gcc GCC_UFS_CLKREF_CLK>, <&gcc GCC_UFS_PHY_PHY_AUX_CLK>;
837			clock-names = "ref", "ref_aux";
838
839			resets = <&ufs_mem_hc 0>;
840			reset-names = "ufsphy";
841			status = "disabled";
842
843			ufs_mem_phy_lanes: phy@4807400 {
844				reg = <0x0 0x04807400 0x0 0x098>,
845				      <0x0 0x04807600 0x0 0x130>,
846				      <0x0 0x04807c00 0x0 0x16c>;
847				#phy-cells = <0>;
848			};
849		};
850
851		gpi_dma0: dma-controller@4a00000 {
852			compatible = "qcom,sm6115-gpi-dma", "qcom,sm6350-gpi-dma";
853			reg = <0x0 0x04a00000 0x0 0x60000>;
854			interrupts = <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>,
855				     <GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH>,
856				     <GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>,
857				     <GIC_SPI 338 IRQ_TYPE_LEVEL_HIGH>,
858				     <GIC_SPI 339 IRQ_TYPE_LEVEL_HIGH>,
859				     <GIC_SPI 340 IRQ_TYPE_LEVEL_HIGH>,
860				     <GIC_SPI 341 IRQ_TYPE_LEVEL_HIGH>,
861				     <GIC_SPI 342 IRQ_TYPE_LEVEL_HIGH>,
862				     <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>,
863				     <GIC_SPI 344 IRQ_TYPE_LEVEL_HIGH>;
864			dma-channels =  <10>;
865			dma-channel-mask = <0xf>;
866			iommus = <&apps_smmu 0xf6 0x0>;
867			#dma-cells = <3>;
868			status = "disabled";
869		};
870
871		qupv3_id_0: geniqup@4ac0000 {
872			compatible = "qcom,geni-se-qup";
873			reg = <0x0 0x04ac0000 0x0 0x2000>;
874			clock-names = "m-ahb", "s-ahb";
875			clocks = <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
876				 <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
877			#address-cells = <2>;
878			#size-cells = <2>;
879			iommus = <&apps_smmu 0xe3 0x0>;
880			ranges;
881			status = "disabled";
882
883			i2c0: i2c@4a80000 {
884				compatible = "qcom,geni-i2c";
885				reg = <0x0 0x04a80000 0x0 0x4000>;
886				clock-names = "se";
887				clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>;
888				pinctrl-names = "default";
889				pinctrl-0 = <&qup_i2c0_default>;
890				interrupts = <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>;
891				dmas = <&gpi_dma0 0 0 QCOM_GPI_I2C>,
892				       <&gpi_dma0 1 0 QCOM_GPI_I2C>;
893				dma-names = "tx", "rx";
894				#address-cells = <1>;
895				#size-cells = <0>;
896				status = "disabled";
897			};
898
899			spi0: spi@4a80000 {
900				compatible = "qcom,geni-spi";
901				reg = <0x0 0x04a80000 0x0 0x4000>;
902				clock-names = "se";
903				clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>;
904				pinctrl-names = "default";
905				pinctrl-0 = <&qup_spi0_default>;
906				interrupts = <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>;
907				dmas = <&gpi_dma0 0 0 QCOM_GPI_SPI>,
908				       <&gpi_dma0 1 0 QCOM_GPI_SPI>;
909				dma-names = "tx", "rx";
910				#address-cells = <1>;
911				#size-cells = <0>;
912				status = "disabled";
913			};
914
915			i2c1: i2c@4a84000 {
916				compatible = "qcom,geni-i2c";
917				reg = <0x0 0x04a84000 0x0 0x4000>;
918				clock-names = "se";
919				clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>;
920				pinctrl-names = "default";
921				pinctrl-0 = <&qup_i2c1_default>;
922				interrupts = <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>;
923				dmas = <&gpi_dma0 0 1 QCOM_GPI_I2C>,
924				       <&gpi_dma0 1 1 QCOM_GPI_I2C>;
925				dma-names = "tx", "rx";
926				#address-cells = <1>;
927				#size-cells = <0>;
928				status = "disabled";
929			};
930
931			spi1: spi@4a84000 {
932				compatible = "qcom,geni-spi";
933				reg = <0x0 0x04a84000 0x0 0x4000>;
934				clock-names = "se";
935				clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>;
936				pinctrl-names = "default";
937				pinctrl-0 = <&qup_spi1_default>;
938				interrupts = <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>;
939				dmas = <&gpi_dma0 0 1 QCOM_GPI_SPI>,
940				       <&gpi_dma0 1 1 QCOM_GPI_SPI>;
941				dma-names = "tx", "rx";
942				#address-cells = <1>;
943				#size-cells = <0>;
944				status = "disabled";
945			};
946
947			i2c2: i2c@4a88000 {
948				compatible = "qcom,geni-i2c";
949				reg = <0x0 0x04a88000 0x0 0x4000>;
950				clock-names = "se";
951				clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>;
952				pinctrl-names = "default";
953				pinctrl-0 = <&qup_i2c2_default>;
954				interrupts = <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>;
955				dmas = <&gpi_dma0 0 2 QCOM_GPI_I2C>,
956				       <&gpi_dma0 1 2 QCOM_GPI_I2C>;
957				dma-names = "tx", "rx";
958				#address-cells = <1>;
959				#size-cells = <0>;
960				status = "disabled";
961			};
962
963			spi2: spi@4a88000 {
964				compatible = "qcom,geni-spi";
965				reg = <0x0 0x04a88000 0x0 0x4000>;
966				clock-names = "se";
967				clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>;
968				pinctrl-names = "default";
969				pinctrl-0 = <&qup_spi2_default>;
970				interrupts = <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>;
971				dmas = <&gpi_dma0 0 2 QCOM_GPI_SPI>,
972				       <&gpi_dma0 1 2 QCOM_GPI_SPI>;
973				dma-names = "tx", "rx";
974				#address-cells = <1>;
975				#size-cells = <0>;
976				status = "disabled";
977			};
978
979			i2c3: i2c@4a8c000 {
980				compatible = "qcom,geni-i2c";
981				reg = <0x0 0x04a8c000 0x0 0x4000>;
982				clock-names = "se";
983				clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>;
984				pinctrl-names = "default";
985				pinctrl-0 = <&qup_i2c3_default>;
986				interrupts = <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>;
987				dmas = <&gpi_dma0 0 3 QCOM_GPI_I2C>,
988				       <&gpi_dma0 1 3 QCOM_GPI_I2C>;
989				dma-names = "tx", "rx";
990				#address-cells = <1>;
991				#size-cells = <0>;
992				status = "disabled";
993			};
994
995			spi3: spi@4a8c000 {
996				compatible = "qcom,geni-spi";
997				reg = <0x0 0x04a8c000 0x0 0x4000>;
998				clock-names = "se";
999				clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>;
1000				pinctrl-names = "default";
1001				pinctrl-0 = <&qup_spi3_default>;
1002				interrupts = <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>;
1003				dmas = <&gpi_dma0 0 3 QCOM_GPI_SPI>,
1004				       <&gpi_dma0 1 3 QCOM_GPI_SPI>;
1005				dma-names = "tx", "rx";
1006				#address-cells = <1>;
1007				#size-cells = <0>;
1008				status = "disabled";
1009			};
1010
1011			i2c4: i2c@4a90000 {
1012				compatible = "qcom,geni-i2c";
1013				reg = <0x0 0x04a90000 0x0 0x4000>;
1014				clock-names = "se";
1015				clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>;
1016				pinctrl-names = "default";
1017				pinctrl-0 = <&qup_i2c4_default>;
1018				interrupts = <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>;
1019				dmas = <&gpi_dma0 0 4 QCOM_GPI_I2C>,
1020				       <&gpi_dma0 1 4 QCOM_GPI_I2C>;
1021				dma-names = "tx", "rx";
1022				#address-cells = <1>;
1023				#size-cells = <0>;
1024				status = "disabled";
1025			};
1026
1027			spi4: spi@4a90000 {
1028				compatible = "qcom,geni-spi";
1029				reg = <0x0 0x04a90000 0x0 0x4000>;
1030				clock-names = "se";
1031				clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>;
1032				pinctrl-names = "default";
1033				pinctrl-0 = <&qup_spi4_default>;
1034				interrupts = <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>;
1035				dmas = <&gpi_dma0 0 4 QCOM_GPI_SPI>,
1036				       <&gpi_dma0 1 4 QCOM_GPI_SPI>;
1037				dma-names = "tx", "rx";
1038				#address-cells = <1>;
1039				#size-cells = <0>;
1040				status = "disabled";
1041			};
1042
1043			uart4: serial@4a90000 {
1044				compatible = "qcom,geni-debug-uart";
1045				reg = <0x0 0x04a90000 0x0 0x4000>;
1046				clock-names = "se";
1047				clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>;
1048				interrupts = <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>;
1049				status = "disabled";
1050			};
1051
1052			i2c5: i2c@4a94000 {
1053				compatible = "qcom,geni-i2c";
1054				reg = <0x0 0x04a94000 0x0 0x4000>;
1055				clock-names = "se";
1056				clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>;
1057				pinctrl-names = "default";
1058				pinctrl-0 = <&qup_i2c5_default>;
1059				interrupts = <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>;
1060				dmas = <&gpi_dma0 0 5 QCOM_GPI_I2C>,
1061				       <&gpi_dma0 1 5 QCOM_GPI_I2C>;
1062				dma-names = "tx", "rx";
1063				#address-cells = <1>;
1064				#size-cells = <0>;
1065				status = "disabled";
1066			};
1067
1068			spi5: spi@4a94000 {
1069				compatible = "qcom,geni-spi";
1070				reg = <0x0 0x04a94000 0x0 0x4000>;
1071				clock-names = "se";
1072				clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>;
1073				pinctrl-names = "default";
1074				pinctrl-0 = <&qup_spi5_default>;
1075				interrupts = <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>;
1076				dmas = <&gpi_dma0 0 5 QCOM_GPI_SPI>,
1077				       <&gpi_dma0 1 5 QCOM_GPI_SPI>;
1078				dma-names = "tx", "rx";
1079				#address-cells = <1>;
1080				#size-cells = <0>;
1081			};
1082		};
1083
1084		usb_1: usb@4ef8800 {
1085			compatible = "qcom,sm6115-dwc3", "qcom,dwc3";
1086			reg = <0x0 0x04ef8800 0x0 0x400>;
1087			#address-cells = <2>;
1088			#size-cells = <2>;
1089			ranges;
1090
1091			clocks = <&gcc GCC_CFG_NOC_USB3_PRIM_AXI_CLK>,
1092				 <&gcc GCC_USB30_PRIM_MASTER_CLK>,
1093				 <&gcc GCC_SYS_NOC_USB3_PRIM_AXI_CLK>,
1094				 <&gcc GCC_USB30_PRIM_SLEEP_CLK>,
1095				 <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>,
1096				 <&gcc GCC_USB3_PRIM_CLKREF_CLK>;
1097			clock-names = "cfg_noc", "core", "iface", "sleep", "mock_utmi", "xo";
1098
1099			assigned-clocks = <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>,
1100					  <&gcc GCC_USB30_PRIM_MASTER_CLK>;
1101			assigned-clock-rates = <19200000>, <66666667>;
1102
1103			interrupts = <GIC_SPI 260 IRQ_TYPE_LEVEL_HIGH>,
1104				     <GIC_SPI 422 IRQ_TYPE_LEVEL_HIGH>;
1105			interrupt-names = "hs_phy_irq", "ss_phy_irq";
1106
1107			resets = <&gcc GCC_USB30_PRIM_BCR>;
1108			power-domains = <&gcc GCC_USB30_PRIM_GDSC>;
1109			qcom,select-utmi-as-pipe-clk;
1110			status = "disabled";
1111
1112			usb_1_dwc3: usb@4e00000 {
1113				compatible = "snps,dwc3";
1114				reg = <0x0 0x04e00000 0x0 0xcd00>;
1115				interrupts = <GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>;
1116				phys = <&usb_1_hsphy>;
1117				phy-names = "usb2-phy";
1118				iommus = <&apps_smmu 0x120 0x0>;
1119				snps,dis_u2_susphy_quirk;
1120				snps,dis_enblslpm_quirk;
1121				snps,has-lpm-erratum;
1122				snps,hird-threshold = /bits/ 8 <0x10>;
1123				snps,usb3_lpm_capable;
1124				maximum-speed = "high-speed";
1125				dr_mode = "peripheral";
1126			};
1127		};
1128
1129		mdss: display-subsystem@5e00000 {
1130			compatible = "qcom,sm6115-mdss";
1131			reg = <0x0 0x05e00000 0x0 0x1000>;
1132			reg-names = "mdss";
1133
1134			power-domains = <&dispcc MDSS_GDSC>;
1135
1136			clocks = <&gcc GCC_DISP_AHB_CLK>,
1137				 <&gcc GCC_DISP_HF_AXI_CLK>,
1138				 <&dispcc DISP_CC_MDSS_MDP_CLK>;
1139
1140			interrupts = <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>;
1141			interrupt-controller;
1142			#interrupt-cells = <1>;
1143
1144			iommus = <&apps_smmu 0x420 0x2>,
1145				 <&apps_smmu 0x421 0x0>;
1146
1147			#address-cells = <2>;
1148			#size-cells = <2>;
1149			ranges;
1150
1151			status = "disabled";
1152
1153			mdp: display-controller@5e01000 {
1154				compatible = "qcom,sm6115-dpu";
1155				reg = <0x0 0x05e01000 0x0 0x8f000>,
1156				      <0x0 0x05eb0000 0x0 0x2008>;
1157				reg-names = "mdp", "vbif";
1158
1159				clocks = <&gcc GCC_DISP_HF_AXI_CLK>,
1160					 <&dispcc DISP_CC_MDSS_AHB_CLK>,
1161					 <&dispcc DISP_CC_MDSS_MDP_CLK>,
1162					 <&dispcc DISP_CC_MDSS_MDP_LUT_CLK>,
1163					 <&dispcc DISP_CC_MDSS_ROT_CLK>,
1164					 <&dispcc DISP_CC_MDSS_VSYNC_CLK>;
1165				clock-names = "bus",
1166					      "iface",
1167					      "core",
1168					      "lut",
1169					      "rot",
1170					      "vsync";
1171
1172				operating-points-v2 = <&mdp_opp_table>;
1173				power-domains = <&rpmpd SM6115_VDDCX>;
1174
1175				interrupt-parent = <&mdss>;
1176				interrupts = <0>;
1177
1178				ports {
1179					#address-cells = <1>;
1180					#size-cells = <0>;
1181
1182					port@0 {
1183						reg = <0>;
1184						dpu_intf1_out: endpoint {
1185							remote-endpoint = <&mdss_dsi0_in>;
1186						};
1187					};
1188				};
1189
1190				mdp_opp_table: opp-table {
1191					compatible = "operating-points-v2";
1192
1193					opp-19200000 {
1194						opp-hz = /bits/ 64 <19200000>;
1195						required-opps = <&rpmpd_opp_min_svs>;
1196					};
1197
1198					opp-192000000 {
1199						opp-hz = /bits/ 64 <192000000>;
1200						required-opps = <&rpmpd_opp_low_svs>;
1201					};
1202
1203					opp-256000000 {
1204						opp-hz = /bits/ 64 <256000000>;
1205						required-opps = <&rpmpd_opp_svs>;
1206					};
1207
1208					opp-307200000 {
1209						opp-hz = /bits/ 64 <307200000>;
1210						required-opps = <&rpmpd_opp_svs_plus>;
1211					};
1212
1213					opp-384000000 {
1214						opp-hz = /bits/ 64 <384000000>;
1215						required-opps = <&rpmpd_opp_nom>;
1216					};
1217				};
1218			};
1219
1220			mdss_dsi0: dsi@5e94000 {
1221				compatible = "qcom,dsi-ctrl-6g-qcm2290";
1222				reg = <0x0 0x05e94000 0x0 0x400>;
1223				reg-names = "dsi_ctrl";
1224
1225				interrupt-parent = <&mdss>;
1226				interrupts = <4>;
1227
1228				clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK>,
1229					 <&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>,
1230					 <&dispcc DISP_CC_MDSS_PCLK0_CLK>,
1231					 <&dispcc DISP_CC_MDSS_ESC0_CLK>,
1232					 <&dispcc DISP_CC_MDSS_AHB_CLK>,
1233					 <&gcc GCC_DISP_HF_AXI_CLK>;
1234				clock-names = "byte",
1235					      "byte_intf",
1236					      "pixel",
1237					      "core",
1238					      "iface",
1239					      "bus";
1240
1241				assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK_SRC>,
1242						  <&dispcc DISP_CC_MDSS_PCLK0_CLK_SRC>;
1243				assigned-clock-parents = <&mdss_dsi0_phy 0>, <&mdss_dsi0_phy 1>;
1244
1245				operating-points-v2 = <&dsi_opp_table>;
1246				power-domains = <&rpmpd SM6115_VDDCX>;
1247				phys = <&mdss_dsi0_phy>;
1248
1249				#address-cells = <1>;
1250				#size-cells = <0>;
1251
1252				status = "disabled";
1253
1254				ports {
1255					#address-cells = <1>;
1256					#size-cells = <0>;
1257
1258					port@0 {
1259						reg = <0>;
1260						mdss_dsi0_in: endpoint {
1261							remote-endpoint = <&dpu_intf1_out>;
1262						};
1263					};
1264
1265					port@1 {
1266						reg = <1>;
1267						mdss_dsi0_out: endpoint {
1268						};
1269					};
1270				};
1271
1272				dsi_opp_table: opp-table {
1273					compatible = "operating-points-v2";
1274
1275					opp-19200000 {
1276						opp-hz = /bits/ 64 <19200000>;
1277						required-opps = <&rpmpd_opp_min_svs>;
1278					};
1279
1280					opp-164000000 {
1281						opp-hz = /bits/ 64 <164000000>;
1282						required-opps = <&rpmpd_opp_low_svs>;
1283					};
1284
1285					opp-187500000 {
1286						opp-hz = /bits/ 64 <187500000>;
1287						required-opps = <&rpmpd_opp_svs>;
1288					};
1289				};
1290			};
1291
1292			mdss_dsi0_phy: phy@5e94400 {
1293				compatible = "qcom,dsi-phy-14nm-2290";
1294				reg = <0x0 0x05e94400 0x0 0x100>,
1295				      <0x0 0x05e94500 0x0 0x300>,
1296				      <0x0 0x05e94800 0x0 0x188>;
1297				reg-names = "dsi_phy",
1298					    "dsi_phy_lane",
1299					    "dsi_pll";
1300
1301				#clock-cells = <1>;
1302				#phy-cells = <0>;
1303
1304				clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
1305					 <&rpmcc RPM_SMD_XO_CLK_SRC>;
1306				clock-names = "iface", "ref";
1307
1308				status = "disabled";
1309			};
1310		};
1311
1312		dispcc: clock-controller@5f00000 {
1313			compatible = "qcom,sm6115-dispcc";
1314			reg = <0x0 0x05f00000 0 0x20000>;
1315			clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
1316				 <&sleep_clk>,
1317				 <&mdss_dsi0_phy 0>,
1318				 <&mdss_dsi0_phy 1>,
1319				 <&gcc GCC_DISP_GPLL0_DIV_CLK_SRC>;
1320			#clock-cells = <1>;
1321			#reset-cells = <1>;
1322			#power-domain-cells = <1>;
1323		};
1324
1325		stm@8002000 {
1326			compatible = "arm,coresight-stm", "arm,primecell";
1327			reg = <0x0 0x08002000 0x0 0x1000>,
1328			      <0x0 0x0e280000 0x0 0x180000>;
1329			reg-names = "stm-base", "stm-stimulus-base";
1330
1331			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1332			clock-names = "apb_pclk";
1333
1334			status = "disabled";
1335
1336			out-ports {
1337				port {
1338					stm_out: endpoint {
1339						remote-endpoint = <&funnel_in0_in>;
1340					};
1341				};
1342			};
1343		};
1344
1345		cti0: cti@8010000 {
1346			compatible = "arm,coresight-cti", "arm,primecell";
1347			reg = <0x0 0x08010000 0x0 0x1000>;
1348
1349			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1350			clock-names = "apb_pclk";
1351
1352			status = "disabled";
1353		};
1354
1355		cti1: cti@8011000 {
1356			compatible = "arm,coresight-cti", "arm,primecell";
1357			reg = <0x0 0x08011000 0x0 0x1000>;
1358
1359			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1360			clock-names = "apb_pclk";
1361
1362			status = "disabled";
1363		};
1364
1365		cti2: cti@8012000 {
1366			compatible = "arm,coresight-cti", "arm,primecell";
1367			reg = <0x0 0x08012000 0x0 0x1000>;
1368
1369			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1370			clock-names = "apb_pclk";
1371
1372			status = "disabled";
1373		};
1374
1375		cti3: cti@8013000 {
1376			compatible = "arm,coresight-cti", "arm,primecell";
1377			reg = <0x0 0x08013000 0x0 0x1000>;
1378
1379			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1380			clock-names = "apb_pclk";
1381
1382			status = "disabled";
1383		};
1384
1385		cti4: cti@8014000 {
1386			compatible = "arm,coresight-cti", "arm,primecell";
1387			reg = <0x0 0x08014000 0x0 0x1000>;
1388
1389			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1390			clock-names = "apb_pclk";
1391
1392			status = "disabled";
1393		};
1394
1395		cti5: cti@8015000 {
1396			compatible = "arm,coresight-cti", "arm,primecell";
1397			reg = <0x0 0x08015000 0x0 0x1000>;
1398
1399			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1400			clock-names = "apb_pclk";
1401
1402			status = "disabled";
1403		};
1404
1405		cti6: cti@8016000 {
1406			compatible = "arm,coresight-cti", "arm,primecell";
1407			reg = <0x0 0x08016000 0x0 0x1000>;
1408
1409			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1410			clock-names = "apb_pclk";
1411
1412			status = "disabled";
1413		};
1414
1415		cti7: cti@8017000 {
1416			compatible = "arm,coresight-cti", "arm,primecell";
1417			reg = <0x0 0x08017000 0x0 0x1000>;
1418
1419			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1420			clock-names = "apb_pclk";
1421
1422			status = "disabled";
1423		};
1424
1425		cti8: cti@8018000 {
1426			compatible = "arm,coresight-cti", "arm,primecell";
1427			reg = <0x0 0x08018000 0x0 0x1000>;
1428
1429			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1430			clock-names = "apb_pclk";
1431
1432			status = "disabled";
1433		};
1434
1435		cti9: cti@8019000 {
1436			compatible = "arm,coresight-cti", "arm,primecell";
1437			reg = <0x0 0x08019000 0x0 0x1000>;
1438
1439			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1440			clock-names = "apb_pclk";
1441
1442			status = "disabled";
1443		};
1444
1445		cti10: cti@801a000 {
1446			compatible = "arm,coresight-cti", "arm,primecell";
1447			reg = <0x0 0x0801a000 0x0 0x1000>;
1448
1449			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1450			clock-names = "apb_pclk";
1451
1452			status = "disabled";
1453		};
1454
1455		cti11: cti@801b000 {
1456			compatible = "arm,coresight-cti", "arm,primecell";
1457			reg = <0x0 0x0801b000 0x0 0x1000>;
1458
1459			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1460			clock-names = "apb_pclk";
1461
1462			status = "disabled";
1463		};
1464
1465		cti12: cti@801c000 {
1466			compatible = "arm,coresight-cti", "arm,primecell";
1467			reg = <0x0 0x0801c000 0x0 0x1000>;
1468
1469			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1470			clock-names = "apb_pclk";
1471
1472			status = "disabled";
1473		};
1474
1475		cti13: cti@801d000 {
1476			compatible = "arm,coresight-cti", "arm,primecell";
1477			reg = <0x0 0x0801d000 0x0 0x1000>;
1478
1479			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1480			clock-names = "apb_pclk";
1481
1482			status = "disabled";
1483		};
1484
1485		cti14: cti@801e000 {
1486			compatible = "arm,coresight-cti", "arm,primecell";
1487			reg = <0x0 0x0801e000 0x0 0x1000>;
1488
1489			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1490			clock-names = "apb_pclk";
1491
1492			status = "disabled";
1493		};
1494
1495		cti15: cti@801f000 {
1496			compatible = "arm,coresight-cti", "arm,primecell";
1497			reg = <0x0 0x0801f000 0x0 0x1000>;
1498
1499			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1500			clock-names = "apb_pclk";
1501
1502			status = "disabled";
1503		};
1504
1505		replicator@8046000 {
1506			compatible = "arm,coresight-dynamic-replicator", "arm,primecell";
1507			reg = <0x0 0x08046000 0x0 0x1000>;
1508
1509			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1510			clock-names = "apb_pclk";
1511
1512			status = "disabled";
1513
1514			out-ports {
1515				port {
1516					replicator_out: endpoint {
1517						remote-endpoint = <&etr_in>;
1518					};
1519				};
1520			};
1521
1522			in-ports {
1523				port {
1524					replicator_in: endpoint {
1525						remote-endpoint = <&etf_out>;
1526					};
1527				};
1528			};
1529		};
1530
1531		etf@8047000 {
1532			compatible = "arm,coresight-tmc", "arm,primecell";
1533			reg = <0x0 0x08047000 0x0 0x1000>;
1534
1535			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1536			clock-names = "apb_pclk";
1537
1538			status = "disabled";
1539
1540			in-ports {
1541				port {
1542					etf_in: endpoint {
1543						remote-endpoint = <&merge_funnel_out>;
1544					};
1545				};
1546			};
1547
1548			out-ports {
1549				port {
1550					etf_out: endpoint {
1551						remote-endpoint = <&replicator_in>;
1552					};
1553				};
1554			};
1555		};
1556
1557		etr@8048000 {
1558			compatible = "arm,coresight-tmc", "arm,primecell";
1559			reg = <0x0 0x08048000 0x0 0x1000>;
1560
1561			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1562			clock-names = "apb_pclk";
1563
1564			status = "disabled";
1565
1566			in-ports {
1567				port {
1568					etr_in: endpoint {
1569						remote-endpoint = <&replicator_out>;
1570					};
1571				};
1572			};
1573		};
1574
1575		funnel@8041000 {
1576			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
1577			reg = <0x0 0x08041000 0x0 0x1000>;
1578
1579			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1580			clock-names = "apb_pclk";
1581
1582			status = "disabled";
1583
1584			out-ports {
1585				port {
1586					funnel_in0_out: endpoint {
1587						remote-endpoint = <&merge_funnel_in0>;
1588					};
1589				};
1590			};
1591
1592			in-ports {
1593				port {
1594					funnel_in0_in: endpoint {
1595						remote-endpoint = <&stm_out>;
1596					};
1597				};
1598			};
1599		};
1600
1601		funnel@8042000 {
1602			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
1603			reg = <0x0 0x08042000 0x0 0x1000>;
1604
1605			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1606			clock-names = "apb_pclk";
1607
1608			status = "disabled";
1609
1610			out-ports {
1611				port {
1612					funnel_in1_out: endpoint {
1613						remote-endpoint = <&merge_funnel_in1>;
1614					};
1615				};
1616			};
1617
1618			in-ports {
1619				port {
1620					funnel_in1_in: endpoint {
1621						remote-endpoint = <&funnel_apss1_out>;
1622					};
1623				};
1624			};
1625		};
1626
1627		funnel@8045000 {
1628			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
1629			reg = <0x0 0x08045000 0x0 0x1000>;
1630
1631			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1632			clock-names = "apb_pclk";
1633
1634			status = "disabled";
1635
1636			out-ports {
1637				port {
1638					merge_funnel_out: endpoint {
1639						remote-endpoint = <&etf_in>;
1640					};
1641				};
1642			};
1643
1644			in-ports {
1645				#address-cells = <1>;
1646				#size-cells = <0>;
1647
1648				port@0 {
1649					reg = <0>;
1650					merge_funnel_in0: endpoint {
1651						remote-endpoint = <&funnel_in0_out>;
1652					};
1653				};
1654
1655				port@1 {
1656					reg = <1>;
1657					merge_funnel_in1: endpoint {
1658						remote-endpoint = <&funnel_in1_out>;
1659					};
1660				};
1661			};
1662		};
1663
1664		etm@9040000 {
1665			compatible = "arm,coresight-etm4x", "arm,primecell";
1666			reg = <0x0 0x09040000 0x0 0x1000>;
1667
1668			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1669			clock-names = "apb_pclk";
1670			arm,coresight-loses-context-with-cpu;
1671
1672			cpu = <&CPU0>;
1673
1674			status = "disabled";
1675
1676			out-ports {
1677				port {
1678					etm0_out: endpoint {
1679						remote-endpoint = <&funnel_apss0_in0>;
1680					};
1681				};
1682			};
1683		};
1684
1685		etm@9140000 {
1686			compatible = "arm,coresight-etm4x", "arm,primecell";
1687			reg = <0x0 0x09140000 0x0 0x1000>;
1688
1689			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1690			clock-names = "apb_pclk";
1691			arm,coresight-loses-context-with-cpu;
1692
1693			cpu = <&CPU1>;
1694
1695			status = "disabled";
1696
1697			out-ports {
1698				port {
1699					etm1_out: endpoint {
1700						remote-endpoint = <&funnel_apss0_in1>;
1701					};
1702				};
1703			};
1704		};
1705
1706		etm@9240000 {
1707			compatible = "arm,coresight-etm4x", "arm,primecell";
1708			reg = <0x0 0x09240000 0x0 0x1000>;
1709
1710			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1711			clock-names = "apb_pclk";
1712			arm,coresight-loses-context-with-cpu;
1713
1714			cpu = <&CPU2>;
1715
1716			status = "disabled";
1717
1718			out-ports {
1719				port {
1720					etm2_out: endpoint {
1721						remote-endpoint = <&funnel_apss0_in2>;
1722					};
1723				};
1724			};
1725		};
1726
1727		etm@9340000 {
1728			compatible = "arm,coresight-etm4x", "arm,primecell";
1729			reg = <0x0 0x09340000 0x0 0x1000>;
1730
1731			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1732			clock-names = "apb_pclk";
1733			arm,coresight-loses-context-with-cpu;
1734
1735			cpu = <&CPU3>;
1736
1737			status = "disabled";
1738
1739			out-ports {
1740				port {
1741					etm3_out: endpoint {
1742						remote-endpoint = <&funnel_apss0_in3>;
1743					};
1744				};
1745			};
1746		};
1747
1748		etm@9440000 {
1749			compatible = "arm,coresight-etm4x", "arm,primecell";
1750			reg = <0x0 0x09440000 0x0 0x1000>;
1751
1752			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1753			clock-names = "apb_pclk";
1754			arm,coresight-loses-context-with-cpu;
1755
1756			cpu = <&CPU4>;
1757
1758			status = "disabled";
1759
1760			out-ports {
1761				port {
1762					etm4_out: endpoint {
1763						remote-endpoint = <&funnel_apss0_in4>;
1764					};
1765				};
1766			};
1767		};
1768
1769		etm@9540000 {
1770			compatible = "arm,coresight-etm4x", "arm,primecell";
1771			reg = <0x0 0x09540000 0x0 0x1000>;
1772
1773			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1774			clock-names = "apb_pclk";
1775			arm,coresight-loses-context-with-cpu;
1776
1777			cpu = <&CPU5>;
1778
1779			status = "disabled";
1780
1781			out-ports {
1782				port {
1783					etm5_out: endpoint {
1784						remote-endpoint = <&funnel_apss0_in5>;
1785					};
1786				};
1787			};
1788		};
1789
1790		etm@9640000 {
1791			compatible = "arm,coresight-etm4x", "arm,primecell";
1792			reg = <0x0 0x09640000 0x0 0x1000>;
1793
1794			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1795			clock-names = "apb_pclk";
1796			arm,coresight-loses-context-with-cpu;
1797
1798			cpu = <&CPU6>;
1799
1800			status = "disabled";
1801
1802			out-ports {
1803				port {
1804					etm6_out: endpoint {
1805						remote-endpoint = <&funnel_apss0_in6>;
1806					};
1807				};
1808			};
1809		};
1810
1811		etm@9740000 {
1812			compatible = "arm,coresight-etm4x", "arm,primecell";
1813			reg = <0x0 0x09740000 0x0 0x1000>;
1814
1815			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1816			clock-names = "apb_pclk";
1817			arm,coresight-loses-context-with-cpu;
1818
1819			cpu = <&CPU7>;
1820
1821			status = "disabled";
1822
1823			out-ports {
1824				port {
1825					etm7_out: endpoint {
1826						remote-endpoint = <&funnel_apss0_in7>;
1827					};
1828				};
1829			};
1830		};
1831
1832		funnel@9800000 {
1833			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
1834			reg = <0x0 0x09800000 0x0 0x1000>;
1835
1836			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1837			clock-names = "apb_pclk";
1838
1839			status = "disabled";
1840
1841			out-ports {
1842				port {
1843					funnel_apss0_out: endpoint {
1844						remote-endpoint = <&funnel_apss1_in>;
1845					};
1846				};
1847			};
1848
1849			in-ports {
1850				#address-cells = <1>;
1851				#size-cells = <0>;
1852
1853				port@0 {
1854					reg = <0>;
1855					funnel_apss0_in0: endpoint {
1856						remote-endpoint = <&etm0_out>;
1857					};
1858				};
1859
1860				port@1 {
1861					reg = <1>;
1862					funnel_apss0_in1: endpoint {
1863						remote-endpoint = <&etm1_out>;
1864					};
1865				};
1866
1867				port@2 {
1868					reg = <2>;
1869					funnel_apss0_in2: endpoint {
1870						remote-endpoint = <&etm2_out>;
1871					};
1872				};
1873
1874				port@3 {
1875					reg = <3>;
1876					funnel_apss0_in3: endpoint {
1877						remote-endpoint = <&etm3_out>;
1878					};
1879				};
1880
1881				port@4 {
1882					reg = <4>;
1883					funnel_apss0_in4: endpoint {
1884						remote-endpoint = <&etm4_out>;
1885					};
1886				};
1887
1888				port@5 {
1889					reg = <5>;
1890					funnel_apss0_in5: endpoint {
1891						remote-endpoint = <&etm5_out>;
1892					};
1893				};
1894
1895				port@6 {
1896					reg = <6>;
1897					funnel_apss0_in6: endpoint {
1898						remote-endpoint = <&etm6_out>;
1899					};
1900				};
1901
1902				port@7 {
1903					reg = <7>;
1904					funnel_apss0_in7: endpoint {
1905						remote-endpoint = <&etm7_out>;
1906					};
1907				};
1908			};
1909		};
1910
1911		funnel@9810000 {
1912			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
1913			reg = <0x0 0x09810000 0x0 0x1000>;
1914
1915			clocks = <&rpmcc RPM_SMD_QDSS_CLK>;
1916			clock-names = "apb_pclk";
1917
1918			status = "disabled";
1919
1920			out-ports {
1921				port {
1922					funnel_apss1_out: endpoint {
1923						remote-endpoint = <&funnel_in1_in>;
1924					};
1925				};
1926			};
1927
1928			in-ports {
1929				port {
1930					funnel_apss1_in: endpoint {
1931						remote-endpoint = <&funnel_apss0_out>;
1932					};
1933				};
1934			};
1935		};
1936
1937		apps_smmu: iommu@c600000 {
1938			compatible = "qcom,sm6115-smmu-500", "qcom,smmu-500", "arm,mmu-500";
1939			reg = <0x0 0x0c600000 0x0 0x80000>;
1940			#iommu-cells = <2>;
1941			#global-interrupts = <1>;
1942
1943			interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>,
1944				     <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>,
1945				     <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>,
1946				     <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>,
1947				     <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>,
1948				     <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>,
1949				     <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>,
1950				     <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>,
1951				     <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>,
1952				     <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>,
1953				     <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>,
1954				     <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>,
1955				     <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>,
1956				     <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>,
1957				     <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>,
1958				     <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>,
1959				     <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,
1960				     <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>,
1961				     <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>,
1962				     <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>,
1963				     <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
1964				     <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
1965				     <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
1966				     <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
1967				     <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>,
1968				     <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
1969				     <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
1970				     <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
1971				     <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
1972				     <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
1973				     <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
1974				     <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
1975				     <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>,
1976				     <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>,
1977				     <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>,
1978				     <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>,
1979				     <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
1980				     <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>,
1981				     <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
1982				     <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>,
1983				     <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>,
1984				     <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>,
1985				     <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>,
1986				     <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>,
1987				     <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
1988				     <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>,
1989				     <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>,
1990				     <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>,
1991				     <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>,
1992				     <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
1993				     <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
1994				     <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>,
1995				     <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>,
1996				     <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>,
1997				     <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>,
1998				     <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>,
1999				     <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>,
2000				     <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>,
2001				     <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>,
2002				     <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>,
2003				     <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>,
2004				     <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>,
2005				     <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>,
2006				     <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>,
2007				     <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>;
2008		};
2009
2010		wifi: wifi@c800000 {
2011			compatible = "qcom,wcn3990-wifi";
2012			reg = <0x0 0x0c800000 0x0 0x800000>;
2013			reg-names = "membase";
2014			memory-region = <&wlan_msa_mem>;
2015			interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>,
2016				     <GIC_SPI 359 IRQ_TYPE_LEVEL_HIGH>,
2017				     <GIC_SPI 360 IRQ_TYPE_LEVEL_HIGH>,
2018				     <GIC_SPI 361 IRQ_TYPE_LEVEL_HIGH>,
2019				     <GIC_SPI 362 IRQ_TYPE_LEVEL_HIGH>,
2020				     <GIC_SPI 363 IRQ_TYPE_LEVEL_HIGH>,
2021				     <GIC_SPI 364 IRQ_TYPE_LEVEL_HIGH>,
2022				     <GIC_SPI 365 IRQ_TYPE_LEVEL_HIGH>,
2023				     <GIC_SPI 366 IRQ_TYPE_LEVEL_HIGH>,
2024				     <GIC_SPI 367 IRQ_TYPE_LEVEL_HIGH>,
2025				     <GIC_SPI 368 IRQ_TYPE_LEVEL_HIGH>,
2026				     <GIC_SPI 369 IRQ_TYPE_LEVEL_HIGH>;
2027			iommus = <&apps_smmu 0x1a0 0x1>;
2028			qcom,msa-fixed-perm;
2029			status = "disabled";
2030		};
2031
2032		watchdog@f017000 {
2033			compatible = "qcom,apss-wdt-sm6115", "qcom,kpss-wdt";
2034			reg = <0x0 0x0f017000 0x0 0x1000>;
2035			clocks = <&sleep_clk>;
2036			interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>;
2037		};
2038
2039		apcs_glb: mailbox@f111000 {
2040			compatible = "qcom,sm6115-apcs-hmss-global";
2041			reg = <0x0 0x0f111000 0x0 0x1000>;
2042
2043			#mbox-cells = <1>;
2044		};
2045
2046		timer@f120000 {
2047			compatible = "arm,armv7-timer-mem";
2048			reg = <0x0 0x0f120000 0x0 0x1000>;
2049			#address-cells = <2>;
2050			#size-cells = <2>;
2051			ranges;
2052			clock-frequency = <19200000>;
2053
2054			frame@f121000 {
2055				reg = <0x0 0x0f121000 0x0 0x1000>, <0x0 0x0f122000 0x0 0x1000>;
2056				frame-number = <0>;
2057				interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
2058					     <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
2059			};
2060
2061			frame@f123000 {
2062				reg = <0x0 0x0f123000 0x0 0x1000>;
2063				frame-number = <1>;
2064				interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
2065				status = "disabled";
2066			};
2067
2068			frame@f124000 {
2069				reg = <0x0 0x0f124000 0x0 0x1000>;
2070				frame-number = <2>;
2071				interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
2072				status = "disabled";
2073			};
2074
2075			frame@f125000 {
2076				reg = <0x0 0x0f125000 0x0 0x1000>;
2077				frame-number = <3>;
2078				interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
2079				status = "disabled";
2080			};
2081
2082			frame@f126000 {
2083				reg = <0x0 0x0f126000 0x0 0x1000>;
2084				frame-number = <4>;
2085				interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
2086				status = "disabled";
2087			};
2088
2089			frame@f127000 {
2090				reg = <0x0 0x0f127000 0x0 0x1000>;
2091				frame-number = <5>;
2092				interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
2093				status = "disabled";
2094			};
2095
2096			frame@f128000 {
2097				reg = <0x0 0x0f128000 0x0 0x1000>;
2098				frame-number = <6>;
2099				interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
2100				status = "disabled";
2101			};
2102		};
2103
2104		intc: interrupt-controller@f200000 {
2105			compatible = "arm,gic-v3";
2106			reg = <0x0 0x0f200000 0x0 0x10000>,
2107			      <0x0 0x0f300000 0x0 0x100000>;
2108			#interrupt-cells = <3>;
2109			interrupt-controller;
2110			interrupt-parent = <&intc>;
2111			#redistributor-regions = <1>;
2112			redistributor-stride = <0x0 0x20000>;
2113			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
2114		};
2115
2116		cpufreq_hw: cpufreq@f521000 {
2117			compatible = "qcom,cpufreq-hw";
2118			reg = <0x0 0x0f521000 0x0 0x1000>,
2119			      <0x0 0x0f523000 0x0 0x1000>;
2120
2121			reg-names = "freq-domain0", "freq-domain1";
2122			clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, <&gcc GPLL0>;
2123			clock-names = "xo", "alternate";
2124
2125			#freq-domain-cells = <1>;
2126		};
2127	};
2128
2129	thermal-zones {
2130		mapss-thermal {
2131			polling-delay-passive = <0>;
2132			polling-delay = <0>;
2133			thermal-sensors = <&tsens0 0>;
2134
2135			trips {
2136				trip-point0 {
2137					temperature = <115000>;
2138					hysteresis = <5000>;
2139					type = "passive";
2140				};
2141
2142				trip-point1 {
2143					temperature = <125000>;
2144					hysteresis = <1000>;
2145					type = "passive";
2146				};
2147			};
2148		};
2149
2150		cdsp-hvx-thermal {
2151			polling-delay-passive = <0>;
2152			polling-delay = <0>;
2153			thermal-sensors = <&tsens0 1>;
2154
2155			trips {
2156				trip-point0 {
2157					temperature = <115000>;
2158					hysteresis = <5000>;
2159					type = "passive";
2160				};
2161
2162				trip-point1 {
2163					temperature = <125000>;
2164					hysteresis = <1000>;
2165					type = "passive";
2166				};
2167			};
2168		};
2169
2170		wlan-thermal {
2171			polling-delay-passive = <0>;
2172			polling-delay = <0>;
2173			thermal-sensors = <&tsens0 2>;
2174
2175			trips {
2176				trip-point0 {
2177					temperature = <115000>;
2178					hysteresis = <5000>;
2179					type = "passive";
2180				};
2181
2182				trip-point1 {
2183					temperature = <125000>;
2184					hysteresis = <1000>;
2185					type = "passive";
2186				};
2187			};
2188		};
2189
2190		camera-thermal {
2191			polling-delay-passive = <0>;
2192			polling-delay = <0>;
2193			thermal-sensors = <&tsens0 3>;
2194
2195			trips {
2196				trip-point0 {
2197					temperature = <115000>;
2198					hysteresis = <5000>;
2199					type = "passive";
2200				};
2201
2202				trip-point1 {
2203					temperature = <125000>;
2204					hysteresis = <1000>;
2205					type = "passive";
2206				};
2207			};
2208		};
2209
2210		video-thermal {
2211			polling-delay-passive = <0>;
2212			polling-delay = <0>;
2213			thermal-sensors = <&tsens0 4>;
2214
2215			trips {
2216				trip-point0 {
2217					temperature = <115000>;
2218					hysteresis = <5000>;
2219					type = "passive";
2220				};
2221
2222				trip-point1 {
2223					temperature = <125000>;
2224					hysteresis = <1000>;
2225					type = "passive";
2226				};
2227			};
2228		};
2229
2230		modem1-thermal {
2231			polling-delay-passive = <0>;
2232			polling-delay = <0>;
2233			thermal-sensors = <&tsens0 5>;
2234
2235			trips {
2236				trip-point0 {
2237					temperature = <115000>;
2238					hysteresis = <5000>;
2239					type = "passive";
2240				};
2241
2242				trip-point1 {
2243					temperature = <125000>;
2244					hysteresis = <1000>;
2245					type = "passive";
2246				};
2247			};
2248		};
2249
2250		cpu4-thermal {
2251			polling-delay-passive = <0>;
2252			polling-delay = <0>;
2253			thermal-sensors = <&tsens0 6>;
2254
2255			trips {
2256				cpu4_alert0: trip-point0 {
2257					temperature = <90000>;
2258					hysteresis = <2000>;
2259					type = "passive";
2260				};
2261
2262				cpu4_alert1: trip-point1 {
2263					temperature = <95000>;
2264					hysteresis = <2000>;
2265					type = "passive";
2266				};
2267
2268				cpu4_crit: cpu_crit {
2269					temperature = <110000>;
2270					hysteresis = <1000>;
2271					type = "critical";
2272				};
2273			};
2274		};
2275
2276		cpu5-thermal {
2277			polling-delay-passive = <0>;
2278			polling-delay = <0>;
2279			thermal-sensors = <&tsens0 7>;
2280
2281			trips {
2282				cpu5_alert0: trip-point0 {
2283					temperature = <90000>;
2284					hysteresis = <2000>;
2285					type = "passive";
2286				};
2287
2288				cpu5_alert1: trip-point1 {
2289					temperature = <95000>;
2290					hysteresis = <2000>;
2291					type = "passive";
2292				};
2293
2294				cpu5_crit: cpu_crit {
2295					temperature = <110000>;
2296					hysteresis = <1000>;
2297					type = "critical";
2298				};
2299			};
2300		};
2301
2302		cpu6-thermal {
2303			polling-delay-passive = <0>;
2304			polling-delay = <0>;
2305			thermal-sensors = <&tsens0 8>;
2306
2307			trips {
2308				cpu6_alert0: trip-point0 {
2309					temperature = <90000>;
2310					hysteresis = <2000>;
2311					type = "passive";
2312				};
2313
2314				cpu6_alert1: trip-point1 {
2315					temperature = <95000>;
2316					hysteresis = <2000>;
2317					type = "passive";
2318				};
2319
2320				cpu6_crit: cpu_crit {
2321					temperature = <110000>;
2322					hysteresis = <1000>;
2323					type = "critical";
2324				};
2325			};
2326		};
2327
2328		cpu7-thermal {
2329			polling-delay-passive = <0>;
2330			polling-delay = <0>;
2331			thermal-sensors = <&tsens0 9>;
2332
2333			trips {
2334				cpu7_alert0: trip-point0 {
2335					temperature = <90000>;
2336					hysteresis = <2000>;
2337					type = "passive";
2338				};
2339
2340				cpu7_alert1: trip-point1 {
2341					temperature = <95000>;
2342					hysteresis = <2000>;
2343					type = "passive";
2344				};
2345
2346				cpu7_crit: cpu_crit {
2347					temperature = <110000>;
2348					hysteresis = <1000>;
2349					type = "critical";
2350				};
2351			};
2352		};
2353
2354		cpu45-thermal {
2355			polling-delay-passive = <0>;
2356			polling-delay = <0>;
2357			thermal-sensors = <&tsens0 10>;
2358
2359			trips {
2360				cpu45_alert0: trip-point0 {
2361					temperature = <90000>;
2362					hysteresis = <2000>;
2363					type = "passive";
2364				};
2365
2366				cpu45_alert1: trip-point1 {
2367					temperature = <95000>;
2368					hysteresis = <2000>;
2369					type = "passive";
2370				};
2371
2372				cpu45_crit: cpu_crit {
2373					temperature = <110000>;
2374					hysteresis = <1000>;
2375					type = "critical";
2376				};
2377			};
2378		};
2379
2380		cpu67-thermal {
2381			polling-delay-passive = <0>;
2382			polling-delay = <0>;
2383			thermal-sensors = <&tsens0 11>;
2384
2385			trips {
2386				cpu67_alert0: trip-point0 {
2387					temperature = <90000>;
2388					hysteresis = <2000>;
2389					type = "passive";
2390				};
2391
2392				cpu67_alert1: trip-point1 {
2393					temperature = <95000>;
2394					hysteresis = <2000>;
2395					type = "passive";
2396				};
2397
2398				cpu67_crit: cpu_crit {
2399					temperature = <110000>;
2400					hysteresis = <1000>;
2401					type = "critical";
2402				};
2403			};
2404		};
2405
2406		cpu0123-thermal {
2407			polling-delay-passive = <0>;
2408			polling-delay = <0>;
2409			thermal-sensors = <&tsens0 12>;
2410
2411			trips {
2412				cpu0123_alert0: trip-point0 {
2413					temperature = <90000>;
2414					hysteresis = <2000>;
2415					type = "passive";
2416				};
2417
2418				cpu0123_alert1: trip-point1 {
2419					temperature = <95000>;
2420					hysteresis = <2000>;
2421					type = "passive";
2422				};
2423
2424				cpu0123_crit: cpu_crit {
2425					temperature = <110000>;
2426					hysteresis = <1000>;
2427					type = "critical";
2428				};
2429			};
2430		};
2431
2432		modem0-thermal {
2433			polling-delay-passive = <0>;
2434			polling-delay = <0>;
2435			thermal-sensors = <&tsens0 13>;
2436
2437			trips {
2438				trip-point0 {
2439					temperature = <115000>;
2440					hysteresis = <5000>;
2441					type = "passive";
2442				};
2443
2444				trip-point1 {
2445					temperature = <125000>;
2446					hysteresis = <1000>;
2447					type = "passive";
2448				};
2449			};
2450		};
2451
2452		display-thermal {
2453			polling-delay-passive = <0>;
2454			polling-delay = <0>;
2455			thermal-sensors = <&tsens0 14>;
2456
2457			trips {
2458				trip-point0 {
2459					temperature = <115000>;
2460					hysteresis = <5000>;
2461					type = "passive";
2462				};
2463
2464				trip-point1 {
2465					temperature = <125000>;
2466					hysteresis = <1000>;
2467					type = "passive";
2468				};
2469			};
2470		};
2471
2472		gpu-thermal {
2473			polling-delay-passive = <0>;
2474			polling-delay = <0>;
2475			thermal-sensors = <&tsens0 15>;
2476
2477			trips {
2478				trip-point0 {
2479					temperature = <115000>;
2480					hysteresis = <5000>;
2481					type = "passive";
2482				};
2483
2484				trip-point1 {
2485					temperature = <125000>;
2486					hysteresis = <1000>;
2487					type = "passive";
2488				};
2489			};
2490		};
2491	};
2492
2493	timer {
2494		compatible = "arm,armv8-timer";
2495		interrupts = <GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
2496			     <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
2497			     <GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
2498			     <GIC_PPI 0 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
2499	};
2500};
2501