1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
3 * Copyright (c) 2021 MediaTek Inc.
4 * Author: Seiya Wang <seiya.wang@mediatek.com>
8 #include <dt-bindings/clock/mt8195-clk.h>
9 #include <dt-bindings/gce/mt8195-gce.h>
10 #include <dt-bindings/interrupt-controller/arm-gic.h>
11 #include <dt-bindings/interrupt-controller/irq.h>
12 #include <dt-bindings/memory/mt8195-memory-port.h>
13 #include <dt-bindings/phy/phy.h>
14 #include <dt-bindings/pinctrl/mt8195-pinfunc.h>
15 #include <dt-bindings/power/mt8195-power.h>
18 compatible = "mediatek,mt8195";
19 interrupt-parent = <&gic>;
34 compatible = "arm,cortex-a55";
36 enable-method = "psci";
37 performance-domains = <&performance 0>;
38 clock-frequency = <1701000000>;
39 capacity-dmips-mhz = <308>;
40 cpu-idle-states = <&cpu_off_l &cluster_off_l>;
41 next-level-cache = <&l2_0>;
47 compatible = "arm,cortex-a55";
49 enable-method = "psci";
50 performance-domains = <&performance 0>;
51 clock-frequency = <1701000000>;
52 capacity-dmips-mhz = <308>;
53 cpu-idle-states = <&cpu_off_l &cluster_off_l>;
54 next-level-cache = <&l2_0>;
60 compatible = "arm,cortex-a55";
62 enable-method = "psci";
63 performance-domains = <&performance 0>;
64 clock-frequency = <1701000000>;
65 capacity-dmips-mhz = <308>;
66 cpu-idle-states = <&cpu_off_l &cluster_off_l>;
67 next-level-cache = <&l2_0>;
73 compatible = "arm,cortex-a55";
75 enable-method = "psci";
76 performance-domains = <&performance 0>;
77 clock-frequency = <1701000000>;
78 capacity-dmips-mhz = <308>;
79 cpu-idle-states = <&cpu_off_l &cluster_off_l>;
80 next-level-cache = <&l2_0>;
86 compatible = "arm,cortex-a78";
88 enable-method = "psci";
89 performance-domains = <&performance 1>;
90 clock-frequency = <2171000000>;
91 capacity-dmips-mhz = <1024>;
92 cpu-idle-states = <&cpu_off_b &cluster_off_b>;
93 next-level-cache = <&l2_1>;
99 compatible = "arm,cortex-a78";
101 enable-method = "psci";
102 performance-domains = <&performance 1>;
103 clock-frequency = <2171000000>;
104 capacity-dmips-mhz = <1024>;
105 cpu-idle-states = <&cpu_off_b &cluster_off_b>;
106 next-level-cache = <&l2_1>;
107 #cooling-cells = <2>;
112 compatible = "arm,cortex-a78";
114 enable-method = "psci";
115 performance-domains = <&performance 1>;
116 clock-frequency = <2171000000>;
117 capacity-dmips-mhz = <1024>;
118 cpu-idle-states = <&cpu_off_b &cluster_off_b>;
119 next-level-cache = <&l2_1>;
120 #cooling-cells = <2>;
125 compatible = "arm,cortex-a78";
127 enable-method = "psci";
128 performance-domains = <&performance 1>;
129 clock-frequency = <2171000000>;
130 capacity-dmips-mhz = <1024>;
131 cpu-idle-states = <&cpu_off_b &cluster_off_b>;
132 next-level-cache = <&l2_1>;
133 #cooling-cells = <2>;
173 entry-method = "psci";
175 cpu_off_l: cpu-off-l {
176 compatible = "arm,idle-state";
177 arm,psci-suspend-param = <0x00010001>;
179 entry-latency-us = <50>;
180 exit-latency-us = <95>;
181 min-residency-us = <580>;
184 cpu_off_b: cpu-off-b {
185 compatible = "arm,idle-state";
186 arm,psci-suspend-param = <0x00010001>;
188 entry-latency-us = <45>;
189 exit-latency-us = <140>;
190 min-residency-us = <740>;
193 cluster_off_l: cluster-off-l {
194 compatible = "arm,idle-state";
195 arm,psci-suspend-param = <0x01010002>;
197 entry-latency-us = <55>;
198 exit-latency-us = <155>;
199 min-residency-us = <840>;
202 cluster_off_b: cluster-off-b {
203 compatible = "arm,idle-state";
204 arm,psci-suspend-param = <0x01010002>;
206 entry-latency-us = <50>;
207 exit-latency-us = <200>;
208 min-residency-us = <1000>;
213 compatible = "cache";
214 next-level-cache = <&l3_0>;
218 compatible = "cache";
219 next-level-cache = <&l3_0>;
223 compatible = "cache";
228 compatible = "arm,dsu-pmu";
229 interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH 0>;
230 cpus = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>,
231 <&cpu4>, <&cpu5>, <&cpu6>, <&cpu7>;
235 dmic_codec: dmic-codec {
236 compatible = "dmic-codec";
238 wakeup-delay-ms = <50>;
241 sound: mt8195-sound {
242 mediatek,platform = <&afe>;
246 clk13m: fixed-factor-clock-13m {
247 compatible = "fixed-factor-clock";
252 clock-output-names = "clk13m";
255 clk26m: oscillator-26m {
256 compatible = "fixed-clock";
258 clock-frequency = <26000000>;
259 clock-output-names = "clk26m";
262 clk32k: oscillator-32k {
263 compatible = "fixed-clock";
265 clock-frequency = <32768>;
266 clock-output-names = "clk32k";
269 performance: performance-controller@11bc10 {
270 compatible = "mediatek,cpufreq-hw";
271 reg = <0 0x0011bc10 0 0x120>, <0 0x0011bd30 0 0x120>;
272 #performance-domain-cells = <1>;
276 compatible = "arm,cortex-a55-pmu";
277 interrupt-parent = <&gic>;
278 interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH &ppi_cluster0>;
282 compatible = "arm,cortex-a78-pmu";
283 interrupt-parent = <&gic>;
284 interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH &ppi_cluster1>;
288 compatible = "arm,psci-1.0";
293 compatible = "arm,armv8-timer";
294 interrupt-parent = <&gic>;
295 interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_HIGH 0>,
296 <GIC_PPI 14 IRQ_TYPE_LEVEL_HIGH 0>,
297 <GIC_PPI 11 IRQ_TYPE_LEVEL_HIGH 0>,
298 <GIC_PPI 10 IRQ_TYPE_LEVEL_HIGH 0>;
302 #address-cells = <2>;
304 compatible = "simple-bus";
307 gic: interrupt-controller@c000000 {
308 compatible = "arm,gic-v3";
309 #interrupt-cells = <4>;
310 #redistributor-regions = <1>;
311 interrupt-parent = <&gic>;
312 interrupt-controller;
313 reg = <0 0x0c000000 0 0x40000>,
314 <0 0x0c040000 0 0x200000>;
315 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH 0>;
318 ppi_cluster0: interrupt-partition-0 {
319 affinity = <&cpu0 &cpu1 &cpu2 &cpu3>;
322 ppi_cluster1: interrupt-partition-1 {
323 affinity = <&cpu4 &cpu5 &cpu6 &cpu7>;
328 topckgen: syscon@10000000 {
329 compatible = "mediatek,mt8195-topckgen", "syscon";
330 reg = <0 0x10000000 0 0x1000>;
334 infracfg_ao: syscon@10001000 {
335 compatible = "mediatek,mt8195-infracfg_ao", "syscon", "simple-mfd";
336 reg = <0 0x10001000 0 0x1000>;
341 pericfg: syscon@10003000 {
342 compatible = "mediatek,mt8195-pericfg", "syscon";
343 reg = <0 0x10003000 0 0x1000>;
347 pio: pinctrl@10005000 {
348 compatible = "mediatek,mt8195-pinctrl";
349 reg = <0 0x10005000 0 0x1000>,
350 <0 0x11d10000 0 0x1000>,
351 <0 0x11d30000 0 0x1000>,
352 <0 0x11d40000 0 0x1000>,
353 <0 0x11e20000 0 0x1000>,
354 <0 0x11eb0000 0 0x1000>,
355 <0 0x11f40000 0 0x1000>,
356 <0 0x1000b000 0 0x1000>;
357 reg-names = "iocfg0", "iocfg_bm", "iocfg_bl",
358 "iocfg_br", "iocfg_lm", "iocfg_rb",
362 gpio-ranges = <&pio 0 0 144>;
363 interrupt-controller;
364 interrupts = <GIC_SPI 235 IRQ_TYPE_LEVEL_HIGH 0>;
365 #interrupt-cells = <2>;
368 scpsys: syscon@10006000 {
369 compatible = "mediatek,mt8195-scpsys", "syscon", "simple-mfd";
370 reg = <0 0x10006000 0 0x1000>;
372 /* System Power Manager */
373 spm: power-controller {
374 compatible = "mediatek,mt8195-power-controller";
375 #address-cells = <1>;
377 #power-domain-cells = <1>;
379 /* power domain of the SoC */
380 mfg0: power-domain@MT8195_POWER_DOMAIN_MFG0 {
381 reg = <MT8195_POWER_DOMAIN_MFG0>;
382 #address-cells = <1>;
384 #power-domain-cells = <1>;
386 power-domain@MT8195_POWER_DOMAIN_MFG1 {
387 reg = <MT8195_POWER_DOMAIN_MFG1>;
388 clocks = <&apmixedsys CLK_APMIXED_MFGPLL>;
390 mediatek,infracfg = <&infracfg_ao>;
391 #address-cells = <1>;
393 #power-domain-cells = <1>;
395 power-domain@MT8195_POWER_DOMAIN_MFG2 {
396 reg = <MT8195_POWER_DOMAIN_MFG2>;
397 #power-domain-cells = <0>;
400 power-domain@MT8195_POWER_DOMAIN_MFG3 {
401 reg = <MT8195_POWER_DOMAIN_MFG3>;
402 #power-domain-cells = <0>;
405 power-domain@MT8195_POWER_DOMAIN_MFG4 {
406 reg = <MT8195_POWER_DOMAIN_MFG4>;
407 #power-domain-cells = <0>;
410 power-domain@MT8195_POWER_DOMAIN_MFG5 {
411 reg = <MT8195_POWER_DOMAIN_MFG5>;
412 #power-domain-cells = <0>;
415 power-domain@MT8195_POWER_DOMAIN_MFG6 {
416 reg = <MT8195_POWER_DOMAIN_MFG6>;
417 #power-domain-cells = <0>;
422 power-domain@MT8195_POWER_DOMAIN_VPPSYS0 {
423 reg = <MT8195_POWER_DOMAIN_VPPSYS0>;
424 clocks = <&topckgen CLK_TOP_VPP>,
425 <&topckgen CLK_TOP_CAM>,
426 <&topckgen CLK_TOP_CCU>,
427 <&topckgen CLK_TOP_IMG>,
428 <&topckgen CLK_TOP_VENC>,
429 <&topckgen CLK_TOP_VDEC>,
430 <&topckgen CLK_TOP_WPE_VPP>,
431 <&topckgen CLK_TOP_CFG_VPP0>,
432 <&vppsys0 CLK_VPP0_SMI_COMMON>,
433 <&vppsys0 CLK_VPP0_GALS_VDO0_LARB0>,
434 <&vppsys0 CLK_VPP0_GALS_VDO0_LARB1>,
435 <&vppsys0 CLK_VPP0_GALS_VENCSYS>,
436 <&vppsys0 CLK_VPP0_GALS_VENCSYS_CORE1>,
437 <&vppsys0 CLK_VPP0_GALS_INFRA>,
438 <&vppsys0 CLK_VPP0_GALS_CAMSYS>,
439 <&vppsys0 CLK_VPP0_GALS_VPP1_LARB5>,
440 <&vppsys0 CLK_VPP0_GALS_VPP1_LARB6>,
441 <&vppsys0 CLK_VPP0_SMI_REORDER>,
442 <&vppsys0 CLK_VPP0_SMI_IOMMU>,
443 <&vppsys0 CLK_VPP0_GALS_IMGSYS_CAMSYS>,
444 <&vppsys0 CLK_VPP0_GALS_EMI0_EMI1>,
445 <&vppsys0 CLK_VPP0_SMI_SUB_COMMON_REORDER>,
446 <&vppsys0 CLK_VPP0_SMI_RSI>,
447 <&vppsys0 CLK_VPP0_SMI_COMMON_LARB4>,
448 <&vppsys0 CLK_VPP0_GALS_VDEC_VDEC_CORE1>,
449 <&vppsys0 CLK_VPP0_GALS_VPP1_WPE>,
450 <&vppsys0 CLK_VPP0_GALS_VDO0_VDO1_VENCSYS_CORE1>;
451 clock-names = "vppsys", "vppsys1", "vppsys2", "vppsys3",
452 "vppsys4", "vppsys5", "vppsys6", "vppsys7",
453 "vppsys0-0", "vppsys0-1", "vppsys0-2", "vppsys0-3",
454 "vppsys0-4", "vppsys0-5", "vppsys0-6", "vppsys0-7",
455 "vppsys0-8", "vppsys0-9", "vppsys0-10", "vppsys0-11",
456 "vppsys0-12", "vppsys0-13", "vppsys0-14",
457 "vppsys0-15", "vppsys0-16", "vppsys0-17",
459 mediatek,infracfg = <&infracfg_ao>;
460 #address-cells = <1>;
462 #power-domain-cells = <1>;
464 power-domain@MT8195_POWER_DOMAIN_VDEC1 {
465 reg = <MT8195_POWER_DOMAIN_VDEC1>;
466 clocks = <&vdecsys CLK_VDEC_LARB1>;
467 clock-names = "vdec1-0";
468 mediatek,infracfg = <&infracfg_ao>;
469 #power-domain-cells = <0>;
472 power-domain@MT8195_POWER_DOMAIN_VENC_CORE1 {
473 reg = <MT8195_POWER_DOMAIN_VENC_CORE1>;
474 clocks = <&vencsys_core1 CLK_VENC_CORE1_LARB>;
475 clock-names = "venc1-larb";
476 mediatek,infracfg = <&infracfg_ao>;
477 #power-domain-cells = <0>;
480 power-domain@MT8195_POWER_DOMAIN_VDOSYS0 {
481 reg = <MT8195_POWER_DOMAIN_VDOSYS0>;
482 clocks = <&topckgen CLK_TOP_CFG_VDO0>,
483 <&vdosys0 CLK_VDO0_SMI_GALS>,
484 <&vdosys0 CLK_VDO0_SMI_COMMON>,
485 <&vdosys0 CLK_VDO0_SMI_EMI>,
486 <&vdosys0 CLK_VDO0_SMI_IOMMU>,
487 <&vdosys0 CLK_VDO0_SMI_LARB>,
488 <&vdosys0 CLK_VDO0_SMI_RSI>;
489 clock-names = "vdosys0", "vdosys0-0", "vdosys0-1",
490 "vdosys0-2", "vdosys0-3",
491 "vdosys0-4", "vdosys0-5";
492 mediatek,infracfg = <&infracfg_ao>;
493 #address-cells = <1>;
495 #power-domain-cells = <1>;
497 power-domain@MT8195_POWER_DOMAIN_VPPSYS1 {
498 reg = <MT8195_POWER_DOMAIN_VPPSYS1>;
499 clocks = <&topckgen CLK_TOP_CFG_VPP1>,
500 <&vppsys1 CLK_VPP1_VPPSYS1_GALS>,
501 <&vppsys1 CLK_VPP1_VPPSYS1_LARB>;
502 clock-names = "vppsys1", "vppsys1-0",
504 mediatek,infracfg = <&infracfg_ao>;
505 #power-domain-cells = <0>;
508 power-domain@MT8195_POWER_DOMAIN_WPESYS {
509 reg = <MT8195_POWER_DOMAIN_WPESYS>;
510 clocks = <&wpesys CLK_WPE_SMI_LARB7>,
511 <&wpesys CLK_WPE_SMI_LARB8>,
512 <&wpesys CLK_WPE_SMI_LARB7_P>,
513 <&wpesys CLK_WPE_SMI_LARB8_P>;
514 clock-names = "wepsys-0", "wepsys-1", "wepsys-2",
516 mediatek,infracfg = <&infracfg_ao>;
517 #power-domain-cells = <0>;
520 power-domain@MT8195_POWER_DOMAIN_VDEC0 {
521 reg = <MT8195_POWER_DOMAIN_VDEC0>;
522 clocks = <&vdecsys_soc CLK_VDEC_SOC_LARB1>;
523 clock-names = "vdec0-0";
524 mediatek,infracfg = <&infracfg_ao>;
525 #power-domain-cells = <0>;
528 power-domain@MT8195_POWER_DOMAIN_VDEC2 {
529 reg = <MT8195_POWER_DOMAIN_VDEC2>;
530 clocks = <&vdecsys_core1 CLK_VDEC_CORE1_LARB1>;
531 clock-names = "vdec2-0";
532 mediatek,infracfg = <&infracfg_ao>;
533 #power-domain-cells = <0>;
536 power-domain@MT8195_POWER_DOMAIN_VENC {
537 reg = <MT8195_POWER_DOMAIN_VENC>;
538 clocks = <&vencsys CLK_VENC_LARB>;
539 clock-names = "venc0-larb";
540 mediatek,infracfg = <&infracfg_ao>;
541 #power-domain-cells = <0>;
544 power-domain@MT8195_POWER_DOMAIN_VDOSYS1 {
545 reg = <MT8195_POWER_DOMAIN_VDOSYS1>;
546 clocks = <&topckgen CLK_TOP_CFG_VDO1>,
547 <&vdosys1 CLK_VDO1_SMI_LARB2>,
548 <&vdosys1 CLK_VDO1_SMI_LARB3>,
549 <&vdosys1 CLK_VDO1_GALS>;
550 clock-names = "vdosys1", "vdosys1-0",
551 "vdosys1-1", "vdosys1-2";
552 mediatek,infracfg = <&infracfg_ao>;
553 #address-cells = <1>;
555 #power-domain-cells = <1>;
557 power-domain@MT8195_POWER_DOMAIN_DP_TX {
558 reg = <MT8195_POWER_DOMAIN_DP_TX>;
559 mediatek,infracfg = <&infracfg_ao>;
560 #power-domain-cells = <0>;
563 power-domain@MT8195_POWER_DOMAIN_EPD_TX {
564 reg = <MT8195_POWER_DOMAIN_EPD_TX>;
565 mediatek,infracfg = <&infracfg_ao>;
566 #power-domain-cells = <0>;
569 power-domain@MT8195_POWER_DOMAIN_HDMI_TX {
570 reg = <MT8195_POWER_DOMAIN_HDMI_TX>;
571 clocks = <&topckgen CLK_TOP_HDMI_APB>;
572 clock-names = "hdmi_tx";
573 #power-domain-cells = <0>;
577 power-domain@MT8195_POWER_DOMAIN_IMG {
578 reg = <MT8195_POWER_DOMAIN_IMG>;
579 clocks = <&imgsys CLK_IMG_LARB9>,
580 <&imgsys CLK_IMG_GALS>;
581 clock-names = "img-0", "img-1";
582 mediatek,infracfg = <&infracfg_ao>;
583 #address-cells = <1>;
585 #power-domain-cells = <1>;
587 power-domain@MT8195_POWER_DOMAIN_DIP {
588 reg = <MT8195_POWER_DOMAIN_DIP>;
589 #power-domain-cells = <0>;
592 power-domain@MT8195_POWER_DOMAIN_IPE {
593 reg = <MT8195_POWER_DOMAIN_IPE>;
594 clocks = <&topckgen CLK_TOP_IPE>,
595 <&imgsys CLK_IMG_IPE>,
596 <&ipesys CLK_IPE_SMI_LARB12>;
597 clock-names = "ipe", "ipe-0", "ipe-1";
598 mediatek,infracfg = <&infracfg_ao>;
599 #power-domain-cells = <0>;
603 power-domain@MT8195_POWER_DOMAIN_CAM {
604 reg = <MT8195_POWER_DOMAIN_CAM>;
605 clocks = <&camsys CLK_CAM_LARB13>,
606 <&camsys CLK_CAM_LARB14>,
607 <&camsys CLK_CAM_CAM2MM0_GALS>,
608 <&camsys CLK_CAM_CAM2MM1_GALS>,
609 <&camsys CLK_CAM_CAM2SYS_GALS>;
610 clock-names = "cam-0", "cam-1", "cam-2", "cam-3",
612 mediatek,infracfg = <&infracfg_ao>;
613 #address-cells = <1>;
615 #power-domain-cells = <1>;
617 power-domain@MT8195_POWER_DOMAIN_CAM_RAWA {
618 reg = <MT8195_POWER_DOMAIN_CAM_RAWA>;
619 #power-domain-cells = <0>;
622 power-domain@MT8195_POWER_DOMAIN_CAM_RAWB {
623 reg = <MT8195_POWER_DOMAIN_CAM_RAWB>;
624 #power-domain-cells = <0>;
627 power-domain@MT8195_POWER_DOMAIN_CAM_MRAW {
628 reg = <MT8195_POWER_DOMAIN_CAM_MRAW>;
629 #power-domain-cells = <0>;
635 power-domain@MT8195_POWER_DOMAIN_PCIE_MAC_P0 {
636 reg = <MT8195_POWER_DOMAIN_PCIE_MAC_P0>;
637 mediatek,infracfg = <&infracfg_ao>;
638 #power-domain-cells = <0>;
641 power-domain@MT8195_POWER_DOMAIN_PCIE_MAC_P1 {
642 reg = <MT8195_POWER_DOMAIN_PCIE_MAC_P1>;
643 mediatek,infracfg = <&infracfg_ao>;
644 #power-domain-cells = <0>;
647 power-domain@MT8195_POWER_DOMAIN_PCIE_PHY {
648 reg = <MT8195_POWER_DOMAIN_PCIE_PHY>;
649 #power-domain-cells = <0>;
652 power-domain@MT8195_POWER_DOMAIN_SSUSB_PCIE_PHY {
653 reg = <MT8195_POWER_DOMAIN_SSUSB_PCIE_PHY>;
654 #power-domain-cells = <0>;
657 power-domain@MT8195_POWER_DOMAIN_CSI_RX_TOP {
658 reg = <MT8195_POWER_DOMAIN_CSI_RX_TOP>;
659 clocks = <&topckgen CLK_TOP_SENINF>,
660 <&topckgen CLK_TOP_SENINF2>;
661 clock-names = "csi_rx_top", "csi_rx_top1";
662 #power-domain-cells = <0>;
665 power-domain@MT8195_POWER_DOMAIN_ETHER {
666 reg = <MT8195_POWER_DOMAIN_ETHER>;
667 clocks = <&pericfg_ao CLK_PERI_AO_ETHERNET_MAC>;
668 clock-names = "ether";
669 #power-domain-cells = <0>;
672 power-domain@MT8195_POWER_DOMAIN_ADSP {
673 reg = <MT8195_POWER_DOMAIN_ADSP>;
674 clocks = <&topckgen CLK_TOP_ADSP>,
675 <&topckgen CLK_TOP_AUDIO_LOCAL_BUS>;
676 clock-names = "adsp", "adsp1";
677 #address-cells = <1>;
679 mediatek,infracfg = <&infracfg_ao>;
680 #power-domain-cells = <1>;
682 power-domain@MT8195_POWER_DOMAIN_AUDIO {
683 reg = <MT8195_POWER_DOMAIN_AUDIO>;
684 clocks = <&topckgen CLK_TOP_A1SYS_HP>,
685 <&topckgen CLK_TOP_AUD_INTBUS>,
686 <&topckgen CLK_TOP_AUDIO_LOCAL_BUS>,
687 <&infracfg_ao CLK_INFRA_AO_AUDIO_26M_B>;
688 clock-names = "audio", "audio1", "audio2",
690 mediatek,infracfg = <&infracfg_ao>;
691 #power-domain-cells = <0>;
697 watchdog: watchdog@10007000 {
698 compatible = "mediatek,mt8195-wdt";
699 mediatek,disable-extrst;
700 reg = <0 0x10007000 0 0x100>;
704 apmixedsys: syscon@1000c000 {
705 compatible = "mediatek,mt8195-apmixedsys", "syscon";
706 reg = <0 0x1000c000 0 0x1000>;
710 systimer: timer@10017000 {
711 compatible = "mediatek,mt8195-timer",
712 "mediatek,mt6765-timer";
713 reg = <0 0x10017000 0 0x1000>;
714 interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH 0>;
718 pwrap: pwrap@10024000 {
719 compatible = "mediatek,mt8195-pwrap", "syscon";
720 reg = <0 0x10024000 0 0x1000>;
722 interrupts = <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH 0>;
723 clocks = <&infracfg_ao CLK_INFRA_AO_PMIC_AP>,
724 <&infracfg_ao CLK_INFRA_AO_PMIC_TMR>;
725 clock-names = "spi", "wrap";
726 assigned-clocks = <&topckgen CLK_TOP_PWRAP_ULPOSC>;
727 assigned-clock-parents = <&topckgen CLK_TOP_ULPOSC1_D10>;
730 spmi: spmi@10027000 {
731 compatible = "mediatek,mt8195-spmi";
732 reg = <0 0x10027000 0 0x000e00>,
733 <0 0x10029000 0 0x000100>;
734 reg-names = "pmif", "spmimst";
735 clocks = <&infracfg_ao CLK_INFRA_AO_PMIC_AP>,
736 <&infracfg_ao CLK_INFRA_AO_PMIC_TMR>,
737 <&topckgen CLK_TOP_SPMI_M_MST>;
738 clock-names = "pmif_sys_ck",
741 assigned-clocks = <&topckgen CLK_TOP_PWRAP_ULPOSC>;
742 assigned-clock-parents = <&topckgen CLK_TOP_ULPOSC1_D10>;
745 iommu_infra: infra-iommu@10315000 {
746 compatible = "mediatek,mt8195-iommu-infra";
747 reg = <0 0x10315000 0 0x5000>;
748 interrupts = <GIC_SPI 795 IRQ_TYPE_LEVEL_HIGH 0>,
749 <GIC_SPI 796 IRQ_TYPE_LEVEL_HIGH 0>,
750 <GIC_SPI 797 IRQ_TYPE_LEVEL_HIGH 0>,
751 <GIC_SPI 798 IRQ_TYPE_LEVEL_HIGH 0>,
752 <GIC_SPI 799 IRQ_TYPE_LEVEL_HIGH 0>;
756 gce0: mailbox@10320000 {
757 compatible = "mediatek,mt8195-gce";
758 reg = <0 0x10320000 0 0x4000>;
759 interrupts = <GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH 0>;
761 clocks = <&infracfg_ao CLK_INFRA_AO_GCE>;
764 gce1: mailbox@10330000 {
765 compatible = "mediatek,mt8195-gce";
766 reg = <0 0x10330000 0 0x4000>;
767 interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_HIGH 0>;
769 clocks = <&infracfg_ao CLK_INFRA_AO_GCE2>;
773 compatible = "mediatek,mt8195-scp";
774 reg = <0 0x10500000 0 0x100000>,
775 <0 0x10720000 0 0xe0000>,
776 <0 0x10700000 0 0x8000>;
777 reg-names = "sram", "cfg", "l1tcm";
778 interrupts = <GIC_SPI 462 IRQ_TYPE_LEVEL_HIGH 0>;
782 scp_adsp: clock-controller@10720000 {
783 compatible = "mediatek,mt8195-scp_adsp";
784 reg = <0 0x10720000 0 0x1000>;
789 compatible = "mediatek,mt8195-dsp";
790 reg = <0 0x10803000 0 0x1000>,
791 <0 0x10840000 0 0x40000>;
792 reg-names = "cfg", "sram";
793 clocks = <&topckgen CLK_TOP_ADSP>,
795 <&topckgen CLK_TOP_AUDIO_LOCAL_BUS>,
796 <&topckgen CLK_TOP_MAINPLL_D7_D2>,
797 <&scp_adsp CLK_SCP_ADSP_AUDIODSP>,
798 <&topckgen CLK_TOP_AUDIO_H>;
799 clock-names = "adsp_sel",
805 power-domains = <&spm MT8195_POWER_DOMAIN_ADSP>;
806 mbox-names = "rx", "tx";
807 mboxes = <&adsp_mailbox0>, <&adsp_mailbox1>;
811 adsp_mailbox0: mailbox@10816000 {
812 compatible = "mediatek,mt8195-adsp-mbox";
814 reg = <0 0x10816000 0 0x1000>;
815 interrupts = <GIC_SPI 702 IRQ_TYPE_LEVEL_HIGH 0>;
818 adsp_mailbox1: mailbox@10817000 {
819 compatible = "mediatek,mt8195-adsp-mbox";
821 reg = <0 0x10817000 0 0x1000>;
822 interrupts = <GIC_SPI 703 IRQ_TYPE_LEVEL_HIGH 0>;
825 afe: mt8195-afe-pcm@10890000 {
826 compatible = "mediatek,mt8195-audio";
827 reg = <0 0x10890000 0 0x10000>;
828 mediatek,topckgen = <&topckgen>;
829 power-domains = <&spm MT8195_POWER_DOMAIN_AUDIO>;
830 interrupts = <GIC_SPI 822 IRQ_TYPE_LEVEL_HIGH 0>;
831 resets = <&watchdog 14>;
832 reset-names = "audiosys";
834 <&apmixedsys CLK_APMIXED_APLL1>,
835 <&apmixedsys CLK_APMIXED_APLL2>,
836 <&topckgen CLK_TOP_APLL12_DIV0>,
837 <&topckgen CLK_TOP_APLL12_DIV1>,
838 <&topckgen CLK_TOP_APLL12_DIV2>,
839 <&topckgen CLK_TOP_APLL12_DIV3>,
840 <&topckgen CLK_TOP_APLL12_DIV9>,
841 <&topckgen CLK_TOP_A1SYS_HP>,
842 <&topckgen CLK_TOP_AUD_INTBUS>,
843 <&topckgen CLK_TOP_AUDIO_H>,
844 <&topckgen CLK_TOP_AUDIO_LOCAL_BUS>,
845 <&topckgen CLK_TOP_DPTX_MCK>,
846 <&topckgen CLK_TOP_I2SO1_MCK>,
847 <&topckgen CLK_TOP_I2SO2_MCK>,
848 <&topckgen CLK_TOP_I2SI1_MCK>,
849 <&topckgen CLK_TOP_I2SI2_MCK>,
850 <&infracfg_ao CLK_INFRA_AO_AUDIO_26M_B>,
851 <&scp_adsp CLK_SCP_ADSP_AUDIODSP>;
852 clock-names = "clk26m",
863 "audio_local_bus_sel",
869 "infra_ao_audio_26m_b",
874 uart0: serial@11001100 {
875 compatible = "mediatek,mt8195-uart",
876 "mediatek,mt6577-uart";
877 reg = <0 0x11001100 0 0x100>;
878 interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH 0>;
879 clocks = <&clk26m>, <&infracfg_ao CLK_INFRA_AO_UART0>;
880 clock-names = "baud", "bus";
884 uart1: serial@11001200 {
885 compatible = "mediatek,mt8195-uart",
886 "mediatek,mt6577-uart";
887 reg = <0 0x11001200 0 0x100>;
888 interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH 0>;
889 clocks = <&clk26m>, <&infracfg_ao CLK_INFRA_AO_UART1>;
890 clock-names = "baud", "bus";
894 uart2: serial@11001300 {
895 compatible = "mediatek,mt8195-uart",
896 "mediatek,mt6577-uart";
897 reg = <0 0x11001300 0 0x100>;
898 interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH 0>;
899 clocks = <&clk26m>, <&infracfg_ao CLK_INFRA_AO_UART2>;
900 clock-names = "baud", "bus";
904 uart3: serial@11001400 {
905 compatible = "mediatek,mt8195-uart",
906 "mediatek,mt6577-uart";
907 reg = <0 0x11001400 0 0x100>;
908 interrupts = <GIC_SPI 723 IRQ_TYPE_LEVEL_HIGH 0>;
909 clocks = <&clk26m>, <&infracfg_ao CLK_INFRA_AO_UART3>;
910 clock-names = "baud", "bus";
914 uart4: serial@11001500 {
915 compatible = "mediatek,mt8195-uart",
916 "mediatek,mt6577-uart";
917 reg = <0 0x11001500 0 0x100>;
918 interrupts = <GIC_SPI 724 IRQ_TYPE_LEVEL_HIGH 0>;
919 clocks = <&clk26m>, <&infracfg_ao CLK_INFRA_AO_UART4>;
920 clock-names = "baud", "bus";
924 uart5: serial@11001600 {
925 compatible = "mediatek,mt8195-uart",
926 "mediatek,mt6577-uart";
927 reg = <0 0x11001600 0 0x100>;
928 interrupts = <GIC_SPI 725 IRQ_TYPE_LEVEL_HIGH 0>;
929 clocks = <&clk26m>, <&infracfg_ao CLK_INFRA_AO_UART5>;
930 clock-names = "baud", "bus";
934 auxadc: auxadc@11002000 {
935 compatible = "mediatek,mt8195-auxadc",
936 "mediatek,mt8173-auxadc";
937 reg = <0 0x11002000 0 0x1000>;
938 clocks = <&infracfg_ao CLK_INFRA_AO_AUXADC>;
939 clock-names = "main";
940 #io-channel-cells = <1>;
944 pericfg_ao: syscon@11003000 {
945 compatible = "mediatek,mt8195-pericfg_ao", "syscon";
946 reg = <0 0x11003000 0 0x1000>;
951 compatible = "mediatek,mt8195-spi",
952 "mediatek,mt6765-spi";
953 #address-cells = <1>;
955 reg = <0 0x1100a000 0 0x1000>;
956 interrupts = <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH 0>;
957 clocks = <&topckgen CLK_TOP_UNIVPLL_D6_D2>,
958 <&topckgen CLK_TOP_SPI>,
959 <&infracfg_ao CLK_INFRA_AO_SPI0>;
960 clock-names = "parent-clk", "sel-clk", "spi-clk";
965 compatible = "mediatek,mt8195-spi",
966 "mediatek,mt6765-spi";
967 #address-cells = <1>;
969 reg = <0 0x11010000 0 0x1000>;
970 interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH 0>;
971 clocks = <&topckgen CLK_TOP_UNIVPLL_D6_D2>,
972 <&topckgen CLK_TOP_SPI>,
973 <&infracfg_ao CLK_INFRA_AO_SPI1>;
974 clock-names = "parent-clk", "sel-clk", "spi-clk";
979 compatible = "mediatek,mt8195-spi",
980 "mediatek,mt6765-spi";
981 #address-cells = <1>;
983 reg = <0 0x11012000 0 0x1000>;
984 interrupts = <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH 0>;
985 clocks = <&topckgen CLK_TOP_UNIVPLL_D6_D2>,
986 <&topckgen CLK_TOP_SPI>,
987 <&infracfg_ao CLK_INFRA_AO_SPI2>;
988 clock-names = "parent-clk", "sel-clk", "spi-clk";
993 compatible = "mediatek,mt8195-spi",
994 "mediatek,mt6765-spi";
995 #address-cells = <1>;
997 reg = <0 0x11013000 0 0x1000>;
998 interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH 0>;
999 clocks = <&topckgen CLK_TOP_UNIVPLL_D6_D2>,
1000 <&topckgen CLK_TOP_SPI>,
1001 <&infracfg_ao CLK_INFRA_AO_SPI3>;
1002 clock-names = "parent-clk", "sel-clk", "spi-clk";
1003 status = "disabled";
1006 spi4: spi@11018000 {
1007 compatible = "mediatek,mt8195-spi",
1008 "mediatek,mt6765-spi";
1009 #address-cells = <1>;
1011 reg = <0 0x11018000 0 0x1000>;
1012 interrupts = <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH 0>;
1013 clocks = <&topckgen CLK_TOP_UNIVPLL_D6_D2>,
1014 <&topckgen CLK_TOP_SPI>,
1015 <&infracfg_ao CLK_INFRA_AO_SPI4>;
1016 clock-names = "parent-clk", "sel-clk", "spi-clk";
1017 status = "disabled";
1020 spi5: spi@11019000 {
1021 compatible = "mediatek,mt8195-spi",
1022 "mediatek,mt6765-spi";
1023 #address-cells = <1>;
1025 reg = <0 0x11019000 0 0x1000>;
1026 interrupts = <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH 0>;
1027 clocks = <&topckgen CLK_TOP_UNIVPLL_D6_D2>,
1028 <&topckgen CLK_TOP_SPI>,
1029 <&infracfg_ao CLK_INFRA_AO_SPI5>;
1030 clock-names = "parent-clk", "sel-clk", "spi-clk";
1031 status = "disabled";
1034 spis0: spi@1101d000 {
1035 compatible = "mediatek,mt8195-spi-slave";
1036 reg = <0 0x1101d000 0 0x1000>;
1037 interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH 0>;
1038 clocks = <&infracfg_ao CLK_INFRA_AO_SPIS0>;
1039 clock-names = "spi";
1040 assigned-clocks = <&topckgen CLK_TOP_SPIS>;
1041 assigned-clock-parents = <&topckgen CLK_TOP_UNIVPLL_D6>;
1042 status = "disabled";
1045 spis1: spi@1101e000 {
1046 compatible = "mediatek,mt8195-spi-slave";
1047 reg = <0 0x1101e000 0 0x1000>;
1048 interrupts = <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH 0>;
1049 clocks = <&infracfg_ao CLK_INFRA_AO_SPIS1>;
1050 clock-names = "spi";
1051 assigned-clocks = <&topckgen CLK_TOP_SPIS>;
1052 assigned-clock-parents = <&topckgen CLK_TOP_UNIVPLL_D6>;
1053 status = "disabled";
1056 xhci0: usb@11200000 {
1057 compatible = "mediatek,mt8195-xhci",
1058 "mediatek,mtk-xhci";
1059 reg = <0 0x11200000 0 0x1000>,
1060 <0 0x11203e00 0 0x0100>;
1061 reg-names = "mac", "ippc";
1062 interrupts = <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH 0>;
1063 phys = <&u2port0 PHY_TYPE_USB2>,
1064 <&u3port0 PHY_TYPE_USB3>;
1065 assigned-clocks = <&topckgen CLK_TOP_USB_TOP>,
1066 <&topckgen CLK_TOP_SSUSB_XHCI>;
1067 assigned-clock-parents = <&topckgen CLK_TOP_UNIVPLL_D5_D4>,
1068 <&topckgen CLK_TOP_UNIVPLL_D5_D4>;
1069 clocks = <&infracfg_ao CLK_INFRA_AO_SSUSB>,
1070 <&topckgen CLK_TOP_SSUSB_REF>,
1071 <&apmixedsys CLK_APMIXED_USB1PLL>,
1073 <&infracfg_ao CLK_INFRA_AO_SSUSB_XHCI>;
1074 clock-names = "sys_ck", "ref_ck", "mcu_ck", "dma_ck",
1076 mediatek,syscon-wakeup = <&pericfg 0x400 103>;
1078 status = "disabled";
1081 mmc0: mmc@11230000 {
1082 compatible = "mediatek,mt8195-mmc",
1083 "mediatek,mt8183-mmc";
1084 reg = <0 0x11230000 0 0x10000>,
1085 <0 0x11f50000 0 0x1000>;
1086 interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH 0>;
1087 clocks = <&topckgen CLK_TOP_MSDC50_0>,
1088 <&infracfg_ao CLK_INFRA_AO_MSDC0>,
1089 <&infracfg_ao CLK_INFRA_AO_MSDC0_SRC>;
1090 clock-names = "source", "hclk", "source_cg";
1091 status = "disabled";
1094 mmc1: mmc@11240000 {
1095 compatible = "mediatek,mt8195-mmc",
1096 "mediatek,mt8183-mmc";
1097 reg = <0 0x11240000 0 0x1000>,
1098 <0 0x11c70000 0 0x1000>;
1099 interrupts = <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH 0>;
1100 clocks = <&topckgen CLK_TOP_MSDC30_1>,
1101 <&infracfg_ao CLK_INFRA_AO_MSDC1>,
1102 <&infracfg_ao CLK_INFRA_AO_MSDC1_SRC>;
1103 clock-names = "source", "hclk", "source_cg";
1104 assigned-clocks = <&topckgen CLK_TOP_MSDC30_1>;
1105 assigned-clock-parents = <&topckgen CLK_TOP_MSDCPLL_D2>;
1106 status = "disabled";
1109 mmc2: mmc@11250000 {
1110 compatible = "mediatek,mt8195-mmc",
1111 "mediatek,mt8183-mmc";
1112 reg = <0 0x11250000 0 0x1000>,
1113 <0 0x11e60000 0 0x1000>;
1114 interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH 0>;
1115 clocks = <&topckgen CLK_TOP_MSDC30_2>,
1116 <&infracfg_ao CLK_INFRA_AO_CG1_MSDC2>,
1117 <&infracfg_ao CLK_INFRA_AO_CG3_MSDC2>;
1118 clock-names = "source", "hclk", "source_cg";
1119 assigned-clocks = <&topckgen CLK_TOP_MSDC30_2>;
1120 assigned-clock-parents = <&topckgen CLK_TOP_MSDCPLL_D2>;
1121 status = "disabled";
1124 xhci1: usb@11290000 {
1125 compatible = "mediatek,mt8195-xhci",
1126 "mediatek,mtk-xhci";
1127 reg = <0 0x11290000 0 0x1000>,
1128 <0 0x11293e00 0 0x0100>;
1129 reg-names = "mac", "ippc";
1130 interrupts = <GIC_SPI 530 IRQ_TYPE_LEVEL_HIGH 0>;
1131 phys = <&u2port1 PHY_TYPE_USB2>;
1132 assigned-clocks = <&topckgen CLK_TOP_USB_TOP_1P>,
1133 <&topckgen CLK_TOP_SSUSB_XHCI_1P>;
1134 assigned-clock-parents = <&topckgen CLK_TOP_UNIVPLL_D5_D4>,
1135 <&topckgen CLK_TOP_UNIVPLL_D5_D4>;
1136 clocks = <&pericfg_ao CLK_PERI_AO_SSUSB_1P_BUS>,
1137 <&topckgen CLK_TOP_SSUSB_P1_REF>,
1138 <&apmixedsys CLK_APMIXED_USB1PLL>,
1140 <&pericfg_ao CLK_PERI_AO_SSUSB_1P_XHCI>;
1141 clock-names = "sys_ck", "ref_ck", "mcu_ck", "dma_ck",
1143 mediatek,syscon-wakeup = <&pericfg 0x400 104>;
1145 status = "disabled";
1148 xhci2: usb@112a0000 {
1149 compatible = "mediatek,mt8195-xhci",
1150 "mediatek,mtk-xhci";
1151 reg = <0 0x112a0000 0 0x1000>,
1152 <0 0x112a3e00 0 0x0100>;
1153 reg-names = "mac", "ippc";
1154 interrupts = <GIC_SPI 533 IRQ_TYPE_LEVEL_HIGH 0>;
1155 phys = <&u2port2 PHY_TYPE_USB2>;
1156 assigned-clocks = <&topckgen CLK_TOP_USB_TOP_2P>,
1157 <&topckgen CLK_TOP_SSUSB_XHCI_2P>;
1158 assigned-clock-parents = <&topckgen CLK_TOP_UNIVPLL_D5_D4>,
1159 <&topckgen CLK_TOP_UNIVPLL_D5_D4>;
1160 clocks = <&pericfg_ao CLK_PERI_AO_SSUSB_2P_BUS>,
1161 <&topckgen CLK_TOP_SSUSB_P2_REF>,
1164 <&pericfg_ao CLK_PERI_AO_SSUSB_2P_XHCI>;
1165 clock-names = "sys_ck", "ref_ck", "mcu_ck", "dma_ck",
1167 mediatek,syscon-wakeup = <&pericfg 0x400 105>;
1169 status = "disabled";
1172 xhci3: usb@112b0000 {
1173 compatible = "mediatek,mt8195-xhci",
1174 "mediatek,mtk-xhci";
1175 reg = <0 0x112b0000 0 0x1000>,
1176 <0 0x112b3e00 0 0x0100>;
1177 reg-names = "mac", "ippc";
1178 interrupts = <GIC_SPI 536 IRQ_TYPE_LEVEL_HIGH 0>;
1179 phys = <&u2port3 PHY_TYPE_USB2>;
1180 assigned-clocks = <&topckgen CLK_TOP_USB_TOP_3P>,
1181 <&topckgen CLK_TOP_SSUSB_XHCI_3P>;
1182 assigned-clock-parents = <&topckgen CLK_TOP_UNIVPLL_D5_D4>,
1183 <&topckgen CLK_TOP_UNIVPLL_D5_D4>;
1184 clocks = <&pericfg_ao CLK_PERI_AO_SSUSB_3P_BUS>,
1185 <&topckgen CLK_TOP_SSUSB_P3_REF>,
1188 <&pericfg_ao CLK_PERI_AO_SSUSB_3P_XHCI>;
1189 clock-names = "sys_ck", "ref_ck", "mcu_ck", "dma_ck",
1191 mediatek,syscon-wakeup = <&pericfg 0x400 106>;
1193 status = "disabled";
1196 nor_flash: spi@1132c000 {
1197 compatible = "mediatek,mt8195-nor",
1198 "mediatek,mt8173-nor";
1199 reg = <0 0x1132c000 0 0x1000>;
1200 interrupts = <GIC_SPI 825 IRQ_TYPE_LEVEL_HIGH 0>;
1201 clocks = <&topckgen CLK_TOP_SPINOR>,
1202 <&pericfg_ao CLK_PERI_AO_FLASHIF_FLASH>,
1203 <&pericfg_ao CLK_PERI_AO_FLASHIF_BUS>;
1204 clock-names = "spi", "sf", "axi";
1205 #address-cells = <1>;
1207 status = "disabled";
1210 efuse: efuse@11c10000 {
1211 compatible = "mediatek,mt8195-efuse", "mediatek,efuse";
1212 reg = <0 0x11c10000 0 0x1000>;
1213 #address-cells = <1>;
1215 u3_tx_imp_p0: usb3-tx-imp@184,1 {
1219 u3_rx_imp_p0: usb3-rx-imp@184,2 {
1223 u3_intr_p0: usb3-intr@185 {
1227 comb_tx_imp_p1: usb3-tx-imp@186,1 {
1231 comb_rx_imp_p1: usb3-rx-imp@186,2 {
1235 comb_intr_p1: usb3-intr@187 {
1239 u2_intr_p0: usb2-intr-p0@188,1 {
1243 u2_intr_p1: usb2-intr-p1@188,2 {
1247 u2_intr_p2: usb2-intr-p2@189,1 {
1251 u2_intr_p3: usb2-intr-p3@189,2 {
1257 u3phy2: t-phy@11c40000 {
1258 compatible = "mediatek,mt8195-tphy", "mediatek,generic-tphy-v3";
1259 #address-cells = <1>;
1261 ranges = <0 0 0x11c40000 0x700>;
1262 status = "disabled";
1264 u2port2: usb-phy@0 {
1266 clocks = <&topckgen CLK_TOP_SSUSB_PHY_P2_REF>;
1267 clock-names = "ref";
1272 u3phy3: t-phy@11c50000 {
1273 compatible = "mediatek,mt8195-tphy", "mediatek,generic-tphy-v3";
1274 #address-cells = <1>;
1276 ranges = <0 0 0x11c50000 0x700>;
1277 status = "disabled";
1279 u2port3: usb-phy@0 {
1281 clocks = <&topckgen CLK_TOP_SSUSB_PHY_P3_REF>;
1282 clock-names = "ref";
1287 i2c5: i2c@11d00000 {
1288 compatible = "mediatek,mt8195-i2c",
1289 "mediatek,mt8192-i2c";
1290 reg = <0 0x11d00000 0 0x1000>,
1291 <0 0x10220580 0 0x80>;
1292 interrupts = <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH 0>;
1294 clocks = <&imp_iic_wrap_s CLK_IMP_IIC_WRAP_S_I2C5>,
1295 <&infracfg_ao CLK_INFRA_AO_APDMA_B>;
1296 clock-names = "main", "dma";
1297 #address-cells = <1>;
1299 status = "disabled";
1302 i2c6: i2c@11d01000 {
1303 compatible = "mediatek,mt8195-i2c",
1304 "mediatek,mt8192-i2c";
1305 reg = <0 0x11d01000 0 0x1000>,
1306 <0 0x10220600 0 0x80>;
1307 interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH 0>;
1309 clocks = <&imp_iic_wrap_s CLK_IMP_IIC_WRAP_S_I2C6>,
1310 <&infracfg_ao CLK_INFRA_AO_APDMA_B>;
1311 clock-names = "main", "dma";
1312 #address-cells = <1>;
1314 status = "disabled";
1317 i2c7: i2c@11d02000 {
1318 compatible = "mediatek,mt8195-i2c",
1319 "mediatek,mt8192-i2c";
1320 reg = <0 0x11d02000 0 0x1000>,
1321 <0 0x10220680 0 0x80>;
1322 interrupts = <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH 0>;
1324 clocks = <&imp_iic_wrap_s CLK_IMP_IIC_WRAP_S_I2C7>,
1325 <&infracfg_ao CLK_INFRA_AO_APDMA_B>;
1326 clock-names = "main", "dma";
1327 #address-cells = <1>;
1329 status = "disabled";
1332 imp_iic_wrap_s: clock-controller@11d03000 {
1333 compatible = "mediatek,mt8195-imp_iic_wrap_s";
1334 reg = <0 0x11d03000 0 0x1000>;
1338 i2c0: i2c@11e00000 {
1339 compatible = "mediatek,mt8195-i2c",
1340 "mediatek,mt8192-i2c";
1341 reg = <0 0x11e00000 0 0x1000>,
1342 <0 0x10220080 0 0x80>;
1343 interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH 0>;
1345 clocks = <&imp_iic_wrap_w CLK_IMP_IIC_WRAP_W_I2C0>,
1346 <&infracfg_ao CLK_INFRA_AO_APDMA_B>;
1347 clock-names = "main", "dma";
1348 #address-cells = <1>;
1350 status = "disabled";
1353 i2c1: i2c@11e01000 {
1354 compatible = "mediatek,mt8195-i2c",
1355 "mediatek,mt8192-i2c";
1356 reg = <0 0x11e01000 0 0x1000>,
1357 <0 0x10220200 0 0x80>;
1358 interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH 0>;
1360 clocks = <&imp_iic_wrap_w CLK_IMP_IIC_WRAP_W_I2C1>,
1361 <&infracfg_ao CLK_INFRA_AO_APDMA_B>;
1362 clock-names = "main", "dma";
1363 #address-cells = <1>;
1365 status = "disabled";
1368 i2c2: i2c@11e02000 {
1369 compatible = "mediatek,mt8195-i2c",
1370 "mediatek,mt8192-i2c";
1371 reg = <0 0x11e02000 0 0x1000>,
1372 <0 0x10220380 0 0x80>;
1373 interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH 0>;
1375 clocks = <&imp_iic_wrap_w CLK_IMP_IIC_WRAP_W_I2C2>,
1376 <&infracfg_ao CLK_INFRA_AO_APDMA_B>;
1377 clock-names = "main", "dma";
1378 #address-cells = <1>;
1380 status = "disabled";
1383 i2c3: i2c@11e03000 {
1384 compatible = "mediatek,mt8195-i2c",
1385 "mediatek,mt8192-i2c";
1386 reg = <0 0x11e03000 0 0x1000>,
1387 <0 0x10220480 0 0x80>;
1388 interrupts = <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH 0>;
1390 clocks = <&imp_iic_wrap_w CLK_IMP_IIC_WRAP_W_I2C3>,
1391 <&infracfg_ao CLK_INFRA_AO_APDMA_B>;
1392 clock-names = "main", "dma";
1393 #address-cells = <1>;
1395 status = "disabled";
1398 i2c4: i2c@11e04000 {
1399 compatible = "mediatek,mt8195-i2c",
1400 "mediatek,mt8192-i2c";
1401 reg = <0 0x11e04000 0 0x1000>,
1402 <0 0x10220500 0 0x80>;
1403 interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH 0>;
1405 clocks = <&imp_iic_wrap_w CLK_IMP_IIC_WRAP_W_I2C4>,
1406 <&infracfg_ao CLK_INFRA_AO_APDMA_B>;
1407 clock-names = "main", "dma";
1408 #address-cells = <1>;
1410 status = "disabled";
1413 imp_iic_wrap_w: clock-controller@11e05000 {
1414 compatible = "mediatek,mt8195-imp_iic_wrap_w";
1415 reg = <0 0x11e05000 0 0x1000>;
1419 u3phy1: t-phy@11e30000 {
1420 compatible = "mediatek,mt8195-tphy", "mediatek,generic-tphy-v3";
1421 #address-cells = <1>;
1423 ranges = <0 0 0x11e30000 0xe00>;
1424 power-domains = <&spm MT8195_POWER_DOMAIN_SSUSB_PCIE_PHY>;
1425 status = "disabled";
1427 u2port1: usb-phy@0 {
1429 clocks = <&topckgen CLK_TOP_SSUSB_PHY_P1_REF>,
1431 clock-names = "ref", "da_ref";
1435 u3port1: usb-phy@700 {
1436 reg = <0x700 0x700>;
1437 clocks = <&apmixedsys CLK_APMIXED_PLL_SSUSB26M>,
1438 <&topckgen CLK_TOP_SSUSB_PHY_P1_REF>;
1439 clock-names = "ref", "da_ref";
1440 nvmem-cells = <&comb_intr_p1>,
1443 nvmem-cell-names = "intr", "rx_imp", "tx_imp";
1448 u3phy0: t-phy@11e40000 {
1449 compatible = "mediatek,mt8195-tphy", "mediatek,generic-tphy-v3";
1450 #address-cells = <1>;
1452 ranges = <0 0 0x11e40000 0xe00>;
1453 status = "disabled";
1455 u2port0: usb-phy@0 {
1457 clocks = <&topckgen CLK_TOP_SSUSB_PHY_REF>,
1459 clock-names = "ref", "da_ref";
1463 u3port0: usb-phy@700 {
1464 reg = <0x700 0x700>;
1465 clocks = <&apmixedsys CLK_APMIXED_PLL_SSUSB26M>,
1466 <&topckgen CLK_TOP_SSUSB_PHY_REF>;
1467 clock-names = "ref", "da_ref";
1468 nvmem-cells = <&u3_intr_p0>,
1471 nvmem-cell-names = "intr", "rx_imp", "tx_imp";
1476 ufsphy: ufs-phy@11fa0000 {
1477 compatible = "mediatek,mt8195-ufsphy", "mediatek,mt8183-ufsphy";
1478 reg = <0 0x11fa0000 0 0xc000>;
1479 clocks = <&clk26m>, <&clk26m>;
1480 clock-names = "unipro", "mp";
1482 status = "disabled";
1485 mfgcfg: clock-controller@13fbf000 {
1486 compatible = "mediatek,mt8195-mfgcfg";
1487 reg = <0 0x13fbf000 0 0x1000>;
1491 vppsys0: clock-controller@14000000 {
1492 compatible = "mediatek,mt8195-vppsys0";
1493 reg = <0 0x14000000 0 0x1000>;
1497 smi_sub_common_vpp0_vpp1_2x1: smi@14010000 {
1498 compatible = "mediatek,mt8195-smi-sub-common";
1499 reg = <0 0x14010000 0 0x1000>;
1500 clocks = <&vppsys0 CLK_VPP0_GALS_VPP1_WPE>,
1501 <&vppsys0 CLK_VPP0_GALS_VPP1_WPE>,
1502 <&vppsys0 CLK_VPP0_GALS_VPP1_WPE>;
1503 clock-names = "apb", "smi", "gals0";
1504 mediatek,smi = <&smi_common_vpp>;
1505 power-domains = <&spm MT8195_POWER_DOMAIN_VPPSYS0>;
1508 smi_sub_common_vdec_vpp0_2x1: smi@14011000 {
1509 compatible = "mediatek,mt8195-smi-sub-common";
1510 reg = <0 0x14011000 0 0x1000>;
1511 clocks = <&vppsys0 CLK_VPP0_GALS_VDEC_VDEC_CORE1>,
1512 <&vppsys0 CLK_VPP0_GALS_VDEC_VDEC_CORE1>,
1513 <&vppsys0 CLK_VPP0_GALS_VDEC_VDEC_CORE1>;
1514 clock-names = "apb", "smi", "gals0";
1515 mediatek,smi = <&smi_common_vpp>;
1516 power-domains = <&spm MT8195_POWER_DOMAIN_VPPSYS0>;
1519 smi_common_vpp: smi@14012000 {
1520 compatible = "mediatek,mt8195-smi-common-vpp";
1521 reg = <0 0x14012000 0 0x1000>;
1522 clocks = <&vppsys0 CLK_VPP0_SMI_COMMON_LARB4>,
1523 <&vppsys0 CLK_VPP0_SMI_COMMON_LARB4>,
1524 <&vppsys0 CLK_VPP0_SMI_RSI>,
1525 <&vppsys0 CLK_VPP0_SMI_RSI>;
1526 clock-names = "apb", "smi", "gals0", "gals1";
1527 power-domains = <&spm MT8195_POWER_DOMAIN_VPPSYS0>;
1530 larb4: larb@14013000 {
1531 compatible = "mediatek,mt8195-smi-larb";
1532 reg = <0 0x14013000 0 0x1000>;
1533 mediatek,larb-id = <4>;
1534 mediatek,smi = <&smi_sub_common_vpp0_vpp1_2x1>;
1535 clocks = <&vppsys0 CLK_VPP0_GALS_VPP1_WPE>,
1536 <&vppsys0 CLK_VPP0_SMI_COMMON_LARB4>;
1537 clock-names = "apb", "smi";
1538 power-domains = <&spm MT8195_POWER_DOMAIN_VPPSYS0>;
1541 iommu_vpp: iommu@14018000 {
1542 compatible = "mediatek,mt8195-iommu-vpp";
1543 reg = <0 0x14018000 0 0x1000>;
1544 mediatek,larbs = <&larb1 &larb3 &larb4 &larb6 &larb8
1545 &larb12 &larb14 &larb16 &larb18
1546 &larb20 &larb22 &larb23 &larb26
1548 interrupts = <GIC_SPI 594 IRQ_TYPE_LEVEL_HIGH 0>;
1549 clocks = <&vppsys0 CLK_VPP0_SMI_IOMMU>;
1550 clock-names = "bclk";
1552 power-domains = <&spm MT8195_POWER_DOMAIN_VPPSYS0>;
1555 wpesys: clock-controller@14e00000 {
1556 compatible = "mediatek,mt8195-wpesys";
1557 reg = <0 0x14e00000 0 0x1000>;
1561 wpesys_vpp0: clock-controller@14e02000 {
1562 compatible = "mediatek,mt8195-wpesys_vpp0";
1563 reg = <0 0x14e02000 0 0x1000>;
1567 wpesys_vpp1: clock-controller@14e03000 {
1568 compatible = "mediatek,mt8195-wpesys_vpp1";
1569 reg = <0 0x14e03000 0 0x1000>;
1573 larb7: larb@14e04000 {
1574 compatible = "mediatek,mt8195-smi-larb";
1575 reg = <0 0x14e04000 0 0x1000>;
1576 mediatek,larb-id = <7>;
1577 mediatek,smi = <&smi_common_vdo>;
1578 clocks = <&wpesys CLK_WPE_SMI_LARB7>,
1579 <&wpesys CLK_WPE_SMI_LARB7>;
1580 clock-names = "apb", "smi";
1581 power-domains = <&spm MT8195_POWER_DOMAIN_WPESYS>;
1584 larb8: larb@14e05000 {
1585 compatible = "mediatek,mt8195-smi-larb";
1586 reg = <0 0x14e05000 0 0x1000>;
1587 mediatek,larb-id = <8>;
1588 mediatek,smi = <&smi_common_vpp>;
1589 clocks = <&wpesys CLK_WPE_SMI_LARB8>,
1590 <&wpesys CLK_WPE_SMI_LARB8>,
1591 <&vppsys0 CLK_VPP0_GALS_VPP1_WPE>;
1592 clock-names = "apb", "smi", "gals";
1593 power-domains = <&spm MT8195_POWER_DOMAIN_WPESYS>;
1596 vppsys1: clock-controller@14f00000 {
1597 compatible = "mediatek,mt8195-vppsys1";
1598 reg = <0 0x14f00000 0 0x1000>;
1602 larb5: larb@14f02000 {
1603 compatible = "mediatek,mt8195-smi-larb";
1604 reg = <0 0x14f02000 0 0x1000>;
1605 mediatek,larb-id = <5>;
1606 mediatek,smi = <&smi_common_vdo>;
1607 clocks = <&vppsys1 CLK_VPP1_VPPSYS1_LARB>,
1608 <&vppsys1 CLK_VPP1_VPPSYS1_GALS>,
1609 <&vppsys0 CLK_VPP0_GALS_VPP1_LARB5>;
1610 clock-names = "apb", "smi", "gals";
1611 power-domains = <&spm MT8195_POWER_DOMAIN_VPPSYS1>;
1614 larb6: larb@14f03000 {
1615 compatible = "mediatek,mt8195-smi-larb";
1616 reg = <0 0x14f03000 0 0x1000>;
1617 mediatek,larb-id = <6>;
1618 mediatek,smi = <&smi_sub_common_vpp0_vpp1_2x1>;
1619 clocks = <&vppsys1 CLK_VPP1_VPPSYS1_LARB>,
1620 <&vppsys1 CLK_VPP1_VPPSYS1_GALS>,
1621 <&vppsys0 CLK_VPP0_GALS_VPP1_LARB6>;
1622 clock-names = "apb", "smi", "gals";
1623 power-domains = <&spm MT8195_POWER_DOMAIN_VPPSYS1>;
1626 imgsys: clock-controller@15000000 {
1627 compatible = "mediatek,mt8195-imgsys";
1628 reg = <0 0x15000000 0 0x1000>;
1632 larb9: larb@15001000 {
1633 compatible = "mediatek,mt8195-smi-larb";
1634 reg = <0 0x15001000 0 0x1000>;
1635 mediatek,larb-id = <9>;
1636 mediatek,smi = <&smi_sub_common_img1_3x1>;
1637 clocks = <&imgsys CLK_IMG_LARB9>,
1638 <&imgsys CLK_IMG_LARB9>,
1639 <&imgsys CLK_IMG_GALS>;
1640 clock-names = "apb", "smi", "gals";
1641 power-domains = <&spm MT8195_POWER_DOMAIN_IMG>;
1644 smi_sub_common_img0_3x1: smi@15002000 {
1645 compatible = "mediatek,mt8195-smi-sub-common";
1646 reg = <0 0x15002000 0 0x1000>;
1647 clocks = <&imgsys CLK_IMG_IPE>,
1648 <&imgsys CLK_IMG_IPE>,
1649 <&vppsys0 CLK_VPP0_GALS_IMGSYS_CAMSYS>;
1650 clock-names = "apb", "smi", "gals0";
1651 mediatek,smi = <&smi_common_vpp>;
1652 power-domains = <&spm MT8195_POWER_DOMAIN_IMG>;
1655 smi_sub_common_img1_3x1: smi@15003000 {
1656 compatible = "mediatek,mt8195-smi-sub-common";
1657 reg = <0 0x15003000 0 0x1000>;
1658 clocks = <&imgsys CLK_IMG_LARB9>,
1659 <&imgsys CLK_IMG_LARB9>,
1660 <&imgsys CLK_IMG_GALS>;
1661 clock-names = "apb", "smi", "gals0";
1662 mediatek,smi = <&smi_common_vdo>;
1663 power-domains = <&spm MT8195_POWER_DOMAIN_IMG>;
1666 imgsys1_dip_top: clock-controller@15110000 {
1667 compatible = "mediatek,mt8195-imgsys1_dip_top";
1668 reg = <0 0x15110000 0 0x1000>;
1672 larb10: larb@15120000 {
1673 compatible = "mediatek,mt8195-smi-larb";
1674 reg = <0 0x15120000 0 0x1000>;
1675 mediatek,larb-id = <10>;
1676 mediatek,smi = <&smi_sub_common_img1_3x1>;
1677 clocks = <&imgsys CLK_IMG_DIP0>,
1678 <&imgsys1_dip_top CLK_IMG1_DIP_TOP_LARB10>;
1679 clock-names = "apb", "smi";
1680 power-domains = <&spm MT8195_POWER_DOMAIN_DIP>;
1683 imgsys1_dip_nr: clock-controller@15130000 {
1684 compatible = "mediatek,mt8195-imgsys1_dip_nr";
1685 reg = <0 0x15130000 0 0x1000>;
1689 imgsys1_wpe: clock-controller@15220000 {
1690 compatible = "mediatek,mt8195-imgsys1_wpe";
1691 reg = <0 0x15220000 0 0x1000>;
1695 larb11: larb@15230000 {
1696 compatible = "mediatek,mt8195-smi-larb";
1697 reg = <0 0x15230000 0 0x1000>;
1698 mediatek,larb-id = <11>;
1699 mediatek,smi = <&smi_sub_common_img1_3x1>;
1700 clocks = <&imgsys CLK_IMG_WPE0>,
1701 <&imgsys1_wpe CLK_IMG1_WPE_LARB11>;
1702 clock-names = "apb", "smi";
1703 power-domains = <&spm MT8195_POWER_DOMAIN_DIP>;
1706 ipesys: clock-controller@15330000 {
1707 compatible = "mediatek,mt8195-ipesys";
1708 reg = <0 0x15330000 0 0x1000>;
1712 larb12: larb@15340000 {
1713 compatible = "mediatek,mt8195-smi-larb";
1714 reg = <0 0x15340000 0 0x1000>;
1715 mediatek,larb-id = <12>;
1716 mediatek,smi = <&smi_sub_common_img0_3x1>;
1717 clocks = <&ipesys CLK_IPE_SMI_LARB12>,
1718 <&ipesys CLK_IPE_SMI_LARB12>;
1719 clock-names = "apb", "smi";
1720 power-domains = <&spm MT8195_POWER_DOMAIN_IPE>;
1723 camsys: clock-controller@16000000 {
1724 compatible = "mediatek,mt8195-camsys";
1725 reg = <0 0x16000000 0 0x1000>;
1729 larb13: larb@16001000 {
1730 compatible = "mediatek,mt8195-smi-larb";
1731 reg = <0 0x16001000 0 0x1000>;
1732 mediatek,larb-id = <13>;
1733 mediatek,smi = <&smi_sub_common_cam_4x1>;
1734 clocks = <&camsys CLK_CAM_LARB13>,
1735 <&camsys CLK_CAM_LARB13>,
1736 <&camsys CLK_CAM_CAM2MM0_GALS>;
1737 clock-names = "apb", "smi", "gals";
1738 power-domains = <&spm MT8195_POWER_DOMAIN_CAM>;
1741 larb14: larb@16002000 {
1742 compatible = "mediatek,mt8195-smi-larb";
1743 reg = <0 0x16002000 0 0x1000>;
1744 mediatek,larb-id = <14>;
1745 mediatek,smi = <&smi_sub_common_cam_7x1>;
1746 clocks = <&camsys CLK_CAM_LARB14>,
1747 <&camsys CLK_CAM_LARB14>;
1748 clock-names = "apb", "smi";
1749 power-domains = <&spm MT8195_POWER_DOMAIN_CAM>;
1752 smi_sub_common_cam_4x1: smi@16004000 {
1753 compatible = "mediatek,mt8195-smi-sub-common";
1754 reg = <0 0x16004000 0 0x1000>;
1755 clocks = <&camsys CLK_CAM_LARB13>,
1756 <&camsys CLK_CAM_LARB13>,
1757 <&camsys CLK_CAM_CAM2MM0_GALS>;
1758 clock-names = "apb", "smi", "gals0";
1759 mediatek,smi = <&smi_common_vdo>;
1760 power-domains = <&spm MT8195_POWER_DOMAIN_CAM>;
1763 smi_sub_common_cam_7x1: smi@16005000 {
1764 compatible = "mediatek,mt8195-smi-sub-common";
1765 reg = <0 0x16005000 0 0x1000>;
1766 clocks = <&camsys CLK_CAM_LARB14>,
1767 <&camsys CLK_CAM_CAM2MM1_GALS>,
1768 <&vppsys0 CLK_VPP0_GALS_IMGSYS_CAMSYS>;
1769 clock-names = "apb", "smi", "gals0";
1770 mediatek,smi = <&smi_common_vpp>;
1771 power-domains = <&spm MT8195_POWER_DOMAIN_CAM>;
1774 larb16: larb@16012000 {
1775 compatible = "mediatek,mt8195-smi-larb";
1776 reg = <0 0x16012000 0 0x1000>;
1777 mediatek,larb-id = <16>;
1778 mediatek,smi = <&smi_sub_common_cam_7x1>;
1779 clocks = <&camsys_rawa CLK_CAM_RAWA_LARBX>,
1780 <&camsys_rawa CLK_CAM_RAWA_LARBX>;
1781 clock-names = "apb", "smi";
1782 power-domains = <&spm MT8195_POWER_DOMAIN_CAM_RAWA>;
1785 larb17: larb@16013000 {
1786 compatible = "mediatek,mt8195-smi-larb";
1787 reg = <0 0x16013000 0 0x1000>;
1788 mediatek,larb-id = <17>;
1789 mediatek,smi = <&smi_sub_common_cam_4x1>;
1790 clocks = <&camsys_yuva CLK_CAM_YUVA_LARBX>,
1791 <&camsys_yuva CLK_CAM_YUVA_LARBX>;
1792 clock-names = "apb", "smi";
1793 power-domains = <&spm MT8195_POWER_DOMAIN_CAM_RAWA>;
1796 larb27: larb@16014000 {
1797 compatible = "mediatek,mt8195-smi-larb";
1798 reg = <0 0x16014000 0 0x1000>;
1799 mediatek,larb-id = <27>;
1800 mediatek,smi = <&smi_sub_common_cam_7x1>;
1801 clocks = <&camsys_rawb CLK_CAM_RAWB_LARBX>,
1802 <&camsys_rawb CLK_CAM_RAWB_LARBX>;
1803 clock-names = "apb", "smi";
1804 power-domains = <&spm MT8195_POWER_DOMAIN_CAM_RAWB>;
1807 larb28: larb@16015000 {
1808 compatible = "mediatek,mt8195-smi-larb";
1809 reg = <0 0x16015000 0 0x1000>;
1810 mediatek,larb-id = <28>;
1811 mediatek,smi = <&smi_sub_common_cam_4x1>;
1812 clocks = <&camsys_yuvb CLK_CAM_YUVB_LARBX>,
1813 <&camsys_yuvb CLK_CAM_YUVB_LARBX>;
1814 clock-names = "apb", "smi";
1815 power-domains = <&spm MT8195_POWER_DOMAIN_CAM_RAWB>;
1818 camsys_rawa: clock-controller@1604f000 {
1819 compatible = "mediatek,mt8195-camsys_rawa";
1820 reg = <0 0x1604f000 0 0x1000>;
1824 camsys_yuva: clock-controller@1606f000 {
1825 compatible = "mediatek,mt8195-camsys_yuva";
1826 reg = <0 0x1606f000 0 0x1000>;
1830 camsys_rawb: clock-controller@1608f000 {
1831 compatible = "mediatek,mt8195-camsys_rawb";
1832 reg = <0 0x1608f000 0 0x1000>;
1836 camsys_yuvb: clock-controller@160af000 {
1837 compatible = "mediatek,mt8195-camsys_yuvb";
1838 reg = <0 0x160af000 0 0x1000>;
1842 camsys_mraw: clock-controller@16140000 {
1843 compatible = "mediatek,mt8195-camsys_mraw";
1844 reg = <0 0x16140000 0 0x1000>;
1848 larb25: larb@16141000 {
1849 compatible = "mediatek,mt8195-smi-larb";
1850 reg = <0 0x16141000 0 0x1000>;
1851 mediatek,larb-id = <25>;
1852 mediatek,smi = <&smi_sub_common_cam_4x1>;
1853 clocks = <&camsys CLK_CAM_LARB13>,
1854 <&camsys_mraw CLK_CAM_MRAW_LARBX>,
1855 <&camsys CLK_CAM_CAM2MM0_GALS>;
1856 clock-names = "apb", "smi", "gals";
1857 power-domains = <&spm MT8195_POWER_DOMAIN_CAM_MRAW>;
1860 larb26: larb@16142000 {
1861 compatible = "mediatek,mt8195-smi-larb";
1862 reg = <0 0x16142000 0 0x1000>;
1863 mediatek,larb-id = <26>;
1864 mediatek,smi = <&smi_sub_common_cam_7x1>;
1865 clocks = <&camsys_mraw CLK_CAM_MRAW_LARBX>,
1866 <&camsys_mraw CLK_CAM_MRAW_LARBX>;
1867 clock-names = "apb", "smi";
1868 power-domains = <&spm MT8195_POWER_DOMAIN_CAM_MRAW>;
1872 ccusys: clock-controller@17200000 {
1873 compatible = "mediatek,mt8195-ccusys";
1874 reg = <0 0x17200000 0 0x1000>;
1878 larb18: larb@17201000 {
1879 compatible = "mediatek,mt8195-smi-larb";
1880 reg = <0 0x17201000 0 0x1000>;
1881 mediatek,larb-id = <18>;
1882 mediatek,smi = <&smi_sub_common_cam_7x1>;
1883 clocks = <&ccusys CLK_CCU_LARB18>,
1884 <&ccusys CLK_CCU_LARB18>;
1885 clock-names = "apb", "smi";
1886 power-domains = <&spm MT8195_POWER_DOMAIN_CAM>;
1889 larb24: larb@1800d000 {
1890 compatible = "mediatek,mt8195-smi-larb";
1891 reg = <0 0x1800d000 0 0x1000>;
1892 mediatek,larb-id = <24>;
1893 mediatek,smi = <&smi_common_vdo>;
1894 clocks = <&vdecsys_soc CLK_VDEC_SOC_LARB1>,
1895 <&vdecsys_soc CLK_VDEC_SOC_LARB1>;
1896 clock-names = "apb", "smi";
1897 power-domains = <&spm MT8195_POWER_DOMAIN_VDEC0>;
1900 larb23: larb@1800e000 {
1901 compatible = "mediatek,mt8195-smi-larb";
1902 reg = <0 0x1800e000 0 0x1000>;
1903 mediatek,larb-id = <23>;
1904 mediatek,smi = <&smi_sub_common_vdec_vpp0_2x1>;
1905 clocks = <&vppsys0 CLK_VPP0_GALS_VDEC_VDEC_CORE1>,
1906 <&vdecsys_soc CLK_VDEC_SOC_LARB1>;
1907 clock-names = "apb", "smi";
1908 power-domains = <&spm MT8195_POWER_DOMAIN_VDEC0>;
1911 vdecsys_soc: clock-controller@1800f000 {
1912 compatible = "mediatek,mt8195-vdecsys_soc";
1913 reg = <0 0x1800f000 0 0x1000>;
1917 larb21: larb@1802e000 {
1918 compatible = "mediatek,mt8195-smi-larb";
1919 reg = <0 0x1802e000 0 0x1000>;
1920 mediatek,larb-id = <21>;
1921 mediatek,smi = <&smi_common_vdo>;
1922 clocks = <&vdecsys CLK_VDEC_LARB1>,
1923 <&vdecsys CLK_VDEC_LARB1>;
1924 clock-names = "apb", "smi";
1925 power-domains = <&spm MT8195_POWER_DOMAIN_VDEC1>;
1928 vdecsys: clock-controller@1802f000 {
1929 compatible = "mediatek,mt8195-vdecsys";
1930 reg = <0 0x1802f000 0 0x1000>;
1934 larb22: larb@1803e000 {
1935 compatible = "mediatek,mt8195-smi-larb";
1936 reg = <0 0x1803e000 0 0x1000>;
1937 mediatek,larb-id = <22>;
1938 mediatek,smi = <&smi_sub_common_vdec_vpp0_2x1>;
1939 clocks = <&vppsys0 CLK_VPP0_GALS_VDEC_VDEC_CORE1>,
1940 <&vdecsys_core1 CLK_VDEC_CORE1_LARB1>;
1941 clock-names = "apb", "smi";
1942 power-domains = <&spm MT8195_POWER_DOMAIN_VDEC2>;
1945 vdecsys_core1: clock-controller@1803f000 {
1946 compatible = "mediatek,mt8195-vdecsys_core1";
1947 reg = <0 0x1803f000 0 0x1000>;
1951 apusys_pll: clock-controller@190f3000 {
1952 compatible = "mediatek,mt8195-apusys_pll";
1953 reg = <0 0x190f3000 0 0x1000>;
1957 vencsys: clock-controller@1a000000 {
1958 compatible = "mediatek,mt8195-vencsys";
1959 reg = <0 0x1a000000 0 0x1000>;
1963 larb19: larb@1a010000 {
1964 compatible = "mediatek,mt8195-smi-larb";
1965 reg = <0 0x1a010000 0 0x1000>;
1966 mediatek,larb-id = <19>;
1967 mediatek,smi = <&smi_common_vdo>;
1968 clocks = <&vencsys CLK_VENC_VENC>,
1969 <&vencsys CLK_VENC_GALS>;
1970 clock-names = "apb", "smi";
1971 power-domains = <&spm MT8195_POWER_DOMAIN_VENC>;
1974 vencsys_core1: clock-controller@1b000000 {
1975 compatible = "mediatek,mt8195-vencsys_core1";
1976 reg = <0 0x1b000000 0 0x1000>;
1980 vdosys0: syscon@1c01a000 {
1981 compatible = "mediatek,mt8195-vdosys0", "mediatek,mt8195-mmsys", "syscon";
1982 reg = <0 0x1c01a000 0 0x1000>;
1983 mboxes = <&gce0 0 CMDQ_THR_PRIO_4>;
1987 larb20: larb@1b010000 {
1988 compatible = "mediatek,mt8195-smi-larb";
1989 reg = <0 0x1b010000 0 0x1000>;
1990 mediatek,larb-id = <20>;
1991 mediatek,smi = <&smi_common_vpp>;
1992 clocks = <&vencsys_core1 CLK_VENC_CORE1_VENC>,
1993 <&vencsys_core1 CLK_VENC_CORE1_GALS>,
1994 <&vppsys0 CLK_VPP0_GALS_VDO0_VDO1_VENCSYS_CORE1>;
1995 clock-names = "apb", "smi", "gals";
1996 power-domains = <&spm MT8195_POWER_DOMAIN_VENC_CORE1>;
1999 ovl0: ovl@1c000000 {
2000 compatible = "mediatek,mt8195-disp-ovl", "mediatek,mt8183-disp-ovl";
2001 reg = <0 0x1c000000 0 0x1000>;
2002 interrupts = <GIC_SPI 636 IRQ_TYPE_LEVEL_HIGH 0>;
2003 power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;
2004 clocks = <&vdosys0 CLK_VDO0_DISP_OVL0>;
2005 iommus = <&iommu_vdo M4U_PORT_L0_DISP_OVL0_RDMA0>;
2006 mediatek,gce-client-reg = <&gce0 SUBSYS_1c00XXXX 0x0000 0x1000>;
2009 rdma0: rdma@1c002000 {
2010 compatible = "mediatek,mt8195-disp-rdma";
2011 reg = <0 0x1c002000 0 0x1000>;
2012 interrupts = <GIC_SPI 638 IRQ_TYPE_LEVEL_HIGH 0>;
2013 power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;
2014 clocks = <&vdosys0 CLK_VDO0_DISP_RDMA0>;
2015 iommus = <&iommu_vdo M4U_PORT_L0_DISP_RDMA0>;
2016 mediatek,gce-client-reg = <&gce0 SUBSYS_1c00XXXX 0x2000 0x1000>;
2019 color0: color@1c003000 {
2020 compatible = "mediatek,mt8195-disp-color", "mediatek,mt8173-disp-color";
2021 reg = <0 0x1c003000 0 0x1000>;
2022 interrupts = <GIC_SPI 639 IRQ_TYPE_LEVEL_HIGH 0>;
2023 power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;
2024 clocks = <&vdosys0 CLK_VDO0_DISP_COLOR0>;
2025 mediatek,gce-client-reg = <&gce0 SUBSYS_1c00XXXX 0x3000 0x1000>;
2028 ccorr0: ccorr@1c004000 {
2029 compatible = "mediatek,mt8195-disp-ccorr", "mediatek,mt8192-disp-ccorr";
2030 reg = <0 0x1c004000 0 0x1000>;
2031 interrupts = <GIC_SPI 640 IRQ_TYPE_LEVEL_HIGH 0>;
2032 power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;
2033 clocks = <&vdosys0 CLK_VDO0_DISP_CCORR0>;
2034 mediatek,gce-client-reg = <&gce0 SUBSYS_1c00XXXX 0x4000 0x1000>;
2037 aal0: aal@1c005000 {
2038 compatible = "mediatek,mt8195-disp-aal", "mediatek,mt8183-disp-aal";
2039 reg = <0 0x1c005000 0 0x1000>;
2040 interrupts = <GIC_SPI 641 IRQ_TYPE_LEVEL_HIGH 0>;
2041 power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;
2042 clocks = <&vdosys0 CLK_VDO0_DISP_AAL0>;
2043 mediatek,gce-client-reg = <&gce0 SUBSYS_1c00XXXX 0x5000 0x1000>;
2046 gamma0: gamma@1c006000 {
2047 compatible = "mediatek,mt8195-disp-gamma", "mediatek,mt8183-disp-gamma";
2048 reg = <0 0x1c006000 0 0x1000>;
2049 interrupts = <GIC_SPI 642 IRQ_TYPE_LEVEL_HIGH 0>;
2050 power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;
2051 clocks = <&vdosys0 CLK_VDO0_DISP_GAMMA0>;
2052 mediatek,gce-client-reg = <&gce0 SUBSYS_1c00XXXX 0x6000 0x1000>;
2055 dither0: dither@1c007000 {
2056 compatible = "mediatek,mt8195-disp-dither", "mediatek,mt8183-disp-dither";
2057 reg = <0 0x1c007000 0 0x1000>;
2058 interrupts = <GIC_SPI 643 IRQ_TYPE_LEVEL_HIGH 0>;
2059 power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;
2060 clocks = <&vdosys0 CLK_VDO0_DISP_DITHER0>;
2061 mediatek,gce-client-reg = <&gce0 SUBSYS_1c00XXXX 0x7000 0x1000>;
2064 dsc0: dsc@1c009000 {
2065 compatible = "mediatek,mt8195-disp-dsc";
2066 reg = <0 0x1c009000 0 0x1000>;
2067 interrupts = <GIC_SPI 645 IRQ_TYPE_LEVEL_HIGH 0>;
2068 power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;
2069 clocks = <&vdosys0 CLK_VDO0_DSC_WRAP0>;
2070 mediatek,gce-client-reg = <&gce0 SUBSYS_1c00XXXX 0x9000 0x1000>;
2073 merge0: merge@1c014000 {
2074 compatible = "mediatek,mt8195-disp-merge";
2075 reg = <0 0x1c014000 0 0x1000>;
2076 interrupts = <GIC_SPI 656 IRQ_TYPE_LEVEL_HIGH 0>;
2077 power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;
2078 clocks = <&vdosys0 CLK_VDO0_VPP_MERGE0>;
2079 mediatek,gce-client-reg = <&gce0 SUBSYS_1c01XXXX 0x4000 0x1000>;
2082 mutex: mutex@1c016000 {
2083 compatible = "mediatek,mt8195-disp-mutex";
2084 reg = <0 0x1c016000 0 0x1000>;
2085 interrupts = <GIC_SPI 658 IRQ_TYPE_LEVEL_HIGH 0>;
2086 power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;
2087 clocks = <&vdosys0 CLK_VDO0_DISP_MUTEX0>;
2088 mediatek,gce-events = <CMDQ_EVENT_VDO0_DISP_STREAM_DONE_0>;
2091 larb0: larb@1c018000 {
2092 compatible = "mediatek,mt8195-smi-larb";
2093 reg = <0 0x1c018000 0 0x1000>;
2094 mediatek,larb-id = <0>;
2095 mediatek,smi = <&smi_common_vdo>;
2096 clocks = <&vdosys0 CLK_VDO0_SMI_LARB>,
2097 <&vdosys0 CLK_VDO0_SMI_LARB>,
2098 <&vppsys0 CLK_VPP0_GALS_VDO0_LARB0>;
2099 clock-names = "apb", "smi", "gals";
2100 power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;
2103 larb1: larb@1c019000 {
2104 compatible = "mediatek,mt8195-smi-larb";
2105 reg = <0 0x1c019000 0 0x1000>;
2106 mediatek,larb-id = <1>;
2107 mediatek,smi = <&smi_common_vpp>;
2108 clocks = <&vdosys0 CLK_VDO0_SMI_LARB>,
2109 <&vppsys0 CLK_VPP0_GALS_VDO0_VDO1_VENCSYS_CORE1>,
2110 <&vppsys0 CLK_VPP0_GALS_VDO0_LARB1>;
2111 clock-names = "apb", "smi", "gals";
2112 power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;
2115 vdosys1: syscon@1c100000 {
2116 compatible = "mediatek,mt8195-vdosys1", "syscon";
2117 reg = <0 0x1c100000 0 0x1000>;
2121 smi_common_vdo: smi@1c01b000 {
2122 compatible = "mediatek,mt8195-smi-common-vdo";
2123 reg = <0 0x1c01b000 0 0x1000>;
2124 clocks = <&vdosys0 CLK_VDO0_SMI_COMMON>,
2125 <&vdosys0 CLK_VDO0_SMI_EMI>,
2126 <&vdosys0 CLK_VDO0_SMI_RSI>,
2127 <&vdosys0 CLK_VDO0_SMI_GALS>;
2128 clock-names = "apb", "smi", "gals0", "gals1";
2129 power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;
2133 iommu_vdo: iommu@1c01f000 {
2134 compatible = "mediatek,mt8195-iommu-vdo";
2135 reg = <0 0x1c01f000 0 0x1000>;
2136 mediatek,larbs = <&larb0 &larb2 &larb5 &larb7 &larb9
2137 &larb10 &larb11 &larb13 &larb17
2138 &larb19 &larb21 &larb24 &larb25
2140 interrupts = <GIC_SPI 669 IRQ_TYPE_LEVEL_HIGH 0>;
2142 clocks = <&vdosys0 CLK_VDO0_SMI_IOMMU>;
2143 clock-names = "bclk";
2144 power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;
2147 larb2: larb@1c102000 {
2148 compatible = "mediatek,mt8195-smi-larb";
2149 reg = <0 0x1c102000 0 0x1000>;
2150 mediatek,larb-id = <2>;
2151 mediatek,smi = <&smi_common_vdo>;
2152 clocks = <&vdosys1 CLK_VDO1_SMI_LARB2>,
2153 <&vdosys1 CLK_VDO1_SMI_LARB2>,
2154 <&vdosys1 CLK_VDO1_GALS>;
2155 clock-names = "apb", "smi", "gals";
2156 power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS1>;
2159 larb3: larb@1c103000 {
2160 compatible = "mediatek,mt8195-smi-larb";
2161 reg = <0 0x1c103000 0 0x1000>;
2162 mediatek,larb-id = <3>;
2163 mediatek,smi = <&smi_common_vpp>;
2164 clocks = <&vdosys1 CLK_VDO1_SMI_LARB3>,
2165 <&vdosys1 CLK_VDO1_GALS>,
2166 <&vppsys0 CLK_VPP0_GALS_VDO0_VDO1_VENCSYS_CORE1>;
2167 clock-names = "apb", "smi", "gals";
2168 power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS1>;