18c2ecf20Sopenharmony_ci/* 28c2ecf20Sopenharmony_ci * Copyright (c) 2017 MediaTek Inc. 38c2ecf20Sopenharmony_ci * Author: YT Shen <yt.shen@mediatek.com> 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * SPDX-License-Identifier: (GPL-2.0 OR MIT) 68c2ecf20Sopenharmony_ci */ 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_ci#include <dt-bindings/clock/mt2712-clk.h> 98c2ecf20Sopenharmony_ci#include <dt-bindings/interrupt-controller/irq.h> 108c2ecf20Sopenharmony_ci#include <dt-bindings/interrupt-controller/arm-gic.h> 118c2ecf20Sopenharmony_ci#include <dt-bindings/memory/mt2712-larb-port.h> 128c2ecf20Sopenharmony_ci#include <dt-bindings/phy/phy.h> 138c2ecf20Sopenharmony_ci#include <dt-bindings/power/mt2712-power.h> 148c2ecf20Sopenharmony_ci#include "mt2712-pinfunc.h" 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_ci/ { 178c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712"; 188c2ecf20Sopenharmony_ci interrupt-parent = <&sysirq>; 198c2ecf20Sopenharmony_ci #address-cells = <2>; 208c2ecf20Sopenharmony_ci #size-cells = <2>; 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ci cluster0_opp: opp_table0 { 238c2ecf20Sopenharmony_ci compatible = "operating-points-v2"; 248c2ecf20Sopenharmony_ci opp-shared; 258c2ecf20Sopenharmony_ci opp00 { 268c2ecf20Sopenharmony_ci opp-hz = /bits/ 64 <598000000>; 278c2ecf20Sopenharmony_ci opp-microvolt = <1000000>; 288c2ecf20Sopenharmony_ci }; 298c2ecf20Sopenharmony_ci opp01 { 308c2ecf20Sopenharmony_ci opp-hz = /bits/ 64 <702000000>; 318c2ecf20Sopenharmony_ci opp-microvolt = <1000000>; 328c2ecf20Sopenharmony_ci }; 338c2ecf20Sopenharmony_ci opp02 { 348c2ecf20Sopenharmony_ci opp-hz = /bits/ 64 <793000000>; 358c2ecf20Sopenharmony_ci opp-microvolt = <1000000>; 368c2ecf20Sopenharmony_ci }; 378c2ecf20Sopenharmony_ci }; 388c2ecf20Sopenharmony_ci 398c2ecf20Sopenharmony_ci cluster1_opp: opp_table1 { 408c2ecf20Sopenharmony_ci compatible = "operating-points-v2"; 418c2ecf20Sopenharmony_ci opp-shared; 428c2ecf20Sopenharmony_ci opp00 { 438c2ecf20Sopenharmony_ci opp-hz = /bits/ 64 <598000000>; 448c2ecf20Sopenharmony_ci opp-microvolt = <1000000>; 458c2ecf20Sopenharmony_ci }; 468c2ecf20Sopenharmony_ci opp01 { 478c2ecf20Sopenharmony_ci opp-hz = /bits/ 64 <702000000>; 488c2ecf20Sopenharmony_ci opp-microvolt = <1000000>; 498c2ecf20Sopenharmony_ci }; 508c2ecf20Sopenharmony_ci opp02 { 518c2ecf20Sopenharmony_ci opp-hz = /bits/ 64 <793000000>; 528c2ecf20Sopenharmony_ci opp-microvolt = <1000000>; 538c2ecf20Sopenharmony_ci }; 548c2ecf20Sopenharmony_ci opp03 { 558c2ecf20Sopenharmony_ci opp-hz = /bits/ 64 <897000000>; 568c2ecf20Sopenharmony_ci opp-microvolt = <1000000>; 578c2ecf20Sopenharmony_ci }; 588c2ecf20Sopenharmony_ci opp04 { 598c2ecf20Sopenharmony_ci opp-hz = /bits/ 64 <1001000000>; 608c2ecf20Sopenharmony_ci opp-microvolt = <1000000>; 618c2ecf20Sopenharmony_ci }; 628c2ecf20Sopenharmony_ci }; 638c2ecf20Sopenharmony_ci 648c2ecf20Sopenharmony_ci cpus { 658c2ecf20Sopenharmony_ci #address-cells = <1>; 668c2ecf20Sopenharmony_ci #size-cells = <0>; 678c2ecf20Sopenharmony_ci 688c2ecf20Sopenharmony_ci cpu-map { 698c2ecf20Sopenharmony_ci cluster0 { 708c2ecf20Sopenharmony_ci core0 { 718c2ecf20Sopenharmony_ci cpu = <&cpu0>; 728c2ecf20Sopenharmony_ci }; 738c2ecf20Sopenharmony_ci core1 { 748c2ecf20Sopenharmony_ci cpu = <&cpu1>; 758c2ecf20Sopenharmony_ci }; 768c2ecf20Sopenharmony_ci }; 778c2ecf20Sopenharmony_ci 788c2ecf20Sopenharmony_ci cluster1 { 798c2ecf20Sopenharmony_ci core0 { 808c2ecf20Sopenharmony_ci cpu = <&cpu2>; 818c2ecf20Sopenharmony_ci }; 828c2ecf20Sopenharmony_ci }; 838c2ecf20Sopenharmony_ci }; 848c2ecf20Sopenharmony_ci 858c2ecf20Sopenharmony_ci cpu0: cpu@0 { 868c2ecf20Sopenharmony_ci device_type = "cpu"; 878c2ecf20Sopenharmony_ci compatible = "arm,cortex-a35"; 888c2ecf20Sopenharmony_ci reg = <0x000>; 898c2ecf20Sopenharmony_ci clocks = <&mcucfg CLK_MCU_MP0_SEL>, 908c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_F_MP0_PLL1>; 918c2ecf20Sopenharmony_ci clock-names = "cpu", "intermediate"; 928c2ecf20Sopenharmony_ci proc-supply = <&cpus_fixed_vproc0>; 938c2ecf20Sopenharmony_ci operating-points-v2 = <&cluster0_opp>; 948c2ecf20Sopenharmony_ci cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 958c2ecf20Sopenharmony_ci }; 968c2ecf20Sopenharmony_ci 978c2ecf20Sopenharmony_ci cpu1: cpu@1 { 988c2ecf20Sopenharmony_ci device_type = "cpu"; 998c2ecf20Sopenharmony_ci compatible = "arm,cortex-a35"; 1008c2ecf20Sopenharmony_ci reg = <0x001>; 1018c2ecf20Sopenharmony_ci enable-method = "psci"; 1028c2ecf20Sopenharmony_ci clocks = <&mcucfg CLK_MCU_MP0_SEL>, 1038c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_F_MP0_PLL1>; 1048c2ecf20Sopenharmony_ci clock-names = "cpu", "intermediate"; 1058c2ecf20Sopenharmony_ci proc-supply = <&cpus_fixed_vproc0>; 1068c2ecf20Sopenharmony_ci operating-points-v2 = <&cluster0_opp>; 1078c2ecf20Sopenharmony_ci cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 1088c2ecf20Sopenharmony_ci }; 1098c2ecf20Sopenharmony_ci 1108c2ecf20Sopenharmony_ci cpu2: cpu@200 { 1118c2ecf20Sopenharmony_ci device_type = "cpu"; 1128c2ecf20Sopenharmony_ci compatible = "arm,cortex-a72"; 1138c2ecf20Sopenharmony_ci reg = <0x200>; 1148c2ecf20Sopenharmony_ci enable-method = "psci"; 1158c2ecf20Sopenharmony_ci clocks = <&mcucfg CLK_MCU_MP2_SEL>, 1168c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_F_BIG_PLL1>; 1178c2ecf20Sopenharmony_ci clock-names = "cpu", "intermediate"; 1188c2ecf20Sopenharmony_ci proc-supply = <&cpus_fixed_vproc1>; 1198c2ecf20Sopenharmony_ci operating-points-v2 = <&cluster1_opp>; 1208c2ecf20Sopenharmony_ci cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 1218c2ecf20Sopenharmony_ci }; 1228c2ecf20Sopenharmony_ci 1238c2ecf20Sopenharmony_ci idle-states { 1248c2ecf20Sopenharmony_ci entry-method = "psci"; 1258c2ecf20Sopenharmony_ci 1268c2ecf20Sopenharmony_ci CPU_SLEEP_0: cpu-sleep-0 { 1278c2ecf20Sopenharmony_ci compatible = "arm,idle-state"; 1288c2ecf20Sopenharmony_ci local-timer-stop; 1298c2ecf20Sopenharmony_ci entry-latency-us = <100>; 1308c2ecf20Sopenharmony_ci exit-latency-us = <80>; 1318c2ecf20Sopenharmony_ci min-residency-us = <2000>; 1328c2ecf20Sopenharmony_ci arm,psci-suspend-param = <0x0010000>; 1338c2ecf20Sopenharmony_ci }; 1348c2ecf20Sopenharmony_ci 1358c2ecf20Sopenharmony_ci CLUSTER_SLEEP_0: cluster-sleep-0 { 1368c2ecf20Sopenharmony_ci compatible = "arm,idle-state"; 1378c2ecf20Sopenharmony_ci local-timer-stop; 1388c2ecf20Sopenharmony_ci entry-latency-us = <350>; 1398c2ecf20Sopenharmony_ci exit-latency-us = <80>; 1408c2ecf20Sopenharmony_ci min-residency-us = <3000>; 1418c2ecf20Sopenharmony_ci arm,psci-suspend-param = <0x1010000>; 1428c2ecf20Sopenharmony_ci }; 1438c2ecf20Sopenharmony_ci }; 1448c2ecf20Sopenharmony_ci }; 1458c2ecf20Sopenharmony_ci 1468c2ecf20Sopenharmony_ci psci { 1478c2ecf20Sopenharmony_ci compatible = "arm,psci-0.2"; 1488c2ecf20Sopenharmony_ci method = "smc"; 1498c2ecf20Sopenharmony_ci }; 1508c2ecf20Sopenharmony_ci 1518c2ecf20Sopenharmony_ci baud_clk: dummy26m { 1528c2ecf20Sopenharmony_ci compatible = "fixed-clock"; 1538c2ecf20Sopenharmony_ci clock-frequency = <26000000>; 1548c2ecf20Sopenharmony_ci #clock-cells = <0>; 1558c2ecf20Sopenharmony_ci }; 1568c2ecf20Sopenharmony_ci 1578c2ecf20Sopenharmony_ci sys_clk: dummyclk { 1588c2ecf20Sopenharmony_ci compatible = "fixed-clock"; 1598c2ecf20Sopenharmony_ci clock-frequency = <26000000>; 1608c2ecf20Sopenharmony_ci #clock-cells = <0>; 1618c2ecf20Sopenharmony_ci }; 1628c2ecf20Sopenharmony_ci 1638c2ecf20Sopenharmony_ci clk26m: oscillator-26m { 1648c2ecf20Sopenharmony_ci compatible = "fixed-clock"; 1658c2ecf20Sopenharmony_ci #clock-cells = <0>; 1668c2ecf20Sopenharmony_ci clock-frequency = <26000000>; 1678c2ecf20Sopenharmony_ci clock-output-names = "clk26m"; 1688c2ecf20Sopenharmony_ci }; 1698c2ecf20Sopenharmony_ci 1708c2ecf20Sopenharmony_ci clk32k: oscillator-32k { 1718c2ecf20Sopenharmony_ci compatible = "fixed-clock"; 1728c2ecf20Sopenharmony_ci #clock-cells = <0>; 1738c2ecf20Sopenharmony_ci clock-frequency = <32768>; 1748c2ecf20Sopenharmony_ci clock-output-names = "clk32k"; 1758c2ecf20Sopenharmony_ci }; 1768c2ecf20Sopenharmony_ci 1778c2ecf20Sopenharmony_ci clkfpc: oscillator-50m { 1788c2ecf20Sopenharmony_ci compatible = "fixed-clock"; 1798c2ecf20Sopenharmony_ci #clock-cells = <0>; 1808c2ecf20Sopenharmony_ci clock-frequency = <50000000>; 1818c2ecf20Sopenharmony_ci clock-output-names = "clkfpc"; 1828c2ecf20Sopenharmony_ci }; 1838c2ecf20Sopenharmony_ci 1848c2ecf20Sopenharmony_ci clkaud_ext_i_0: oscillator-aud0 { 1858c2ecf20Sopenharmony_ci compatible = "fixed-clock"; 1868c2ecf20Sopenharmony_ci #clock-cells = <0>; 1878c2ecf20Sopenharmony_ci clock-frequency = <6500000>; 1888c2ecf20Sopenharmony_ci clock-output-names = "clkaud_ext_i_0"; 1898c2ecf20Sopenharmony_ci }; 1908c2ecf20Sopenharmony_ci 1918c2ecf20Sopenharmony_ci clkaud_ext_i_1: oscillator-aud1 { 1928c2ecf20Sopenharmony_ci compatible = "fixed-clock"; 1938c2ecf20Sopenharmony_ci #clock-cells = <0>; 1948c2ecf20Sopenharmony_ci clock-frequency = <196608000>; 1958c2ecf20Sopenharmony_ci clock-output-names = "clkaud_ext_i_1"; 1968c2ecf20Sopenharmony_ci }; 1978c2ecf20Sopenharmony_ci 1988c2ecf20Sopenharmony_ci clkaud_ext_i_2: oscillator-aud2 { 1998c2ecf20Sopenharmony_ci compatible = "fixed-clock"; 2008c2ecf20Sopenharmony_ci #clock-cells = <0>; 2018c2ecf20Sopenharmony_ci clock-frequency = <180633600>; 2028c2ecf20Sopenharmony_ci clock-output-names = "clkaud_ext_i_2"; 2038c2ecf20Sopenharmony_ci }; 2048c2ecf20Sopenharmony_ci 2058c2ecf20Sopenharmony_ci clki2si0_mck_i: oscillator-i2s0 { 2068c2ecf20Sopenharmony_ci compatible = "fixed-clock"; 2078c2ecf20Sopenharmony_ci #clock-cells = <0>; 2088c2ecf20Sopenharmony_ci clock-frequency = <30000000>; 2098c2ecf20Sopenharmony_ci clock-output-names = "clki2si0_mck_i"; 2108c2ecf20Sopenharmony_ci }; 2118c2ecf20Sopenharmony_ci 2128c2ecf20Sopenharmony_ci clki2si1_mck_i: oscillator-i2s1 { 2138c2ecf20Sopenharmony_ci compatible = "fixed-clock"; 2148c2ecf20Sopenharmony_ci #clock-cells = <0>; 2158c2ecf20Sopenharmony_ci clock-frequency = <30000000>; 2168c2ecf20Sopenharmony_ci clock-output-names = "clki2si1_mck_i"; 2178c2ecf20Sopenharmony_ci }; 2188c2ecf20Sopenharmony_ci 2198c2ecf20Sopenharmony_ci clki2si2_mck_i: oscillator-i2s2 { 2208c2ecf20Sopenharmony_ci compatible = "fixed-clock"; 2218c2ecf20Sopenharmony_ci #clock-cells = <0>; 2228c2ecf20Sopenharmony_ci clock-frequency = <30000000>; 2238c2ecf20Sopenharmony_ci clock-output-names = "clki2si2_mck_i"; 2248c2ecf20Sopenharmony_ci }; 2258c2ecf20Sopenharmony_ci 2268c2ecf20Sopenharmony_ci clktdmin_mclk_i: oscillator-mclk { 2278c2ecf20Sopenharmony_ci compatible = "fixed-clock"; 2288c2ecf20Sopenharmony_ci #clock-cells = <0>; 2298c2ecf20Sopenharmony_ci clock-frequency = <30000000>; 2308c2ecf20Sopenharmony_ci clock-output-names = "clktdmin_mclk_i"; 2318c2ecf20Sopenharmony_ci }; 2328c2ecf20Sopenharmony_ci 2338c2ecf20Sopenharmony_ci timer { 2348c2ecf20Sopenharmony_ci compatible = "arm,armv8-timer"; 2358c2ecf20Sopenharmony_ci interrupt-parent = <&gic>; 2368c2ecf20Sopenharmony_ci interrupts = <GIC_PPI 13 2378c2ecf20Sopenharmony_ci (GIC_CPU_MASK_RAW(0x13) | IRQ_TYPE_LEVEL_LOW)>, 2388c2ecf20Sopenharmony_ci <GIC_PPI 14 2398c2ecf20Sopenharmony_ci (GIC_CPU_MASK_RAW(0x13) | IRQ_TYPE_LEVEL_LOW)>, 2408c2ecf20Sopenharmony_ci <GIC_PPI 11 2418c2ecf20Sopenharmony_ci (GIC_CPU_MASK_RAW(0x13) | IRQ_TYPE_LEVEL_LOW)>, 2428c2ecf20Sopenharmony_ci <GIC_PPI 10 2438c2ecf20Sopenharmony_ci (GIC_CPU_MASK_RAW(0x13) | IRQ_TYPE_LEVEL_LOW)>; 2448c2ecf20Sopenharmony_ci }; 2458c2ecf20Sopenharmony_ci 2468c2ecf20Sopenharmony_ci topckgen: syscon@10000000 { 2478c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-topckgen", "syscon"; 2488c2ecf20Sopenharmony_ci reg = <0 0x10000000 0 0x1000>; 2498c2ecf20Sopenharmony_ci #clock-cells = <1>; 2508c2ecf20Sopenharmony_ci }; 2518c2ecf20Sopenharmony_ci 2528c2ecf20Sopenharmony_ci infracfg: syscon@10001000 { 2538c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-infracfg", "syscon"; 2548c2ecf20Sopenharmony_ci reg = <0 0x10001000 0 0x1000>; 2558c2ecf20Sopenharmony_ci #clock-cells = <1>; 2568c2ecf20Sopenharmony_ci }; 2578c2ecf20Sopenharmony_ci 2588c2ecf20Sopenharmony_ci pericfg: syscon@10003000 { 2598c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-pericfg", "syscon"; 2608c2ecf20Sopenharmony_ci reg = <0 0x10003000 0 0x1000>; 2618c2ecf20Sopenharmony_ci #clock-cells = <1>; 2628c2ecf20Sopenharmony_ci }; 2638c2ecf20Sopenharmony_ci 2648c2ecf20Sopenharmony_ci syscfg_pctl_a: syscfg_pctl_a@10005000 { 2658c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-pctl-a-syscfg", "syscon"; 2668c2ecf20Sopenharmony_ci reg = <0 0x10005000 0 0x1000>; 2678c2ecf20Sopenharmony_ci }; 2688c2ecf20Sopenharmony_ci 2698c2ecf20Sopenharmony_ci pio: pinctrl@1000b000 { 2708c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-pinctrl"; 2718c2ecf20Sopenharmony_ci reg = <0 0x1000b000 0 0x1000>; 2728c2ecf20Sopenharmony_ci mediatek,pctl-regmap = <&syscfg_pctl_a>; 2738c2ecf20Sopenharmony_ci pins-are-numbered; 2748c2ecf20Sopenharmony_ci gpio-controller; 2758c2ecf20Sopenharmony_ci #gpio-cells = <2>; 2768c2ecf20Sopenharmony_ci interrupt-controller; 2778c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 2788c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>; 2798c2ecf20Sopenharmony_ci }; 2808c2ecf20Sopenharmony_ci 2818c2ecf20Sopenharmony_ci scpsys: power-controller@10006000 { 2828c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-scpsys", "syscon"; 2838c2ecf20Sopenharmony_ci #power-domain-cells = <1>; 2848c2ecf20Sopenharmony_ci reg = <0 0x10006000 0 0x1000>; 2858c2ecf20Sopenharmony_ci clocks = <&topckgen CLK_TOP_MM_SEL>, 2868c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_MFG_SEL>, 2878c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_VENC_SEL>, 2888c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_JPGDEC_SEL>, 2898c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_A1SYS_HP_SEL>, 2908c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_VDEC_SEL>; 2918c2ecf20Sopenharmony_ci clock-names = "mm", "mfg", "venc", 2928c2ecf20Sopenharmony_ci "jpgdec", "audio", "vdec"; 2938c2ecf20Sopenharmony_ci infracfg = <&infracfg>; 2948c2ecf20Sopenharmony_ci }; 2958c2ecf20Sopenharmony_ci 2968c2ecf20Sopenharmony_ci uart5: serial@1000f000 { 2978c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-uart", 2988c2ecf20Sopenharmony_ci "mediatek,mt6577-uart"; 2998c2ecf20Sopenharmony_ci reg = <0 0x1000f000 0 0x400>; 3008c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_LOW>; 3018c2ecf20Sopenharmony_ci clocks = <&baud_clk>, <&sys_clk>; 3028c2ecf20Sopenharmony_ci clock-names = "baud", "bus"; 3038c2ecf20Sopenharmony_ci dmas = <&apdma 10 3048c2ecf20Sopenharmony_ci &apdma 11>; 3058c2ecf20Sopenharmony_ci dma-names = "tx", "rx"; 3068c2ecf20Sopenharmony_ci status = "disabled"; 3078c2ecf20Sopenharmony_ci }; 3088c2ecf20Sopenharmony_ci 3098c2ecf20Sopenharmony_ci rtc: rtc@10011000 { 3108c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-rtc"; 3118c2ecf20Sopenharmony_ci reg = <0 0x10011000 0 0x1000>; 3128c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 239 IRQ_TYPE_LEVEL_LOW>; 3138c2ecf20Sopenharmony_ci }; 3148c2ecf20Sopenharmony_ci 3158c2ecf20Sopenharmony_ci spis1: spi@10013000 { 3168c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-spi-slave"; 3178c2ecf20Sopenharmony_ci reg = <0 0x10013000 0 0x100>; 3188c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 283 IRQ_TYPE_LEVEL_LOW>; 3198c2ecf20Sopenharmony_ci clocks = <&infracfg CLK_INFRA_AO_SPI1>; 3208c2ecf20Sopenharmony_ci clock-names = "spi"; 3218c2ecf20Sopenharmony_ci assigned-clocks = <&topckgen CLK_TOP_SPISLV_SEL>; 3228c2ecf20Sopenharmony_ci assigned-clock-parents = <&topckgen CLK_TOP_UNIVPLL1_D2>; 3238c2ecf20Sopenharmony_ci status = "disabled"; 3248c2ecf20Sopenharmony_ci }; 3258c2ecf20Sopenharmony_ci 3268c2ecf20Sopenharmony_ci iommu0: iommu@10205000 { 3278c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-m4u"; 3288c2ecf20Sopenharmony_ci reg = <0 0x10205000 0 0x1000>; 3298c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_LOW>; 3308c2ecf20Sopenharmony_ci clocks = <&infracfg CLK_INFRA_M4U>; 3318c2ecf20Sopenharmony_ci clock-names = "bclk"; 3328c2ecf20Sopenharmony_ci mediatek,larbs = <&larb0 &larb1 &larb2 3338c2ecf20Sopenharmony_ci &larb3 &larb6>; 3348c2ecf20Sopenharmony_ci #iommu-cells = <1>; 3358c2ecf20Sopenharmony_ci }; 3368c2ecf20Sopenharmony_ci 3378c2ecf20Sopenharmony_ci apmixedsys: syscon@10209000 { 3388c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-apmixedsys", "syscon"; 3398c2ecf20Sopenharmony_ci reg = <0 0x10209000 0 0x1000>; 3408c2ecf20Sopenharmony_ci #clock-cells = <1>; 3418c2ecf20Sopenharmony_ci }; 3428c2ecf20Sopenharmony_ci 3438c2ecf20Sopenharmony_ci iommu1: iommu@1020a000 { 3448c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-m4u"; 3458c2ecf20Sopenharmony_ci reg = <0 0x1020a000 0 0x1000>; 3468c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 145 IRQ_TYPE_LEVEL_LOW>; 3478c2ecf20Sopenharmony_ci clocks = <&infracfg CLK_INFRA_M4U>; 3488c2ecf20Sopenharmony_ci clock-names = "bclk"; 3498c2ecf20Sopenharmony_ci mediatek,larbs = <&larb4 &larb5 &larb7>; 3508c2ecf20Sopenharmony_ci #iommu-cells = <1>; 3518c2ecf20Sopenharmony_ci }; 3528c2ecf20Sopenharmony_ci 3538c2ecf20Sopenharmony_ci mcucfg: syscon@10220000 { 3548c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-mcucfg", "syscon"; 3558c2ecf20Sopenharmony_ci reg = <0 0x10220000 0 0x1000>; 3568c2ecf20Sopenharmony_ci #clock-cells = <1>; 3578c2ecf20Sopenharmony_ci }; 3588c2ecf20Sopenharmony_ci 3598c2ecf20Sopenharmony_ci sysirq: interrupt-controller@10220a80 { 3608c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-sysirq", 3618c2ecf20Sopenharmony_ci "mediatek,mt6577-sysirq"; 3628c2ecf20Sopenharmony_ci interrupt-controller; 3638c2ecf20Sopenharmony_ci #interrupt-cells = <3>; 3648c2ecf20Sopenharmony_ci interrupt-parent = <&gic>; 3658c2ecf20Sopenharmony_ci reg = <0 0x10220a80 0 0x40>; 3668c2ecf20Sopenharmony_ci }; 3678c2ecf20Sopenharmony_ci 3688c2ecf20Sopenharmony_ci gic: interrupt-controller@10510000 { 3698c2ecf20Sopenharmony_ci compatible = "arm,gic-400"; 3708c2ecf20Sopenharmony_ci #interrupt-cells = <3>; 3718c2ecf20Sopenharmony_ci interrupt-parent = <&gic>; 3728c2ecf20Sopenharmony_ci interrupt-controller; 3738c2ecf20Sopenharmony_ci reg = <0 0x10510000 0 0x10000>, 3748c2ecf20Sopenharmony_ci <0 0x10520000 0 0x20000>, 3758c2ecf20Sopenharmony_ci <0 0x10540000 0 0x20000>, 3768c2ecf20Sopenharmony_ci <0 0x10560000 0 0x20000>; 3778c2ecf20Sopenharmony_ci interrupts = <GIC_PPI 9 3788c2ecf20Sopenharmony_ci (GIC_CPU_MASK_RAW(0x13) | IRQ_TYPE_LEVEL_HIGH)>; 3798c2ecf20Sopenharmony_ci }; 3808c2ecf20Sopenharmony_ci 3818c2ecf20Sopenharmony_ci apdma: dma-controller@11000400 { 3828c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-uart-dma", 3838c2ecf20Sopenharmony_ci "mediatek,mt6577-uart-dma"; 3848c2ecf20Sopenharmony_ci reg = <0 0x11000400 0 0x80>, 3858c2ecf20Sopenharmony_ci <0 0x11000480 0 0x80>, 3868c2ecf20Sopenharmony_ci <0 0x11000500 0 0x80>, 3878c2ecf20Sopenharmony_ci <0 0x11000580 0 0x80>, 3888c2ecf20Sopenharmony_ci <0 0x11000600 0 0x80>, 3898c2ecf20Sopenharmony_ci <0 0x11000680 0 0x80>, 3908c2ecf20Sopenharmony_ci <0 0x11000700 0 0x80>, 3918c2ecf20Sopenharmony_ci <0 0x11000780 0 0x80>, 3928c2ecf20Sopenharmony_ci <0 0x11000800 0 0x80>, 3938c2ecf20Sopenharmony_ci <0 0x11000880 0 0x80>, 3948c2ecf20Sopenharmony_ci <0 0x11000900 0 0x80>, 3958c2ecf20Sopenharmony_ci <0 0x11000980 0 0x80>; 3968c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_LOW>, 3978c2ecf20Sopenharmony_ci <GIC_SPI 104 IRQ_TYPE_LEVEL_LOW>, 3988c2ecf20Sopenharmony_ci <GIC_SPI 105 IRQ_TYPE_LEVEL_LOW>, 3998c2ecf20Sopenharmony_ci <GIC_SPI 106 IRQ_TYPE_LEVEL_LOW>, 4008c2ecf20Sopenharmony_ci <GIC_SPI 107 IRQ_TYPE_LEVEL_LOW>, 4018c2ecf20Sopenharmony_ci <GIC_SPI 108 IRQ_TYPE_LEVEL_LOW>, 4028c2ecf20Sopenharmony_ci <GIC_SPI 109 IRQ_TYPE_LEVEL_LOW>, 4038c2ecf20Sopenharmony_ci <GIC_SPI 110 IRQ_TYPE_LEVEL_LOW>, 4048c2ecf20Sopenharmony_ci <GIC_SPI 111 IRQ_TYPE_LEVEL_LOW>, 4058c2ecf20Sopenharmony_ci <GIC_SPI 112 IRQ_TYPE_LEVEL_LOW>, 4068c2ecf20Sopenharmony_ci <GIC_SPI 113 IRQ_TYPE_LEVEL_LOW>, 4078c2ecf20Sopenharmony_ci <GIC_SPI 114 IRQ_TYPE_LEVEL_LOW>; 4088c2ecf20Sopenharmony_ci dma-requests = <12>; 4098c2ecf20Sopenharmony_ci clocks = <&pericfg CLK_PERI_AP_DMA>; 4108c2ecf20Sopenharmony_ci clock-names = "apdma"; 4118c2ecf20Sopenharmony_ci #dma-cells = <1>; 4128c2ecf20Sopenharmony_ci }; 4138c2ecf20Sopenharmony_ci 4148c2ecf20Sopenharmony_ci auxadc: adc@11001000 { 4158c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-auxadc"; 4168c2ecf20Sopenharmony_ci reg = <0 0x11001000 0 0x1000>; 4178c2ecf20Sopenharmony_ci clocks = <&pericfg CLK_PERI_AUXADC>; 4188c2ecf20Sopenharmony_ci clock-names = "main"; 4198c2ecf20Sopenharmony_ci #io-channel-cells = <1>; 4208c2ecf20Sopenharmony_ci status = "disabled"; 4218c2ecf20Sopenharmony_ci }; 4228c2ecf20Sopenharmony_ci 4238c2ecf20Sopenharmony_ci uart0: serial@11002000 { 4248c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-uart", 4258c2ecf20Sopenharmony_ci "mediatek,mt6577-uart"; 4268c2ecf20Sopenharmony_ci reg = <0 0x11002000 0 0x400>; 4278c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_LOW>; 4288c2ecf20Sopenharmony_ci clocks = <&baud_clk>, <&sys_clk>; 4298c2ecf20Sopenharmony_ci clock-names = "baud", "bus"; 4308c2ecf20Sopenharmony_ci dmas = <&apdma 0 4318c2ecf20Sopenharmony_ci &apdma 1>; 4328c2ecf20Sopenharmony_ci dma-names = "tx", "rx"; 4338c2ecf20Sopenharmony_ci status = "disabled"; 4348c2ecf20Sopenharmony_ci }; 4358c2ecf20Sopenharmony_ci 4368c2ecf20Sopenharmony_ci uart1: serial@11003000 { 4378c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-uart", 4388c2ecf20Sopenharmony_ci "mediatek,mt6577-uart"; 4398c2ecf20Sopenharmony_ci reg = <0 0x11003000 0 0x400>; 4408c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_LOW>; 4418c2ecf20Sopenharmony_ci clocks = <&baud_clk>, <&sys_clk>; 4428c2ecf20Sopenharmony_ci clock-names = "baud", "bus"; 4438c2ecf20Sopenharmony_ci dmas = <&apdma 2 4448c2ecf20Sopenharmony_ci &apdma 3>; 4458c2ecf20Sopenharmony_ci dma-names = "tx", "rx"; 4468c2ecf20Sopenharmony_ci status = "disabled"; 4478c2ecf20Sopenharmony_ci }; 4488c2ecf20Sopenharmony_ci 4498c2ecf20Sopenharmony_ci uart2: serial@11004000 { 4508c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-uart", 4518c2ecf20Sopenharmony_ci "mediatek,mt6577-uart"; 4528c2ecf20Sopenharmony_ci reg = <0 0x11004000 0 0x400>; 4538c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_LOW>; 4548c2ecf20Sopenharmony_ci clocks = <&baud_clk>, <&sys_clk>; 4558c2ecf20Sopenharmony_ci clock-names = "baud", "bus"; 4568c2ecf20Sopenharmony_ci dmas = <&apdma 4 4578c2ecf20Sopenharmony_ci &apdma 5>; 4588c2ecf20Sopenharmony_ci dma-names = "tx", "rx"; 4598c2ecf20Sopenharmony_ci status = "disabled"; 4608c2ecf20Sopenharmony_ci }; 4618c2ecf20Sopenharmony_ci 4628c2ecf20Sopenharmony_ci uart3: serial@11005000 { 4638c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-uart", 4648c2ecf20Sopenharmony_ci "mediatek,mt6577-uart"; 4658c2ecf20Sopenharmony_ci reg = <0 0x11005000 0 0x400>; 4668c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_LOW>; 4678c2ecf20Sopenharmony_ci clocks = <&baud_clk>, <&sys_clk>; 4688c2ecf20Sopenharmony_ci clock-names = "baud", "bus"; 4698c2ecf20Sopenharmony_ci dmas = <&apdma 6 4708c2ecf20Sopenharmony_ci &apdma 7>; 4718c2ecf20Sopenharmony_ci dma-names = "tx", "rx"; 4728c2ecf20Sopenharmony_ci status = "disabled"; 4738c2ecf20Sopenharmony_ci }; 4748c2ecf20Sopenharmony_ci 4758c2ecf20Sopenharmony_ci pwm: pwm@11006000 { 4768c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-pwm"; 4778c2ecf20Sopenharmony_ci reg = <0 0x11006000 0 0x1000>; 4788c2ecf20Sopenharmony_ci #pwm-cells = <2>; 4798c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_LOW>; 4808c2ecf20Sopenharmony_ci clocks = <&topckgen CLK_TOP_PWM_SEL>, 4818c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_PWM>, 4828c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_PWM0>, 4838c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_PWM1>, 4848c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_PWM2>, 4858c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_PWM3>, 4868c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_PWM4>, 4878c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_PWM5>, 4888c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_PWM6>, 4898c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_PWM7>; 4908c2ecf20Sopenharmony_ci clock-names = "top", 4918c2ecf20Sopenharmony_ci "main", 4928c2ecf20Sopenharmony_ci "pwm1", 4938c2ecf20Sopenharmony_ci "pwm2", 4948c2ecf20Sopenharmony_ci "pwm3", 4958c2ecf20Sopenharmony_ci "pwm4", 4968c2ecf20Sopenharmony_ci "pwm5", 4978c2ecf20Sopenharmony_ci "pwm6", 4988c2ecf20Sopenharmony_ci "pwm7", 4998c2ecf20Sopenharmony_ci "pwm8"; 5008c2ecf20Sopenharmony_ci status = "disabled"; 5018c2ecf20Sopenharmony_ci }; 5028c2ecf20Sopenharmony_ci 5038c2ecf20Sopenharmony_ci i2c0: i2c@11007000 { 5048c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-i2c"; 5058c2ecf20Sopenharmony_ci reg = <0 0x11007000 0 0x90>, 5068c2ecf20Sopenharmony_ci <0 0x11000180 0 0x80>; 5078c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_LOW>; 5088c2ecf20Sopenharmony_ci clock-div = <4>; 5098c2ecf20Sopenharmony_ci clocks = <&pericfg CLK_PERI_I2C0>, 5108c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_AP_DMA>; 5118c2ecf20Sopenharmony_ci clock-names = "main", 5128c2ecf20Sopenharmony_ci "dma"; 5138c2ecf20Sopenharmony_ci #address-cells = <1>; 5148c2ecf20Sopenharmony_ci #size-cells = <0>; 5158c2ecf20Sopenharmony_ci status = "disabled"; 5168c2ecf20Sopenharmony_ci }; 5178c2ecf20Sopenharmony_ci 5188c2ecf20Sopenharmony_ci i2c1: i2c@11008000 { 5198c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-i2c"; 5208c2ecf20Sopenharmony_ci reg = <0 0x11008000 0 0x90>, 5218c2ecf20Sopenharmony_ci <0 0x11000200 0 0x80>; 5228c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_LOW>; 5238c2ecf20Sopenharmony_ci clock-div = <4>; 5248c2ecf20Sopenharmony_ci clocks = <&pericfg CLK_PERI_I2C1>, 5258c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_AP_DMA>; 5268c2ecf20Sopenharmony_ci clock-names = "main", 5278c2ecf20Sopenharmony_ci "dma"; 5288c2ecf20Sopenharmony_ci #address-cells = <1>; 5298c2ecf20Sopenharmony_ci #size-cells = <0>; 5308c2ecf20Sopenharmony_ci status = "disabled"; 5318c2ecf20Sopenharmony_ci }; 5328c2ecf20Sopenharmony_ci 5338c2ecf20Sopenharmony_ci i2c2: i2c@11009000 { 5348c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-i2c"; 5358c2ecf20Sopenharmony_ci reg = <0 0x11009000 0 0x90>, 5368c2ecf20Sopenharmony_ci <0 0x11000280 0 0x80>; 5378c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_LOW>; 5388c2ecf20Sopenharmony_ci clock-div = <4>; 5398c2ecf20Sopenharmony_ci clocks = <&pericfg CLK_PERI_I2C2>, 5408c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_AP_DMA>; 5418c2ecf20Sopenharmony_ci clock-names = "main", 5428c2ecf20Sopenharmony_ci "dma"; 5438c2ecf20Sopenharmony_ci #address-cells = <1>; 5448c2ecf20Sopenharmony_ci #size-cells = <0>; 5458c2ecf20Sopenharmony_ci status = "disabled"; 5468c2ecf20Sopenharmony_ci }; 5478c2ecf20Sopenharmony_ci 5488c2ecf20Sopenharmony_ci spi0: spi@1100a000 { 5498c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-spi"; 5508c2ecf20Sopenharmony_ci #address-cells = <1>; 5518c2ecf20Sopenharmony_ci #size-cells = <0>; 5528c2ecf20Sopenharmony_ci reg = <0 0x1100a000 0 0x100>; 5538c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_LOW>; 5548c2ecf20Sopenharmony_ci clocks = <&topckgen CLK_TOP_UNIVPLL2_D4>, 5558c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_SPI_SEL>, 5568c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_SPI0>; 5578c2ecf20Sopenharmony_ci clock-names = "parent-clk", "sel-clk", "spi-clk"; 5588c2ecf20Sopenharmony_ci status = "disabled"; 5598c2ecf20Sopenharmony_ci }; 5608c2ecf20Sopenharmony_ci 5618c2ecf20Sopenharmony_ci nandc: nfi@1100e000 { 5628c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-nfc"; 5638c2ecf20Sopenharmony_ci reg = <0 0x1100e000 0 0x1000>; 5648c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_LOW>; 5658c2ecf20Sopenharmony_ci clocks = <&topckgen CLK_TOP_NFI2X_EN>, <&pericfg CLK_PERI_NFI>; 5668c2ecf20Sopenharmony_ci clock-names = "nfi_clk", "pad_clk"; 5678c2ecf20Sopenharmony_ci ecc-engine = <&bch>; 5688c2ecf20Sopenharmony_ci #address-cells = <1>; 5698c2ecf20Sopenharmony_ci #size-cells = <0>; 5708c2ecf20Sopenharmony_ci status = "disabled"; 5718c2ecf20Sopenharmony_ci }; 5728c2ecf20Sopenharmony_ci 5738c2ecf20Sopenharmony_ci bch: ecc@1100f000 { 5748c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-ecc"; 5758c2ecf20Sopenharmony_ci reg = <0 0x1100f000 0 0x1000>; 5768c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_LOW>; 5778c2ecf20Sopenharmony_ci clocks = <&topckgen CLK_TOP_NFI1X_CK_EN>; 5788c2ecf20Sopenharmony_ci clock-names = "nfiecc_clk"; 5798c2ecf20Sopenharmony_ci status = "disabled"; 5808c2ecf20Sopenharmony_ci }; 5818c2ecf20Sopenharmony_ci 5828c2ecf20Sopenharmony_ci i2c3: i2c@11010000 { 5838c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-i2c"; 5848c2ecf20Sopenharmony_ci reg = <0 0x11010000 0 0x90>, 5858c2ecf20Sopenharmony_ci <0 0x11000300 0 0x80>; 5868c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_LOW>; 5878c2ecf20Sopenharmony_ci clock-div = <4>; 5888c2ecf20Sopenharmony_ci clocks = <&pericfg CLK_PERI_I2C3>, 5898c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_AP_DMA>; 5908c2ecf20Sopenharmony_ci clock-names = "main", 5918c2ecf20Sopenharmony_ci "dma"; 5928c2ecf20Sopenharmony_ci #address-cells = <1>; 5938c2ecf20Sopenharmony_ci #size-cells = <0>; 5948c2ecf20Sopenharmony_ci status = "disabled"; 5958c2ecf20Sopenharmony_ci }; 5968c2ecf20Sopenharmony_ci 5978c2ecf20Sopenharmony_ci i2c4: i2c@11011000 { 5988c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-i2c"; 5998c2ecf20Sopenharmony_ci reg = <0 0x11011000 0 0x90>, 6008c2ecf20Sopenharmony_ci <0 0x11000380 0 0x80>; 6018c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_LOW>; 6028c2ecf20Sopenharmony_ci clock-div = <4>; 6038c2ecf20Sopenharmony_ci clocks = <&pericfg CLK_PERI_I2C4>, 6048c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_AP_DMA>; 6058c2ecf20Sopenharmony_ci clock-names = "main", 6068c2ecf20Sopenharmony_ci "dma"; 6078c2ecf20Sopenharmony_ci #address-cells = <1>; 6088c2ecf20Sopenharmony_ci #size-cells = <0>; 6098c2ecf20Sopenharmony_ci status = "disabled"; 6108c2ecf20Sopenharmony_ci }; 6118c2ecf20Sopenharmony_ci 6128c2ecf20Sopenharmony_ci i2c5: i2c@11013000 { 6138c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-i2c"; 6148c2ecf20Sopenharmony_ci reg = <0 0x11013000 0 0x90>, 6158c2ecf20Sopenharmony_ci <0 0x11000100 0 0x80>; 6168c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_LOW>; 6178c2ecf20Sopenharmony_ci clock-div = <4>; 6188c2ecf20Sopenharmony_ci clocks = <&pericfg CLK_PERI_I2C5>, 6198c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_AP_DMA>; 6208c2ecf20Sopenharmony_ci clock-names = "main", 6218c2ecf20Sopenharmony_ci "dma"; 6228c2ecf20Sopenharmony_ci #address-cells = <1>; 6238c2ecf20Sopenharmony_ci #size-cells = <0>; 6248c2ecf20Sopenharmony_ci status = "disabled"; 6258c2ecf20Sopenharmony_ci }; 6268c2ecf20Sopenharmony_ci 6278c2ecf20Sopenharmony_ci spi2: spi@11015000 { 6288c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-spi"; 6298c2ecf20Sopenharmony_ci #address-cells = <1>; 6308c2ecf20Sopenharmony_ci #size-cells = <0>; 6318c2ecf20Sopenharmony_ci reg = <0 0x11015000 0 0x100>; 6328c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 284 IRQ_TYPE_LEVEL_LOW>; 6338c2ecf20Sopenharmony_ci clocks = <&topckgen CLK_TOP_UNIVPLL2_D4>, 6348c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_SPI_SEL>, 6358c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_SPI2>; 6368c2ecf20Sopenharmony_ci clock-names = "parent-clk", "sel-clk", "spi-clk"; 6378c2ecf20Sopenharmony_ci status = "disabled"; 6388c2ecf20Sopenharmony_ci }; 6398c2ecf20Sopenharmony_ci 6408c2ecf20Sopenharmony_ci spi3: spi@11016000 { 6418c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-spi"; 6428c2ecf20Sopenharmony_ci #address-cells = <1>; 6438c2ecf20Sopenharmony_ci #size-cells = <0>; 6448c2ecf20Sopenharmony_ci reg = <0 0x11016000 0 0x100>; 6458c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 285 IRQ_TYPE_LEVEL_LOW>; 6468c2ecf20Sopenharmony_ci clocks = <&topckgen CLK_TOP_UNIVPLL2_D4>, 6478c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_SPI_SEL>, 6488c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_SPI3>; 6498c2ecf20Sopenharmony_ci clock-names = "parent-clk", "sel-clk", "spi-clk"; 6508c2ecf20Sopenharmony_ci status = "disabled"; 6518c2ecf20Sopenharmony_ci }; 6528c2ecf20Sopenharmony_ci 6538c2ecf20Sopenharmony_ci spi4: spi@10012000 { 6548c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-spi"; 6558c2ecf20Sopenharmony_ci #address-cells = <1>; 6568c2ecf20Sopenharmony_ci #size-cells = <0>; 6578c2ecf20Sopenharmony_ci reg = <0 0x10012000 0 0x100>; 6588c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 286 IRQ_TYPE_LEVEL_LOW>; 6598c2ecf20Sopenharmony_ci clocks = <&topckgen CLK_TOP_UNIVPLL2_D4>, 6608c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_SPI_SEL>, 6618c2ecf20Sopenharmony_ci <&infracfg CLK_INFRA_AO_SPI0>; 6628c2ecf20Sopenharmony_ci clock-names = "parent-clk", "sel-clk", "spi-clk"; 6638c2ecf20Sopenharmony_ci status = "disabled"; 6648c2ecf20Sopenharmony_ci }; 6658c2ecf20Sopenharmony_ci 6668c2ecf20Sopenharmony_ci spi5: spi@11018000 { 6678c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-spi"; 6688c2ecf20Sopenharmony_ci #address-cells = <1>; 6698c2ecf20Sopenharmony_ci #size-cells = <0>; 6708c2ecf20Sopenharmony_ci reg = <0 0x11018000 0 0x100>; 6718c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 287 IRQ_TYPE_LEVEL_LOW>; 6728c2ecf20Sopenharmony_ci clocks = <&topckgen CLK_TOP_UNIVPLL2_D4>, 6738c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_SPI_SEL>, 6748c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_SPI5>; 6758c2ecf20Sopenharmony_ci clock-names = "parent-clk", "sel-clk", "spi-clk"; 6768c2ecf20Sopenharmony_ci status = "disabled"; 6778c2ecf20Sopenharmony_ci }; 6788c2ecf20Sopenharmony_ci 6798c2ecf20Sopenharmony_ci uart4: serial@11019000 { 6808c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-uart", 6818c2ecf20Sopenharmony_ci "mediatek,mt6577-uart"; 6828c2ecf20Sopenharmony_ci reg = <0 0x11019000 0 0x400>; 6838c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_LOW>; 6848c2ecf20Sopenharmony_ci clocks = <&baud_clk>, <&sys_clk>; 6858c2ecf20Sopenharmony_ci clock-names = "baud", "bus"; 6868c2ecf20Sopenharmony_ci dmas = <&apdma 8 6878c2ecf20Sopenharmony_ci &apdma 9>; 6888c2ecf20Sopenharmony_ci dma-names = "tx", "rx"; 6898c2ecf20Sopenharmony_ci status = "disabled"; 6908c2ecf20Sopenharmony_ci }; 6918c2ecf20Sopenharmony_ci 6928c2ecf20Sopenharmony_ci stmmac_axi_setup: stmmac-axi-config { 6938c2ecf20Sopenharmony_ci snps,wr_osr_lmt = <0x7>; 6948c2ecf20Sopenharmony_ci snps,rd_osr_lmt = <0x7>; 6958c2ecf20Sopenharmony_ci snps,blen = <0 0 0 0 16 8 4>; 6968c2ecf20Sopenharmony_ci }; 6978c2ecf20Sopenharmony_ci 6988c2ecf20Sopenharmony_ci mtl_rx_setup: rx-queues-config { 6998c2ecf20Sopenharmony_ci snps,rx-queues-to-use = <1>; 7008c2ecf20Sopenharmony_ci snps,rx-sched-sp; 7018c2ecf20Sopenharmony_ci queue0 { 7028c2ecf20Sopenharmony_ci snps,dcb-algorithm; 7038c2ecf20Sopenharmony_ci snps,map-to-dma-channel = <0x0>; 7048c2ecf20Sopenharmony_ci snps,priority = <0x0>; 7058c2ecf20Sopenharmony_ci }; 7068c2ecf20Sopenharmony_ci }; 7078c2ecf20Sopenharmony_ci 7088c2ecf20Sopenharmony_ci mtl_tx_setup: tx-queues-config { 7098c2ecf20Sopenharmony_ci snps,tx-queues-to-use = <3>; 7108c2ecf20Sopenharmony_ci snps,tx-sched-wrr; 7118c2ecf20Sopenharmony_ci queue0 { 7128c2ecf20Sopenharmony_ci snps,weight = <0x10>; 7138c2ecf20Sopenharmony_ci snps,dcb-algorithm; 7148c2ecf20Sopenharmony_ci snps,priority = <0x0>; 7158c2ecf20Sopenharmony_ci }; 7168c2ecf20Sopenharmony_ci queue1 { 7178c2ecf20Sopenharmony_ci snps,weight = <0x11>; 7188c2ecf20Sopenharmony_ci snps,dcb-algorithm; 7198c2ecf20Sopenharmony_ci snps,priority = <0x1>; 7208c2ecf20Sopenharmony_ci }; 7218c2ecf20Sopenharmony_ci queue2 { 7228c2ecf20Sopenharmony_ci snps,weight = <0x12>; 7238c2ecf20Sopenharmony_ci snps,dcb-algorithm; 7248c2ecf20Sopenharmony_ci snps,priority = <0x2>; 7258c2ecf20Sopenharmony_ci }; 7268c2ecf20Sopenharmony_ci }; 7278c2ecf20Sopenharmony_ci 7288c2ecf20Sopenharmony_ci eth: ethernet@1101c000 { 7298c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-gmac"; 7308c2ecf20Sopenharmony_ci reg = <0 0x1101c000 0 0x1300>; 7318c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 237 IRQ_TYPE_LEVEL_LOW>; 7328c2ecf20Sopenharmony_ci interrupt-names = "macirq"; 7338c2ecf20Sopenharmony_ci mac-address = [00 55 7b b5 7d f7]; 7348c2ecf20Sopenharmony_ci clock-names = "axi", 7358c2ecf20Sopenharmony_ci "apb", 7368c2ecf20Sopenharmony_ci "mac_main", 7378c2ecf20Sopenharmony_ci "ptp_ref"; 7388c2ecf20Sopenharmony_ci clocks = <&pericfg CLK_PERI_GMAC>, 7398c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_GMAC_PCLK>, 7408c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_ETHER_125M_SEL>, 7418c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_ETHER_50M_SEL>; 7428c2ecf20Sopenharmony_ci assigned-clocks = <&topckgen CLK_TOP_ETHER_125M_SEL>, 7438c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_ETHER_50M_SEL>; 7448c2ecf20Sopenharmony_ci assigned-clock-parents = <&topckgen CLK_TOP_ETHERPLL_125M>, 7458c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_APLL1_D3>; 7468c2ecf20Sopenharmony_ci power-domains = <&scpsys MT2712_POWER_DOMAIN_AUDIO>; 7478c2ecf20Sopenharmony_ci mediatek,pericfg = <&pericfg>; 7488c2ecf20Sopenharmony_ci snps,axi-config = <&stmmac_axi_setup>; 7498c2ecf20Sopenharmony_ci snps,mtl-rx-config = <&mtl_rx_setup>; 7508c2ecf20Sopenharmony_ci snps,mtl-tx-config = <&mtl_tx_setup>; 7518c2ecf20Sopenharmony_ci snps,txpbl = <1>; 7528c2ecf20Sopenharmony_ci snps,rxpbl = <1>; 7538c2ecf20Sopenharmony_ci clk_csr = <0>; 7548c2ecf20Sopenharmony_ci status = "disabled"; 7558c2ecf20Sopenharmony_ci }; 7568c2ecf20Sopenharmony_ci 7578c2ecf20Sopenharmony_ci mmc0: mmc@11230000 { 7588c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-mmc"; 7598c2ecf20Sopenharmony_ci reg = <0 0x11230000 0 0x1000>; 7608c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_LOW>; 7618c2ecf20Sopenharmony_ci clocks = <&pericfg CLK_PERI_MSDC30_0>, 7628c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_MSDC50_0_HCLK_EN>, 7638c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_MSDC30_0_QTR_EN>, 7648c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_MSDC50_0_EN>; 7658c2ecf20Sopenharmony_ci clock-names = "source", "hclk", "bus_clk", "source_cg"; 7668c2ecf20Sopenharmony_ci status = "disabled"; 7678c2ecf20Sopenharmony_ci }; 7688c2ecf20Sopenharmony_ci 7698c2ecf20Sopenharmony_ci mmc1: mmc@11240000 { 7708c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-mmc"; 7718c2ecf20Sopenharmony_ci reg = <0 0x11240000 0 0x1000>; 7728c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_LOW>; 7738c2ecf20Sopenharmony_ci clocks = <&pericfg CLK_PERI_MSDC30_1>, 7748c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_AXI_SEL>, 7758c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_MSDC30_1_EN>; 7768c2ecf20Sopenharmony_ci clock-names = "source", "hclk", "source_cg"; 7778c2ecf20Sopenharmony_ci status = "disabled"; 7788c2ecf20Sopenharmony_ci }; 7798c2ecf20Sopenharmony_ci 7808c2ecf20Sopenharmony_ci mmc2: mmc@11250000 { 7818c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-mmc"; 7828c2ecf20Sopenharmony_ci reg = <0 0x11250000 0 0x1000>; 7838c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_LOW>; 7848c2ecf20Sopenharmony_ci clocks = <&pericfg CLK_PERI_MSDC30_2>, 7858c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_AXI_SEL>, 7868c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_MSDC30_2_EN>; 7878c2ecf20Sopenharmony_ci clock-names = "source", "hclk", "source_cg"; 7888c2ecf20Sopenharmony_ci status = "disabled"; 7898c2ecf20Sopenharmony_ci }; 7908c2ecf20Sopenharmony_ci 7918c2ecf20Sopenharmony_ci ssusb: usb@11271000 { 7928c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-mtu3", "mediatek,mtu3"; 7938c2ecf20Sopenharmony_ci reg = <0 0x11271000 0 0x3000>, 7948c2ecf20Sopenharmony_ci <0 0x11280700 0 0x0100>; 7958c2ecf20Sopenharmony_ci reg-names = "mac", "ippc"; 7968c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_LOW>; 7978c2ecf20Sopenharmony_ci phys = <&u2port0 PHY_TYPE_USB2>, 7988c2ecf20Sopenharmony_ci <&u2port1 PHY_TYPE_USB2>; 7998c2ecf20Sopenharmony_ci power-domains = <&scpsys MT2712_POWER_DOMAIN_USB>; 8008c2ecf20Sopenharmony_ci clocks = <&topckgen CLK_TOP_USB30_SEL>; 8018c2ecf20Sopenharmony_ci clock-names = "sys_ck"; 8028c2ecf20Sopenharmony_ci mediatek,syscon-wakeup = <&pericfg 0x510 2>; 8038c2ecf20Sopenharmony_ci #address-cells = <2>; 8048c2ecf20Sopenharmony_ci #size-cells = <2>; 8058c2ecf20Sopenharmony_ci ranges; 8068c2ecf20Sopenharmony_ci status = "disabled"; 8078c2ecf20Sopenharmony_ci 8088c2ecf20Sopenharmony_ci usb_host0: xhci@11270000 { 8098c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-xhci", 8108c2ecf20Sopenharmony_ci "mediatek,mtk-xhci"; 8118c2ecf20Sopenharmony_ci reg = <0 0x11270000 0 0x1000>; 8128c2ecf20Sopenharmony_ci reg-names = "mac"; 8138c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_LOW>; 8148c2ecf20Sopenharmony_ci power-domains = <&scpsys MT2712_POWER_DOMAIN_USB>; 8158c2ecf20Sopenharmony_ci clocks = <&topckgen CLK_TOP_USB30_SEL>, <&clk26m>; 8168c2ecf20Sopenharmony_ci clock-names = "sys_ck", "ref_ck"; 8178c2ecf20Sopenharmony_ci status = "disabled"; 8188c2ecf20Sopenharmony_ci }; 8198c2ecf20Sopenharmony_ci }; 8208c2ecf20Sopenharmony_ci 8218c2ecf20Sopenharmony_ci u3phy0: usb-phy@11290000 { 8228c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-tphy", 8238c2ecf20Sopenharmony_ci "mediatek,generic-tphy-v2"; 8248c2ecf20Sopenharmony_ci #address-cells = <1>; 8258c2ecf20Sopenharmony_ci #size-cells = <1>; 8268c2ecf20Sopenharmony_ci ranges = <0 0 0x11290000 0x9000>; 8278c2ecf20Sopenharmony_ci status = "okay"; 8288c2ecf20Sopenharmony_ci 8298c2ecf20Sopenharmony_ci u2port0: usb-phy@0 { 8308c2ecf20Sopenharmony_ci reg = <0x0 0x700>; 8318c2ecf20Sopenharmony_ci clocks = <&clk26m>; 8328c2ecf20Sopenharmony_ci clock-names = "ref"; 8338c2ecf20Sopenharmony_ci #phy-cells = <1>; 8348c2ecf20Sopenharmony_ci status = "okay"; 8358c2ecf20Sopenharmony_ci }; 8368c2ecf20Sopenharmony_ci 8378c2ecf20Sopenharmony_ci u2port1: usb-phy@8000 { 8388c2ecf20Sopenharmony_ci reg = <0x8000 0x700>; 8398c2ecf20Sopenharmony_ci clocks = <&clk26m>; 8408c2ecf20Sopenharmony_ci clock-names = "ref"; 8418c2ecf20Sopenharmony_ci #phy-cells = <1>; 8428c2ecf20Sopenharmony_ci status = "okay"; 8438c2ecf20Sopenharmony_ci }; 8448c2ecf20Sopenharmony_ci 8458c2ecf20Sopenharmony_ci u3port0: usb-phy@8700 { 8468c2ecf20Sopenharmony_ci reg = <0x8700 0x900>; 8478c2ecf20Sopenharmony_ci clocks = <&clk26m>; 8488c2ecf20Sopenharmony_ci clock-names = "ref"; 8498c2ecf20Sopenharmony_ci #phy-cells = <1>; 8508c2ecf20Sopenharmony_ci status = "okay"; 8518c2ecf20Sopenharmony_ci }; 8528c2ecf20Sopenharmony_ci }; 8538c2ecf20Sopenharmony_ci 8548c2ecf20Sopenharmony_ci ssusb1: usb@112c1000 { 8558c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-mtu3", "mediatek,mtu3"; 8568c2ecf20Sopenharmony_ci reg = <0 0x112c1000 0 0x3000>, 8578c2ecf20Sopenharmony_ci <0 0x112d0700 0 0x0100>; 8588c2ecf20Sopenharmony_ci reg-names = "mac", "ippc"; 8598c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 248 IRQ_TYPE_LEVEL_LOW>; 8608c2ecf20Sopenharmony_ci phys = <&u2port2 PHY_TYPE_USB2>, 8618c2ecf20Sopenharmony_ci <&u2port3 PHY_TYPE_USB2>, 8628c2ecf20Sopenharmony_ci <&u3port1 PHY_TYPE_USB3>; 8638c2ecf20Sopenharmony_ci power-domains = <&scpsys MT2712_POWER_DOMAIN_USB2>; 8648c2ecf20Sopenharmony_ci clocks = <&topckgen CLK_TOP_USB30_SEL>; 8658c2ecf20Sopenharmony_ci clock-names = "sys_ck"; 8668c2ecf20Sopenharmony_ci mediatek,syscon-wakeup = <&pericfg 0x514 2>; 8678c2ecf20Sopenharmony_ci #address-cells = <2>; 8688c2ecf20Sopenharmony_ci #size-cells = <2>; 8698c2ecf20Sopenharmony_ci ranges; 8708c2ecf20Sopenharmony_ci status = "disabled"; 8718c2ecf20Sopenharmony_ci 8728c2ecf20Sopenharmony_ci usb_host1: xhci@112c0000 { 8738c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-xhci", 8748c2ecf20Sopenharmony_ci "mediatek,mtk-xhci"; 8758c2ecf20Sopenharmony_ci reg = <0 0x112c0000 0 0x1000>; 8768c2ecf20Sopenharmony_ci reg-names = "mac"; 8778c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 249 IRQ_TYPE_LEVEL_LOW>; 8788c2ecf20Sopenharmony_ci power-domains = <&scpsys MT2712_POWER_DOMAIN_USB2>; 8798c2ecf20Sopenharmony_ci clocks = <&topckgen CLK_TOP_USB30_SEL>, <&clk26m>; 8808c2ecf20Sopenharmony_ci clock-names = "sys_ck", "ref_ck"; 8818c2ecf20Sopenharmony_ci status = "disabled"; 8828c2ecf20Sopenharmony_ci }; 8838c2ecf20Sopenharmony_ci }; 8848c2ecf20Sopenharmony_ci 8858c2ecf20Sopenharmony_ci u3phy1: usb-phy@112e0000 { 8868c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-tphy", 8878c2ecf20Sopenharmony_ci "mediatek,generic-tphy-v2"; 8888c2ecf20Sopenharmony_ci #address-cells = <1>; 8898c2ecf20Sopenharmony_ci #size-cells = <1>; 8908c2ecf20Sopenharmony_ci ranges = <0 0 0x112e0000 0x9000>; 8918c2ecf20Sopenharmony_ci status = "okay"; 8928c2ecf20Sopenharmony_ci 8938c2ecf20Sopenharmony_ci u2port2: usb-phy@0 { 8948c2ecf20Sopenharmony_ci reg = <0x0 0x700>; 8958c2ecf20Sopenharmony_ci clocks = <&clk26m>; 8968c2ecf20Sopenharmony_ci clock-names = "ref"; 8978c2ecf20Sopenharmony_ci #phy-cells = <1>; 8988c2ecf20Sopenharmony_ci status = "okay"; 8998c2ecf20Sopenharmony_ci }; 9008c2ecf20Sopenharmony_ci 9018c2ecf20Sopenharmony_ci u2port3: usb-phy@8000 { 9028c2ecf20Sopenharmony_ci reg = <0x8000 0x700>; 9038c2ecf20Sopenharmony_ci clocks = <&clk26m>; 9048c2ecf20Sopenharmony_ci clock-names = "ref"; 9058c2ecf20Sopenharmony_ci #phy-cells = <1>; 9068c2ecf20Sopenharmony_ci status = "okay"; 9078c2ecf20Sopenharmony_ci }; 9088c2ecf20Sopenharmony_ci 9098c2ecf20Sopenharmony_ci u3port1: usb-phy@8700 { 9108c2ecf20Sopenharmony_ci reg = <0x8700 0x900>; 9118c2ecf20Sopenharmony_ci clocks = <&clk26m>; 9128c2ecf20Sopenharmony_ci clock-names = "ref"; 9138c2ecf20Sopenharmony_ci #phy-cells = <1>; 9148c2ecf20Sopenharmony_ci status = "okay"; 9158c2ecf20Sopenharmony_ci }; 9168c2ecf20Sopenharmony_ci }; 9178c2ecf20Sopenharmony_ci 9188c2ecf20Sopenharmony_ci pcie: pcie@11700000 { 9198c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-pcie"; 9208c2ecf20Sopenharmony_ci device_type = "pci"; 9218c2ecf20Sopenharmony_ci reg = <0 0x11700000 0 0x1000>, 9228c2ecf20Sopenharmony_ci <0 0x112ff000 0 0x1000>; 9238c2ecf20Sopenharmony_ci reg-names = "port0", "port1"; 9248c2ecf20Sopenharmony_ci #address-cells = <3>; 9258c2ecf20Sopenharmony_ci #size-cells = <2>; 9268c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>, 9278c2ecf20Sopenharmony_ci <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>; 9288c2ecf20Sopenharmony_ci clocks = <&topckgen CLK_TOP_PE2_MAC_P0_SEL>, 9298c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_PE2_MAC_P1_SEL>, 9308c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_PCIE0>, 9318c2ecf20Sopenharmony_ci <&pericfg CLK_PERI_PCIE1>; 9328c2ecf20Sopenharmony_ci clock-names = "sys_ck0", "sys_ck1", "ahb_ck0", "ahb_ck1"; 9338c2ecf20Sopenharmony_ci phys = <&u3port0 PHY_TYPE_PCIE>, <&u3port1 PHY_TYPE_PCIE>; 9348c2ecf20Sopenharmony_ci phy-names = "pcie-phy0", "pcie-phy1"; 9358c2ecf20Sopenharmony_ci bus-range = <0x00 0xff>; 9368c2ecf20Sopenharmony_ci ranges = <0x82000000 0 0x20000000 0x0 0x20000000 0 0x10000000>; 9378c2ecf20Sopenharmony_ci 9388c2ecf20Sopenharmony_ci pcie0: pcie@0,0 { 9398c2ecf20Sopenharmony_ci device_type = "pci"; 9408c2ecf20Sopenharmony_ci status = "disabled"; 9418c2ecf20Sopenharmony_ci reg = <0x0000 0 0 0 0>; 9428c2ecf20Sopenharmony_ci #address-cells = <3>; 9438c2ecf20Sopenharmony_ci #size-cells = <2>; 9448c2ecf20Sopenharmony_ci #interrupt-cells = <1>; 9458c2ecf20Sopenharmony_ci ranges; 9468c2ecf20Sopenharmony_ci interrupt-map-mask = <0 0 0 7>; 9478c2ecf20Sopenharmony_ci interrupt-map = <0 0 0 1 &pcie_intc0 0>, 9488c2ecf20Sopenharmony_ci <0 0 0 2 &pcie_intc0 1>, 9498c2ecf20Sopenharmony_ci <0 0 0 3 &pcie_intc0 2>, 9508c2ecf20Sopenharmony_ci <0 0 0 4 &pcie_intc0 3>; 9518c2ecf20Sopenharmony_ci pcie_intc0: interrupt-controller { 9528c2ecf20Sopenharmony_ci interrupt-controller; 9538c2ecf20Sopenharmony_ci #address-cells = <0>; 9548c2ecf20Sopenharmony_ci #interrupt-cells = <1>; 9558c2ecf20Sopenharmony_ci }; 9568c2ecf20Sopenharmony_ci }; 9578c2ecf20Sopenharmony_ci 9588c2ecf20Sopenharmony_ci pcie1: pcie@1,0 { 9598c2ecf20Sopenharmony_ci device_type = "pci"; 9608c2ecf20Sopenharmony_ci status = "disabled"; 9618c2ecf20Sopenharmony_ci reg = <0x0800 0 0 0 0>; 9628c2ecf20Sopenharmony_ci #address-cells = <3>; 9638c2ecf20Sopenharmony_ci #size-cells = <2>; 9648c2ecf20Sopenharmony_ci #interrupt-cells = <1>; 9658c2ecf20Sopenharmony_ci ranges; 9668c2ecf20Sopenharmony_ci interrupt-map-mask = <0 0 0 7>; 9678c2ecf20Sopenharmony_ci interrupt-map = <0 0 0 1 &pcie_intc1 0>, 9688c2ecf20Sopenharmony_ci <0 0 0 2 &pcie_intc1 1>, 9698c2ecf20Sopenharmony_ci <0 0 0 3 &pcie_intc1 2>, 9708c2ecf20Sopenharmony_ci <0 0 0 4 &pcie_intc1 3>; 9718c2ecf20Sopenharmony_ci pcie_intc1: interrupt-controller { 9728c2ecf20Sopenharmony_ci interrupt-controller; 9738c2ecf20Sopenharmony_ci #address-cells = <0>; 9748c2ecf20Sopenharmony_ci #interrupt-cells = <1>; 9758c2ecf20Sopenharmony_ci }; 9768c2ecf20Sopenharmony_ci }; 9778c2ecf20Sopenharmony_ci }; 9788c2ecf20Sopenharmony_ci 9798c2ecf20Sopenharmony_ci mfgcfg: syscon@13000000 { 9808c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-mfgcfg", "syscon"; 9818c2ecf20Sopenharmony_ci reg = <0 0x13000000 0 0x1000>; 9828c2ecf20Sopenharmony_ci #clock-cells = <1>; 9838c2ecf20Sopenharmony_ci }; 9848c2ecf20Sopenharmony_ci 9858c2ecf20Sopenharmony_ci mmsys: syscon@14000000 { 9868c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-mmsys", "syscon"; 9878c2ecf20Sopenharmony_ci reg = <0 0x14000000 0 0x1000>; 9888c2ecf20Sopenharmony_ci #clock-cells = <1>; 9898c2ecf20Sopenharmony_ci }; 9908c2ecf20Sopenharmony_ci 9918c2ecf20Sopenharmony_ci larb0: larb@14021000 { 9928c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-smi-larb"; 9938c2ecf20Sopenharmony_ci reg = <0 0x14021000 0 0x1000>; 9948c2ecf20Sopenharmony_ci mediatek,smi = <&smi_common0>; 9958c2ecf20Sopenharmony_ci mediatek,larb-id = <0>; 9968c2ecf20Sopenharmony_ci power-domains = <&scpsys MT2712_POWER_DOMAIN_MM>; 9978c2ecf20Sopenharmony_ci clocks = <&mmsys CLK_MM_SMI_LARB0>, 9988c2ecf20Sopenharmony_ci <&mmsys CLK_MM_SMI_LARB0>; 9998c2ecf20Sopenharmony_ci clock-names = "apb", "smi"; 10008c2ecf20Sopenharmony_ci }; 10018c2ecf20Sopenharmony_ci 10028c2ecf20Sopenharmony_ci smi_common0: smi@14022000 { 10038c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-smi-common"; 10048c2ecf20Sopenharmony_ci reg = <0 0x14022000 0 0x1000>; 10058c2ecf20Sopenharmony_ci power-domains = <&scpsys MT2712_POWER_DOMAIN_MM>; 10068c2ecf20Sopenharmony_ci clocks = <&mmsys CLK_MM_SMI_COMMON>, 10078c2ecf20Sopenharmony_ci <&mmsys CLK_MM_SMI_COMMON>; 10088c2ecf20Sopenharmony_ci clock-names = "apb", "smi"; 10098c2ecf20Sopenharmony_ci }; 10108c2ecf20Sopenharmony_ci 10118c2ecf20Sopenharmony_ci larb4: larb@14027000 { 10128c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-smi-larb"; 10138c2ecf20Sopenharmony_ci reg = <0 0x14027000 0 0x1000>; 10148c2ecf20Sopenharmony_ci mediatek,smi = <&smi_common1>; 10158c2ecf20Sopenharmony_ci mediatek,larb-id = <4>; 10168c2ecf20Sopenharmony_ci power-domains = <&scpsys MT2712_POWER_DOMAIN_MM>; 10178c2ecf20Sopenharmony_ci clocks = <&mmsys CLK_MM_SMI_LARB4>, 10188c2ecf20Sopenharmony_ci <&mmsys CLK_MM_SMI_LARB4>; 10198c2ecf20Sopenharmony_ci clock-names = "apb", "smi"; 10208c2ecf20Sopenharmony_ci }; 10218c2ecf20Sopenharmony_ci 10228c2ecf20Sopenharmony_ci larb5: larb@14030000 { 10238c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-smi-larb"; 10248c2ecf20Sopenharmony_ci reg = <0 0x14030000 0 0x1000>; 10258c2ecf20Sopenharmony_ci mediatek,smi = <&smi_common1>; 10268c2ecf20Sopenharmony_ci mediatek,larb-id = <5>; 10278c2ecf20Sopenharmony_ci power-domains = <&scpsys MT2712_POWER_DOMAIN_MM>; 10288c2ecf20Sopenharmony_ci clocks = <&mmsys CLK_MM_SMI_LARB5>, 10298c2ecf20Sopenharmony_ci <&mmsys CLK_MM_SMI_LARB5>; 10308c2ecf20Sopenharmony_ci clock-names = "apb", "smi"; 10318c2ecf20Sopenharmony_ci }; 10328c2ecf20Sopenharmony_ci 10338c2ecf20Sopenharmony_ci smi_common1: smi@14031000 { 10348c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-smi-common"; 10358c2ecf20Sopenharmony_ci reg = <0 0x14031000 0 0x1000>; 10368c2ecf20Sopenharmony_ci power-domains = <&scpsys MT2712_POWER_DOMAIN_MM>; 10378c2ecf20Sopenharmony_ci clocks = <&mmsys CLK_MM_SMI_COMMON1>, 10388c2ecf20Sopenharmony_ci <&mmsys CLK_MM_SMI_COMMON1>; 10398c2ecf20Sopenharmony_ci clock-names = "apb", "smi"; 10408c2ecf20Sopenharmony_ci }; 10418c2ecf20Sopenharmony_ci 10428c2ecf20Sopenharmony_ci larb7: larb@14032000 { 10438c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-smi-larb"; 10448c2ecf20Sopenharmony_ci reg = <0 0x14032000 0 0x1000>; 10458c2ecf20Sopenharmony_ci mediatek,smi = <&smi_common1>; 10468c2ecf20Sopenharmony_ci mediatek,larb-id = <7>; 10478c2ecf20Sopenharmony_ci power-domains = <&scpsys MT2712_POWER_DOMAIN_MM>; 10488c2ecf20Sopenharmony_ci clocks = <&mmsys CLK_MM_SMI_LARB7>, 10498c2ecf20Sopenharmony_ci <&mmsys CLK_MM_SMI_LARB7>; 10508c2ecf20Sopenharmony_ci clock-names = "apb", "smi"; 10518c2ecf20Sopenharmony_ci }; 10528c2ecf20Sopenharmony_ci 10538c2ecf20Sopenharmony_ci imgsys: syscon@15000000 { 10548c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-imgsys", "syscon"; 10558c2ecf20Sopenharmony_ci reg = <0 0x15000000 0 0x1000>; 10568c2ecf20Sopenharmony_ci #clock-cells = <1>; 10578c2ecf20Sopenharmony_ci }; 10588c2ecf20Sopenharmony_ci 10598c2ecf20Sopenharmony_ci larb2: larb@15001000 { 10608c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-smi-larb"; 10618c2ecf20Sopenharmony_ci reg = <0 0x15001000 0 0x1000>; 10628c2ecf20Sopenharmony_ci mediatek,smi = <&smi_common0>; 10638c2ecf20Sopenharmony_ci mediatek,larb-id = <2>; 10648c2ecf20Sopenharmony_ci power-domains = <&scpsys MT2712_POWER_DOMAIN_ISP>; 10658c2ecf20Sopenharmony_ci clocks = <&imgsys CLK_IMG_SMI_LARB2>, 10668c2ecf20Sopenharmony_ci <&imgsys CLK_IMG_SMI_LARB2>; 10678c2ecf20Sopenharmony_ci clock-names = "apb", "smi"; 10688c2ecf20Sopenharmony_ci }; 10698c2ecf20Sopenharmony_ci 10708c2ecf20Sopenharmony_ci bdpsys: syscon@15010000 { 10718c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-bdpsys", "syscon"; 10728c2ecf20Sopenharmony_ci reg = <0 0x15010000 0 0x1000>; 10738c2ecf20Sopenharmony_ci #clock-cells = <1>; 10748c2ecf20Sopenharmony_ci }; 10758c2ecf20Sopenharmony_ci 10768c2ecf20Sopenharmony_ci vdecsys: syscon@16000000 { 10778c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-vdecsys", "syscon"; 10788c2ecf20Sopenharmony_ci reg = <0 0x16000000 0 0x1000>; 10798c2ecf20Sopenharmony_ci #clock-cells = <1>; 10808c2ecf20Sopenharmony_ci }; 10818c2ecf20Sopenharmony_ci 10828c2ecf20Sopenharmony_ci larb1: larb@16010000 { 10838c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-smi-larb"; 10848c2ecf20Sopenharmony_ci reg = <0 0x16010000 0 0x1000>; 10858c2ecf20Sopenharmony_ci mediatek,smi = <&smi_common0>; 10868c2ecf20Sopenharmony_ci mediatek,larb-id = <1>; 10878c2ecf20Sopenharmony_ci power-domains = <&scpsys MT2712_POWER_DOMAIN_VDEC>; 10888c2ecf20Sopenharmony_ci clocks = <&vdecsys CLK_VDEC_CKEN>, 10898c2ecf20Sopenharmony_ci <&vdecsys CLK_VDEC_LARB1_CKEN>; 10908c2ecf20Sopenharmony_ci clock-names = "apb", "smi"; 10918c2ecf20Sopenharmony_ci }; 10928c2ecf20Sopenharmony_ci 10938c2ecf20Sopenharmony_ci vencsys: syscon@18000000 { 10948c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-vencsys", "syscon"; 10958c2ecf20Sopenharmony_ci reg = <0 0x18000000 0 0x1000>; 10968c2ecf20Sopenharmony_ci #clock-cells = <1>; 10978c2ecf20Sopenharmony_ci }; 10988c2ecf20Sopenharmony_ci 10998c2ecf20Sopenharmony_ci larb3: larb@18001000 { 11008c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-smi-larb"; 11018c2ecf20Sopenharmony_ci reg = <0 0x18001000 0 0x1000>; 11028c2ecf20Sopenharmony_ci mediatek,smi = <&smi_common0>; 11038c2ecf20Sopenharmony_ci mediatek,larb-id = <3>; 11048c2ecf20Sopenharmony_ci power-domains = <&scpsys MT2712_POWER_DOMAIN_VENC>; 11058c2ecf20Sopenharmony_ci clocks = <&vencsys CLK_VENC_SMI_COMMON_CON>, 11068c2ecf20Sopenharmony_ci <&vencsys CLK_VENC_VENC>; 11078c2ecf20Sopenharmony_ci clock-names = "apb", "smi"; 11088c2ecf20Sopenharmony_ci }; 11098c2ecf20Sopenharmony_ci 11108c2ecf20Sopenharmony_ci larb6: larb@18002000 { 11118c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-smi-larb"; 11128c2ecf20Sopenharmony_ci reg = <0 0x18002000 0 0x1000>; 11138c2ecf20Sopenharmony_ci mediatek,smi = <&smi_common0>; 11148c2ecf20Sopenharmony_ci mediatek,larb-id = <6>; 11158c2ecf20Sopenharmony_ci power-domains = <&scpsys MT2712_POWER_DOMAIN_VENC>; 11168c2ecf20Sopenharmony_ci clocks = <&vencsys CLK_VENC_SMI_COMMON_CON>, 11178c2ecf20Sopenharmony_ci <&vencsys CLK_VENC_VENC>; 11188c2ecf20Sopenharmony_ci clock-names = "apb", "smi"; 11198c2ecf20Sopenharmony_ci }; 11208c2ecf20Sopenharmony_ci 11218c2ecf20Sopenharmony_ci jpgdecsys: syscon@19000000 { 11228c2ecf20Sopenharmony_ci compatible = "mediatek,mt2712-jpgdecsys", "syscon"; 11238c2ecf20Sopenharmony_ci reg = <0 0x19000000 0 0x1000>; 11248c2ecf20Sopenharmony_ci #clock-cells = <1>; 11258c2ecf20Sopenharmony_ci }; 11268c2ecf20Sopenharmony_ci}; 11278c2ecf20Sopenharmony_ci 1128