1bdf2cbb2Syt.shen@mediatek.com/* 2bdf2cbb2Syt.shen@mediatek.com * Copyright (c) 2017 MediaTek Inc. 3bdf2cbb2Syt.shen@mediatek.com * Author: YT Shen <yt.shen@mediatek.com> 4bdf2cbb2Syt.shen@mediatek.com * 5bdf2cbb2Syt.shen@mediatek.com * SPDX-License-Identifier: (GPL-2.0 OR MIT) 6bdf2cbb2Syt.shen@mediatek.com */ 7bdf2cbb2Syt.shen@mediatek.com 85d483970Sweiyi.lu@mediatek.com#include <dt-bindings/clock/mt2712-clk.h> 9bdf2cbb2Syt.shen@mediatek.com#include <dt-bindings/interrupt-controller/irq.h> 10bdf2cbb2Syt.shen@mediatek.com#include <dt-bindings/interrupt-controller/arm-gic.h> 11e82aa799SYT Shen#include <dt-bindings/memory/mt2712-larb-port.h> 121724f4ccSChunfeng Yun#include <dt-bindings/phy/phy.h> 13ca977a4cSweiyi.lu@mediatek.com#include <dt-bindings/power/mt2712-power.h> 14f0c64340SZhiyong Tao#include "mt2712-pinfunc.h" 15bdf2cbb2Syt.shen@mediatek.com 16bdf2cbb2Syt.shen@mediatek.com/ { 17bdf2cbb2Syt.shen@mediatek.com compatible = "mediatek,mt2712"; 18bdf2cbb2Syt.shen@mediatek.com interrupt-parent = <&sysirq>; 19bdf2cbb2Syt.shen@mediatek.com #address-cells = <2>; 20bdf2cbb2Syt.shen@mediatek.com #size-cells = <2>; 21bdf2cbb2Syt.shen@mediatek.com 22f75dd8bdSAndrew-sh Cheng cluster0_opp: opp_table0 { 23f75dd8bdSAndrew-sh Cheng compatible = "operating-points-v2"; 24f75dd8bdSAndrew-sh Cheng opp-shared; 25f75dd8bdSAndrew-sh Cheng opp00 { 26f75dd8bdSAndrew-sh Cheng opp-hz = /bits/ 64 <598000000>; 27f75dd8bdSAndrew-sh Cheng opp-microvolt = <1000000>; 28f75dd8bdSAndrew-sh Cheng }; 29f75dd8bdSAndrew-sh Cheng opp01 { 30f75dd8bdSAndrew-sh Cheng opp-hz = /bits/ 64 <702000000>; 31f75dd8bdSAndrew-sh Cheng opp-microvolt = <1000000>; 32f75dd8bdSAndrew-sh Cheng }; 33f75dd8bdSAndrew-sh Cheng opp02 { 34f75dd8bdSAndrew-sh Cheng opp-hz = /bits/ 64 <793000000>; 35f75dd8bdSAndrew-sh Cheng opp-microvolt = <1000000>; 36f75dd8bdSAndrew-sh Cheng }; 37f75dd8bdSAndrew-sh Cheng }; 38f75dd8bdSAndrew-sh Cheng 39f75dd8bdSAndrew-sh Cheng cluster1_opp: opp_table1 { 40f75dd8bdSAndrew-sh Cheng compatible = "operating-points-v2"; 41f75dd8bdSAndrew-sh Cheng opp-shared; 42f75dd8bdSAndrew-sh Cheng opp00 { 43f75dd8bdSAndrew-sh Cheng opp-hz = /bits/ 64 <598000000>; 44f75dd8bdSAndrew-sh Cheng opp-microvolt = <1000000>; 45f75dd8bdSAndrew-sh Cheng }; 46f75dd8bdSAndrew-sh Cheng opp01 { 47f75dd8bdSAndrew-sh Cheng opp-hz = /bits/ 64 <702000000>; 48f75dd8bdSAndrew-sh Cheng opp-microvolt = <1000000>; 49f75dd8bdSAndrew-sh Cheng }; 50f75dd8bdSAndrew-sh Cheng opp02 { 51f75dd8bdSAndrew-sh Cheng opp-hz = /bits/ 64 <793000000>; 52f75dd8bdSAndrew-sh Cheng opp-microvolt = <1000000>; 53f75dd8bdSAndrew-sh Cheng }; 54f75dd8bdSAndrew-sh Cheng opp03 { 55f75dd8bdSAndrew-sh Cheng opp-hz = /bits/ 64 <897000000>; 56f75dd8bdSAndrew-sh Cheng opp-microvolt = <1000000>; 57f75dd8bdSAndrew-sh Cheng }; 58f75dd8bdSAndrew-sh Cheng opp04 { 59f75dd8bdSAndrew-sh Cheng opp-hz = /bits/ 64 <1001000000>; 60f75dd8bdSAndrew-sh Cheng opp-microvolt = <1000000>; 61f75dd8bdSAndrew-sh Cheng }; 62f75dd8bdSAndrew-sh Cheng }; 63f75dd8bdSAndrew-sh Cheng 64bdf2cbb2Syt.shen@mediatek.com cpus { 65bdf2cbb2Syt.shen@mediatek.com #address-cells = <1>; 66bdf2cbb2Syt.shen@mediatek.com #size-cells = <0>; 67bdf2cbb2Syt.shen@mediatek.com 68bdf2cbb2Syt.shen@mediatek.com cpu-map { 69bdf2cbb2Syt.shen@mediatek.com cluster0 { 70bdf2cbb2Syt.shen@mediatek.com core0 { 71bdf2cbb2Syt.shen@mediatek.com cpu = <&cpu0>; 72bdf2cbb2Syt.shen@mediatek.com }; 73bdf2cbb2Syt.shen@mediatek.com core1 { 74bdf2cbb2Syt.shen@mediatek.com cpu = <&cpu1>; 75bdf2cbb2Syt.shen@mediatek.com }; 76bdf2cbb2Syt.shen@mediatek.com }; 77bdf2cbb2Syt.shen@mediatek.com 78bdf2cbb2Syt.shen@mediatek.com cluster1 { 79bdf2cbb2Syt.shen@mediatek.com core0 { 80bdf2cbb2Syt.shen@mediatek.com cpu = <&cpu2>; 81bdf2cbb2Syt.shen@mediatek.com }; 82bdf2cbb2Syt.shen@mediatek.com }; 83bdf2cbb2Syt.shen@mediatek.com }; 84bdf2cbb2Syt.shen@mediatek.com 85bdf2cbb2Syt.shen@mediatek.com cpu0: cpu@0 { 86bdf2cbb2Syt.shen@mediatek.com device_type = "cpu"; 87bdf2cbb2Syt.shen@mediatek.com compatible = "arm,cortex-a35"; 88bdf2cbb2Syt.shen@mediatek.com reg = <0x000>; 89f75dd8bdSAndrew-sh Cheng clocks = <&mcucfg CLK_MCU_MP0_SEL>, 90f75dd8bdSAndrew-sh Cheng <&topckgen CLK_TOP_F_MP0_PLL1>; 91f75dd8bdSAndrew-sh Cheng clock-names = "cpu", "intermediate"; 92f75dd8bdSAndrew-sh Cheng proc-supply = <&cpus_fixed_vproc0>; 93f75dd8bdSAndrew-sh Cheng operating-points-v2 = <&cluster0_opp>; 94f5a3d783SJames Liao cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 95bdf2cbb2Syt.shen@mediatek.com }; 96bdf2cbb2Syt.shen@mediatek.com 97bdf2cbb2Syt.shen@mediatek.com cpu1: cpu@1 { 98bdf2cbb2Syt.shen@mediatek.com device_type = "cpu"; 99bdf2cbb2Syt.shen@mediatek.com compatible = "arm,cortex-a35"; 100bdf2cbb2Syt.shen@mediatek.com reg = <0x001>; 101bdf2cbb2Syt.shen@mediatek.com enable-method = "psci"; 102f75dd8bdSAndrew-sh Cheng clocks = <&mcucfg CLK_MCU_MP0_SEL>, 103f75dd8bdSAndrew-sh Cheng <&topckgen CLK_TOP_F_MP0_PLL1>; 104f75dd8bdSAndrew-sh Cheng clock-names = "cpu", "intermediate"; 105f75dd8bdSAndrew-sh Cheng proc-supply = <&cpus_fixed_vproc0>; 106f75dd8bdSAndrew-sh Cheng operating-points-v2 = <&cluster0_opp>; 107f5a3d783SJames Liao cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 108bdf2cbb2Syt.shen@mediatek.com }; 109bdf2cbb2Syt.shen@mediatek.com 110bdf2cbb2Syt.shen@mediatek.com cpu2: cpu@200 { 111bdf2cbb2Syt.shen@mediatek.com device_type = "cpu"; 112bdf2cbb2Syt.shen@mediatek.com compatible = "arm,cortex-a72"; 113bdf2cbb2Syt.shen@mediatek.com reg = <0x200>; 114bdf2cbb2Syt.shen@mediatek.com enable-method = "psci"; 115f75dd8bdSAndrew-sh Cheng clocks = <&mcucfg CLK_MCU_MP2_SEL>, 116f75dd8bdSAndrew-sh Cheng <&topckgen CLK_TOP_F_BIG_PLL1>; 117f75dd8bdSAndrew-sh Cheng clock-names = "cpu", "intermediate"; 118f75dd8bdSAndrew-sh Cheng proc-supply = <&cpus_fixed_vproc1>; 119f75dd8bdSAndrew-sh Cheng operating-points-v2 = <&cluster1_opp>; 120f5a3d783SJames Liao cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 121f5a3d783SJames Liao }; 122f5a3d783SJames Liao 123f5a3d783SJames Liao idle-states { 124e9880240SAmit Kucheria entry-method = "psci"; 125f5a3d783SJames Liao 126f5a3d783SJames Liao CPU_SLEEP_0: cpu-sleep-0 { 127f5a3d783SJames Liao compatible = "arm,idle-state"; 128f5a3d783SJames Liao local-timer-stop; 129f5a3d783SJames Liao entry-latency-us = <100>; 130f5a3d783SJames Liao exit-latency-us = <80>; 131f5a3d783SJames Liao min-residency-us = <2000>; 132f5a3d783SJames Liao arm,psci-suspend-param = <0x0010000>; 133f5a3d783SJames Liao }; 134f5a3d783SJames Liao 135f5a3d783SJames Liao CLUSTER_SLEEP_0: cluster-sleep-0 { 136f5a3d783SJames Liao compatible = "arm,idle-state"; 137f5a3d783SJames Liao local-timer-stop; 138f5a3d783SJames Liao entry-latency-us = <350>; 139f5a3d783SJames Liao exit-latency-us = <80>; 140f5a3d783SJames Liao min-residency-us = <3000>; 141f5a3d783SJames Liao arm,psci-suspend-param = <0x1010000>; 142f5a3d783SJames Liao }; 143bdf2cbb2Syt.shen@mediatek.com }; 144bdf2cbb2Syt.shen@mediatek.com }; 145bdf2cbb2Syt.shen@mediatek.com 146bdf2cbb2Syt.shen@mediatek.com psci { 147bdf2cbb2Syt.shen@mediatek.com compatible = "arm,psci-0.2"; 148bdf2cbb2Syt.shen@mediatek.com method = "smc"; 149bdf2cbb2Syt.shen@mediatek.com }; 150bdf2cbb2Syt.shen@mediatek.com 151bdf2cbb2Syt.shen@mediatek.com baud_clk: dummy26m { 152bdf2cbb2Syt.shen@mediatek.com compatible = "fixed-clock"; 153bdf2cbb2Syt.shen@mediatek.com clock-frequency = <26000000>; 154bdf2cbb2Syt.shen@mediatek.com #clock-cells = <0>; 155bdf2cbb2Syt.shen@mediatek.com }; 156bdf2cbb2Syt.shen@mediatek.com 157bdf2cbb2Syt.shen@mediatek.com sys_clk: dummyclk { 158bdf2cbb2Syt.shen@mediatek.com compatible = "fixed-clock"; 159bdf2cbb2Syt.shen@mediatek.com clock-frequency = <26000000>; 160bdf2cbb2Syt.shen@mediatek.com #clock-cells = <0>; 161bdf2cbb2Syt.shen@mediatek.com }; 162bdf2cbb2Syt.shen@mediatek.com 1635d483970Sweiyi.lu@mediatek.com clk26m: oscillator@0 { 1645d483970Sweiyi.lu@mediatek.com compatible = "fixed-clock"; 1655d483970Sweiyi.lu@mediatek.com #clock-cells = <0>; 1665d483970Sweiyi.lu@mediatek.com clock-frequency = <26000000>; 1675d483970Sweiyi.lu@mediatek.com clock-output-names = "clk26m"; 1685d483970Sweiyi.lu@mediatek.com }; 1695d483970Sweiyi.lu@mediatek.com 1705d483970Sweiyi.lu@mediatek.com clk32k: oscillator@1 { 1715d483970Sweiyi.lu@mediatek.com compatible = "fixed-clock"; 1725d483970Sweiyi.lu@mediatek.com #clock-cells = <0>; 1735d483970Sweiyi.lu@mediatek.com clock-frequency = <32768>; 1745d483970Sweiyi.lu@mediatek.com clock-output-names = "clk32k"; 1755d483970Sweiyi.lu@mediatek.com }; 1765d483970Sweiyi.lu@mediatek.com 1775d483970Sweiyi.lu@mediatek.com clkfpc: oscillator@2 { 1785d483970Sweiyi.lu@mediatek.com compatible = "fixed-clock"; 1795d483970Sweiyi.lu@mediatek.com #clock-cells = <0>; 1805d483970Sweiyi.lu@mediatek.com clock-frequency = <50000000>; 1815d483970Sweiyi.lu@mediatek.com clock-output-names = "clkfpc"; 1825d483970Sweiyi.lu@mediatek.com }; 1835d483970Sweiyi.lu@mediatek.com 1845d483970Sweiyi.lu@mediatek.com clkaud_ext_i_0: oscillator@3 { 1855d483970Sweiyi.lu@mediatek.com compatible = "fixed-clock"; 1865d483970Sweiyi.lu@mediatek.com #clock-cells = <0>; 1875d483970Sweiyi.lu@mediatek.com clock-frequency = <6500000>; 1885d483970Sweiyi.lu@mediatek.com clock-output-names = "clkaud_ext_i_0"; 1895d483970Sweiyi.lu@mediatek.com }; 1905d483970Sweiyi.lu@mediatek.com 1915d483970Sweiyi.lu@mediatek.com clkaud_ext_i_1: oscillator@4 { 1925d483970Sweiyi.lu@mediatek.com compatible = "fixed-clock"; 1935d483970Sweiyi.lu@mediatek.com #clock-cells = <0>; 1945d483970Sweiyi.lu@mediatek.com clock-frequency = <196608000>; 1955d483970Sweiyi.lu@mediatek.com clock-output-names = "clkaud_ext_i_1"; 1965d483970Sweiyi.lu@mediatek.com }; 1975d483970Sweiyi.lu@mediatek.com 1985d483970Sweiyi.lu@mediatek.com clkaud_ext_i_2: oscillator@5 { 1995d483970Sweiyi.lu@mediatek.com compatible = "fixed-clock"; 2005d483970Sweiyi.lu@mediatek.com #clock-cells = <0>; 2015d483970Sweiyi.lu@mediatek.com clock-frequency = <180633600>; 2025d483970Sweiyi.lu@mediatek.com clock-output-names = "clkaud_ext_i_2"; 2035d483970Sweiyi.lu@mediatek.com }; 2045d483970Sweiyi.lu@mediatek.com 205f9ce040dSweiyi.lu@mediatek.com clki2si0_mck_i: oscillator@6 { 206f9ce040dSweiyi.lu@mediatek.com compatible = "fixed-clock"; 207f9ce040dSweiyi.lu@mediatek.com #clock-cells = <0>; 208f9ce040dSweiyi.lu@mediatek.com clock-frequency = <30000000>; 209f9ce040dSweiyi.lu@mediatek.com clock-output-names = "clki2si0_mck_i"; 210f9ce040dSweiyi.lu@mediatek.com }; 211f9ce040dSweiyi.lu@mediatek.com 212f9ce040dSweiyi.lu@mediatek.com clki2si1_mck_i: oscillator@7 { 213f9ce040dSweiyi.lu@mediatek.com compatible = "fixed-clock"; 214f9ce040dSweiyi.lu@mediatek.com #clock-cells = <0>; 215f9ce040dSweiyi.lu@mediatek.com clock-frequency = <30000000>; 216f9ce040dSweiyi.lu@mediatek.com clock-output-names = "clki2si1_mck_i"; 217f9ce040dSweiyi.lu@mediatek.com }; 218f9ce040dSweiyi.lu@mediatek.com 219f9ce040dSweiyi.lu@mediatek.com clki2si2_mck_i: oscillator@8 { 220f9ce040dSweiyi.lu@mediatek.com compatible = "fixed-clock"; 221f9ce040dSweiyi.lu@mediatek.com #clock-cells = <0>; 222f9ce040dSweiyi.lu@mediatek.com clock-frequency = <30000000>; 223f9ce040dSweiyi.lu@mediatek.com clock-output-names = "clki2si2_mck_i"; 224f9ce040dSweiyi.lu@mediatek.com }; 225f9ce040dSweiyi.lu@mediatek.com 226f9ce040dSweiyi.lu@mediatek.com clktdmin_mclk_i: oscillator@9 { 227f9ce040dSweiyi.lu@mediatek.com compatible = "fixed-clock"; 228f9ce040dSweiyi.lu@mediatek.com #clock-cells = <0>; 229f9ce040dSweiyi.lu@mediatek.com clock-frequency = <30000000>; 230f9ce040dSweiyi.lu@mediatek.com clock-output-names = "clktdmin_mclk_i"; 231f9ce040dSweiyi.lu@mediatek.com }; 232f9ce040dSweiyi.lu@mediatek.com 233bdf2cbb2Syt.shen@mediatek.com timer { 234bdf2cbb2Syt.shen@mediatek.com compatible = "arm,armv8-timer"; 235bdf2cbb2Syt.shen@mediatek.com interrupt-parent = <&gic>; 236bdf2cbb2Syt.shen@mediatek.com interrupts = <GIC_PPI 13 237bdf2cbb2Syt.shen@mediatek.com (GIC_CPU_MASK_RAW(0x13) | IRQ_TYPE_LEVEL_LOW)>, 238bdf2cbb2Syt.shen@mediatek.com <GIC_PPI 14 239bdf2cbb2Syt.shen@mediatek.com (GIC_CPU_MASK_RAW(0x13) | IRQ_TYPE_LEVEL_LOW)>, 240bdf2cbb2Syt.shen@mediatek.com <GIC_PPI 11 241bdf2cbb2Syt.shen@mediatek.com (GIC_CPU_MASK_RAW(0x13) | IRQ_TYPE_LEVEL_LOW)>, 242bdf2cbb2Syt.shen@mediatek.com <GIC_PPI 10 243bdf2cbb2Syt.shen@mediatek.com (GIC_CPU_MASK_RAW(0x13) | IRQ_TYPE_LEVEL_LOW)>; 244bdf2cbb2Syt.shen@mediatek.com }; 245bdf2cbb2Syt.shen@mediatek.com 2465d483970Sweiyi.lu@mediatek.com topckgen: syscon@10000000 { 2475d483970Sweiyi.lu@mediatek.com compatible = "mediatek,mt2712-topckgen", "syscon"; 2485d483970Sweiyi.lu@mediatek.com reg = <0 0x10000000 0 0x1000>; 2495d483970Sweiyi.lu@mediatek.com #clock-cells = <1>; 2505d483970Sweiyi.lu@mediatek.com }; 2515d483970Sweiyi.lu@mediatek.com 2525d483970Sweiyi.lu@mediatek.com infracfg: syscon@10001000 { 2535d483970Sweiyi.lu@mediatek.com compatible = "mediatek,mt2712-infracfg", "syscon"; 2545d483970Sweiyi.lu@mediatek.com reg = <0 0x10001000 0 0x1000>; 2555d483970Sweiyi.lu@mediatek.com #clock-cells = <1>; 2565d483970Sweiyi.lu@mediatek.com }; 2575d483970Sweiyi.lu@mediatek.com 2585d483970Sweiyi.lu@mediatek.com pericfg: syscon@10003000 { 2595d483970Sweiyi.lu@mediatek.com compatible = "mediatek,mt2712-pericfg", "syscon"; 2605d483970Sweiyi.lu@mediatek.com reg = <0 0x10003000 0 0x1000>; 2615d483970Sweiyi.lu@mediatek.com #clock-cells = <1>; 2625d483970Sweiyi.lu@mediatek.com }; 2635d483970Sweiyi.lu@mediatek.com 264f0c64340SZhiyong Tao syscfg_pctl_a: syscfg_pctl_a@10005000 { 265f0c64340SZhiyong Tao compatible = "mediatek,mt2712-pctl-a-syscfg", "syscon"; 266f0c64340SZhiyong Tao reg = <0 0x10005000 0 0x1000>; 267f0c64340SZhiyong Tao }; 268f0c64340SZhiyong Tao 269f0c64340SZhiyong Tao pio: pinctrl@10005000 { 270f0c64340SZhiyong Tao compatible = "mediatek,mt2712-pinctrl"; 271f0c64340SZhiyong Tao reg = <0 0x1000b000 0 0x1000>; 272f0c64340SZhiyong Tao mediatek,pctl-regmap = <&syscfg_pctl_a>; 273f0c64340SZhiyong Tao pins-are-numbered; 274f0c64340SZhiyong Tao gpio-controller; 275f0c64340SZhiyong Tao #gpio-cells = <2>; 276f0c64340SZhiyong Tao interrupt-controller; 277f0c64340SZhiyong Tao #interrupt-cells = <2>; 278f0c64340SZhiyong Tao interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>; 279f0c64340SZhiyong Tao }; 280f0c64340SZhiyong Tao 281ca977a4cSweiyi.lu@mediatek.com scpsys: scpsys@10006000 { 282ca977a4cSweiyi.lu@mediatek.com compatible = "mediatek,mt2712-scpsys", "syscon"; 283ca977a4cSweiyi.lu@mediatek.com #power-domain-cells = <1>; 284ca977a4cSweiyi.lu@mediatek.com reg = <0 0x10006000 0 0x1000>; 285ca977a4cSweiyi.lu@mediatek.com clocks = <&topckgen CLK_TOP_MM_SEL>, 286ca977a4cSweiyi.lu@mediatek.com <&topckgen CLK_TOP_MFG_SEL>, 287ca977a4cSweiyi.lu@mediatek.com <&topckgen CLK_TOP_VENC_SEL>, 288ca977a4cSweiyi.lu@mediatek.com <&topckgen CLK_TOP_JPGDEC_SEL>, 289ca977a4cSweiyi.lu@mediatek.com <&topckgen CLK_TOP_A1SYS_HP_SEL>, 290ca977a4cSweiyi.lu@mediatek.com <&topckgen CLK_TOP_VDEC_SEL>; 291ca977a4cSweiyi.lu@mediatek.com clock-names = "mm", "mfg", "venc", 292ca977a4cSweiyi.lu@mediatek.com "jpgdec", "audio", "vdec"; 293ca977a4cSweiyi.lu@mediatek.com infracfg = <&infracfg>; 294ca977a4cSweiyi.lu@mediatek.com }; 295ca977a4cSweiyi.lu@mediatek.com 296bdf2cbb2Syt.shen@mediatek.com uart5: serial@1000f000 { 297bdf2cbb2Syt.shen@mediatek.com compatible = "mediatek,mt2712-uart", 298bdf2cbb2Syt.shen@mediatek.com "mediatek,mt6577-uart"; 299bdf2cbb2Syt.shen@mediatek.com reg = <0 0x1000f000 0 0x400>; 300bdf2cbb2Syt.shen@mediatek.com interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_LOW>; 301bdf2cbb2Syt.shen@mediatek.com clocks = <&baud_clk>, <&sys_clk>; 302bdf2cbb2Syt.shen@mediatek.com clock-names = "baud", "bus"; 303bdf2cbb2Syt.shen@mediatek.com status = "disabled"; 304bdf2cbb2Syt.shen@mediatek.com }; 305bdf2cbb2Syt.shen@mediatek.com 3063c2ac5b3SLeilk Liu spis1: spi@10013000 { 3073c2ac5b3SLeilk Liu compatible = "mediatek,mt2712-spi-slave"; 3083c2ac5b3SLeilk Liu reg = <0 0x10013000 0 0x100>; 3093c2ac5b3SLeilk Liu interrupts = <GIC_SPI 283 IRQ_TYPE_LEVEL_LOW>; 3103c2ac5b3SLeilk Liu clocks = <&infracfg CLK_INFRA_AO_SPI1>; 3113c2ac5b3SLeilk Liu clock-names = "spi"; 3123c2ac5b3SLeilk Liu assigned-clocks = <&topckgen CLK_TOP_SPISLV_SEL>; 3133c2ac5b3SLeilk Liu assigned-clock-parents = <&topckgen CLK_TOP_UNIVPLL1_D2>; 3143c2ac5b3SLeilk Liu status = "disabled"; 3153c2ac5b3SLeilk Liu }; 3163c2ac5b3SLeilk Liu 317e82aa799SYT Shen iommu0: iommu@10205000 { 318e82aa799SYT Shen compatible = "mediatek,mt2712-m4u"; 319e82aa799SYT Shen reg = <0 0x10205000 0 0x1000>; 320e82aa799SYT Shen interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_LOW>; 321e82aa799SYT Shen clocks = <&infracfg CLK_INFRA_M4U>; 322e82aa799SYT Shen clock-names = "bclk"; 323e82aa799SYT Shen mediatek,larbs = <&larb0 &larb1 &larb2 324e82aa799SYT Shen &larb3 &larb6>; 325e82aa799SYT Shen #iommu-cells = <1>; 326e82aa799SYT Shen }; 327e82aa799SYT Shen 3285d483970Sweiyi.lu@mediatek.com apmixedsys: syscon@10209000 { 3295d483970Sweiyi.lu@mediatek.com compatible = "mediatek,mt2712-apmixedsys", "syscon"; 3305d483970Sweiyi.lu@mediatek.com reg = <0 0x10209000 0 0x1000>; 3315d483970Sweiyi.lu@mediatek.com #clock-cells = <1>; 3325d483970Sweiyi.lu@mediatek.com }; 3335d483970Sweiyi.lu@mediatek.com 334e82aa799SYT Shen iommu1: iommu@1020a000 { 335e82aa799SYT Shen compatible = "mediatek,mt2712-m4u"; 336e82aa799SYT Shen reg = <0 0x1020a000 0 0x1000>; 337e82aa799SYT Shen interrupts = <GIC_SPI 145 IRQ_TYPE_LEVEL_LOW>; 338e82aa799SYT Shen clocks = <&infracfg CLK_INFRA_M4U>; 339e82aa799SYT Shen clock-names = "bclk"; 340e82aa799SYT Shen mediatek,larbs = <&larb4 &larb5 &larb7>; 341e82aa799SYT Shen #iommu-cells = <1>; 342e82aa799SYT Shen }; 343e82aa799SYT Shen 3445d483970Sweiyi.lu@mediatek.com mcucfg: syscon@10220000 { 3455d483970Sweiyi.lu@mediatek.com compatible = "mediatek,mt2712-mcucfg", "syscon"; 3465d483970Sweiyi.lu@mediatek.com reg = <0 0x10220000 0 0x1000>; 3475d483970Sweiyi.lu@mediatek.com #clock-cells = <1>; 3485d483970Sweiyi.lu@mediatek.com }; 3495d483970Sweiyi.lu@mediatek.com 350bdf2cbb2Syt.shen@mediatek.com sysirq: interrupt-controller@10220a80 { 351bdf2cbb2Syt.shen@mediatek.com compatible = "mediatek,mt2712-sysirq", 352bdf2cbb2Syt.shen@mediatek.com "mediatek,mt6577-sysirq"; 353bdf2cbb2Syt.shen@mediatek.com interrupt-controller; 354bdf2cbb2Syt.shen@mediatek.com #interrupt-cells = <3>; 355bdf2cbb2Syt.shen@mediatek.com interrupt-parent = <&gic>; 356bdf2cbb2Syt.shen@mediatek.com reg = <0 0x10220a80 0 0x40>; 357bdf2cbb2Syt.shen@mediatek.com }; 358bdf2cbb2Syt.shen@mediatek.com 359bdf2cbb2Syt.shen@mediatek.com gic: interrupt-controller@10510000 { 360bdf2cbb2Syt.shen@mediatek.com compatible = "arm,gic-400"; 361bdf2cbb2Syt.shen@mediatek.com #interrupt-cells = <3>; 362bdf2cbb2Syt.shen@mediatek.com interrupt-parent = <&gic>; 363bdf2cbb2Syt.shen@mediatek.com interrupt-controller; 364bdf2cbb2Syt.shen@mediatek.com reg = <0 0x10510000 0 0x10000>, 365bdf2cbb2Syt.shen@mediatek.com <0 0x10520000 0 0x20000>, 366bdf2cbb2Syt.shen@mediatek.com <0 0x10540000 0 0x20000>, 367bdf2cbb2Syt.shen@mediatek.com <0 0x10560000 0 0x20000>; 368bdf2cbb2Syt.shen@mediatek.com interrupts = <GIC_PPI 9 369bdf2cbb2Syt.shen@mediatek.com (GIC_CPU_MASK_RAW(0x13) | IRQ_TYPE_LEVEL_HIGH)>; 370bdf2cbb2Syt.shen@mediatek.com }; 371bdf2cbb2Syt.shen@mediatek.com 3725f599552SZhiyong Tao auxadc: adc@11001000 { 3735f599552SZhiyong Tao compatible = "mediatek,mt2712-auxadc"; 3745f599552SZhiyong Tao reg = <0 0x11001000 0 0x1000>; 3755f599552SZhiyong Tao clocks = <&pericfg CLK_PERI_AUXADC>; 3765f599552SZhiyong Tao clock-names = "main"; 3775f599552SZhiyong Tao #io-channel-cells = <1>; 3785f599552SZhiyong Tao status = "disabled"; 3795f599552SZhiyong Tao }; 3805f599552SZhiyong Tao 381bdf2cbb2Syt.shen@mediatek.com uart0: serial@11002000 { 382bdf2cbb2Syt.shen@mediatek.com compatible = "mediatek,mt2712-uart", 383bdf2cbb2Syt.shen@mediatek.com "mediatek,mt6577-uart"; 384bdf2cbb2Syt.shen@mediatek.com reg = <0 0x11002000 0 0x400>; 385bdf2cbb2Syt.shen@mediatek.com interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_LOW>; 386bdf2cbb2Syt.shen@mediatek.com clocks = <&baud_clk>, <&sys_clk>; 387bdf2cbb2Syt.shen@mediatek.com clock-names = "baud", "bus"; 388bdf2cbb2Syt.shen@mediatek.com status = "disabled"; 389bdf2cbb2Syt.shen@mediatek.com }; 390bdf2cbb2Syt.shen@mediatek.com 391bdf2cbb2Syt.shen@mediatek.com uart1: serial@11003000 { 392bdf2cbb2Syt.shen@mediatek.com compatible = "mediatek,mt2712-uart", 393bdf2cbb2Syt.shen@mediatek.com "mediatek,mt6577-uart"; 394bdf2cbb2Syt.shen@mediatek.com reg = <0 0x11003000 0 0x400>; 395bdf2cbb2Syt.shen@mediatek.com interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_LOW>; 396bdf2cbb2Syt.shen@mediatek.com clocks = <&baud_clk>, <&sys_clk>; 397bdf2cbb2Syt.shen@mediatek.com clock-names = "baud", "bus"; 398bdf2cbb2Syt.shen@mediatek.com status = "disabled"; 399bdf2cbb2Syt.shen@mediatek.com }; 400bdf2cbb2Syt.shen@mediatek.com 401bdf2cbb2Syt.shen@mediatek.com uart2: serial@11004000 { 402bdf2cbb2Syt.shen@mediatek.com compatible = "mediatek,mt2712-uart", 403bdf2cbb2Syt.shen@mediatek.com "mediatek,mt6577-uart"; 404bdf2cbb2Syt.shen@mediatek.com reg = <0 0x11004000 0 0x400>; 405bdf2cbb2Syt.shen@mediatek.com interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_LOW>; 406bdf2cbb2Syt.shen@mediatek.com clocks = <&baud_clk>, <&sys_clk>; 407bdf2cbb2Syt.shen@mediatek.com clock-names = "baud", "bus"; 408bdf2cbb2Syt.shen@mediatek.com status = "disabled"; 409bdf2cbb2Syt.shen@mediatek.com }; 410bdf2cbb2Syt.shen@mediatek.com 411bdf2cbb2Syt.shen@mediatek.com uart3: serial@11005000 { 412bdf2cbb2Syt.shen@mediatek.com compatible = "mediatek,mt2712-uart", 413bdf2cbb2Syt.shen@mediatek.com "mediatek,mt6577-uart"; 414bdf2cbb2Syt.shen@mediatek.com reg = <0 0x11005000 0 0x400>; 415bdf2cbb2Syt.shen@mediatek.com interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_LOW>; 416bdf2cbb2Syt.shen@mediatek.com clocks = <&baud_clk>, <&sys_clk>; 417bdf2cbb2Syt.shen@mediatek.com clock-names = "baud", "bus"; 418bdf2cbb2Syt.shen@mediatek.com status = "disabled"; 419bdf2cbb2Syt.shen@mediatek.com }; 420bdf2cbb2Syt.shen@mediatek.com 421dd00ecfaSYT Shen i2c0: i2c@11007000 { 422dd00ecfaSYT Shen compatible = "mediatek,mt2712-i2c"; 423dd00ecfaSYT Shen reg = <0 0x11007000 0 0x90>, 424dd00ecfaSYT Shen <0 0x11000180 0 0x80>; 425dd00ecfaSYT Shen interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_LOW>; 426dd00ecfaSYT Shen clock-div = <4>; 427dd00ecfaSYT Shen clocks = <&pericfg CLK_PERI_I2C0>, 428dd00ecfaSYT Shen <&pericfg CLK_PERI_AP_DMA>; 429dd00ecfaSYT Shen clock-names = "main", 430dd00ecfaSYT Shen "dma"; 431dd00ecfaSYT Shen #address-cells = <1>; 432dd00ecfaSYT Shen #size-cells = <0>; 433dd00ecfaSYT Shen status = "disabled"; 434dd00ecfaSYT Shen }; 435dd00ecfaSYT Shen 436dd00ecfaSYT Shen i2c1: i2c@11008000 { 437dd00ecfaSYT Shen compatible = "mediatek,mt2712-i2c"; 438dd00ecfaSYT Shen reg = <0 0x11008000 0 0x90>, 439dd00ecfaSYT Shen <0 0x11000200 0 0x80>; 440dd00ecfaSYT Shen interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_LOW>; 441dd00ecfaSYT Shen clock-div = <4>; 442dd00ecfaSYT Shen clocks = <&pericfg CLK_PERI_I2C1>, 443dd00ecfaSYT Shen <&pericfg CLK_PERI_AP_DMA>; 444dd00ecfaSYT Shen clock-names = "main", 445dd00ecfaSYT Shen "dma"; 446dd00ecfaSYT Shen #address-cells = <1>; 447dd00ecfaSYT Shen #size-cells = <0>; 448dd00ecfaSYT Shen status = "disabled"; 449dd00ecfaSYT Shen }; 450dd00ecfaSYT Shen 451dd00ecfaSYT Shen i2c2: i2c@11009000 { 452dd00ecfaSYT Shen compatible = "mediatek,mt2712-i2c"; 453dd00ecfaSYT Shen reg = <0 0x11009000 0 0x90>, 454dd00ecfaSYT Shen <0 0x11000280 0 0x80>; 455dd00ecfaSYT Shen interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_LOW>; 456dd00ecfaSYT Shen clock-div = <4>; 457dd00ecfaSYT Shen clocks = <&pericfg CLK_PERI_I2C2>, 458dd00ecfaSYT Shen <&pericfg CLK_PERI_AP_DMA>; 459dd00ecfaSYT Shen clock-names = "main", 460dd00ecfaSYT Shen "dma"; 461dd00ecfaSYT Shen #address-cells = <1>; 462dd00ecfaSYT Shen #size-cells = <0>; 463dd00ecfaSYT Shen status = "disabled"; 464dd00ecfaSYT Shen }; 465dd00ecfaSYT Shen 4669d66740cSYT Shen spi0: spi@1100a000 { 4679d66740cSYT Shen compatible = "mediatek,mt2712-spi"; 4689d66740cSYT Shen #address-cells = <1>; 4699d66740cSYT Shen #size-cells = <0>; 4709d66740cSYT Shen reg = <0 0x1100a000 0 0x100>; 4719d66740cSYT Shen interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_LOW>; 4729d66740cSYT Shen clocks = <&topckgen CLK_TOP_UNIVPLL2_D4>, 4739d66740cSYT Shen <&topckgen CLK_TOP_SPI_SEL>, 4749d66740cSYT Shen <&pericfg CLK_PERI_SPI0>; 4759d66740cSYT Shen clock-names = "parent-clk", "sel-clk", "spi-clk"; 4769d66740cSYT Shen status = "disabled"; 4779d66740cSYT Shen }; 4789d66740cSYT Shen 479dd00ecfaSYT Shen i2c3: i2c@11010000 { 480dd00ecfaSYT Shen compatible = "mediatek,mt2712-i2c"; 481dd00ecfaSYT Shen reg = <0 0x11010000 0 0x90>, 482dd00ecfaSYT Shen <0 0x11000300 0 0x80>; 483dd00ecfaSYT Shen interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_LOW>; 484dd00ecfaSYT Shen clock-div = <4>; 485dd00ecfaSYT Shen clocks = <&pericfg CLK_PERI_I2C3>, 486dd00ecfaSYT Shen <&pericfg CLK_PERI_AP_DMA>; 487dd00ecfaSYT Shen clock-names = "main", 488dd00ecfaSYT Shen "dma"; 489dd00ecfaSYT Shen #address-cells = <1>; 490dd00ecfaSYT Shen #size-cells = <0>; 491dd00ecfaSYT Shen status = "disabled"; 492dd00ecfaSYT Shen }; 493dd00ecfaSYT Shen 494dd00ecfaSYT Shen i2c4: i2c@11011000 { 495dd00ecfaSYT Shen compatible = "mediatek,mt2712-i2c"; 496dd00ecfaSYT Shen reg = <0 0x11011000 0 0x90>, 497dd00ecfaSYT Shen <0 0x11000380 0 0x80>; 498dd00ecfaSYT Shen interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_LOW>; 499dd00ecfaSYT Shen clock-div = <4>; 500dd00ecfaSYT Shen clocks = <&pericfg CLK_PERI_I2C4>, 501dd00ecfaSYT Shen <&pericfg CLK_PERI_AP_DMA>; 502dd00ecfaSYT Shen clock-names = "main", 503dd00ecfaSYT Shen "dma"; 504dd00ecfaSYT Shen #address-cells = <1>; 505dd00ecfaSYT Shen #size-cells = <0>; 506dd00ecfaSYT Shen status = "disabled"; 507dd00ecfaSYT Shen }; 508dd00ecfaSYT Shen 509dd00ecfaSYT Shen i2c5: i2c@11013000 { 510dd00ecfaSYT Shen compatible = "mediatek,mt2712-i2c"; 511dd00ecfaSYT Shen reg = <0 0x11013000 0 0x90>, 512dd00ecfaSYT Shen <0 0x11000100 0 0x80>; 513dd00ecfaSYT Shen interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_LOW>; 514dd00ecfaSYT Shen clock-div = <4>; 515dd00ecfaSYT Shen clocks = <&pericfg CLK_PERI_I2C5>, 516dd00ecfaSYT Shen <&pericfg CLK_PERI_AP_DMA>; 517dd00ecfaSYT Shen clock-names = "main", 518dd00ecfaSYT Shen "dma"; 519dd00ecfaSYT Shen #address-cells = <1>; 520dd00ecfaSYT Shen #size-cells = <0>; 521dd00ecfaSYT Shen status = "disabled"; 522dd00ecfaSYT Shen }; 523dd00ecfaSYT Shen 5249d66740cSYT Shen spi2: spi@11015000 { 5259d66740cSYT Shen compatible = "mediatek,mt2712-spi"; 5269d66740cSYT Shen #address-cells = <1>; 5279d66740cSYT Shen #size-cells = <0>; 5289d66740cSYT Shen reg = <0 0x11015000 0 0x100>; 5299d66740cSYT Shen interrupts = <GIC_SPI 284 IRQ_TYPE_LEVEL_LOW>; 5309d66740cSYT Shen clocks = <&topckgen CLK_TOP_UNIVPLL2_D4>, 5319d66740cSYT Shen <&topckgen CLK_TOP_SPI_SEL>, 5329d66740cSYT Shen <&pericfg CLK_PERI_SPI2>; 5339d66740cSYT Shen clock-names = "parent-clk", "sel-clk", "spi-clk"; 5349d66740cSYT Shen status = "disabled"; 5359d66740cSYT Shen }; 5369d66740cSYT Shen 5379d66740cSYT Shen spi3: spi@11016000 { 5389d66740cSYT Shen compatible = "mediatek,mt2712-spi"; 5399d66740cSYT Shen #address-cells = <1>; 5409d66740cSYT Shen #size-cells = <0>; 5419d66740cSYT Shen reg = <0 0x11016000 0 0x100>; 5429d66740cSYT Shen interrupts = <GIC_SPI 285 IRQ_TYPE_LEVEL_LOW>; 5439d66740cSYT Shen clocks = <&topckgen CLK_TOP_UNIVPLL2_D4>, 5449d66740cSYT Shen <&topckgen CLK_TOP_SPI_SEL>, 5459d66740cSYT Shen <&pericfg CLK_PERI_SPI3>; 5469d66740cSYT Shen clock-names = "parent-clk", "sel-clk", "spi-clk"; 5479d66740cSYT Shen status = "disabled"; 5489d66740cSYT Shen }; 5499d66740cSYT Shen 5509d66740cSYT Shen spi4: spi@10012000 { 5519d66740cSYT Shen compatible = "mediatek,mt2712-spi"; 5529d66740cSYT Shen #address-cells = <1>; 5539d66740cSYT Shen #size-cells = <0>; 5549d66740cSYT Shen reg = <0 0x10012000 0 0x100>; 5559d66740cSYT Shen interrupts = <GIC_SPI 286 IRQ_TYPE_LEVEL_LOW>; 5569d66740cSYT Shen clocks = <&topckgen CLK_TOP_UNIVPLL2_D4>, 5579d66740cSYT Shen <&topckgen CLK_TOP_SPI_SEL>, 5589d66740cSYT Shen <&infracfg CLK_INFRA_AO_SPI0>; 5599d66740cSYT Shen clock-names = "parent-clk", "sel-clk", "spi-clk"; 5609d66740cSYT Shen status = "disabled"; 5619d66740cSYT Shen }; 5629d66740cSYT Shen 5639d66740cSYT Shen spi5: spi@11018000 { 5649d66740cSYT Shen compatible = "mediatek,mt2712-spi"; 5659d66740cSYT Shen #address-cells = <1>; 5669d66740cSYT Shen #size-cells = <0>; 5679d66740cSYT Shen reg = <0 0x11018000 0 0x100>; 5689d66740cSYT Shen interrupts = <GIC_SPI 287 IRQ_TYPE_LEVEL_LOW>; 5699d66740cSYT Shen clocks = <&topckgen CLK_TOP_UNIVPLL2_D4>, 5709d66740cSYT Shen <&topckgen CLK_TOP_SPI_SEL>, 5719d66740cSYT Shen <&pericfg CLK_PERI_SPI5>; 5729d66740cSYT Shen clock-names = "parent-clk", "sel-clk", "spi-clk"; 5739d66740cSYT Shen status = "disabled"; 5749d66740cSYT Shen }; 5759d66740cSYT Shen 576bdf2cbb2Syt.shen@mediatek.com uart4: serial@11019000 { 577bdf2cbb2Syt.shen@mediatek.com compatible = "mediatek,mt2712-uart", 578bdf2cbb2Syt.shen@mediatek.com "mediatek,mt6577-uart"; 579bdf2cbb2Syt.shen@mediatek.com reg = <0 0x11019000 0 0x400>; 580bdf2cbb2Syt.shen@mediatek.com interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_LOW>; 581bdf2cbb2Syt.shen@mediatek.com clocks = <&baud_clk>, <&sys_clk>; 582bdf2cbb2Syt.shen@mediatek.com clock-names = "baud", "bus"; 583bdf2cbb2Syt.shen@mediatek.com status = "disabled"; 584bdf2cbb2Syt.shen@mediatek.com }; 5855d483970Sweiyi.lu@mediatek.com 5861724f4ccSChunfeng Yun ssusb: usb@11271000 { 5871724f4ccSChunfeng Yun compatible = "mediatek,mt2712-mtu3", "mediatek,mtu3"; 5881724f4ccSChunfeng Yun reg = <0 0x11271000 0 0x3000>, 5891724f4ccSChunfeng Yun <0 0x11280700 0 0x0100>; 5901724f4ccSChunfeng Yun reg-names = "mac", "ippc"; 5911724f4ccSChunfeng Yun interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_LOW>; 5921724f4ccSChunfeng Yun phys = <&u2port0 PHY_TYPE_USB2>, 5931724f4ccSChunfeng Yun <&u2port1 PHY_TYPE_USB2>; 5941724f4ccSChunfeng Yun power-domains = <&scpsys MT2712_POWER_DOMAIN_USB>; 5951724f4ccSChunfeng Yun clocks = <&topckgen CLK_TOP_USB30_SEL>; 5961724f4ccSChunfeng Yun clock-names = "sys_ck"; 5971724f4ccSChunfeng Yun mediatek,syscon-wakeup = <&pericfg 0x510 2>; 5981724f4ccSChunfeng Yun #address-cells = <2>; 5991724f4ccSChunfeng Yun #size-cells = <2>; 6001724f4ccSChunfeng Yun ranges; 6011724f4ccSChunfeng Yun status = "disabled"; 6021724f4ccSChunfeng Yun 6031724f4ccSChunfeng Yun usb_host0: xhci@11270000 { 6041724f4ccSChunfeng Yun compatible = "mediatek,mt2712-xhci", 6051724f4ccSChunfeng Yun "mediatek,mtk-xhci"; 6061724f4ccSChunfeng Yun reg = <0 0x11270000 0 0x1000>; 6071724f4ccSChunfeng Yun reg-names = "mac"; 6081724f4ccSChunfeng Yun interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_LOW>; 6091724f4ccSChunfeng Yun power-domains = <&scpsys MT2712_POWER_DOMAIN_USB>; 6101724f4ccSChunfeng Yun clocks = <&topckgen CLK_TOP_USB30_SEL>, <&clk26m>; 6111724f4ccSChunfeng Yun clock-names = "sys_ck", "ref_ck"; 6121724f4ccSChunfeng Yun status = "disabled"; 6131724f4ccSChunfeng Yun }; 6141724f4ccSChunfeng Yun }; 6151724f4ccSChunfeng Yun 6161724f4ccSChunfeng Yun u3phy0: usb-phy@11290000 { 6171724f4ccSChunfeng Yun compatible = "mediatek,mt2712-u3phy"; 6181724f4ccSChunfeng Yun #address-cells = <2>; 6191724f4ccSChunfeng Yun #size-cells = <2>; 6201724f4ccSChunfeng Yun ranges; 6211724f4ccSChunfeng Yun status = "okay"; 6221724f4ccSChunfeng Yun 6231724f4ccSChunfeng Yun u2port0: usb-phy@11290000 { 6241724f4ccSChunfeng Yun reg = <0 0x11290000 0 0x700>; 6251724f4ccSChunfeng Yun clocks = <&clk26m>; 6261724f4ccSChunfeng Yun clock-names = "ref"; 6271724f4ccSChunfeng Yun #phy-cells = <1>; 6281724f4ccSChunfeng Yun status = "okay"; 6291724f4ccSChunfeng Yun }; 6301724f4ccSChunfeng Yun 6311724f4ccSChunfeng Yun u2port1: usb-phy@11298000 { 6321724f4ccSChunfeng Yun reg = <0 0x11298000 0 0x700>; 6331724f4ccSChunfeng Yun clocks = <&clk26m>; 6341724f4ccSChunfeng Yun clock-names = "ref"; 6351724f4ccSChunfeng Yun #phy-cells = <1>; 6361724f4ccSChunfeng Yun status = "okay"; 6371724f4ccSChunfeng Yun }; 6381724f4ccSChunfeng Yun 6391724f4ccSChunfeng Yun u3port0: usb-phy@11298700 { 6401724f4ccSChunfeng Yun reg = <0 0x11298700 0 0x900>; 6411724f4ccSChunfeng Yun clocks = <&clk26m>; 6421724f4ccSChunfeng Yun clock-names = "ref"; 6431724f4ccSChunfeng Yun #phy-cells = <1>; 6441724f4ccSChunfeng Yun status = "okay"; 6451724f4ccSChunfeng Yun }; 6461724f4ccSChunfeng Yun }; 6471724f4ccSChunfeng Yun 6481724f4ccSChunfeng Yun ssusb1: usb@112c1000 { 6491724f4ccSChunfeng Yun compatible = "mediatek,mt2712-mtu3", "mediatek,mtu3"; 6501724f4ccSChunfeng Yun reg = <0 0x112c1000 0 0x3000>, 6511724f4ccSChunfeng Yun <0 0x112d0700 0 0x0100>; 6521724f4ccSChunfeng Yun reg-names = "mac", "ippc"; 6531724f4ccSChunfeng Yun interrupts = <GIC_SPI 248 IRQ_TYPE_LEVEL_LOW>; 6541724f4ccSChunfeng Yun phys = <&u2port2 PHY_TYPE_USB2>, 6551724f4ccSChunfeng Yun <&u2port3 PHY_TYPE_USB2>, 6561724f4ccSChunfeng Yun <&u3port1 PHY_TYPE_USB3>; 6571724f4ccSChunfeng Yun power-domains = <&scpsys MT2712_POWER_DOMAIN_USB2>; 6581724f4ccSChunfeng Yun clocks = <&topckgen CLK_TOP_USB30_SEL>; 6591724f4ccSChunfeng Yun clock-names = "sys_ck"; 6601724f4ccSChunfeng Yun mediatek,syscon-wakeup = <&pericfg 0x514 2>; 6611724f4ccSChunfeng Yun #address-cells = <2>; 6621724f4ccSChunfeng Yun #size-cells = <2>; 6631724f4ccSChunfeng Yun ranges; 6641724f4ccSChunfeng Yun status = "disabled"; 6651724f4ccSChunfeng Yun 6661724f4ccSChunfeng Yun usb_host1: xhci@112c0000 { 6671724f4ccSChunfeng Yun compatible = "mediatek,mt2712-xhci", 6681724f4ccSChunfeng Yun "mediatek,mtk-xhci"; 6691724f4ccSChunfeng Yun reg = <0 0x112c0000 0 0x1000>; 6701724f4ccSChunfeng Yun reg-names = "mac"; 6711724f4ccSChunfeng Yun interrupts = <GIC_SPI 249 IRQ_TYPE_LEVEL_LOW>; 6721724f4ccSChunfeng Yun power-domains = <&scpsys MT2712_POWER_DOMAIN_USB2>; 6731724f4ccSChunfeng Yun clocks = <&topckgen CLK_TOP_USB30_SEL>, <&clk26m>; 6741724f4ccSChunfeng Yun clock-names = "sys_ck", "ref_ck"; 6751724f4ccSChunfeng Yun status = "disabled"; 6761724f4ccSChunfeng Yun }; 6771724f4ccSChunfeng Yun }; 6781724f4ccSChunfeng Yun 6791724f4ccSChunfeng Yun u3phy1: usb-phy@112e0000 { 6801724f4ccSChunfeng Yun compatible = "mediatek,mt2712-u3phy"; 6811724f4ccSChunfeng Yun #address-cells = <2>; 6821724f4ccSChunfeng Yun #size-cells = <2>; 6831724f4ccSChunfeng Yun ranges; 6841724f4ccSChunfeng Yun status = "okay"; 6851724f4ccSChunfeng Yun 6861724f4ccSChunfeng Yun u2port2: usb-phy@112e0000 { 6871724f4ccSChunfeng Yun reg = <0 0x112e0000 0 0x700>; 6881724f4ccSChunfeng Yun clocks = <&clk26m>; 6891724f4ccSChunfeng Yun clock-names = "ref"; 6901724f4ccSChunfeng Yun #phy-cells = <1>; 6911724f4ccSChunfeng Yun status = "okay"; 6921724f4ccSChunfeng Yun }; 6931724f4ccSChunfeng Yun 6941724f4ccSChunfeng Yun u2port3: usb-phy@112e8000 { 6951724f4ccSChunfeng Yun reg = <0 0x112e8000 0 0x700>; 6961724f4ccSChunfeng Yun clocks = <&clk26m>; 6971724f4ccSChunfeng Yun clock-names = "ref"; 6981724f4ccSChunfeng Yun #phy-cells = <1>; 6991724f4ccSChunfeng Yun status = "okay"; 7001724f4ccSChunfeng Yun }; 7011724f4ccSChunfeng Yun 7021724f4ccSChunfeng Yun u3port1: usb-phy@112e8700 { 7031724f4ccSChunfeng Yun reg = <0 0x112e8700 0 0x900>; 7041724f4ccSChunfeng Yun clocks = <&clk26m>; 7051724f4ccSChunfeng Yun clock-names = "ref"; 7061724f4ccSChunfeng Yun #phy-cells = <1>; 7071724f4ccSChunfeng Yun status = "okay"; 7081724f4ccSChunfeng Yun }; 7091724f4ccSChunfeng Yun }; 7101724f4ccSChunfeng Yun 7115d483970Sweiyi.lu@mediatek.com mfgcfg: syscon@13000000 { 7125d483970Sweiyi.lu@mediatek.com compatible = "mediatek,mt2712-mfgcfg", "syscon"; 7135d483970Sweiyi.lu@mediatek.com reg = <0 0x13000000 0 0x1000>; 7145d483970Sweiyi.lu@mediatek.com #clock-cells = <1>; 7155d483970Sweiyi.lu@mediatek.com }; 7165d483970Sweiyi.lu@mediatek.com 7175d483970Sweiyi.lu@mediatek.com mmsys: syscon@14000000 { 7185d483970Sweiyi.lu@mediatek.com compatible = "mediatek,mt2712-mmsys", "syscon"; 7195d483970Sweiyi.lu@mediatek.com reg = <0 0x14000000 0 0x1000>; 7205d483970Sweiyi.lu@mediatek.com #clock-cells = <1>; 7215d483970Sweiyi.lu@mediatek.com }; 7225d483970Sweiyi.lu@mediatek.com 723e82aa799SYT Shen larb0: larb@14021000 { 724e82aa799SYT Shen compatible = "mediatek,mt2712-smi-larb"; 725e82aa799SYT Shen reg = <0 0x14021000 0 0x1000>; 726e82aa799SYT Shen mediatek,smi = <&smi_common0>; 727e82aa799SYT Shen mediatek,larb-id = <0>; 728e82aa799SYT Shen power-domains = <&scpsys MT2712_POWER_DOMAIN_MM>; 729e82aa799SYT Shen clocks = <&mmsys CLK_MM_SMI_LARB0>, 730e82aa799SYT Shen <&mmsys CLK_MM_SMI_LARB0>; 731e82aa799SYT Shen clock-names = "apb", "smi"; 732e82aa799SYT Shen }; 733e82aa799SYT Shen 734e82aa799SYT Shen smi_common0: smi@14022000 { 735e82aa799SYT Shen compatible = "mediatek,mt2712-smi-common"; 736e82aa799SYT Shen reg = <0 0x14022000 0 0x1000>; 737e82aa799SYT Shen power-domains = <&scpsys MT2712_POWER_DOMAIN_MM>; 738e82aa799SYT Shen clocks = <&mmsys CLK_MM_SMI_COMMON>, 739e82aa799SYT Shen <&mmsys CLK_MM_SMI_COMMON>; 740e82aa799SYT Shen clock-names = "apb", "smi"; 741e82aa799SYT Shen }; 742e82aa799SYT Shen 743e82aa799SYT Shen larb4: larb@14027000 { 744e82aa799SYT Shen compatible = "mediatek,mt2712-smi-larb"; 745e82aa799SYT Shen reg = <0 0x14027000 0 0x1000>; 746e82aa799SYT Shen mediatek,smi = <&smi_common1>; 747e82aa799SYT Shen mediatek,larb-id = <4>; 748e82aa799SYT Shen power-domains = <&scpsys MT2712_POWER_DOMAIN_MM>; 749e82aa799SYT Shen clocks = <&mmsys CLK_MM_SMI_LARB4>, 750e82aa799SYT Shen <&mmsys CLK_MM_SMI_LARB4>; 751e82aa799SYT Shen clock-names = "apb", "smi"; 752e82aa799SYT Shen }; 753e82aa799SYT Shen 754e82aa799SYT Shen larb5: larb@14030000 { 755e82aa799SYT Shen compatible = "mediatek,mt2712-smi-larb"; 756e82aa799SYT Shen reg = <0 0x14030000 0 0x1000>; 757e82aa799SYT Shen mediatek,smi = <&smi_common1>; 758e82aa799SYT Shen mediatek,larb-id = <5>; 759e82aa799SYT Shen power-domains = <&scpsys MT2712_POWER_DOMAIN_MM>; 760e82aa799SYT Shen clocks = <&mmsys CLK_MM_SMI_LARB5>, 761e82aa799SYT Shen <&mmsys CLK_MM_SMI_LARB5>; 762e82aa799SYT Shen clock-names = "apb", "smi"; 763e82aa799SYT Shen }; 764e82aa799SYT Shen 765e82aa799SYT Shen smi_common1: smi@14031000 { 766e82aa799SYT Shen compatible = "mediatek,mt2712-smi-common"; 767e82aa799SYT Shen reg = <0 0x14031000 0 0x1000>; 768e82aa799SYT Shen power-domains = <&scpsys MT2712_POWER_DOMAIN_MM>; 769e82aa799SYT Shen clocks = <&mmsys CLK_MM_SMI_COMMON1>, 770e82aa799SYT Shen <&mmsys CLK_MM_SMI_COMMON1>; 771e82aa799SYT Shen clock-names = "apb", "smi"; 772e82aa799SYT Shen }; 773e82aa799SYT Shen 774e82aa799SYT Shen larb7: larb@14032000 { 775e82aa799SYT Shen compatible = "mediatek,mt2712-smi-larb"; 776e82aa799SYT Shen reg = <0 0x14032000 0 0x1000>; 777e82aa799SYT Shen mediatek,smi = <&smi_common1>; 778e82aa799SYT Shen mediatek,larb-id = <7>; 779e82aa799SYT Shen power-domains = <&scpsys MT2712_POWER_DOMAIN_MM>; 780e82aa799SYT Shen clocks = <&mmsys CLK_MM_SMI_LARB7>, 781e82aa799SYT Shen <&mmsys CLK_MM_SMI_LARB7>; 782e82aa799SYT Shen clock-names = "apb", "smi"; 783e82aa799SYT Shen }; 784e82aa799SYT Shen 7855d483970Sweiyi.lu@mediatek.com imgsys: syscon@15000000 { 7865d483970Sweiyi.lu@mediatek.com compatible = "mediatek,mt2712-imgsys", "syscon"; 7875d483970Sweiyi.lu@mediatek.com reg = <0 0x15000000 0 0x1000>; 7885d483970Sweiyi.lu@mediatek.com #clock-cells = <1>; 7895d483970Sweiyi.lu@mediatek.com }; 7905d483970Sweiyi.lu@mediatek.com 791e82aa799SYT Shen larb2: larb@15001000 { 792e82aa799SYT Shen compatible = "mediatek,mt2712-smi-larb"; 793e82aa799SYT Shen reg = <0 0x15001000 0 0x1000>; 794e82aa799SYT Shen mediatek,smi = <&smi_common0>; 795e82aa799SYT Shen mediatek,larb-id = <2>; 796e82aa799SYT Shen power-domains = <&scpsys MT2712_POWER_DOMAIN_ISP>; 797e82aa799SYT Shen clocks = <&imgsys CLK_IMG_SMI_LARB2>, 798e82aa799SYT Shen <&imgsys CLK_IMG_SMI_LARB2>; 799e82aa799SYT Shen clock-names = "apb", "smi"; 800e82aa799SYT Shen }; 801e82aa799SYT Shen 8025d483970Sweiyi.lu@mediatek.com bdpsys: syscon@15010000 { 8035d483970Sweiyi.lu@mediatek.com compatible = "mediatek,mt2712-bdpsys", "syscon"; 8045d483970Sweiyi.lu@mediatek.com reg = <0 0x15010000 0 0x1000>; 8055d483970Sweiyi.lu@mediatek.com #clock-cells = <1>; 8065d483970Sweiyi.lu@mediatek.com }; 8075d483970Sweiyi.lu@mediatek.com 8085d483970Sweiyi.lu@mediatek.com vdecsys: syscon@16000000 { 8095d483970Sweiyi.lu@mediatek.com compatible = "mediatek,mt2712-vdecsys", "syscon"; 8105d483970Sweiyi.lu@mediatek.com reg = <0 0x16000000 0 0x1000>; 8115d483970Sweiyi.lu@mediatek.com #clock-cells = <1>; 8125d483970Sweiyi.lu@mediatek.com }; 8135d483970Sweiyi.lu@mediatek.com 814e82aa799SYT Shen larb1: larb@16010000 { 815e82aa799SYT Shen compatible = "mediatek,mt2712-smi-larb"; 816e82aa799SYT Shen reg = <0 0x16010000 0 0x1000>; 817e82aa799SYT Shen mediatek,smi = <&smi_common0>; 818e82aa799SYT Shen mediatek,larb-id = <1>; 819e82aa799SYT Shen power-domains = <&scpsys MT2712_POWER_DOMAIN_VDEC>; 820e82aa799SYT Shen clocks = <&vdecsys CLK_VDEC_CKEN>, 821e82aa799SYT Shen <&vdecsys CLK_VDEC_LARB1_CKEN>; 822e82aa799SYT Shen clock-names = "apb", "smi"; 823e82aa799SYT Shen }; 824e82aa799SYT Shen 8255d483970Sweiyi.lu@mediatek.com vencsys: syscon@18000000 { 8265d483970Sweiyi.lu@mediatek.com compatible = "mediatek,mt2712-vencsys", "syscon"; 8275d483970Sweiyi.lu@mediatek.com reg = <0 0x18000000 0 0x1000>; 8285d483970Sweiyi.lu@mediatek.com #clock-cells = <1>; 8295d483970Sweiyi.lu@mediatek.com }; 8305d483970Sweiyi.lu@mediatek.com 831e82aa799SYT Shen larb3: larb@18001000 { 832e82aa799SYT Shen compatible = "mediatek,mt2712-smi-larb"; 833e82aa799SYT Shen reg = <0 0x18001000 0 0x1000>; 834e82aa799SYT Shen mediatek,smi = <&smi_common0>; 835e82aa799SYT Shen mediatek,larb-id = <3>; 836e82aa799SYT Shen power-domains = <&scpsys MT2712_POWER_DOMAIN_VENC>; 837e82aa799SYT Shen clocks = <&vencsys CLK_VENC_SMI_COMMON_CON>, 838e82aa799SYT Shen <&vencsys CLK_VENC_VENC>; 839e82aa799SYT Shen clock-names = "apb", "smi"; 840e82aa799SYT Shen }; 841e82aa799SYT Shen 842e82aa799SYT Shen larb6: larb@18002000 { 843e82aa799SYT Shen compatible = "mediatek,mt2712-smi-larb"; 844e82aa799SYT Shen reg = <0 0x18002000 0 0x1000>; 845e82aa799SYT Shen mediatek,smi = <&smi_common0>; 846e82aa799SYT Shen mediatek,larb-id = <6>; 847e82aa799SYT Shen power-domains = <&scpsys MT2712_POWER_DOMAIN_VENC>; 848e82aa799SYT Shen clocks = <&vencsys CLK_VENC_SMI_COMMON_CON>, 849e82aa799SYT Shen <&vencsys CLK_VENC_VENC>; 850e82aa799SYT Shen clock-names = "apb", "smi"; 851e82aa799SYT Shen }; 852e82aa799SYT Shen 8535d483970Sweiyi.lu@mediatek.com jpgdecsys: syscon@19000000 { 8545d483970Sweiyi.lu@mediatek.com compatible = "mediatek,mt2712-jpgdecsys", "syscon"; 8555d483970Sweiyi.lu@mediatek.com reg = <0 0x19000000 0 0x1000>; 8565d483970Sweiyi.lu@mediatek.com #clock-cells = <1>; 8575d483970Sweiyi.lu@mediatek.com }; 858bdf2cbb2Syt.shen@mediatek.com}; 859bdf2cbb2Syt.shen@mediatek.com 860