18c2ecf20Sopenharmony_ci/*
28c2ecf20Sopenharmony_ci * Copyright (c) 2015 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,mt6795";
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	system_clk: dummy13m {
908c2ecf20Sopenharmony_ci		compatible = "fixed-clock";
918c2ecf20Sopenharmony_ci		clock-frequency = <13000000>;
928c2ecf20Sopenharmony_ci		#clock-cells = <0>;
938c2ecf20Sopenharmony_ci	};
948c2ecf20Sopenharmony_ci
958c2ecf20Sopenharmony_ci	rtc_clk: dummy32k {
968c2ecf20Sopenharmony_ci		compatible = "fixed-clock";
978c2ecf20Sopenharmony_ci		clock-frequency = <32000>;
988c2ecf20Sopenharmony_ci		#clock-cells = <0>;
998c2ecf20Sopenharmony_ci	};
1008c2ecf20Sopenharmony_ci
1018c2ecf20Sopenharmony_ci	uart_clk: dummy26m {
1028c2ecf20Sopenharmony_ci		compatible = "fixed-clock";
1038c2ecf20Sopenharmony_ci		clock-frequency = <26000000>;
1048c2ecf20Sopenharmony_ci		#clock-cells = <0>;
1058c2ecf20Sopenharmony_ci	};
1068c2ecf20Sopenharmony_ci
1078c2ecf20Sopenharmony_ci	timer {
1088c2ecf20Sopenharmony_ci		compatible = "arm,armv8-timer";
1098c2ecf20Sopenharmony_ci		interrupt-parent = <&gic>;
1108c2ecf20Sopenharmony_ci		interrupts = <GIC_PPI 13
1118c2ecf20Sopenharmony_ci			     (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
1128c2ecf20Sopenharmony_ci			     <GIC_PPI 14
1138c2ecf20Sopenharmony_ci			     (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
1148c2ecf20Sopenharmony_ci			     <GIC_PPI 11
1158c2ecf20Sopenharmony_ci			     (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
1168c2ecf20Sopenharmony_ci			     <GIC_PPI 10
1178c2ecf20Sopenharmony_ci			     (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>;
1188c2ecf20Sopenharmony_ci	};
1198c2ecf20Sopenharmony_ci
1208c2ecf20Sopenharmony_ci	sysirq: intpol-controller@10200620 {
1218c2ecf20Sopenharmony_ci		compatible = "mediatek,mt6795-sysirq",
1228c2ecf20Sopenharmony_ci			     "mediatek,mt6577-sysirq";
1238c2ecf20Sopenharmony_ci		interrupt-controller;
1248c2ecf20Sopenharmony_ci		#interrupt-cells = <3>;
1258c2ecf20Sopenharmony_ci		interrupt-parent = <&gic>;
1268c2ecf20Sopenharmony_ci		reg = <0 0x10200620 0 0x20>;
1278c2ecf20Sopenharmony_ci	};
1288c2ecf20Sopenharmony_ci
1298c2ecf20Sopenharmony_ci	gic: interrupt-controller@10221000 {
1308c2ecf20Sopenharmony_ci		compatible = "arm,gic-400";
1318c2ecf20Sopenharmony_ci		#interrupt-cells = <3>;
1328c2ecf20Sopenharmony_ci		interrupt-parent = <&gic>;
1338c2ecf20Sopenharmony_ci		interrupt-controller;
1348c2ecf20Sopenharmony_ci		reg = <0 0x10221000 0 0x1000>,
1358c2ecf20Sopenharmony_ci		      <0 0x10222000 0 0x2000>,
1368c2ecf20Sopenharmony_ci		      <0 0x10224000 0 0x2000>,
1378c2ecf20Sopenharmony_ci		      <0 0x10226000 0 0x2000>;
1388c2ecf20Sopenharmony_ci	};
1398c2ecf20Sopenharmony_ci
1408c2ecf20Sopenharmony_ci	uart0: serial@11002000 {
1418c2ecf20Sopenharmony_ci		compatible = "mediatek,mt6795-uart",
1428c2ecf20Sopenharmony_ci			     "mediatek,mt6577-uart";
1438c2ecf20Sopenharmony_ci		reg = <0 0x11002000 0 0x400>;
1448c2ecf20Sopenharmony_ci		interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_LOW>;
1458c2ecf20Sopenharmony_ci		clocks = <&uart_clk>;
1468c2ecf20Sopenharmony_ci		status = "disabled";
1478c2ecf20Sopenharmony_ci	};
1488c2ecf20Sopenharmony_ci
1498c2ecf20Sopenharmony_ci	uart1: serial@11003000 {
1508c2ecf20Sopenharmony_ci		compatible = "mediatek,mt6795-uart",
1518c2ecf20Sopenharmony_ci			     "mediatek,mt6577-uart";
1528c2ecf20Sopenharmony_ci		reg = <0 0x11003000 0 0x400>;
1538c2ecf20Sopenharmony_ci		interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_LOW>;
1548c2ecf20Sopenharmony_ci		clocks = <&uart_clk>;
1558c2ecf20Sopenharmony_ci		status = "disabled";
1568c2ecf20Sopenharmony_ci	};
1578c2ecf20Sopenharmony_ci
1588c2ecf20Sopenharmony_ci	uart2: serial@11004000 {
1598c2ecf20Sopenharmony_ci		compatible = "mediatek,mt6795-uart",
1608c2ecf20Sopenharmony_ci			     "mediatek,mt6577-uart";
1618c2ecf20Sopenharmony_ci		reg = <0 0x11004000 0 0x400>;
1628c2ecf20Sopenharmony_ci		interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_LOW>;
1638c2ecf20Sopenharmony_ci		clocks = <&uart_clk>;
1648c2ecf20Sopenharmony_ci		status = "disabled";
1658c2ecf20Sopenharmony_ci	};
1668c2ecf20Sopenharmony_ci
1678c2ecf20Sopenharmony_ci	uart3: serial@11005000 {
1688c2ecf20Sopenharmony_ci		compatible = "mediatek,mt6795-uart",
1698c2ecf20Sopenharmony_ci			     "mediatek,mt6577-uart";
1708c2ecf20Sopenharmony_ci		reg = <0 0x11005000 0 0x400>;
1718c2ecf20Sopenharmony_ci		interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_LOW>;
1728c2ecf20Sopenharmony_ci		clocks = <&uart_clk>;
1738c2ecf20Sopenharmony_ci		status = "disabled";
1748c2ecf20Sopenharmony_ci	};
1758c2ecf20Sopenharmony_ci};
176