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 8bdf2cbb2Syt.shen@mediatek.com#include <dt-bindings/interrupt-controller/irq.h> 9bdf2cbb2Syt.shen@mediatek.com#include <dt-bindings/interrupt-controller/arm-gic.h> 10bdf2cbb2Syt.shen@mediatek.com 11bdf2cbb2Syt.shen@mediatek.com/ { 12bdf2cbb2Syt.shen@mediatek.com compatible = "mediatek,mt2712"; 13bdf2cbb2Syt.shen@mediatek.com interrupt-parent = <&sysirq>; 14bdf2cbb2Syt.shen@mediatek.com #address-cells = <2>; 15bdf2cbb2Syt.shen@mediatek.com #size-cells = <2>; 16bdf2cbb2Syt.shen@mediatek.com 17bdf2cbb2Syt.shen@mediatek.com cpus { 18bdf2cbb2Syt.shen@mediatek.com #address-cells = <1>; 19bdf2cbb2Syt.shen@mediatek.com #size-cells = <0>; 20bdf2cbb2Syt.shen@mediatek.com 21bdf2cbb2Syt.shen@mediatek.com cpu-map { 22bdf2cbb2Syt.shen@mediatek.com cluster0 { 23bdf2cbb2Syt.shen@mediatek.com core0 { 24bdf2cbb2Syt.shen@mediatek.com cpu = <&cpu0>; 25bdf2cbb2Syt.shen@mediatek.com }; 26bdf2cbb2Syt.shen@mediatek.com core1 { 27bdf2cbb2Syt.shen@mediatek.com cpu = <&cpu1>; 28bdf2cbb2Syt.shen@mediatek.com }; 29bdf2cbb2Syt.shen@mediatek.com }; 30bdf2cbb2Syt.shen@mediatek.com 31bdf2cbb2Syt.shen@mediatek.com cluster1 { 32bdf2cbb2Syt.shen@mediatek.com core0 { 33bdf2cbb2Syt.shen@mediatek.com cpu = <&cpu2>; 34bdf2cbb2Syt.shen@mediatek.com }; 35bdf2cbb2Syt.shen@mediatek.com }; 36bdf2cbb2Syt.shen@mediatek.com }; 37bdf2cbb2Syt.shen@mediatek.com 38bdf2cbb2Syt.shen@mediatek.com cpu0: cpu@0 { 39bdf2cbb2Syt.shen@mediatek.com device_type = "cpu"; 40bdf2cbb2Syt.shen@mediatek.com compatible = "arm,cortex-a35"; 41bdf2cbb2Syt.shen@mediatek.com reg = <0x000>; 42bdf2cbb2Syt.shen@mediatek.com }; 43bdf2cbb2Syt.shen@mediatek.com 44bdf2cbb2Syt.shen@mediatek.com cpu1: cpu@1 { 45bdf2cbb2Syt.shen@mediatek.com device_type = "cpu"; 46bdf2cbb2Syt.shen@mediatek.com compatible = "arm,cortex-a35"; 47bdf2cbb2Syt.shen@mediatek.com reg = <0x001>; 48bdf2cbb2Syt.shen@mediatek.com enable-method = "psci"; 49bdf2cbb2Syt.shen@mediatek.com }; 50bdf2cbb2Syt.shen@mediatek.com 51bdf2cbb2Syt.shen@mediatek.com cpu2: cpu@200 { 52bdf2cbb2Syt.shen@mediatek.com device_type = "cpu"; 53bdf2cbb2Syt.shen@mediatek.com compatible = "arm,cortex-a72"; 54bdf2cbb2Syt.shen@mediatek.com reg = <0x200>; 55bdf2cbb2Syt.shen@mediatek.com enable-method = "psci"; 56bdf2cbb2Syt.shen@mediatek.com }; 57bdf2cbb2Syt.shen@mediatek.com }; 58bdf2cbb2Syt.shen@mediatek.com 59bdf2cbb2Syt.shen@mediatek.com psci { 60bdf2cbb2Syt.shen@mediatek.com compatible = "arm,psci-0.2"; 61bdf2cbb2Syt.shen@mediatek.com method = "smc"; 62bdf2cbb2Syt.shen@mediatek.com }; 63bdf2cbb2Syt.shen@mediatek.com 64bdf2cbb2Syt.shen@mediatek.com baud_clk: dummy26m { 65bdf2cbb2Syt.shen@mediatek.com compatible = "fixed-clock"; 66bdf2cbb2Syt.shen@mediatek.com clock-frequency = <26000000>; 67bdf2cbb2Syt.shen@mediatek.com #clock-cells = <0>; 68bdf2cbb2Syt.shen@mediatek.com }; 69bdf2cbb2Syt.shen@mediatek.com 70bdf2cbb2Syt.shen@mediatek.com sys_clk: dummyclk { 71bdf2cbb2Syt.shen@mediatek.com compatible = "fixed-clock"; 72bdf2cbb2Syt.shen@mediatek.com clock-frequency = <26000000>; 73bdf2cbb2Syt.shen@mediatek.com #clock-cells = <0>; 74bdf2cbb2Syt.shen@mediatek.com }; 75bdf2cbb2Syt.shen@mediatek.com 76bdf2cbb2Syt.shen@mediatek.com timer { 77bdf2cbb2Syt.shen@mediatek.com compatible = "arm,armv8-timer"; 78bdf2cbb2Syt.shen@mediatek.com interrupt-parent = <&gic>; 79bdf2cbb2Syt.shen@mediatek.com interrupts = <GIC_PPI 13 80bdf2cbb2Syt.shen@mediatek.com (GIC_CPU_MASK_RAW(0x13) | IRQ_TYPE_LEVEL_LOW)>, 81bdf2cbb2Syt.shen@mediatek.com <GIC_PPI 14 82bdf2cbb2Syt.shen@mediatek.com (GIC_CPU_MASK_RAW(0x13) | IRQ_TYPE_LEVEL_LOW)>, 83bdf2cbb2Syt.shen@mediatek.com <GIC_PPI 11 84bdf2cbb2Syt.shen@mediatek.com (GIC_CPU_MASK_RAW(0x13) | IRQ_TYPE_LEVEL_LOW)>, 85bdf2cbb2Syt.shen@mediatek.com <GIC_PPI 10 86bdf2cbb2Syt.shen@mediatek.com (GIC_CPU_MASK_RAW(0x13) | IRQ_TYPE_LEVEL_LOW)>; 87bdf2cbb2Syt.shen@mediatek.com }; 88bdf2cbb2Syt.shen@mediatek.com 89bdf2cbb2Syt.shen@mediatek.com uart5: serial@1000f000 { 90bdf2cbb2Syt.shen@mediatek.com compatible = "mediatek,mt2712-uart", 91bdf2cbb2Syt.shen@mediatek.com "mediatek,mt6577-uart"; 92bdf2cbb2Syt.shen@mediatek.com reg = <0 0x1000f000 0 0x400>; 93bdf2cbb2Syt.shen@mediatek.com interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_LOW>; 94bdf2cbb2Syt.shen@mediatek.com clocks = <&baud_clk>, <&sys_clk>; 95bdf2cbb2Syt.shen@mediatek.com clock-names = "baud", "bus"; 96bdf2cbb2Syt.shen@mediatek.com status = "disabled"; 97bdf2cbb2Syt.shen@mediatek.com }; 98bdf2cbb2Syt.shen@mediatek.com 99bdf2cbb2Syt.shen@mediatek.com sysirq: interrupt-controller@10220a80 { 100bdf2cbb2Syt.shen@mediatek.com compatible = "mediatek,mt2712-sysirq", 101bdf2cbb2Syt.shen@mediatek.com "mediatek,mt6577-sysirq"; 102bdf2cbb2Syt.shen@mediatek.com interrupt-controller; 103bdf2cbb2Syt.shen@mediatek.com #interrupt-cells = <3>; 104bdf2cbb2Syt.shen@mediatek.com interrupt-parent = <&gic>; 105bdf2cbb2Syt.shen@mediatek.com reg = <0 0x10220a80 0 0x40>; 106bdf2cbb2Syt.shen@mediatek.com }; 107bdf2cbb2Syt.shen@mediatek.com 108bdf2cbb2Syt.shen@mediatek.com gic: interrupt-controller@10510000 { 109bdf2cbb2Syt.shen@mediatek.com compatible = "arm,gic-400"; 110bdf2cbb2Syt.shen@mediatek.com #interrupt-cells = <3>; 111bdf2cbb2Syt.shen@mediatek.com interrupt-parent = <&gic>; 112bdf2cbb2Syt.shen@mediatek.com interrupt-controller; 113bdf2cbb2Syt.shen@mediatek.com reg = <0 0x10510000 0 0x10000>, 114bdf2cbb2Syt.shen@mediatek.com <0 0x10520000 0 0x20000>, 115bdf2cbb2Syt.shen@mediatek.com <0 0x10540000 0 0x20000>, 116bdf2cbb2Syt.shen@mediatek.com <0 0x10560000 0 0x20000>; 117bdf2cbb2Syt.shen@mediatek.com interrupts = <GIC_PPI 9 118bdf2cbb2Syt.shen@mediatek.com (GIC_CPU_MASK_RAW(0x13) | IRQ_TYPE_LEVEL_HIGH)>; 119bdf2cbb2Syt.shen@mediatek.com }; 120bdf2cbb2Syt.shen@mediatek.com 121bdf2cbb2Syt.shen@mediatek.com uart0: serial@11002000 { 122bdf2cbb2Syt.shen@mediatek.com compatible = "mediatek,mt2712-uart", 123bdf2cbb2Syt.shen@mediatek.com "mediatek,mt6577-uart"; 124bdf2cbb2Syt.shen@mediatek.com reg = <0 0x11002000 0 0x400>; 125bdf2cbb2Syt.shen@mediatek.com interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_LOW>; 126bdf2cbb2Syt.shen@mediatek.com clocks = <&baud_clk>, <&sys_clk>; 127bdf2cbb2Syt.shen@mediatek.com clock-names = "baud", "bus"; 128bdf2cbb2Syt.shen@mediatek.com status = "disabled"; 129bdf2cbb2Syt.shen@mediatek.com }; 130bdf2cbb2Syt.shen@mediatek.com 131bdf2cbb2Syt.shen@mediatek.com uart1: serial@11003000 { 132bdf2cbb2Syt.shen@mediatek.com compatible = "mediatek,mt2712-uart", 133bdf2cbb2Syt.shen@mediatek.com "mediatek,mt6577-uart"; 134bdf2cbb2Syt.shen@mediatek.com reg = <0 0x11003000 0 0x400>; 135bdf2cbb2Syt.shen@mediatek.com interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_LOW>; 136bdf2cbb2Syt.shen@mediatek.com clocks = <&baud_clk>, <&sys_clk>; 137bdf2cbb2Syt.shen@mediatek.com clock-names = "baud", "bus"; 138bdf2cbb2Syt.shen@mediatek.com status = "disabled"; 139bdf2cbb2Syt.shen@mediatek.com }; 140bdf2cbb2Syt.shen@mediatek.com 141bdf2cbb2Syt.shen@mediatek.com uart2: serial@11004000 { 142bdf2cbb2Syt.shen@mediatek.com compatible = "mediatek,mt2712-uart", 143bdf2cbb2Syt.shen@mediatek.com "mediatek,mt6577-uart"; 144bdf2cbb2Syt.shen@mediatek.com reg = <0 0x11004000 0 0x400>; 145bdf2cbb2Syt.shen@mediatek.com interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_LOW>; 146bdf2cbb2Syt.shen@mediatek.com clocks = <&baud_clk>, <&sys_clk>; 147bdf2cbb2Syt.shen@mediatek.com clock-names = "baud", "bus"; 148bdf2cbb2Syt.shen@mediatek.com status = "disabled"; 149bdf2cbb2Syt.shen@mediatek.com }; 150bdf2cbb2Syt.shen@mediatek.com 151bdf2cbb2Syt.shen@mediatek.com uart3: serial@11005000 { 152bdf2cbb2Syt.shen@mediatek.com compatible = "mediatek,mt2712-uart", 153bdf2cbb2Syt.shen@mediatek.com "mediatek,mt6577-uart"; 154bdf2cbb2Syt.shen@mediatek.com reg = <0 0x11005000 0 0x400>; 155bdf2cbb2Syt.shen@mediatek.com interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_LOW>; 156bdf2cbb2Syt.shen@mediatek.com clocks = <&baud_clk>, <&sys_clk>; 157bdf2cbb2Syt.shen@mediatek.com clock-names = "baud", "bus"; 158bdf2cbb2Syt.shen@mediatek.com status = "disabled"; 159bdf2cbb2Syt.shen@mediatek.com }; 160bdf2cbb2Syt.shen@mediatek.com 161bdf2cbb2Syt.shen@mediatek.com uart4: serial@11019000 { 162bdf2cbb2Syt.shen@mediatek.com compatible = "mediatek,mt2712-uart", 163bdf2cbb2Syt.shen@mediatek.com "mediatek,mt6577-uart"; 164bdf2cbb2Syt.shen@mediatek.com reg = <0 0x11019000 0 0x400>; 165bdf2cbb2Syt.shen@mediatek.com interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_LOW>; 166bdf2cbb2Syt.shen@mediatek.com clocks = <&baud_clk>, <&sys_clk>; 167bdf2cbb2Syt.shen@mediatek.com clock-names = "baud", "bus"; 168bdf2cbb2Syt.shen@mediatek.com status = "disabled"; 169bdf2cbb2Syt.shen@mediatek.com }; 170bdf2cbb2Syt.shen@mediatek.com}; 171bdf2cbb2Syt.shen@mediatek.com 172