Linux Audio

Check our new training course

Loading...
  1// SPDX-License-Identifier: GPL-2.0-or-later
  2/*
  3 * Copyright (c) 2015 HiSilicon Technologies Co., Ltd.
  4 */
  5
  6#include <dt-bindings/clock/hi3519-clock.h>
  7#include <dt-bindings/interrupt-controller/arm-gic.h>
  8/ {
  9	#address-cells = <1>;
 10	#size-cells = <1>;
 11	chosen { };
 12
 13	cpus {
 14		#address-cells = <1>;
 15		#size-cells = <0>;
 16
 17		cpu@0 {
 18			device_type = "cpu";
 19			compatible = "arm,cortex-a7";
 20			reg = <0>;
 21		};
 22	};
 23
 24	gic: interrupt-controller@10300000 {
 25		compatible = "arm,cortex-a7-gic";
 26		#interrupt-cells = <3>;
 27		interrupt-controller;
 28		reg = <0x10301000 0x1000>, <0x10302000 0x1000>;
 29	};
 30
 31	clk_3m: clk_3m {
 32		compatible = "fixed-clock";
 33		#clock-cells = <0>;
 34		clock-frequency = <3000000>;
 35	};
 36
 37	crg: clock-reset-controller@12010000 {
 38		compatible = "hisilicon,hi3519-crg";
 39		#clock-cells = <1>;
 40		#reset-cells = <2>;
 41		reg = <0x12010000 0x10000>;
 42	};
 43
 44	soc {
 45		#address-cells = <1>;
 46		#size-cells = <1>;
 47		compatible = "simple-bus";
 48		interrupt-parent = <&gic>;
 49		ranges;
 50
 51		uart0: serial@12100000 {
 52			compatible = "arm,pl011", "arm,primecell";
 53			reg = <0x12100000 0x1000>;
 54			interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
 55			clocks = <&crg HI3519_UART0_CLK>, <&crg HI3519_UART0_CLK>;
 56			clock-names = "uartclk", "apb_pclk";
 57			status = "disabled";
 58		};
 59
 60		uart1: serial@12101000 {
 61			compatible = "arm,pl011", "arm,primecell";
 62			reg = <0x12101000 0x1000>;
 63			interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
 64			clocks = <&crg HI3519_UART1_CLK>, <&crg HI3519_UART1_CLK>;
 65			clock-names = "uartclk", "apb_pclk";
 66			status = "disabled";
 67		};
 68
 69		uart2: serial@12102000 {
 70			compatible = "arm,pl011", "arm,primecell";
 71			reg = <0x12102000 0x1000>;
 72			interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>;
 73			clocks = <&crg HI3519_UART2_CLK>, <&crg HI3519_UART2_CLK>;
 74			clock-names = "uartclk", "apb_pclk";
 75			status = "disabled";
 76		};
 77
 78		uart3: serial@12103000 {
 79			compatible = "arm,pl011", "arm,primecell";
 80			reg = <0x12103000 0x1000>;
 81			interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
 82			clocks = <&crg HI3519_UART3_CLK>, <&crg HI3519_UART3_CLK>;
 83			clock-names = "uartclk", "apb_pclk";
 84			status = "disabled";
 85		};
 86
 87		uart4: serial@12104000 {
 88			compatible = "arm,pl011", "arm,primecell";
 89			reg = <0x12104000 0x1000>;
 90			interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
 91			clocks = <&crg HI3519_UART4_CLK>, <&crg HI3519_UART4_CLK>;
 92			clock-names = "uartclk", "apb_pclk";
 93			status = "disabled";
 94		};
 95
 96		dual_timer0: timer@12000000 {
 97			compatible = "arm,sp804", "arm,primecell";
 98			interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>,
 99				     <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
100			reg = <0x12000000 0x1000>;
101			clocks = <&clk_3m>;
102			clock-names = "apb_pclk";
103			status = "disabled";
104		};
105
106		dual_timer1: timer@12001000 {
107			compatible = "arm,sp804", "arm,primecell";
108			interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>,
109				     <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>;
110			reg = <0x12001000 0x1000>;
111			clocks = <&clk_3m>;
112			clock-names = "apb_pclk";
113			status = "disabled";
114		};
115
116		dual_timer2: timer@12002000 {
117			compatible = "arm,sp804", "arm,primecell";
118			interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>,
119				     <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
120			reg = <0x12002000 0x1000>;
121			clocks = <&clk_3m>;
122			clock-names = "apb_pclk";
123			status = "disabled";
124		};
125
126		spi_bus0: spi@12120000 {
127			compatible = "arm,pl022", "arm,primecell";
128			reg = <0x12120000 0x1000>;
129			interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
130			clocks = <&crg HI3519_SPI0_CLK>, <&crg HI3519_SPI0_CLK>;
131			clock-names = "sspclk", "apb_pclk";
132			num-cs = <1>;
133			#address-cells = <1>;
134			#size-cells = <0>;
135			status = "disabled";
136		};
137
138		spi_bus1: spi@12121000 {
139			compatible = "arm,pl022", "arm,primecell";
140			reg = <0x12121000 0x1000>;
141			interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
142			clocks = <&crg HI3519_SPI1_CLK>, <&crg HI3519_SPI1_CLK>;
143			clock-names = "sspclk", "apb_pclk";
144			num-cs = <1>;
145			#address-cells = <1>;
146			#size-cells = <0>;
147			status = "disabled";
148		};
149
150		spi_bus2: spi@12122000 {
151			compatible = "arm,pl022", "arm,primecell";
152			reg = <0x12122000 0x1000>;
153			interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
154			clocks = <&crg HI3519_SPI2_CLK>, <&crg HI3519_SPI2_CLK>;
155			clock-names = "sspclk", "apb_pclk";
156			num-cs = <1>;
157			#address-cells = <1>;
158			#size-cells = <0>;
159			status = "disabled";
160		};
161
162		sysctrl: system-controller@12020000 {
163			compatible = "hisilicon,hi3519-sysctrl", "syscon";
164			reg = <0x12020000 0x1000>;
165		};
166
167		reboot {
168			compatible = "syscon-reboot";
169			regmap = <&sysctrl>;
170			offset = <0x4>;
171			mask = <0xdeadbeef>;
172		};
173	};
174};