xref: /linux/arch/arm64/boot/dts/mediatek/mt8192.dtsi (revision 1e525507)
1// SPDX-License-Identifier: (GPL-2.0 OR MIT)
2/*
3 * Copyright (C) 2020 MediaTek Inc.
4 * Author: Seiya Wang <seiya.wang@mediatek.com>
5 */
6
7/dts-v1/;
8#include <dt-bindings/clock/mt8192-clk.h>
9#include <dt-bindings/gce/mt8192-gce.h>
10#include <dt-bindings/interrupt-controller/arm-gic.h>
11#include <dt-bindings/interrupt-controller/irq.h>
12#include <dt-bindings/memory/mt8192-larb-port.h>
13#include <dt-bindings/pinctrl/mt8192-pinfunc.h>
14#include <dt-bindings/phy/phy.h>
15#include <dt-bindings/power/mt8192-power.h>
16#include <dt-bindings/reset/mt8192-resets.h>
17#include <dt-bindings/thermal/thermal.h>
18#include <dt-bindings/thermal/mediatek,lvts-thermal.h>
19
20/ {
21	compatible = "mediatek,mt8192";
22	interrupt-parent = <&gic>;
23	#address-cells = <2>;
24	#size-cells = <2>;
25
26	aliases {
27		ovl0 = &ovl0;
28		ovl-2l0 = &ovl_2l0;
29		ovl-2l2 = &ovl_2l2;
30		rdma0 = &rdma0;
31		rdma4 = &rdma4;
32	};
33
34	clk13m: fixed-factor-clock-13m {
35		compatible = "fixed-factor-clock";
36		#clock-cells = <0>;
37		clocks = <&clk26m>;
38		clock-div = <2>;
39		clock-mult = <1>;
40		clock-output-names = "clk13m";
41	};
42
43	clk26m: oscillator0 {
44		compatible = "fixed-clock";
45		#clock-cells = <0>;
46		clock-frequency = <26000000>;
47		clock-output-names = "clk26m";
48	};
49
50	clk32k: oscillator1 {
51		compatible = "fixed-clock";
52		#clock-cells = <0>;
53		clock-frequency = <32768>;
54		clock-output-names = "clk32k";
55	};
56
57	cpus {
58		#address-cells = <1>;
59		#size-cells = <0>;
60
61		cpu0: cpu@0 {
62			device_type = "cpu";
63			compatible = "arm,cortex-a55";
64			reg = <0x000>;
65			enable-method = "psci";
66			clock-frequency = <1701000000>;
67			cpu-idle-states = <&cpu_ret_l &cpu_off_l>;
68			i-cache-size = <32768>;
69			i-cache-line-size = <64>;
70			i-cache-sets = <128>;
71			d-cache-size = <32768>;
72			d-cache-line-size = <64>;
73			d-cache-sets = <128>;
74			next-level-cache = <&l2_0>;
75			performance-domains = <&performance 0>;
76			capacity-dmips-mhz = <427>;
77			#cooling-cells = <2>;
78		};
79
80		cpu1: cpu@100 {
81			device_type = "cpu";
82			compatible = "arm,cortex-a55";
83			reg = <0x100>;
84			enable-method = "psci";
85			clock-frequency = <1701000000>;
86			cpu-idle-states = <&cpu_ret_l &cpu_off_l>;
87			i-cache-size = <32768>;
88			i-cache-line-size = <64>;
89			i-cache-sets = <128>;
90			d-cache-size = <32768>;
91			d-cache-line-size = <64>;
92			d-cache-sets = <128>;
93			next-level-cache = <&l2_0>;
94			performance-domains = <&performance 0>;
95			capacity-dmips-mhz = <427>;
96			#cooling-cells = <2>;
97		};
98
99		cpu2: cpu@200 {
100			device_type = "cpu";
101			compatible = "arm,cortex-a55";
102			reg = <0x200>;
103			enable-method = "psci";
104			clock-frequency = <1701000000>;
105			cpu-idle-states = <&cpu_ret_l &cpu_off_l>;
106			i-cache-size = <32768>;
107			i-cache-line-size = <64>;
108			i-cache-sets = <128>;
109			d-cache-size = <32768>;
110			d-cache-line-size = <64>;
111			d-cache-sets = <128>;
112			next-level-cache = <&l2_0>;
113			performance-domains = <&performance 0>;
114			capacity-dmips-mhz = <427>;
115			#cooling-cells = <2>;
116		};
117
118		cpu3: cpu@300 {
119			device_type = "cpu";
120			compatible = "arm,cortex-a55";
121			reg = <0x300>;
122			enable-method = "psci";
123			clock-frequency = <1701000000>;
124			cpu-idle-states = <&cpu_ret_l &cpu_off_l>;
125			i-cache-size = <32768>;
126			i-cache-line-size = <64>;
127			i-cache-sets = <128>;
128			d-cache-size = <32768>;
129			d-cache-line-size = <64>;
130			d-cache-sets = <128>;
131			next-level-cache = <&l2_0>;
132			performance-domains = <&performance 0>;
133			capacity-dmips-mhz = <427>;
134			#cooling-cells = <2>;
135		};
136
137		cpu4: cpu@400 {
138			device_type = "cpu";
139			compatible = "arm,cortex-a76";
140			reg = <0x400>;
141			enable-method = "psci";
142			clock-frequency = <2171000000>;
143			cpu-idle-states = <&cpu_ret_b &cpu_off_b>;
144			i-cache-size = <65536>;
145			i-cache-line-size = <64>;
146			i-cache-sets = <256>;
147			d-cache-size = <65536>;
148			d-cache-line-size = <64>;
149			d-cache-sets = <256>;
150			next-level-cache = <&l2_1>;
151			performance-domains = <&performance 1>;
152			capacity-dmips-mhz = <1024>;
153			#cooling-cells = <2>;
154		};
155
156		cpu5: cpu@500 {
157			device_type = "cpu";
158			compatible = "arm,cortex-a76";
159			reg = <0x500>;
160			enable-method = "psci";
161			clock-frequency = <2171000000>;
162			cpu-idle-states = <&cpu_ret_b &cpu_off_b>;
163			i-cache-size = <65536>;
164			i-cache-line-size = <64>;
165			i-cache-sets = <256>;
166			d-cache-size = <65536>;
167			d-cache-line-size = <64>;
168			d-cache-sets = <256>;
169			next-level-cache = <&l2_1>;
170			performance-domains = <&performance 1>;
171			capacity-dmips-mhz = <1024>;
172			#cooling-cells = <2>;
173		};
174
175		cpu6: cpu@600 {
176			device_type = "cpu";
177			compatible = "arm,cortex-a76";
178			reg = <0x600>;
179			enable-method = "psci";
180			clock-frequency = <2171000000>;
181			cpu-idle-states = <&cpu_ret_b &cpu_off_b>;
182			i-cache-size = <65536>;
183			i-cache-line-size = <64>;
184			i-cache-sets = <256>;
185			d-cache-size = <65536>;
186			d-cache-line-size = <64>;
187			d-cache-sets = <256>;
188			next-level-cache = <&l2_1>;
189			performance-domains = <&performance 1>;
190			capacity-dmips-mhz = <1024>;
191			#cooling-cells = <2>;
192		};
193
194		cpu7: cpu@700 {
195			device_type = "cpu";
196			compatible = "arm,cortex-a76";
197			reg = <0x700>;
198			enable-method = "psci";
199			clock-frequency = <2171000000>;
200			cpu-idle-states = <&cpu_ret_b &cpu_off_b>;
201			i-cache-size = <65536>;
202			i-cache-line-size = <64>;
203			i-cache-sets = <256>;
204			d-cache-size = <65536>;
205			d-cache-line-size = <64>;
206			d-cache-sets = <256>;
207			next-level-cache = <&l2_1>;
208			performance-domains = <&performance 1>;
209			capacity-dmips-mhz = <1024>;
210			#cooling-cells = <2>;
211		};
212
213		cpu-map {
214			cluster0 {
215				core0 {
216					cpu = <&cpu0>;
217				};
218				core1 {
219					cpu = <&cpu1>;
220				};
221				core2 {
222					cpu = <&cpu2>;
223				};
224				core3 {
225					cpu = <&cpu3>;
226				};
227				core4 {
228					cpu = <&cpu4>;
229				};
230				core5 {
231					cpu = <&cpu5>;
232				};
233				core6 {
234					cpu = <&cpu6>;
235				};
236				core7 {
237					cpu = <&cpu7>;
238				};
239			};
240		};
241
242		l2_0: l2-cache0 {
243			compatible = "cache";
244			cache-level = <2>;
245			cache-size = <131072>;
246			cache-line-size = <64>;
247			cache-sets = <512>;
248			next-level-cache = <&l3_0>;
249			cache-unified;
250		};
251
252		l2_1: l2-cache1 {
253			compatible = "cache";
254			cache-level = <2>;
255			cache-size = <262144>;
256			cache-line-size = <64>;
257			cache-sets = <512>;
258			next-level-cache = <&l3_0>;
259			cache-unified;
260		};
261
262		l3_0: l3-cache {
263			compatible = "cache";
264			cache-level = <3>;
265			cache-size = <2097152>;
266			cache-line-size = <64>;
267			cache-sets = <2048>;
268			cache-unified;
269		};
270
271		idle-states {
272			entry-method = "psci";
273			cpu_ret_l: cpu-retention-l {
274				compatible = "arm,idle-state";
275				arm,psci-suspend-param = <0x00010001>;
276				local-timer-stop;
277				entry-latency-us = <55>;
278				exit-latency-us = <140>;
279				min-residency-us = <780>;
280			};
281			cpu_ret_b: cpu-retention-b {
282				compatible = "arm,idle-state";
283				arm,psci-suspend-param = <0x00010001>;
284				local-timer-stop;
285				entry-latency-us = <35>;
286				exit-latency-us = <145>;
287				min-residency-us = <720>;
288			};
289			cpu_off_l: cpu-off-l {
290				compatible = "arm,idle-state";
291				arm,psci-suspend-param = <0x01010002>;
292				local-timer-stop;
293				entry-latency-us = <60>;
294				exit-latency-us = <155>;
295				min-residency-us = <860>;
296			};
297			cpu_off_b: cpu-off-b {
298				compatible = "arm,idle-state";
299				arm,psci-suspend-param = <0x01010002>;
300				local-timer-stop;
301				entry-latency-us = <40>;
302				exit-latency-us = <155>;
303				min-residency-us = <780>;
304			};
305		};
306	};
307
308	pmu-a55 {
309		compatible = "arm,cortex-a55-pmu";
310		interrupt-parent = <&gic>;
311		interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH &ppi_cluster0>;
312	};
313
314	pmu-a76 {
315		compatible = "arm,cortex-a76-pmu";
316		interrupt-parent = <&gic>;
317		interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH &ppi_cluster1>;
318	};
319
320	psci {
321		compatible = "arm,psci-1.0";
322		method = "smc";
323	};
324
325	timer: timer {
326		compatible = "arm,armv8-timer";
327		interrupt-parent = <&gic>;
328		interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_HIGH 0>,
329			     <GIC_PPI 14 IRQ_TYPE_LEVEL_HIGH 0>,
330			     <GIC_PPI 11 IRQ_TYPE_LEVEL_HIGH 0>,
331			     <GIC_PPI 10 IRQ_TYPE_LEVEL_HIGH 0>;
332		clock-frequency = <13000000>;
333	};
334
335	gpu_opp_table: opp-table-0 {
336		compatible = "operating-points-v2";
337		opp-shared;
338
339		opp-358000000 {
340			opp-hz = /bits/ 64 <358000000>;
341			opp-microvolt = <606250>;
342		};
343
344		opp-399000000 {
345			opp-hz = /bits/ 64 <399000000>;
346			opp-microvolt = <618750>;
347		};
348
349		opp-440000000 {
350			opp-hz = /bits/ 64 <440000000>;
351			opp-microvolt = <631250>;
352		};
353
354		opp-482000000 {
355			opp-hz = /bits/ 64 <482000000>;
356			opp-microvolt = <643750>;
357		};
358
359		opp-523000000 {
360			opp-hz = /bits/ 64 <523000000>;
361			opp-microvolt = <656250>;
362		};
363
364		opp-564000000 {
365			opp-hz = /bits/ 64 <564000000>;
366			opp-microvolt = <668750>;
367		};
368
369		opp-605000000 {
370			opp-hz = /bits/ 64 <605000000>;
371			opp-microvolt = <681250>;
372		};
373
374		opp-647000000 {
375			opp-hz = /bits/ 64 <647000000>;
376			opp-microvolt = <693750>;
377		};
378
379		opp-688000000 {
380			opp-hz = /bits/ 64 <688000000>;
381			opp-microvolt = <706250>;
382		};
383
384		opp-724000000 {
385			opp-hz = /bits/ 64 <724000000>;
386			opp-microvolt = <725000>;
387		};
388
389		opp-748000000 {
390			opp-hz = /bits/ 64 <748000000>;
391			opp-microvolt = <737500>;
392		};
393
394		opp-772000000 {
395			opp-hz = /bits/ 64 <772000000>;
396			opp-microvolt = <750000>;
397		};
398
399		opp-795000000 {
400			opp-hz = /bits/ 64 <795000000>;
401			opp-microvolt = <762500>;
402		};
403
404		opp-819000000 {
405			opp-hz = /bits/ 64 <819000000>;
406			opp-microvolt = <775000>;
407		};
408
409		opp-843000000 {
410			opp-hz = /bits/ 64 <843000000>;
411			opp-microvolt = <787500>;
412		};
413
414		opp-866000000 {
415			opp-hz = /bits/ 64 <866000000>;
416			opp-microvolt = <800000>;
417		};
418	};
419
420	soc {
421		#address-cells = <2>;
422		#size-cells = <2>;
423		compatible = "simple-bus";
424		dma-ranges = <0x0 0x0 0x0 0x0 0x4 0x0>;
425		ranges;
426
427		performance: performance-controller@11bc10 {
428			compatible = "mediatek,cpufreq-hw";
429			reg = <0 0x0011bc10 0 0x120>, <0 0x0011bd30 0 0x120>;
430			#performance-domain-cells = <1>;
431		};
432
433		gic: interrupt-controller@c000000 {
434			compatible = "arm,gic-v3";
435			#interrupt-cells = <4>;
436			#redistributor-regions = <1>;
437			interrupt-parent = <&gic>;
438			interrupt-controller;
439			reg = <0 0x0c000000 0 0x40000>,
440			      <0 0x0c040000 0 0x200000>;
441			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH 0>;
442
443			ppi-partitions {
444				ppi_cluster0: interrupt-partition-0 {
445					affinity = <&cpu0 &cpu1 &cpu2 &cpu3>;
446				};
447				ppi_cluster1: interrupt-partition-1 {
448					affinity = <&cpu4 &cpu5 &cpu6 &cpu7>;
449				};
450			};
451		};
452
453		topckgen: syscon@10000000 {
454			compatible = "mediatek,mt8192-topckgen", "syscon";
455			reg = <0 0x10000000 0 0x1000>;
456			#clock-cells = <1>;
457		};
458
459		infracfg: syscon@10001000 {
460			compatible = "mediatek,mt8192-infracfg", "syscon";
461			reg = <0 0x10001000 0 0x1000>;
462			#clock-cells = <1>;
463			#reset-cells = <1>;
464		};
465
466		pericfg: syscon@10003000 {
467			compatible = "mediatek,mt8192-pericfg", "syscon";
468			reg = <0 0x10003000 0 0x1000>;
469			#clock-cells = <1>;
470		};
471
472		pio: pinctrl@10005000 {
473			compatible = "mediatek,mt8192-pinctrl";
474			reg = <0 0x10005000 0 0x1000>,
475			      <0 0x11c20000 0 0x1000>,
476			      <0 0x11d10000 0 0x1000>,
477			      <0 0x11d30000 0 0x1000>,
478			      <0 0x11d40000 0 0x1000>,
479			      <0 0x11e20000 0 0x1000>,
480			      <0 0x11e70000 0 0x1000>,
481			      <0 0x11ea0000 0 0x1000>,
482			      <0 0x11f20000 0 0x1000>,
483			      <0 0x11f30000 0 0x1000>,
484			      <0 0x1000b000 0 0x1000>;
485			reg-names = "iocfg0", "iocfg_rm", "iocfg_bm",
486				    "iocfg_bl", "iocfg_br", "iocfg_lm",
487				    "iocfg_lb", "iocfg_rt", "iocfg_lt",
488				    "iocfg_tl", "eint";
489			gpio-controller;
490			#gpio-cells = <2>;
491			gpio-ranges = <&pio 0 0 220>;
492			interrupt-controller;
493			interrupts = <GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH 0>;
494			#interrupt-cells = <2>;
495		};
496
497		scpsys: syscon@10006000 {
498			compatible = "mediatek,mt8192-scpsys", "syscon", "simple-mfd";
499			reg = <0 0x10006000 0 0x1000>;
500
501			/* System Power Manager */
502			spm: power-controller {
503				compatible = "mediatek,mt8192-power-controller";
504				#address-cells = <1>;
505				#size-cells = <0>;
506				#power-domain-cells = <1>;
507
508				/* power domain of the SoC */
509				power-domain@MT8192_POWER_DOMAIN_AUDIO {
510					reg = <MT8192_POWER_DOMAIN_AUDIO>;
511					clocks = <&topckgen CLK_TOP_AUD_INTBUS_SEL>,
512						 <&infracfg CLK_INFRA_AUDIO_26M_B>,
513						 <&infracfg CLK_INFRA_AUDIO>;
514					clock-names = "audio", "audio1", "audio2";
515					mediatek,infracfg = <&infracfg>;
516					#power-domain-cells = <0>;
517				};
518
519				power-domain@MT8192_POWER_DOMAIN_CONN {
520					reg = <MT8192_POWER_DOMAIN_CONN>;
521					clocks = <&infracfg CLK_INFRA_PMIC_CONN>;
522					clock-names = "conn";
523					mediatek,infracfg = <&infracfg>;
524					#power-domain-cells = <0>;
525				};
526
527				mfg0: power-domain@MT8192_POWER_DOMAIN_MFG0 {
528					reg = <MT8192_POWER_DOMAIN_MFG0>;
529					clocks = <&topckgen CLK_TOP_MFG_PLL_SEL>,
530						 <&topckgen CLK_TOP_MFG_REF_SEL>;
531					clock-names = "mfg", "alt";
532					#address-cells = <1>;
533					#size-cells = <0>;
534					#power-domain-cells = <1>;
535
536					mfg1: power-domain@MT8192_POWER_DOMAIN_MFG1 {
537						reg = <MT8192_POWER_DOMAIN_MFG1>;
538						mediatek,infracfg = <&infracfg>;
539						#address-cells = <1>;
540						#size-cells = <0>;
541						#power-domain-cells = <1>;
542
543						power-domain@MT8192_POWER_DOMAIN_MFG2 {
544							reg = <MT8192_POWER_DOMAIN_MFG2>;
545							#power-domain-cells = <0>;
546						};
547
548						power-domain@MT8192_POWER_DOMAIN_MFG3 {
549							reg = <MT8192_POWER_DOMAIN_MFG3>;
550							#power-domain-cells = <0>;
551						};
552
553						power-domain@MT8192_POWER_DOMAIN_MFG4 {
554							reg = <MT8192_POWER_DOMAIN_MFG4>;
555							#power-domain-cells = <0>;
556						};
557
558						power-domain@MT8192_POWER_DOMAIN_MFG5 {
559							reg = <MT8192_POWER_DOMAIN_MFG5>;
560							#power-domain-cells = <0>;
561						};
562
563						power-domain@MT8192_POWER_DOMAIN_MFG6 {
564							reg = <MT8192_POWER_DOMAIN_MFG6>;
565							#power-domain-cells = <0>;
566						};
567					};
568				};
569
570				power-domain@MT8192_POWER_DOMAIN_DISP {
571					reg = <MT8192_POWER_DOMAIN_DISP>;
572					clocks = <&topckgen CLK_TOP_DISP_SEL>,
573						 <&mmsys CLK_MM_SMI_INFRA>,
574						 <&mmsys CLK_MM_SMI_COMMON>,
575						 <&mmsys CLK_MM_SMI_GALS>,
576						 <&mmsys CLK_MM_SMI_IOMMU>;
577					clock-names = "disp", "disp-0", "disp-1", "disp-2",
578						      "disp-3";
579					mediatek,infracfg = <&infracfg>;
580					#address-cells = <1>;
581					#size-cells = <0>;
582					#power-domain-cells = <1>;
583
584					power-domain@MT8192_POWER_DOMAIN_IPE {
585						reg = <MT8192_POWER_DOMAIN_IPE>;
586						clocks = <&topckgen CLK_TOP_IPE_SEL>,
587							 <&ipesys CLK_IPE_LARB19>,
588							 <&ipesys CLK_IPE_LARB20>,
589							 <&ipesys CLK_IPE_SMI_SUBCOM>,
590							 <&ipesys CLK_IPE_GALS>;
591						clock-names = "ipe", "ipe-0", "ipe-1", "ipe-2",
592							      "ipe-3";
593						mediatek,infracfg = <&infracfg>;
594						#power-domain-cells = <0>;
595					};
596
597					power-domain@MT8192_POWER_DOMAIN_ISP {
598						reg = <MT8192_POWER_DOMAIN_ISP>;
599						clocks = <&topckgen CLK_TOP_IMG1_SEL>,
600							 <&imgsys CLK_IMG_LARB9>,
601							 <&imgsys CLK_IMG_GALS>;
602						clock-names = "isp", "isp-0", "isp-1";
603						mediatek,infracfg = <&infracfg>;
604						#power-domain-cells = <0>;
605					};
606
607					power-domain@MT8192_POWER_DOMAIN_ISP2 {
608						reg = <MT8192_POWER_DOMAIN_ISP2>;
609						clocks = <&topckgen CLK_TOP_IMG2_SEL>,
610							 <&imgsys2 CLK_IMG2_LARB11>,
611							 <&imgsys2 CLK_IMG2_GALS>;
612						clock-names = "isp2", "isp2-0", "isp2-1";
613						mediatek,infracfg = <&infracfg>;
614						#power-domain-cells = <0>;
615					};
616
617					power-domain@MT8192_POWER_DOMAIN_MDP {
618						reg = <MT8192_POWER_DOMAIN_MDP>;
619						clocks = <&topckgen CLK_TOP_MDP_SEL>,
620							 <&mdpsys CLK_MDP_SMI0>;
621						clock-names = "mdp", "mdp-0";
622						mediatek,infracfg = <&infracfg>;
623						#power-domain-cells = <0>;
624					};
625
626					power-domain@MT8192_POWER_DOMAIN_VENC {
627						reg = <MT8192_POWER_DOMAIN_VENC>;
628						clocks = <&topckgen CLK_TOP_VENC_SEL>,
629							 <&vencsys CLK_VENC_SET1_VENC>;
630						clock-names = "venc", "venc-0";
631						mediatek,infracfg = <&infracfg>;
632						#power-domain-cells = <0>;
633					};
634
635					power-domain@MT8192_POWER_DOMAIN_VDEC {
636						reg = <MT8192_POWER_DOMAIN_VDEC>;
637						clocks = <&topckgen CLK_TOP_VDEC_SEL>,
638							 <&vdecsys_soc CLK_VDEC_SOC_VDEC>,
639							 <&vdecsys_soc CLK_VDEC_SOC_LAT>,
640							 <&vdecsys_soc CLK_VDEC_SOC_LARB1>;
641						clock-names = "vdec", "vdec-0", "vdec-1", "vdec-2";
642						mediatek,infracfg = <&infracfg>;
643						#address-cells = <1>;
644						#size-cells = <0>;
645						#power-domain-cells = <1>;
646
647						power-domain@MT8192_POWER_DOMAIN_VDEC2 {
648							reg = <MT8192_POWER_DOMAIN_VDEC2>;
649							clocks = <&vdecsys CLK_VDEC_VDEC>,
650								 <&vdecsys CLK_VDEC_LAT>,
651								 <&vdecsys CLK_VDEC_LARB1>;
652							clock-names = "vdec2-0", "vdec2-1",
653								      "vdec2-2";
654							#power-domain-cells = <0>;
655						};
656					};
657
658					power-domain@MT8192_POWER_DOMAIN_CAM {
659						reg = <MT8192_POWER_DOMAIN_CAM>;
660						clocks = <&topckgen CLK_TOP_CAM_SEL>,
661							 <&camsys CLK_CAM_LARB13>,
662							 <&camsys CLK_CAM_LARB14>,
663							 <&camsys CLK_CAM_CCU_GALS>,
664							 <&camsys CLK_CAM_CAM2MM_GALS>;
665						clock-names = "cam", "cam-0", "cam-1", "cam-2",
666							      "cam-3";
667						mediatek,infracfg = <&infracfg>;
668						#address-cells = <1>;
669						#size-cells = <0>;
670						#power-domain-cells = <1>;
671
672						power-domain@MT8192_POWER_DOMAIN_CAM_RAWA {
673							reg = <MT8192_POWER_DOMAIN_CAM_RAWA>;
674							clocks = <&camsys_rawa CLK_CAM_RAWA_LARBX>;
675							clock-names = "cam_rawa-0";
676							#power-domain-cells = <0>;
677						};
678
679						power-domain@MT8192_POWER_DOMAIN_CAM_RAWB {
680							reg = <MT8192_POWER_DOMAIN_CAM_RAWB>;
681							clocks = <&camsys_rawb CLK_CAM_RAWB_LARBX>;
682							clock-names = "cam_rawb-0";
683							#power-domain-cells = <0>;
684						};
685
686						power-domain@MT8192_POWER_DOMAIN_CAM_RAWC {
687							reg = <MT8192_POWER_DOMAIN_CAM_RAWC>;
688							clocks = <&camsys_rawc CLK_CAM_RAWC_LARBX>;
689							clock-names = "cam_rawc-0";
690							#power-domain-cells = <0>;
691						};
692					};
693				};
694			};
695		};
696
697		watchdog: watchdog@10007000 {
698			compatible = "mediatek,mt8192-wdt";
699			reg = <0 0x10007000 0 0x100>;
700			#reset-cells = <1>;
701		};
702
703		apmixedsys: syscon@1000c000 {
704			compatible = "mediatek,mt8192-apmixedsys", "syscon";
705			reg = <0 0x1000c000 0 0x1000>;
706			#clock-cells = <1>;
707		};
708
709		systimer: timer@10017000 {
710			compatible = "mediatek,mt8192-timer",
711				     "mediatek,mt6765-timer";
712			reg = <0 0x10017000 0 0x1000>;
713			interrupts = <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH 0>;
714			clocks = <&clk13m>;
715		};
716
717		pwrap: pwrap@10026000 {
718			compatible = "mediatek,mt6873-pwrap";
719			reg = <0 0x10026000 0 0x1000>;
720			reg-names = "pwrap";
721			interrupts = <GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH 0>;
722			clocks = <&infracfg CLK_INFRA_PMIC_AP>,
723				 <&infracfg CLK_INFRA_PMIC_TMR>;
724			clock-names = "spi", "wrap";
725			assigned-clocks = <&topckgen CLK_TOP_PWRAP_ULPOSC_SEL>;
726			assigned-clock-parents = <&topckgen CLK_TOP_OSC_D10>;
727		};
728
729		spmi: spmi@10027000 {
730			compatible = "mediatek,mt6873-spmi";
731			reg = <0 0x10027000 0 0x000e00>,
732			      <0 0x10029000 0 0x000100>;
733			reg-names = "pmif", "spmimst";
734			clocks = <&infracfg CLK_INFRA_PMIC_AP>,
735				 <&infracfg CLK_INFRA_PMIC_TMR>,
736				 <&topckgen CLK_TOP_SPMI_MST_SEL>;
737			clock-names = "pmif_sys_ck",
738				      "pmif_tmr_ck",
739				      "spmimst_clk_mux";
740			assigned-clocks = <&topckgen CLK_TOP_PWRAP_ULPOSC_SEL>;
741			assigned-clock-parents = <&topckgen CLK_TOP_OSC_D10>;
742		};
743
744		gce: mailbox@10228000 {
745			compatible = "mediatek,mt8192-gce";
746			reg = <0 0x10228000 0 0x4000>;
747			interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH 0>;
748			#mbox-cells = <2>;
749			clocks = <&infracfg CLK_INFRA_GCE>;
750			clock-names = "gce";
751		};
752
753		scp_adsp: clock-controller@10720000 {
754			compatible = "mediatek,mt8192-scp_adsp";
755			reg = <0 0x10720000 0 0x1000>;
756			#clock-cells = <1>;
757			/* power domain dependency not upstreamed */
758			status = "fail";
759		};
760
761		uart0: serial@11002000 {
762			compatible = "mediatek,mt8192-uart",
763				     "mediatek,mt6577-uart";
764			reg = <0 0x11002000 0 0x1000>;
765			interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH 0>;
766			clocks = <&clk26m>, <&infracfg CLK_INFRA_UART0>;
767			clock-names = "baud", "bus";
768			status = "disabled";
769		};
770
771		uart1: serial@11003000 {
772			compatible = "mediatek,mt8192-uart",
773				     "mediatek,mt6577-uart";
774			reg = <0 0x11003000 0 0x1000>;
775			interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH 0>;
776			clocks = <&clk26m>, <&infracfg CLK_INFRA_UART1>;
777			clock-names = "baud", "bus";
778			status = "disabled";
779		};
780
781		imp_iic_wrap_c: clock-controller@11007000 {
782			compatible = "mediatek,mt8192-imp_iic_wrap_c";
783			reg = <0 0x11007000 0 0x1000>;
784			#clock-cells = <1>;
785		};
786
787		spi0: spi@1100a000 {
788			compatible = "mediatek,mt8192-spi",
789				     "mediatek,mt6765-spi";
790			#address-cells = <1>;
791			#size-cells = <0>;
792			reg = <0 0x1100a000 0 0x1000>;
793			interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH 0>;
794			clocks = <&topckgen CLK_TOP_MAINPLL_D5_D4>,
795				 <&topckgen CLK_TOP_SPI_SEL>,
796				 <&infracfg CLK_INFRA_SPI0>;
797			clock-names = "parent-clk", "sel-clk", "spi-clk";
798			status = "disabled";
799		};
800
801		lvts_ap: thermal-sensor@1100b000 {
802			compatible = "mediatek,mt8192-lvts-ap";
803			reg = <0 0x1100b000 0 0xc00>;
804			interrupts = <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH 0>;
805			clocks = <&infracfg CLK_INFRA_THERM>;
806			resets = <&infracfg MT8192_INFRA_RST0_THERM_CTRL_SWRST>;
807			nvmem-cells = <&lvts_e_data1>;
808			nvmem-cell-names = "lvts-calib-data-1";
809			#thermal-sensor-cells = <1>;
810		};
811
812		svs: svs@1100bc00 {
813			compatible = "mediatek,mt8192-svs";
814			reg = <0 0x1100bc00 0 0x400>;
815			interrupts = <GIC_SPI 167 IRQ_TYPE_LEVEL_HIGH 0>;
816			clocks = <&infracfg CLK_INFRA_THERM>;
817			clock-names = "main";
818			nvmem-cells = <&svs_calibration>, <&lvts_e_data1>;
819			nvmem-cell-names = "svs-calibration-data", "t-calibration-data";
820			resets = <&infracfg MT8192_INFRA_RST3_THERM_CTRL_PTP_SWRST>;
821			reset-names = "svs_rst";
822		};
823
824		pwm0: pwm@1100e000 {
825			compatible = "mediatek,mt8183-disp-pwm";
826			reg = <0 0x1100e000 0 0x1000>;
827			interrupts = <GIC_SPI 171 IRQ_TYPE_LEVEL_HIGH 0>;
828			#pwm-cells = <2>;
829			clocks = <&topckgen CLK_TOP_DISP_PWM_SEL>,
830				 <&infracfg CLK_INFRA_DISP_PWM>;
831			clock-names = "main", "mm";
832			status = "disabled";
833		};
834
835		spi1: spi@11010000 {
836			compatible = "mediatek,mt8192-spi",
837				     "mediatek,mt6765-spi";
838			#address-cells = <1>;
839			#size-cells = <0>;
840			reg = <0 0x11010000 0 0x1000>;
841			interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH 0>;
842			clocks = <&topckgen CLK_TOP_MAINPLL_D5_D4>,
843				 <&topckgen CLK_TOP_SPI_SEL>,
844				 <&infracfg CLK_INFRA_SPI1>;
845			clock-names = "parent-clk", "sel-clk", "spi-clk";
846			status = "disabled";
847		};
848
849		spi2: spi@11012000 {
850			compatible = "mediatek,mt8192-spi",
851				     "mediatek,mt6765-spi";
852			#address-cells = <1>;
853			#size-cells = <0>;
854			reg = <0 0x11012000 0 0x1000>;
855			interrupts = <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH 0>;
856			clocks = <&topckgen CLK_TOP_MAINPLL_D5_D4>,
857				 <&topckgen CLK_TOP_SPI_SEL>,
858				 <&infracfg CLK_INFRA_SPI2>;
859			clock-names = "parent-clk", "sel-clk", "spi-clk";
860			status = "disabled";
861		};
862
863		spi3: spi@11013000 {
864			compatible = "mediatek,mt8192-spi",
865				     "mediatek,mt6765-spi";
866			#address-cells = <1>;
867			#size-cells = <0>;
868			reg = <0 0x11013000 0 0x1000>;
869			interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH 0>;
870			clocks = <&topckgen CLK_TOP_MAINPLL_D5_D4>,
871				 <&topckgen CLK_TOP_SPI_SEL>,
872				 <&infracfg CLK_INFRA_SPI3>;
873			clock-names = "parent-clk", "sel-clk", "spi-clk";
874			status = "disabled";
875		};
876
877		spi4: spi@11018000 {
878			compatible = "mediatek,mt8192-spi",
879				     "mediatek,mt6765-spi";
880			#address-cells = <1>;
881			#size-cells = <0>;
882			reg = <0 0x11018000 0 0x1000>;
883			interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH 0>;
884			clocks = <&topckgen CLK_TOP_MAINPLL_D5_D4>,
885				 <&topckgen CLK_TOP_SPI_SEL>,
886				 <&infracfg CLK_INFRA_SPI4>;
887			clock-names = "parent-clk", "sel-clk", "spi-clk";
888			status = "disabled";
889		};
890
891		spi5: spi@11019000 {
892			compatible = "mediatek,mt8192-spi",
893				     "mediatek,mt6765-spi";
894			#address-cells = <1>;
895			#size-cells = <0>;
896			reg = <0 0x11019000 0 0x1000>;
897			interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH 0>;
898			clocks = <&topckgen CLK_TOP_MAINPLL_D5_D4>,
899				 <&topckgen CLK_TOP_SPI_SEL>,
900				 <&infracfg CLK_INFRA_SPI5>;
901			clock-names = "parent-clk", "sel-clk", "spi-clk";
902			status = "disabled";
903		};
904
905		spi6: spi@1101d000 {
906			compatible = "mediatek,mt8192-spi",
907				     "mediatek,mt6765-spi";
908			#address-cells = <1>;
909			#size-cells = <0>;
910			reg = <0 0x1101d000 0 0x1000>;
911			interrupts = <GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH 0>;
912			clocks = <&topckgen CLK_TOP_MAINPLL_D5_D4>,
913				 <&topckgen CLK_TOP_SPI_SEL>,
914				 <&infracfg CLK_INFRA_SPI6>;
915			clock-names = "parent-clk", "sel-clk", "spi-clk";
916			status = "disabled";
917		};
918
919		spi7: spi@1101e000 {
920			compatible = "mediatek,mt8192-spi",
921				     "mediatek,mt6765-spi";
922			#address-cells = <1>;
923			#size-cells = <0>;
924			reg = <0 0x1101e000 0 0x1000>;
925			interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH 0>;
926			clocks = <&topckgen CLK_TOP_MAINPLL_D5_D4>,
927				 <&topckgen CLK_TOP_SPI_SEL>,
928				 <&infracfg CLK_INFRA_SPI7>;
929			clock-names = "parent-clk", "sel-clk", "spi-clk";
930			status = "disabled";
931		};
932
933		scp: scp@10500000 {
934			compatible = "mediatek,mt8192-scp";
935			reg = <0 0x10500000 0 0x100000>,
936			      <0 0x10720000 0 0xe0000>,
937			      <0 0x10700000 0 0x8000>;
938			reg-names = "sram", "cfg", "l1tcm";
939			interrupts = <GIC_SPI 435 IRQ_TYPE_LEVEL_HIGH 0>;
940			clocks = <&infracfg CLK_INFRA_SCPSYS>;
941			clock-names = "main";
942			status = "disabled";
943		};
944
945		xhci: usb@11200000 {
946			compatible = "mediatek,mt8192-xhci",
947				     "mediatek,mtk-xhci";
948			reg = <0 0x11200000 0 0x1000>,
949			      <0 0x11203e00 0 0x0100>;
950			reg-names = "mac", "ippc";
951			interrupts-extended = <&gic GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH 0>;
952			interrupt-names = "host";
953			phys = <&u2port0 PHY_TYPE_USB2>,
954			       <&u3port0 PHY_TYPE_USB3>;
955			assigned-clocks = <&topckgen CLK_TOP_USB_TOP_SEL>,
956					  <&topckgen CLK_TOP_SSUSB_XHCI_SEL>;
957			assigned-clock-parents = <&topckgen CLK_TOP_UNIVPLL_D5_D4>,
958						 <&topckgen CLK_TOP_UNIVPLL_D5_D4>;
959			clocks = <&infracfg CLK_INFRA_SSUSB>,
960				 <&apmixedsys CLK_APMIXED_USBPLL>,
961				 <&clk26m>,
962				 <&clk26m>,
963				 <&infracfg CLK_INFRA_SSUSB_XHCI>;
964			clock-names = "sys_ck", "ref_ck", "mcu_ck", "dma_ck",
965				      "xhci_ck";
966			wakeup-source;
967			mediatek,syscon-wakeup = <&pericfg 0x420 102>;
968			status = "disabled";
969		};
970
971		audsys: syscon@11210000 {
972			compatible = "mediatek,mt8192-audsys", "syscon";
973			reg = <0 0x11210000 0 0x2000>;
974			#clock-cells = <1>;
975
976			afe: mt8192-afe-pcm {
977				compatible = "mediatek,mt8192-audio";
978				interrupts = <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH 0>;
979				resets = <&watchdog 17>;
980				reset-names = "audiosys";
981				mediatek,apmixedsys = <&apmixedsys>;
982				mediatek,infracfg = <&infracfg>;
983				mediatek,topckgen = <&topckgen>;
984				power-domains = <&spm MT8192_POWER_DOMAIN_AUDIO>;
985				clocks = <&audsys CLK_AUD_AFE>,
986					 <&audsys CLK_AUD_DAC>,
987					 <&audsys CLK_AUD_DAC_PREDIS>,
988					 <&audsys CLK_AUD_ADC>,
989					 <&audsys CLK_AUD_ADDA6_ADC>,
990					 <&audsys CLK_AUD_22M>,
991					 <&audsys CLK_AUD_24M>,
992					 <&audsys CLK_AUD_APLL_TUNER>,
993					 <&audsys CLK_AUD_APLL2_TUNER>,
994					 <&audsys CLK_AUD_TDM>,
995					 <&audsys CLK_AUD_TML>,
996					 <&audsys CLK_AUD_NLE>,
997					 <&audsys CLK_AUD_DAC_HIRES>,
998					 <&audsys CLK_AUD_ADC_HIRES>,
999					 <&audsys CLK_AUD_ADC_HIRES_TML>,
1000					 <&audsys CLK_AUD_ADDA6_ADC_HIRES>,
1001					 <&audsys CLK_AUD_3RD_DAC>,
1002					 <&audsys CLK_AUD_3RD_DAC_PREDIS>,
1003					 <&audsys CLK_AUD_3RD_DAC_TML>,
1004					 <&audsys CLK_AUD_3RD_DAC_HIRES>,
1005					 <&infracfg CLK_INFRA_AUDIO>,
1006					 <&infracfg CLK_INFRA_AUDIO_26M_B>,
1007					 <&topckgen CLK_TOP_AUDIO_SEL>,
1008					 <&topckgen CLK_TOP_AUD_INTBUS_SEL>,
1009					 <&topckgen CLK_TOP_MAINPLL_D4_D4>,
1010					 <&topckgen CLK_TOP_AUD_1_SEL>,
1011					 <&topckgen CLK_TOP_APLL1>,
1012					 <&topckgen CLK_TOP_AUD_2_SEL>,
1013					 <&topckgen CLK_TOP_APLL2>,
1014					 <&topckgen CLK_TOP_AUD_ENGEN1_SEL>,
1015					 <&topckgen CLK_TOP_APLL1_D4>,
1016					 <&topckgen CLK_TOP_AUD_ENGEN2_SEL>,
1017					 <&topckgen CLK_TOP_APLL2_D4>,
1018					 <&topckgen CLK_TOP_APLL_I2S0_M_SEL>,
1019					 <&topckgen CLK_TOP_APLL_I2S1_M_SEL>,
1020					 <&topckgen CLK_TOP_APLL_I2S2_M_SEL>,
1021					 <&topckgen CLK_TOP_APLL_I2S3_M_SEL>,
1022					 <&topckgen CLK_TOP_APLL_I2S4_M_SEL>,
1023					 <&topckgen CLK_TOP_APLL_I2S5_M_SEL>,
1024					 <&topckgen CLK_TOP_APLL_I2S6_M_SEL>,
1025					 <&topckgen CLK_TOP_APLL_I2S7_M_SEL>,
1026					 <&topckgen CLK_TOP_APLL_I2S8_M_SEL>,
1027					 <&topckgen CLK_TOP_APLL_I2S9_M_SEL>,
1028					 <&topckgen CLK_TOP_APLL12_DIV0>,
1029					 <&topckgen CLK_TOP_APLL12_DIV1>,
1030					 <&topckgen CLK_TOP_APLL12_DIV2>,
1031					 <&topckgen CLK_TOP_APLL12_DIV3>,
1032					 <&topckgen CLK_TOP_APLL12_DIV4>,
1033					 <&topckgen CLK_TOP_APLL12_DIVB>,
1034					 <&topckgen CLK_TOP_APLL12_DIV5>,
1035					 <&topckgen CLK_TOP_APLL12_DIV6>,
1036					 <&topckgen CLK_TOP_APLL12_DIV7>,
1037					 <&topckgen CLK_TOP_APLL12_DIV8>,
1038					 <&topckgen CLK_TOP_APLL12_DIV9>,
1039					 <&topckgen CLK_TOP_AUDIO_H_SEL>,
1040					 <&clk26m>;
1041				clock-names = "aud_afe_clk",
1042					      "aud_dac_clk",
1043					      "aud_dac_predis_clk",
1044					      "aud_adc_clk",
1045					      "aud_adda6_adc_clk",
1046					      "aud_apll22m_clk",
1047					      "aud_apll24m_clk",
1048					      "aud_apll1_tuner_clk",
1049					      "aud_apll2_tuner_clk",
1050					      "aud_tdm_clk",
1051					      "aud_tml_clk",
1052					      "aud_nle",
1053					      "aud_dac_hires_clk",
1054					      "aud_adc_hires_clk",
1055					      "aud_adc_hires_tml",
1056					      "aud_adda6_adc_hires_clk",
1057					      "aud_3rd_dac_clk",
1058					      "aud_3rd_dac_predis_clk",
1059					      "aud_3rd_dac_tml",
1060					      "aud_3rd_dac_hires_clk",
1061					      "aud_infra_clk",
1062					      "aud_infra_26m_clk",
1063					      "top_mux_audio",
1064					      "top_mux_audio_int",
1065					      "top_mainpll_d4_d4",
1066					      "top_mux_aud_1",
1067					      "top_apll1_ck",
1068					      "top_mux_aud_2",
1069					      "top_apll2_ck",
1070					      "top_mux_aud_eng1",
1071					      "top_apll1_d4",
1072					      "top_mux_aud_eng2",
1073					      "top_apll2_d4",
1074					      "top_i2s0_m_sel",
1075					      "top_i2s1_m_sel",
1076					      "top_i2s2_m_sel",
1077					      "top_i2s3_m_sel",
1078					      "top_i2s4_m_sel",
1079					      "top_i2s5_m_sel",
1080					      "top_i2s6_m_sel",
1081					      "top_i2s7_m_sel",
1082					      "top_i2s8_m_sel",
1083					      "top_i2s9_m_sel",
1084					      "top_apll12_div0",
1085					      "top_apll12_div1",
1086					      "top_apll12_div2",
1087					      "top_apll12_div3",
1088					      "top_apll12_div4",
1089					      "top_apll12_divb",
1090					      "top_apll12_div5",
1091					      "top_apll12_div6",
1092					      "top_apll12_div7",
1093					      "top_apll12_div8",
1094					      "top_apll12_div9",
1095					      "top_mux_audio_h",
1096					      "top_clk26m_clk";
1097			};
1098		};
1099
1100		pcie: pcie@11230000 {
1101			compatible = "mediatek,mt8192-pcie";
1102			device_type = "pci";
1103			reg = <0 0x11230000 0 0x2000>;
1104			reg-names = "pcie-mac";
1105			#address-cells = <3>;
1106			#size-cells = <2>;
1107			clocks = <&infracfg CLK_INFRA_PCIE_PL_P_250M>,
1108				 <&infracfg CLK_INFRA_PCIE_TL_26M>,
1109				 <&infracfg CLK_INFRA_PCIE_TL_96M>,
1110				 <&infracfg CLK_INFRA_PCIE_TL_32K>,
1111				 <&infracfg CLK_INFRA_PCIE_PERI_26M>,
1112				 <&infracfg CLK_INFRA_PCIE_TOP_H_133M>;
1113			clock-names = "pl_250m", "tl_26m", "tl_96m",
1114				      "tl_32k", "peri_26m", "top_133m";
1115			assigned-clocks = <&topckgen CLK_TOP_TL_SEL>;
1116			assigned-clock-parents = <&topckgen CLK_TOP_MAINPLL_D6_D4>;
1117			interrupts = <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH 0>;
1118			bus-range = <0x00 0xff>;
1119			ranges = <0x82000000 0 0x12000000 0x0 0x12000000 0 0x0800000>,
1120				 <0x81000000 0 0x12800000 0x0 0x12800000 0 0x0800000>;
1121			#interrupt-cells = <1>;
1122			interrupt-map-mask = <0 0 0 7>;
1123			interrupt-map = <0 0 0 1 &pcie_intc0 0>,
1124					<0 0 0 2 &pcie_intc0 1>,
1125					<0 0 0 3 &pcie_intc0 2>,
1126					<0 0 0 4 &pcie_intc0 3>;
1127
1128			pcie_intc0: interrupt-controller {
1129				interrupt-controller;
1130				#address-cells = <0>;
1131				#interrupt-cells = <1>;
1132			};
1133		};
1134
1135		nor_flash: spi@11234000 {
1136			compatible = "mediatek,mt8192-nor";
1137			reg = <0 0x11234000 0 0xe0>;
1138			interrupts = <GIC_SPI 431 IRQ_TYPE_LEVEL_HIGH 0>;
1139			clocks = <&topckgen CLK_TOP_SFLASH_SEL>,
1140				 <&infracfg CLK_INFRA_FLASHIF_SFLASH>,
1141				 <&infracfg CLK_INFRA_FLASHIF_TOP_H_133M>;
1142			clock-names = "spi", "sf", "axi";
1143			assigned-clocks = <&topckgen CLK_TOP_SFLASH_SEL>;
1144			assigned-clock-parents = <&clk26m>;
1145			#address-cells = <1>;
1146			#size-cells = <0>;
1147			status = "disabled";
1148		};
1149
1150		lvts_mcu: thermal-sensor@11278000 {
1151			compatible = "mediatek,mt8192-lvts-mcu";
1152			reg = <0 0x11278000 0 0x1000>;
1153			interrupts = <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH 0>;
1154			clocks = <&infracfg CLK_INFRA_THERM>;
1155			resets = <&infracfg MT8192_INFRA_RST4_THERM_CTRL_MCU_SWRST>;
1156			nvmem-cells = <&lvts_e_data1>;
1157			nvmem-cell-names = "lvts-calib-data-1";
1158			#thermal-sensor-cells = <1>;
1159		};
1160
1161		efuse: efuse@11c10000 {
1162			compatible = "mediatek,mt8192-efuse", "mediatek,efuse";
1163			reg = <0 0x11c10000 0 0x1000>;
1164			#address-cells = <1>;
1165			#size-cells = <1>;
1166
1167			socinfo-data1@44 {
1168				reg = <0x044 0x4>;
1169			};
1170
1171			socinfo-data2@50 {
1172				reg = <0x050 0x4>;
1173			};
1174
1175			lvts_e_data1: data1@1c0 {
1176				reg = <0x1c0 0x58>;
1177			};
1178
1179			svs_calibration: calib@580 {
1180				reg = <0x580 0x68>;
1181			};
1182		};
1183
1184		i2c3: i2c@11cb0000 {
1185			compatible = "mediatek,mt8192-i2c";
1186			reg = <0 0x11cb0000 0 0x1000>,
1187			      <0 0x10217300 0 0x80>;
1188			interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH 0>;
1189			clocks = <&imp_iic_wrap_e CLK_IMP_IIC_WRAP_E_I2C3>,
1190				 <&infracfg CLK_INFRA_AP_DMA>;
1191			clock-names = "main", "dma";
1192			clock-div = <1>;
1193			#address-cells = <1>;
1194			#size-cells = <0>;
1195			status = "disabled";
1196		};
1197
1198		imp_iic_wrap_e: clock-controller@11cb1000 {
1199			compatible = "mediatek,mt8192-imp_iic_wrap_e";
1200			reg = <0 0x11cb1000 0 0x1000>;
1201			#clock-cells = <1>;
1202		};
1203
1204		i2c7: i2c@11d00000 {
1205			compatible = "mediatek,mt8192-i2c";
1206			reg = <0 0x11d00000 0 0x1000>,
1207			      <0 0x10217600 0 0x180>;
1208			interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH 0>;
1209			clocks = <&imp_iic_wrap_s CLK_IMP_IIC_WRAP_S_I2C7>,
1210				 <&infracfg CLK_INFRA_AP_DMA>;
1211			clock-names = "main", "dma";
1212			clock-div = <1>;
1213			#address-cells = <1>;
1214			#size-cells = <0>;
1215			status = "disabled";
1216		};
1217
1218		i2c8: i2c@11d01000 {
1219			compatible = "mediatek,mt8192-i2c";
1220			reg = <0 0x11d01000 0 0x1000>,
1221			      <0 0x10217780 0 0x180>;
1222			interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH 0>;
1223			clocks = <&imp_iic_wrap_s CLK_IMP_IIC_WRAP_S_I2C8>,
1224				 <&infracfg CLK_INFRA_AP_DMA>;
1225			clock-names = "main", "dma";
1226			clock-div = <1>;
1227			#address-cells = <1>;
1228			#size-cells = <0>;
1229			status = "disabled";
1230		};
1231
1232		i2c9: i2c@11d02000 {
1233			compatible = "mediatek,mt8192-i2c";
1234			reg = <0 0x11d02000 0 0x1000>,
1235			      <0 0x10217900 0 0x180>;
1236			interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH 0>;
1237			clocks = <&imp_iic_wrap_s CLK_IMP_IIC_WRAP_S_I2C9>,
1238				 <&infracfg CLK_INFRA_AP_DMA>;
1239			clock-names = "main", "dma";
1240			clock-div = <1>;
1241			#address-cells = <1>;
1242			#size-cells = <0>;
1243			status = "disabled";
1244		};
1245
1246		imp_iic_wrap_s: clock-controller@11d03000 {
1247			compatible = "mediatek,mt8192-imp_iic_wrap_s";
1248			reg = <0 0x11d03000 0 0x1000>;
1249			#clock-cells = <1>;
1250		};
1251
1252		i2c1: i2c@11d20000 {
1253			compatible = "mediatek,mt8192-i2c";
1254			reg = <0 0x11d20000 0 0x1000>,
1255			      <0 0x10217100 0 0x80>;
1256			interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH 0>;
1257			clocks = <&imp_iic_wrap_ws CLK_IMP_IIC_WRAP_WS_I2C1>,
1258				 <&infracfg CLK_INFRA_AP_DMA>;
1259			clock-names = "main", "dma";
1260			clock-div = <1>;
1261			#address-cells = <1>;
1262			#size-cells = <0>;
1263			status = "disabled";
1264		};
1265
1266		i2c2: i2c@11d21000 {
1267			compatible = "mediatek,mt8192-i2c";
1268			reg = <0 0x11d21000 0 0x1000>,
1269			      <0 0x10217180 0 0x180>;
1270			interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH 0>;
1271			clocks = <&imp_iic_wrap_ws CLK_IMP_IIC_WRAP_WS_I2C2>,
1272				 <&infracfg CLK_INFRA_AP_DMA>;
1273			clock-names = "main", "dma";
1274			clock-div = <1>;
1275			#address-cells = <1>;
1276			#size-cells = <0>;
1277			status = "disabled";
1278		};
1279
1280		i2c4: i2c@11d22000 {
1281			compatible = "mediatek,mt8192-i2c";
1282			reg = <0 0x11d22000 0 0x1000>,
1283			      <0 0x10217380 0 0x180>;
1284			interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH 0>;
1285			clocks = <&imp_iic_wrap_ws CLK_IMP_IIC_WRAP_WS_I2C4>,
1286				 <&infracfg CLK_INFRA_AP_DMA>;
1287			clock-names = "main", "dma";
1288			clock-div = <1>;
1289			#address-cells = <1>;
1290			#size-cells = <0>;
1291			status = "disabled";
1292		};
1293
1294		imp_iic_wrap_ws: clock-controller@11d23000 {
1295			compatible = "mediatek,mt8192-imp_iic_wrap_ws";
1296			reg = <0 0x11d23000 0 0x1000>;
1297			#clock-cells = <1>;
1298		};
1299
1300		i2c5: i2c@11e00000 {
1301			compatible = "mediatek,mt8192-i2c";
1302			reg = <0 0x11e00000 0 0x1000>,
1303			      <0 0x10217500 0 0x80>;
1304			interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH 0>;
1305			clocks = <&imp_iic_wrap_w CLK_IMP_IIC_WRAP_W_I2C5>,
1306				 <&infracfg CLK_INFRA_AP_DMA>;
1307			clock-names = "main", "dma";
1308			clock-div = <1>;
1309			#address-cells = <1>;
1310			#size-cells = <0>;
1311			status = "disabled";
1312		};
1313
1314		imp_iic_wrap_w: clock-controller@11e01000 {
1315			compatible = "mediatek,mt8192-imp_iic_wrap_w";
1316			reg = <0 0x11e01000 0 0x1000>;
1317			#clock-cells = <1>;
1318		};
1319
1320		u3phy0: t-phy@11e40000 {
1321			compatible = "mediatek,mt8192-tphy",
1322				     "mediatek,generic-tphy-v2";
1323			#address-cells = <1>;
1324			#size-cells = <1>;
1325			ranges = <0x0 0x0 0x11e40000 0x1000>;
1326
1327			u2port0: usb-phy@0 {
1328				reg = <0x0 0x700>;
1329				clocks = <&clk26m>;
1330				clock-names = "ref";
1331				#phy-cells = <1>;
1332			};
1333
1334			u3port0: usb-phy@700 {
1335				reg = <0x700 0x900>;
1336				clocks = <&clk26m>;
1337				clock-names = "ref";
1338				#phy-cells = <1>;
1339			};
1340		};
1341
1342		mipi_tx0: dsi-phy@11e50000 {
1343			compatible = "mediatek,mt8183-mipi-tx";
1344			reg = <0 0x11e50000 0 0x1000>;
1345			clocks = <&apmixedsys CLK_APMIXED_MIPID26M>;
1346			#clock-cells = <0>;
1347			#phy-cells = <0>;
1348			clock-output-names = "mipi_tx0_pll";
1349			status = "disabled";
1350		};
1351
1352		i2c0: i2c@11f00000 {
1353			compatible = "mediatek,mt8192-i2c";
1354			reg = <0 0x11f00000 0 0x1000>,
1355			      <0 0x10217080 0 0x80>;
1356			interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH 0>;
1357			clocks = <&imp_iic_wrap_n CLK_IMP_IIC_WRAP_N_I2C0>,
1358				 <&infracfg CLK_INFRA_AP_DMA>;
1359			clock-names = "main", "dma";
1360			clock-div = <1>;
1361			#address-cells = <1>;
1362			#size-cells = <0>;
1363			status = "disabled";
1364		};
1365
1366		i2c6: i2c@11f01000 {
1367			compatible = "mediatek,mt8192-i2c";
1368			reg = <0 0x11f01000 0 0x1000>,
1369			      <0 0x10217580 0 0x80>;
1370			interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH 0>;
1371			clocks = <&imp_iic_wrap_n CLK_IMP_IIC_WRAP_N_I2C6>,
1372				 <&infracfg CLK_INFRA_AP_DMA>;
1373			clock-names = "main", "dma";
1374			clock-div = <1>;
1375			#address-cells = <1>;
1376			#size-cells = <0>;
1377			status = "disabled";
1378		};
1379
1380		imp_iic_wrap_n: clock-controller@11f02000 {
1381			compatible = "mediatek,mt8192-imp_iic_wrap_n";
1382			reg = <0 0x11f02000 0 0x1000>;
1383			#clock-cells = <1>;
1384		};
1385
1386		msdc_top: clock-controller@11f10000 {
1387			compatible = "mediatek,mt8192-msdc_top";
1388			reg = <0 0x11f10000 0 0x1000>;
1389			#clock-cells = <1>;
1390		};
1391
1392		mmc0: mmc@11f60000 {
1393			compatible = "mediatek,mt8192-mmc", "mediatek,mt8183-mmc";
1394			reg = <0 0x11f60000 0 0x1000>, <0 0x11f50000 0 0x1000>;
1395			interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH 0>;
1396			clocks = <&topckgen CLK_TOP_MSDC50_0_SEL>,
1397				 <&msdc_top CLK_MSDC_TOP_H_MST_0P>,
1398				 <&msdc_top CLK_MSDC_TOP_SRC_0P>,
1399				 <&msdc_top CLK_MSDC_TOP_P_CFG>,
1400				 <&msdc_top CLK_MSDC_TOP_P_MSDC0>,
1401				 <&msdc_top CLK_MSDC_TOP_AXI>,
1402				 <&msdc_top CLK_MSDC_TOP_AHB2AXI_BRG_AXI>;
1403			clock-names = "source", "hclk", "source_cg", "sys_cg",
1404				      "pclk_cg", "axi_cg", "ahb_cg";
1405			status = "disabled";
1406		};
1407
1408		mmc1: mmc@11f70000 {
1409			compatible = "mediatek,mt8192-mmc", "mediatek,mt8183-mmc";
1410			reg = <0 0x11f70000 0 0x1000>, <0 0x11c70000 0 0x1000>;
1411			interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH 0>;
1412			clocks = <&topckgen CLK_TOP_MSDC30_1_SEL>,
1413				 <&msdc_top CLK_MSDC_TOP_H_MST_1P>,
1414				 <&msdc_top CLK_MSDC_TOP_SRC_1P>,
1415				 <&msdc_top CLK_MSDC_TOP_P_CFG>,
1416				 <&msdc_top CLK_MSDC_TOP_P_MSDC1>,
1417				 <&msdc_top CLK_MSDC_TOP_AXI>,
1418				 <&msdc_top CLK_MSDC_TOP_AHB2AXI_BRG_AXI>;
1419			clock-names = "source", "hclk", "source_cg", "sys_cg",
1420				      "pclk_cg", "axi_cg", "ahb_cg";
1421			status = "disabled";
1422		};
1423
1424		gpu: gpu@13000000 {
1425			compatible = "mediatek,mt8192-mali", "arm,mali-valhall-jm";
1426			reg = <0 0x13000000 0 0x4000>;
1427			interrupts = <GIC_SPI 365 IRQ_TYPE_LEVEL_HIGH 0>,
1428				     <GIC_SPI 364 IRQ_TYPE_LEVEL_HIGH 0>,
1429				     <GIC_SPI 363 IRQ_TYPE_LEVEL_HIGH 0>;
1430			interrupt-names = "job", "mmu", "gpu";
1431
1432			clocks = <&apmixedsys CLK_APMIXED_MFGPLL>;
1433
1434			power-domains = <&spm MT8192_POWER_DOMAIN_MFG2>,
1435					<&spm MT8192_POWER_DOMAIN_MFG3>,
1436					<&spm MT8192_POWER_DOMAIN_MFG4>,
1437					<&spm MT8192_POWER_DOMAIN_MFG5>,
1438					<&spm MT8192_POWER_DOMAIN_MFG6>;
1439			power-domain-names = "core0", "core1", "core2", "core3", "core4";
1440
1441			operating-points-v2 = <&gpu_opp_table>;
1442
1443			status = "disabled";
1444		};
1445
1446		mfgcfg: clock-controller@13fbf000 {
1447			compatible = "mediatek,mt8192-mfgcfg";
1448			reg = <0 0x13fbf000 0 0x1000>;
1449			#clock-cells = <1>;
1450		};
1451
1452		mmsys: syscon@14000000 {
1453			compatible = "mediatek,mt8192-mmsys", "syscon";
1454			reg = <0 0x14000000 0 0x1000>;
1455			#clock-cells = <1>;
1456			#reset-cells = <1>;
1457			mboxes = <&gce 0 CMDQ_THR_PRIO_HIGHEST>,
1458				 <&gce 1 CMDQ_THR_PRIO_HIGHEST>;
1459			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0 0x1000>;
1460		};
1461
1462		mutex: mutex@14001000 {
1463			compatible = "mediatek,mt8192-disp-mutex";
1464			reg = <0 0x14001000 0 0x1000>;
1465			interrupts = <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH 0>;
1466			clocks = <&mmsys CLK_MM_DISP_MUTEX0>;
1467			mediatek,gce-events = <CMDQ_EVENT_DISP_STREAM_DONE_ENG_EVENT_0>,
1468					      <CMDQ_EVENT_DISP_STREAM_DONE_ENG_EVENT_1>;
1469			power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
1470		};
1471
1472		smi_common: smi@14002000 {
1473			compatible = "mediatek,mt8192-smi-common";
1474			reg = <0 0x14002000 0 0x1000>;
1475			clocks = <&mmsys CLK_MM_SMI_COMMON>,
1476				 <&mmsys CLK_MM_SMI_INFRA>,
1477				 <&mmsys CLK_MM_SMI_GALS>,
1478				 <&mmsys CLK_MM_SMI_GALS>;
1479			clock-names = "apb", "smi", "gals0", "gals1";
1480			power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
1481		};
1482
1483		larb0: larb@14003000 {
1484			compatible = "mediatek,mt8192-smi-larb";
1485			reg = <0 0x14003000 0 0x1000>;
1486			mediatek,larb-id = <0>;
1487			mediatek,smi = <&smi_common>;
1488			clocks = <&clk26m>, <&clk26m>;
1489			clock-names = "apb", "smi";
1490			power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
1491		};
1492
1493		larb1: larb@14004000 {
1494			compatible = "mediatek,mt8192-smi-larb";
1495			reg = <0 0x14004000 0 0x1000>;
1496			mediatek,larb-id = <1>;
1497			mediatek,smi = <&smi_common>;
1498			clocks = <&clk26m>, <&clk26m>;
1499			clock-names = "apb", "smi";
1500			power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
1501		};
1502
1503		ovl0: ovl@14005000 {
1504			compatible = "mediatek,mt8192-disp-ovl";
1505			reg = <0 0x14005000 0 0x1000>;
1506			interrupts = <GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH 0>;
1507			clocks = <&mmsys CLK_MM_DISP_OVL0>;
1508			iommus = <&iommu0 M4U_PORT_L0_OVL_RDMA0>,
1509				 <&iommu0 M4U_PORT_L0_OVL_RDMA0_HDR>;
1510			power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
1511			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0x5000 0x1000>;
1512		};
1513
1514		ovl_2l0: ovl@14006000 {
1515			compatible = "mediatek,mt8192-disp-ovl-2l";
1516			reg = <0 0x14006000 0 0x1000>;
1517			interrupts = <GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH 0>;
1518			power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
1519			clocks = <&mmsys CLK_MM_DISP_OVL0_2L>;
1520			iommus = <&iommu0 M4U_PORT_L1_OVL_2L_RDMA0>,
1521				 <&iommu0 M4U_PORT_L1_OVL_2L_RDMA0_HDR>;
1522			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0x6000 0x1000>;
1523		};
1524
1525		rdma0: rdma@14007000 {
1526			compatible = "mediatek,mt8192-disp-rdma",
1527				     "mediatek,mt8183-disp-rdma";
1528			reg = <0 0x14007000 0 0x1000>;
1529			interrupts = <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH 0>;
1530			clocks = <&mmsys CLK_MM_DISP_RDMA0>;
1531			iommus = <&iommu0 M4U_PORT_L0_DISP_RDMA0>;
1532			mediatek,rdma-fifo-size = <5120>;
1533			power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
1534			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0x7000 0x1000>;
1535		};
1536
1537		color0: color@14009000 {
1538			compatible = "mediatek,mt8192-disp-color",
1539				     "mediatek,mt8173-disp-color";
1540			reg = <0 0x14009000 0 0x1000>;
1541			interrupts = <GIC_SPI 258 IRQ_TYPE_LEVEL_HIGH 0>;
1542			power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
1543			clocks = <&mmsys CLK_MM_DISP_COLOR0>;
1544			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0x9000 0x1000>;
1545		};
1546
1547		ccorr0: ccorr@1400a000 {
1548			compatible = "mediatek,mt8192-disp-ccorr";
1549			reg = <0 0x1400a000 0 0x1000>;
1550			interrupts = <GIC_SPI 259 IRQ_TYPE_LEVEL_HIGH 0>;
1551			power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
1552			clocks = <&mmsys CLK_MM_DISP_CCORR0>;
1553			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xa000 0x1000>;
1554		};
1555
1556		aal0: aal@1400b000 {
1557			compatible = "mediatek,mt8192-disp-aal",
1558				     "mediatek,mt8183-disp-aal";
1559			reg = <0 0x1400b000 0 0x1000>;
1560			interrupts = <GIC_SPI 260 IRQ_TYPE_LEVEL_HIGH 0>;
1561			power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
1562			clocks = <&mmsys CLK_MM_DISP_AAL0>;
1563			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xb000 0x1000>;
1564		};
1565
1566		gamma0: gamma@1400c000 {
1567			compatible = "mediatek,mt8192-disp-gamma",
1568				     "mediatek,mt8183-disp-gamma";
1569			reg = <0 0x1400c000 0 0x1000>;
1570			interrupts = <GIC_SPI 261 IRQ_TYPE_LEVEL_HIGH 0>;
1571			power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
1572			clocks = <&mmsys CLK_MM_DISP_GAMMA0>;
1573			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xc000 0x1000>;
1574		};
1575
1576		postmask0: postmask@1400d000 {
1577			compatible = "mediatek,mt8192-disp-postmask";
1578			reg = <0 0x1400d000 0 0x1000>;
1579			interrupts = <GIC_SPI 262 IRQ_TYPE_LEVEL_HIGH 0>;
1580			power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
1581			clocks = <&mmsys CLK_MM_DISP_POSTMASK0>;
1582			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xd000 0x1000>;
1583		};
1584
1585		dither0: dither@1400e000 {
1586			compatible = "mediatek,mt8192-disp-dither",
1587				     "mediatek,mt8183-disp-dither";
1588			reg = <0 0x1400e000 0 0x1000>;
1589			interrupts = <GIC_SPI 263 IRQ_TYPE_LEVEL_HIGH 0>;
1590			power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
1591			clocks = <&mmsys CLK_MM_DISP_DITHER0>;
1592			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xe000 0x1000>;
1593		};
1594
1595		dsi0: dsi@14010000 {
1596			compatible = "mediatek,mt8183-dsi";
1597			reg = <0 0x14010000 0 0x1000>;
1598			interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH 0>;
1599			clocks = <&mmsys CLK_MM_DSI0>,
1600				 <&mmsys CLK_MM_DSI_DSI0>,
1601				 <&mipi_tx0>;
1602			clock-names = "engine", "digital", "hs";
1603			phys = <&mipi_tx0>;
1604			phy-names = "dphy";
1605			power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
1606			resets = <&mmsys MT8192_MMSYS_SW0_RST_B_DISP_DSI0>;
1607			status = "disabled";
1608
1609			port {
1610				dsi_out: endpoint { };
1611			};
1612		};
1613
1614		ovl_2l2: ovl@14014000 {
1615			compatible = "mediatek,mt8192-disp-ovl-2l";
1616			reg = <0 0x14014000 0 0x1000>;
1617			interrupts = <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH 0>;
1618			power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
1619			clocks = <&mmsys CLK_MM_DISP_OVL2_2L>;
1620			iommus = <&iommu0 M4U_PORT_L1_OVL_2L_RDMA2>,
1621				 <&iommu0 M4U_PORT_L1_OVL_2L_RDMA2_HDR>;
1622			mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0x4000 0x1000>;
1623		};
1624
1625		rdma4: rdma@14015000 {
1626			compatible = "mediatek,mt8192-disp-rdma",
1627				     "mediatek,mt8183-disp-rdma";
1628			reg = <0 0x14015000 0 0x1000>;
1629			interrupts = <GIC_SPI 269 IRQ_TYPE_LEVEL_HIGH 0>;
1630			power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
1631			clocks = <&mmsys CLK_MM_DISP_RDMA4>;
1632			iommus = <&iommu0 M4U_PORT_L1_DISP_RDMA4>;
1633			mediatek,rdma-fifo-size = <2048>;
1634			mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0x5000 0x1000>;
1635		};
1636
1637		dpi0: dpi@14016000 {
1638			compatible = "mediatek,mt8192-dpi";
1639			reg = <0 0x14016000 0 0x1000>;
1640			interrupts = <GIC_SPI 270 IRQ_TYPE_LEVEL_HIGH 0>;
1641			clocks = <&mmsys CLK_MM_DPI_DPI0>,
1642				 <&mmsys CLK_MM_DISP_DPI0>,
1643				 <&apmixedsys CLK_APMIXED_TVDPLL>;
1644			clock-names = "pixel", "engine", "pll";
1645			status = "disabled";
1646		};
1647
1648		iommu0: m4u@1401d000 {
1649			compatible = "mediatek,mt8192-m4u";
1650			reg = <0 0x1401d000 0 0x1000>;
1651			mediatek,larbs = <&larb0>, <&larb1>, <&larb2>,
1652					 <&larb4>, <&larb5>, <&larb7>,
1653					 <&larb9>, <&larb11>, <&larb13>,
1654					 <&larb14>, <&larb16>, <&larb17>,
1655					 <&larb18>, <&larb19>, <&larb20>;
1656			interrupts = <GIC_SPI 277 IRQ_TYPE_LEVEL_HIGH 0>;
1657			clocks = <&mmsys CLK_MM_SMI_IOMMU>;
1658			clock-names = "bclk";
1659			power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
1660			#iommu-cells = <1>;
1661		};
1662
1663		imgsys: clock-controller@15020000 {
1664			compatible = "mediatek,mt8192-imgsys";
1665			reg = <0 0x15020000 0 0x1000>;
1666			#clock-cells = <1>;
1667		};
1668
1669		larb9: larb@1502e000 {
1670			compatible = "mediatek,mt8192-smi-larb";
1671			reg = <0 0x1502e000 0 0x1000>;
1672			mediatek,larb-id = <9>;
1673			mediatek,smi = <&smi_common>;
1674			clocks = <&imgsys CLK_IMG_LARB9>,
1675				 <&imgsys CLK_IMG_LARB9>;
1676			clock-names = "apb", "smi";
1677			power-domains = <&spm MT8192_POWER_DOMAIN_ISP>;
1678		};
1679
1680		imgsys2: clock-controller@15820000 {
1681			compatible = "mediatek,mt8192-imgsys2";
1682			reg = <0 0x15820000 0 0x1000>;
1683			#clock-cells = <1>;
1684		};
1685
1686		larb11: larb@1582e000 {
1687			compatible = "mediatek,mt8192-smi-larb";
1688			reg = <0 0x1582e000 0 0x1000>;
1689			mediatek,larb-id = <11>;
1690			mediatek,smi = <&smi_common>;
1691			clocks = <&imgsys2 CLK_IMG2_LARB11>,
1692				 <&imgsys2 CLK_IMG2_LARB11>;
1693			clock-names = "apb", "smi";
1694			power-domains = <&spm MT8192_POWER_DOMAIN_ISP2>;
1695		};
1696
1697		vcodec_dec: video-codec@16000000 {
1698			compatible = "mediatek,mt8192-vcodec-dec";
1699			reg = <0 0x16000000 0 0x1000>;
1700			mediatek,scp = <&scp>;
1701			iommus = <&iommu0 M4U_PORT_L4_VDEC_MC_EXT>;
1702			#address-cells = <2>;
1703			#size-cells = <2>;
1704			ranges = <0 0 0 0x16000000 0 0x26000>;
1705
1706			video-codec@10000 {
1707				compatible = "mediatek,mtk-vcodec-lat";
1708				reg = <0x0 0x10000 0 0x800>;
1709				interrupts = <GIC_SPI 426 IRQ_TYPE_LEVEL_HIGH 0>;
1710				iommus = <&iommu0 M4U_PORT_L5_VDEC_LAT0_VLD_EXT>,
1711					 <&iommu0 M4U_PORT_L5_VDEC_LAT0_VLD2_EXT>,
1712					 <&iommu0 M4U_PORT_L5_VDEC_LAT0_AVC_MV_EXT>,
1713					 <&iommu0 M4U_PORT_L5_VDEC_LAT0_PRED_RD_EXT>,
1714					 <&iommu0 M4U_PORT_L5_VDEC_LAT0_TILE_EXT>,
1715					 <&iommu0 M4U_PORT_L5_VDEC_LAT0_WDMA_EXT>,
1716					 <&iommu0 M4U_PORT_L5_VDEC_LAT0_RG_CTRL_DMA_EXT>,
1717					 <&iommu0 M4U_PORT_L5_VDEC_UFO_ENC_EXT>;
1718				clocks = <&topckgen CLK_TOP_VDEC_SEL>,
1719					 <&vdecsys_soc CLK_VDEC_SOC_VDEC>,
1720					 <&vdecsys_soc CLK_VDEC_SOC_LAT>,
1721					 <&vdecsys_soc CLK_VDEC_SOC_LARB1>,
1722					 <&topckgen CLK_TOP_MAINPLL_D4>;
1723				clock-names = "sel", "soc-vdec", "soc-lat", "vdec", "top";
1724				assigned-clocks = <&topckgen CLK_TOP_VDEC_SEL>;
1725				assigned-clock-parents = <&topckgen CLK_TOP_MAINPLL_D4>;
1726				power-domains = <&spm MT8192_POWER_DOMAIN_VDEC>;
1727			};
1728
1729			video-codec@25000 {
1730				compatible = "mediatek,mtk-vcodec-core";
1731				reg = <0 0x25000 0 0x1000>;
1732				interrupts = <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH 0>;
1733				iommus = <&iommu0 M4U_PORT_L4_VDEC_MC_EXT>,
1734					 <&iommu0 M4U_PORT_L4_VDEC_UFO_EXT>,
1735					 <&iommu0 M4U_PORT_L4_VDEC_PP_EXT>,
1736					 <&iommu0 M4U_PORT_L4_VDEC_PRED_RD_EXT>,
1737					 <&iommu0 M4U_PORT_L4_VDEC_PRED_WR_EXT>,
1738					 <&iommu0 M4U_PORT_L4_VDEC_PPWRAP_EXT>,
1739					 <&iommu0 M4U_PORT_L4_VDEC_TILE_EXT>,
1740					 <&iommu0 M4U_PORT_L4_VDEC_VLD_EXT>,
1741					 <&iommu0 M4U_PORT_L4_VDEC_VLD2_EXT>,
1742					 <&iommu0 M4U_PORT_L4_VDEC_AVC_MV_EXT>,
1743					 <&iommu0 M4U_PORT_L4_VDEC_RG_CTRL_DMA_EXT>;
1744				clocks = <&topckgen CLK_TOP_VDEC_SEL>,
1745					 <&vdecsys CLK_VDEC_VDEC>,
1746					 <&vdecsys CLK_VDEC_LAT>,
1747					 <&vdecsys CLK_VDEC_LARB1>,
1748					 <&topckgen CLK_TOP_MAINPLL_D4>;
1749				clock-names = "sel", "soc-vdec", "soc-lat", "vdec", "top";
1750				assigned-clocks = <&topckgen CLK_TOP_VDEC_SEL>;
1751				assigned-clock-parents = <&topckgen CLK_TOP_MAINPLL_D4>;
1752				power-domains = <&spm MT8192_POWER_DOMAIN_VDEC2>;
1753			};
1754		};
1755
1756		larb5: larb@1600d000 {
1757			compatible = "mediatek,mt8192-smi-larb";
1758			reg = <0 0x1600d000 0 0x1000>;
1759			mediatek,larb-id = <5>;
1760			mediatek,smi = <&smi_common>;
1761			clocks = <&vdecsys_soc CLK_VDEC_SOC_LARB1>,
1762				 <&vdecsys_soc CLK_VDEC_SOC_LARB1>;
1763			clock-names = "apb", "smi";
1764			power-domains = <&spm MT8192_POWER_DOMAIN_VDEC>;
1765		};
1766
1767		vdecsys_soc: clock-controller@1600f000 {
1768			compatible = "mediatek,mt8192-vdecsys_soc";
1769			reg = <0 0x1600f000 0 0x1000>;
1770			#clock-cells = <1>;
1771		};
1772
1773		larb4: larb@1602e000 {
1774			compatible = "mediatek,mt8192-smi-larb";
1775			reg = <0 0x1602e000 0 0x1000>;
1776			mediatek,larb-id = <4>;
1777			mediatek,smi = <&smi_common>;
1778			clocks = <&vdecsys CLK_VDEC_SOC_LARB1>,
1779				 <&vdecsys CLK_VDEC_SOC_LARB1>;
1780			clock-names = "apb", "smi";
1781			power-domains = <&spm MT8192_POWER_DOMAIN_VDEC2>;
1782		};
1783
1784		vdecsys: clock-controller@1602f000 {
1785			compatible = "mediatek,mt8192-vdecsys";
1786			reg = <0 0x1602f000 0 0x1000>;
1787			#clock-cells = <1>;
1788		};
1789
1790		vencsys: clock-controller@17000000 {
1791			compatible = "mediatek,mt8192-vencsys";
1792			reg = <0 0x17000000 0 0x1000>;
1793			#clock-cells = <1>;
1794		};
1795
1796		larb7: larb@17010000 {
1797			compatible = "mediatek,mt8192-smi-larb";
1798			reg = <0 0x17010000 0 0x1000>;
1799			mediatek,larb-id = <7>;
1800			mediatek,smi = <&smi_common>;
1801			clocks = <&vencsys CLK_VENC_SET0_LARB>,
1802				 <&vencsys CLK_VENC_SET1_VENC>;
1803			clock-names = "apb", "smi";
1804			power-domains = <&spm MT8192_POWER_DOMAIN_VENC>;
1805		};
1806
1807		vcodec_enc: vcodec@17020000 {
1808			compatible = "mediatek,mt8192-vcodec-enc";
1809			reg = <0 0x17020000 0 0x2000>;
1810			iommus = <&iommu0 M4U_PORT_L7_VENC_RCPU>,
1811				 <&iommu0 M4U_PORT_L7_VENC_REC>,
1812				 <&iommu0 M4U_PORT_L7_VENC_BSDMA>,
1813				 <&iommu0 M4U_PORT_L7_VENC_SV_COMV>,
1814				 <&iommu0 M4U_PORT_L7_VENC_RD_COMV>,
1815				 <&iommu0 M4U_PORT_L7_VENC_CUR_LUMA>,
1816				 <&iommu0 M4U_PORT_L7_VENC_CUR_CHROMA>,
1817				 <&iommu0 M4U_PORT_L7_VENC_REF_LUMA>,
1818				 <&iommu0 M4U_PORT_L7_VENC_REF_CHROMA>,
1819				 <&iommu0 M4U_PORT_L7_VENC_SUB_R_LUMA>,
1820				 <&iommu0 M4U_PORT_L7_VENC_SUB_W_LUMA>;
1821			interrupts = <GIC_SPI 309 IRQ_TYPE_LEVEL_HIGH 0>;
1822			mediatek,scp = <&scp>;
1823			power-domains = <&spm MT8192_POWER_DOMAIN_VENC>;
1824			clocks = <&vencsys CLK_VENC_SET1_VENC>;
1825			clock-names = "venc_sel";
1826			assigned-clocks = <&topckgen CLK_TOP_VENC_SEL>;
1827			assigned-clock-parents = <&topckgen CLK_TOP_UNIVPLL_D4>;
1828		};
1829
1830		camsys: clock-controller@1a000000 {
1831			compatible = "mediatek,mt8192-camsys";
1832			reg = <0 0x1a000000 0 0x1000>;
1833			#clock-cells = <1>;
1834		};
1835
1836		larb13: larb@1a001000 {
1837			compatible = "mediatek,mt8192-smi-larb";
1838			reg = <0 0x1a001000 0 0x1000>;
1839			mediatek,larb-id = <13>;
1840			mediatek,smi = <&smi_common>;
1841			clocks = <&camsys CLK_CAM_CAM>,
1842				 <&camsys CLK_CAM_LARB13>;
1843			clock-names = "apb", "smi";
1844			power-domains = <&spm MT8192_POWER_DOMAIN_CAM>;
1845		};
1846
1847		larb14: larb@1a002000 {
1848			compatible = "mediatek,mt8192-smi-larb";
1849			reg = <0 0x1a002000 0 0x1000>;
1850			mediatek,larb-id = <14>;
1851			mediatek,smi = <&smi_common>;
1852			clocks = <&camsys CLK_CAM_CAM>,
1853				 <&camsys CLK_CAM_LARB14>;
1854			clock-names = "apb", "smi";
1855			power-domains = <&spm MT8192_POWER_DOMAIN_CAM>;
1856		};
1857
1858		larb16: larb@1a00f000 {
1859			compatible = "mediatek,mt8192-smi-larb";
1860			reg = <0 0x1a00f000 0 0x1000>;
1861			mediatek,larb-id = <16>;
1862			mediatek,smi = <&smi_common>;
1863			clocks = <&camsys_rawa CLK_CAM_RAWA_CAM>,
1864				 <&camsys_rawa CLK_CAM_RAWA_LARBX>;
1865			clock-names = "apb", "smi";
1866			power-domains = <&spm MT8192_POWER_DOMAIN_CAM_RAWA>;
1867		};
1868
1869		larb17: larb@1a010000 {
1870			compatible = "mediatek,mt8192-smi-larb";
1871			reg = <0 0x1a010000 0 0x1000>;
1872			mediatek,larb-id = <17>;
1873			mediatek,smi = <&smi_common>;
1874			clocks = <&camsys_rawb CLK_CAM_RAWB_CAM>,
1875				 <&camsys_rawb CLK_CAM_RAWB_LARBX>;
1876			clock-names = "apb", "smi";
1877			power-domains = <&spm MT8192_POWER_DOMAIN_CAM_RAWB>;
1878		};
1879
1880		larb18: larb@1a011000 {
1881			compatible = "mediatek,mt8192-smi-larb";
1882			reg = <0 0x1a011000 0 0x1000>;
1883			mediatek,larb-id = <18>;
1884			mediatek,smi = <&smi_common>;
1885			clocks = <&camsys_rawc CLK_CAM_RAWC_LARBX>,
1886				 <&camsys_rawc CLK_CAM_RAWC_CAM>;
1887			clock-names = "apb", "smi";
1888			power-domains = <&spm MT8192_POWER_DOMAIN_CAM_RAWC>;
1889		};
1890
1891		camsys_rawa: clock-controller@1a04f000 {
1892			compatible = "mediatek,mt8192-camsys_rawa";
1893			reg = <0 0x1a04f000 0 0x1000>;
1894			#clock-cells = <1>;
1895		};
1896
1897		camsys_rawb: clock-controller@1a06f000 {
1898			compatible = "mediatek,mt8192-camsys_rawb";
1899			reg = <0 0x1a06f000 0 0x1000>;
1900			#clock-cells = <1>;
1901		};
1902
1903		camsys_rawc: clock-controller@1a08f000 {
1904			compatible = "mediatek,mt8192-camsys_rawc";
1905			reg = <0 0x1a08f000 0 0x1000>;
1906			#clock-cells = <1>;
1907		};
1908
1909		ipesys: clock-controller@1b000000 {
1910			compatible = "mediatek,mt8192-ipesys";
1911			reg = <0 0x1b000000 0 0x1000>;
1912			#clock-cells = <1>;
1913		};
1914
1915		larb20: larb@1b00f000 {
1916			compatible = "mediatek,mt8192-smi-larb";
1917			reg = <0 0x1b00f000 0 0x1000>;
1918			mediatek,larb-id = <20>;
1919			mediatek,smi = <&smi_common>;
1920			clocks = <&ipesys CLK_IPE_SMI_SUBCOM>,
1921				 <&ipesys CLK_IPE_LARB20>;
1922			clock-names = "apb", "smi";
1923			power-domains = <&spm MT8192_POWER_DOMAIN_IPE>;
1924		};
1925
1926		larb19: larb@1b10f000 {
1927			compatible = "mediatek,mt8192-smi-larb";
1928			reg = <0 0x1b10f000 0 0x1000>;
1929			mediatek,larb-id = <19>;
1930			mediatek,smi = <&smi_common>;
1931			clocks = <&ipesys CLK_IPE_SMI_SUBCOM>,
1932				 <&ipesys CLK_IPE_LARB19>;
1933			clock-names = "apb", "smi";
1934			power-domains = <&spm MT8192_POWER_DOMAIN_IPE>;
1935		};
1936
1937		mdpsys: clock-controller@1f000000 {
1938			compatible = "mediatek,mt8192-mdpsys";
1939			reg = <0 0x1f000000 0 0x1000>;
1940			#clock-cells = <1>;
1941		};
1942
1943		larb2: larb@1f002000 {
1944			compatible = "mediatek,mt8192-smi-larb";
1945			reg = <0 0x1f002000 0 0x1000>;
1946			mediatek,larb-id = <2>;
1947			mediatek,smi = <&smi_common>;
1948			clocks = <&mdpsys CLK_MDP_SMI0>,
1949				 <&mdpsys CLK_MDP_SMI0>;
1950			clock-names = "apb", "smi";
1951			power-domains = <&spm MT8192_POWER_DOMAIN_MDP>;
1952		};
1953	};
1954
1955	thermal_zones: thermal-zones {
1956		cpu0-thermal {
1957			polling-delay = <1000>;
1958			polling-delay-passive = <250>;
1959			thermal-sensors = <&lvts_mcu MT8192_MCU_LITTLE_CPU0>;
1960
1961			trips {
1962				cpu0_alert: trip-alert {
1963					temperature = <85000>;
1964					hysteresis = <2000>;
1965					type = "passive";
1966				};
1967
1968				cpu0_crit: trip-crit {
1969					temperature = <100000>;
1970					hysteresis = <2000>;
1971					type = "critical";
1972				};
1973			};
1974
1975			cooling-maps {
1976				map0 {
1977					trip = <&cpu0_alert>;
1978					cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
1979							 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
1980							 <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
1981							 <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
1982				};
1983			};
1984		};
1985
1986		cpu1-thermal {
1987			polling-delay = <1000>;
1988			polling-delay-passive = <250>;
1989			thermal-sensors = <&lvts_mcu MT8192_MCU_LITTLE_CPU1>;
1990
1991			trips {
1992				cpu1_alert: trip-alert {
1993					temperature = <85000>;
1994					hysteresis = <2000>;
1995					type = "passive";
1996				};
1997
1998				cpu1_crit: trip-crit {
1999					temperature = <100000>;
2000					hysteresis = <2000>;
2001					type = "critical";
2002				};
2003			};
2004
2005			cooling-maps {
2006				map0 {
2007					trip = <&cpu1_alert>;
2008					cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2009							 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2010							 <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2011							 <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
2012				};
2013			};
2014		};
2015
2016		cpu2-thermal {
2017			polling-delay = <1000>;
2018			polling-delay-passive = <250>;
2019			thermal-sensors = <&lvts_mcu MT8192_MCU_LITTLE_CPU2>;
2020
2021			trips {
2022				cpu2_alert: trip-alert {
2023					temperature = <85000>;
2024					hysteresis = <2000>;
2025					type = "passive";
2026				};
2027
2028				cpu2_crit: trip-crit {
2029					temperature = <100000>;
2030					hysteresis = <2000>;
2031					type = "critical";
2032				};
2033			};
2034
2035			cooling-maps {
2036				map0 {
2037					trip = <&cpu2_alert>;
2038					cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2039							 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2040							 <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2041							 <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
2042				};
2043			};
2044		};
2045
2046		cpu3-thermal {
2047			polling-delay = <1000>;
2048			polling-delay-passive = <250>;
2049			thermal-sensors = <&lvts_mcu MT8192_MCU_LITTLE_CPU3>;
2050
2051			trips {
2052				cpu3_alert: trip-alert {
2053					temperature = <85000>;
2054					hysteresis = <2000>;
2055					type = "passive";
2056				};
2057
2058				cpu3_crit: trip-crit {
2059					temperature = <100000>;
2060					hysteresis = <2000>;
2061					type = "critical";
2062				};
2063			};
2064
2065			cooling-maps {
2066				map0 {
2067					trip = <&cpu3_alert>;
2068					cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2069							 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2070							 <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2071							 <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
2072				};
2073			};
2074		};
2075
2076		cpu4-thermal {
2077			polling-delay = <1000>;
2078			polling-delay-passive = <250>;
2079			thermal-sensors = <&lvts_mcu MT8192_MCU_BIG_CPU0>;
2080
2081			trips {
2082				cpu4_alert: trip-alert {
2083					temperature = <85000>;
2084					hysteresis = <2000>;
2085					type = "passive";
2086				};
2087
2088				cpu4_crit: trip-crit {
2089					temperature = <100000>;
2090					hysteresis = <2000>;
2091					type = "critical";
2092				};
2093			};
2094
2095			cooling-maps {
2096				map0 {
2097					trip = <&cpu4_alert>;
2098					cooling-device = <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2099							 <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2100							 <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2101							 <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
2102				};
2103			};
2104		};
2105
2106		cpu5-thermal {
2107			polling-delay = <1000>;
2108			polling-delay-passive = <250>;
2109			thermal-sensors = <&lvts_mcu MT8192_MCU_BIG_CPU1>;
2110
2111			trips {
2112				cpu5_alert: trip-alert {
2113					temperature = <85000>;
2114					hysteresis = <2000>;
2115					type = "passive";
2116				};
2117
2118				cpu5_crit: trip-crit {
2119					temperature = <100000>;
2120					hysteresis = <2000>;
2121					type = "critical";
2122				};
2123			};
2124
2125			cooling-maps {
2126				map0 {
2127					trip = <&cpu5_alert>;
2128					cooling-device = <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2129							 <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2130							 <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2131							 <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
2132				};
2133			};
2134		};
2135
2136		cpu6-thermal {
2137			polling-delay = <1000>;
2138			polling-delay-passive = <250>;
2139			thermal-sensors = <&lvts_mcu MT8192_MCU_BIG_CPU2>;
2140
2141			trips {
2142				cpu6_alert: trip-alert {
2143					temperature = <85000>;
2144					hysteresis = <2000>;
2145					type = "passive";
2146				};
2147
2148				cpu6_crit: trip-crit {
2149					temperature = <100000>;
2150					hysteresis = <2000>;
2151					type = "critical";
2152				};
2153			};
2154
2155			cooling-maps {
2156				map0 {
2157					trip = <&cpu6_alert>;
2158					cooling-device = <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2159							 <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2160							 <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2161							 <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
2162				};
2163			};
2164		};
2165
2166		cpu7-thermal {
2167			polling-delay = <1000>;
2168			polling-delay-passive = <250>;
2169			thermal-sensors = <&lvts_mcu MT8192_MCU_BIG_CPU3>;
2170
2171			trips {
2172				cpu7_alert: trip-alert {
2173					temperature = <85000>;
2174					hysteresis = <2000>;
2175					type = "passive";
2176				};
2177
2178				cpu7_crit: trip-crit {
2179					temperature = <100000>;
2180					hysteresis = <2000>;
2181					type = "critical";
2182				};
2183			};
2184
2185			cooling-maps {
2186				map0 {
2187					trip = <&cpu7_alert>;
2188					cooling-device = <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2189							 <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2190							 <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
2191							 <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
2192				};
2193			};
2194		};
2195
2196		vpu0-thermal {
2197			polling-delay = <1000>;
2198			polling-delay-passive = <250>;
2199			thermal-sensors = <&lvts_ap MT8192_AP_VPU0>;
2200
2201			trips {
2202				vpu0_alert: trip-alert {
2203					temperature = <85000>;
2204					hysteresis = <2000>;
2205					type = "passive";
2206				};
2207
2208				vpu0_crit: trip-crit {
2209					temperature = <100000>;
2210					hysteresis = <2000>;
2211					type = "critical";
2212				};
2213			};
2214		};
2215
2216		vpu1-thermal {
2217			polling-delay = <1000>;
2218			polling-delay-passive = <250>;
2219			thermal-sensors = <&lvts_ap MT8192_AP_VPU1>;
2220
2221			trips {
2222				vpu1_alert: trip-alert {
2223					temperature = <85000>;
2224					hysteresis = <2000>;
2225					type = "passive";
2226				};
2227
2228				vpu1_crit: trip-crit {
2229					temperature = <100000>;
2230					hysteresis = <2000>;
2231					type = "critical";
2232				};
2233			};
2234		};
2235
2236		gpu0-thermal {
2237			polling-delay = <1000>;
2238			polling-delay-passive = <250>;
2239			thermal-sensors = <&lvts_ap MT8192_AP_GPU0>;
2240
2241			trips {
2242				gpu0_alert: trip-alert {
2243					temperature = <85000>;
2244					hysteresis = <2000>;
2245					type = "passive";
2246				};
2247
2248				gpu0_crit: trip-crit {
2249					temperature = <100000>;
2250					hysteresis = <2000>;
2251					type = "critical";
2252				};
2253			};
2254		};
2255
2256		gpu1-thermal {
2257			polling-delay = <1000>;
2258			polling-delay-passive = <250>;
2259			thermal-sensors = <&lvts_ap MT8192_AP_GPU1>;
2260
2261			trips {
2262				gpu1_alert: trip-alert {
2263					temperature = <85000>;
2264					hysteresis = <2000>;
2265					type = "passive";
2266				};
2267
2268				gpu1_crit: trip-crit {
2269					temperature = <100000>;
2270					hysteresis = <2000>;
2271					type = "critical";
2272				};
2273			};
2274		};
2275
2276		infra-thermal {
2277			polling-delay = <1000>;
2278			polling-delay-passive = <250>;
2279			thermal-sensors = <&lvts_ap MT8192_AP_INFRA>;
2280
2281			trips {
2282				infra_alert: trip-alert {
2283					temperature = <85000>;
2284					hysteresis = <2000>;
2285					type = "passive";
2286				};
2287
2288				infra_crit: trip-crit {
2289					temperature = <100000>;
2290					hysteresis = <2000>;
2291					type = "critical";
2292				};
2293			};
2294		};
2295
2296		cam-thermal {
2297			polling-delay = <1000>;
2298			polling-delay-passive = <250>;
2299			thermal-sensors = <&lvts_ap MT8192_AP_CAM>;
2300
2301			trips {
2302				cam_alert: trip-alert {
2303					temperature = <85000>;
2304					hysteresis = <2000>;
2305					type = "passive";
2306				};
2307
2308				cam_crit: trip-crit {
2309					temperature = <100000>;
2310					hysteresis = <2000>;
2311					type = "critical";
2312				};
2313			};
2314		};
2315
2316		md0-thermal {
2317			polling-delay = <1000>;
2318			polling-delay-passive = <250>;
2319			thermal-sensors = <&lvts_ap MT8192_AP_MD0>;
2320
2321			trips {
2322				md0_alert: trip-alert {
2323					temperature = <85000>;
2324					hysteresis = <2000>;
2325					type = "passive";
2326				};
2327
2328				md0_crit: trip-crit {
2329					temperature = <100000>;
2330					hysteresis = <2000>;
2331					type = "critical";
2332				};
2333			};
2334		};
2335
2336		md1-thermal {
2337			polling-delay = <1000>;
2338			polling-delay-passive = <250>;
2339			thermal-sensors = <&lvts_ap MT8192_AP_MD1>;
2340
2341			trips {
2342				md1_alert: trip-alert {
2343					temperature = <85000>;
2344					hysteresis = <2000>;
2345					type = "passive";
2346				};
2347
2348				md1_crit: trip-crit {
2349					temperature = <100000>;
2350					hysteresis = <2000>;
2351					type = "critical";
2352				};
2353			};
2354		};
2355
2356		md2-thermal {
2357			polling-delay = <1000>;
2358			polling-delay-passive = <250>;
2359			thermal-sensors = <&lvts_ap MT8192_AP_MD2>;
2360
2361			trips {
2362				md2_alert: trip-alert {
2363					temperature = <85000>;
2364					hysteresis = <2000>;
2365					type = "passive";
2366				};
2367
2368				md2_crit: trip-crit {
2369					temperature = <100000>;
2370					hysteresis = <2000>;
2371					type = "critical";
2372				};
2373			};
2374		};
2375	};
2376};
2377