18c2ecf20Sopenharmony_ci/*
28c2ecf20Sopenharmony_ci * Copyright (c) 2016 MediaTek Inc.
38c2ecf20Sopenharmony_ci * Author: Mars.C <mars.cheng@mediatek.com>
48c2ecf20Sopenharmony_ci *
58c2ecf20Sopenharmony_ci * This program is free software; you can redistribute it and/or modify
68c2ecf20Sopenharmony_ci * it under the terms of the GNU General Public License version 2 as
78c2ecf20Sopenharmony_ci * published by the Free Software Foundation.
88c2ecf20Sopenharmony_ci *
98c2ecf20Sopenharmony_ci * This program is distributed in the hope that it will be useful,
108c2ecf20Sopenharmony_ci * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
118c2ecf20Sopenharmony_ci * GNU General Public License for more details.
128c2ecf20Sopenharmony_ci */
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_ci#include <dt-bindings/interrupt-controller/irq.h>
158c2ecf20Sopenharmony_ci#include <dt-bindings/interrupt-controller/arm-gic.h>
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_ci/ {
188c2ecf20Sopenharmony_ci	compatible = "mediatek,mt6755";
198c2ecf20Sopenharmony_ci	interrupt-parent = <&sysirq>;
208c2ecf20Sopenharmony_ci	#address-cells = <2>;
218c2ecf20Sopenharmony_ci	#size-cells = <2>;
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ci	psci {
248c2ecf20Sopenharmony_ci		compatible = "arm,psci-0.2";
258c2ecf20Sopenharmony_ci		method = "smc";
268c2ecf20Sopenharmony_ci	};
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_ci	cpus {
298c2ecf20Sopenharmony_ci		#address-cells = <1>;
308c2ecf20Sopenharmony_ci		#size-cells = <0>;
318c2ecf20Sopenharmony_ci
328c2ecf20Sopenharmony_ci		cpu0: cpu@0 {
338c2ecf20Sopenharmony_ci			device_type = "cpu";
348c2ecf20Sopenharmony_ci			compatible = "arm,cortex-a53";
358c2ecf20Sopenharmony_ci			enable-method = "psci";
368c2ecf20Sopenharmony_ci			reg = <0x000>;
378c2ecf20Sopenharmony_ci		};
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ci		cpu1: cpu@1 {
408c2ecf20Sopenharmony_ci			device_type = "cpu";
418c2ecf20Sopenharmony_ci			compatible = "arm,cortex-a53";
428c2ecf20Sopenharmony_ci			enable-method = "psci";
438c2ecf20Sopenharmony_ci			reg = <0x001>;
448c2ecf20Sopenharmony_ci		};
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_ci		cpu2: cpu@2 {
478c2ecf20Sopenharmony_ci			device_type = "cpu";
488c2ecf20Sopenharmony_ci			compatible = "arm,cortex-a53";
498c2ecf20Sopenharmony_ci			enable-method = "psci";
508c2ecf20Sopenharmony_ci			reg = <0x002>;
518c2ecf20Sopenharmony_ci		};
528c2ecf20Sopenharmony_ci
538c2ecf20Sopenharmony_ci		cpu3: cpu@3 {
548c2ecf20Sopenharmony_ci			device_type = "cpu";
558c2ecf20Sopenharmony_ci			compatible = "arm,cortex-a53";
568c2ecf20Sopenharmony_ci			enable-method = "psci";
578c2ecf20Sopenharmony_ci			reg = <0x003>;
588c2ecf20Sopenharmony_ci		};
598c2ecf20Sopenharmony_ci
608c2ecf20Sopenharmony_ci		cpu4: cpu@100 {
618c2ecf20Sopenharmony_ci			device_type = "cpu";
628c2ecf20Sopenharmony_ci			compatible = "arm,cortex-a53";
638c2ecf20Sopenharmony_ci			enable-method = "psci";
648c2ecf20Sopenharmony_ci			reg = <0x100>;
658c2ecf20Sopenharmony_ci		};
668c2ecf20Sopenharmony_ci
678c2ecf20Sopenharmony_ci		cpu5: cpu@101 {
688c2ecf20Sopenharmony_ci			device_type = "cpu";
698c2ecf20Sopenharmony_ci			compatible = "arm,cortex-a53";
708c2ecf20Sopenharmony_ci			enable-method = "psci";
718c2ecf20Sopenharmony_ci			reg = <0x101>;
728c2ecf20Sopenharmony_ci		};
738c2ecf20Sopenharmony_ci
748c2ecf20Sopenharmony_ci		cpu6: cpu@102 {
758c2ecf20Sopenharmony_ci			device_type = "cpu";
768c2ecf20Sopenharmony_ci			compatible = "arm,cortex-a53";
778c2ecf20Sopenharmony_ci			enable-method = "psci";
788c2ecf20Sopenharmony_ci			reg = <0x102>;
798c2ecf20Sopenharmony_ci		};
808c2ecf20Sopenharmony_ci
818c2ecf20Sopenharmony_ci		cpu7: cpu@103 {
828c2ecf20Sopenharmony_ci			device_type = "cpu";
838c2ecf20Sopenharmony_ci			compatible = "arm,cortex-a53";
848c2ecf20Sopenharmony_ci			enable-method = "psci";
858c2ecf20Sopenharmony_ci			reg = <0x103>;
868c2ecf20Sopenharmony_ci		};
878c2ecf20Sopenharmony_ci	};
888c2ecf20Sopenharmony_ci
898c2ecf20Sopenharmony_ci	uart_clk: dummy26m {
908c2ecf20Sopenharmony_ci		compatible = "fixed-clock";
918c2ecf20Sopenharmony_ci		clock-frequency = <26000000>;
928c2ecf20Sopenharmony_ci		#clock-cells = <0>;
938c2ecf20Sopenharmony_ci	};
948c2ecf20Sopenharmony_ci
958c2ecf20Sopenharmony_ci	timer {
968c2ecf20Sopenharmony_ci		compatible = "arm,armv8-timer";
978c2ecf20Sopenharmony_ci		interrupt-parent = <&gic>;
988c2ecf20Sopenharmony_ci		interrupts = <GIC_PPI 13
998c2ecf20Sopenharmony_ci			     (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
1008c2ecf20Sopenharmony_ci			     <GIC_PPI 14
1018c2ecf20Sopenharmony_ci			     (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
1028c2ecf20Sopenharmony_ci			     <GIC_PPI 11
1038c2ecf20Sopenharmony_ci			     (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
1048c2ecf20Sopenharmony_ci			     <GIC_PPI 10
1058c2ecf20Sopenharmony_ci			     (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>;
1068c2ecf20Sopenharmony_ci	};
1078c2ecf20Sopenharmony_ci
1088c2ecf20Sopenharmony_ci	sysirq: intpol-controller@10200620 {
1098c2ecf20Sopenharmony_ci		compatible = "mediatek,mt6755-sysirq",
1108c2ecf20Sopenharmony_ci			     "mediatek,mt6577-sysirq";
1118c2ecf20Sopenharmony_ci		interrupt-controller;
1128c2ecf20Sopenharmony_ci		#interrupt-cells = <3>;
1138c2ecf20Sopenharmony_ci		interrupt-parent = <&gic>;
1148c2ecf20Sopenharmony_ci		reg = <0 0x10200620 0 0x20>;
1158c2ecf20Sopenharmony_ci	};
1168c2ecf20Sopenharmony_ci
1178c2ecf20Sopenharmony_ci	gic: interrupt-controller@10231000 {
1188c2ecf20Sopenharmony_ci		compatible = "arm,gic-400";
1198c2ecf20Sopenharmony_ci		#interrupt-cells = <3>;
1208c2ecf20Sopenharmony_ci		interrupt-parent = <&gic>;
1218c2ecf20Sopenharmony_ci		interrupt-controller;
1228c2ecf20Sopenharmony_ci		reg = <0 0x10231000 0 0x1000>,
1238c2ecf20Sopenharmony_ci		      <0 0x10232000 0 0x2000>,
1248c2ecf20Sopenharmony_ci		      <0 0x10234000 0 0x2000>,
1258c2ecf20Sopenharmony_ci		      <0 0x10236000 0 0x2000>;
1268c2ecf20Sopenharmony_ci	};
1278c2ecf20Sopenharmony_ci
1288c2ecf20Sopenharmony_ci	uart0: serial@11002000 {
1298c2ecf20Sopenharmony_ci		compatible = "mediatek,mt6755-uart",
1308c2ecf20Sopenharmony_ci			     "mediatek,mt6577-uart";
1318c2ecf20Sopenharmony_ci		reg = <0 0x11002000 0 0x400>;
1328c2ecf20Sopenharmony_ci		interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_LOW>;
1338c2ecf20Sopenharmony_ci		clocks = <&uart_clk>;
1348c2ecf20Sopenharmony_ci		status = "disabled";
1358c2ecf20Sopenharmony_ci	};
1368c2ecf20Sopenharmony_ci
1378c2ecf20Sopenharmony_ci	uart1: serial@11003000 {
1388c2ecf20Sopenharmony_ci		compatible = "mediatek,mt6755-uart",
1398c2ecf20Sopenharmony_ci			     "mediatek,mt6577-uart";
1408c2ecf20Sopenharmony_ci		reg = <0 0x11003000 0 0x400>;
1418c2ecf20Sopenharmony_ci		interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_LOW>;
1428c2ecf20Sopenharmony_ci		clocks = <&uart_clk>;
1438c2ecf20Sopenharmony_ci		status = "disabled";
1448c2ecf20Sopenharmony_ci	};
1458c2ecf20Sopenharmony_ci};
146