Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0-or-later
0002 /*
0003  * Copyright (c) 2015 HiSilicon Technologies Co., Ltd.
0004  */
0005 
0006 #include <dt-bindings/clock/hi3519-clock.h>
0007 #include <dt-bindings/interrupt-controller/arm-gic.h>
0008 / {
0009         #address-cells = <1>;
0010         #size-cells = <1>;
0011         chosen { };
0012 
0013         cpus {
0014                 #address-cells = <1>;
0015                 #size-cells = <0>;
0016 
0017                 cpu@0 {
0018                         device_type = "cpu";
0019                         compatible = "arm,cortex-a7";
0020                         reg = <0>;
0021                 };
0022         };
0023 
0024         gic: interrupt-controller@10300000 {
0025                 compatible = "arm,cortex-a7-gic";
0026                 #interrupt-cells = <3>;
0027                 interrupt-controller;
0028                 reg = <0x10301000 0x1000>, <0x10302000 0x1000>;
0029         };
0030 
0031         clk_3m: clk_3m {
0032                 compatible = "fixed-clock";
0033                 #clock-cells = <0>;
0034                 clock-frequency = <3000000>;
0035         };
0036 
0037         crg: clock-reset-controller@12010000 {
0038                 compatible = "hisilicon,hi3519-crg";
0039                 #clock-cells = <1>;
0040                 #reset-cells = <2>;
0041                 reg = <0x12010000 0x10000>;
0042         };
0043 
0044         soc {
0045                 #address-cells = <1>;
0046                 #size-cells = <1>;
0047                 compatible = "simple-bus";
0048                 interrupt-parent = <&gic>;
0049                 ranges;
0050 
0051                 uart0: serial@12100000 {
0052                         compatible = "arm,pl011", "arm,primecell";
0053                         reg = <0x12100000 0x1000>;
0054                         interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
0055                         clocks = <&crg HI3519_UART0_CLK>, <&crg HI3519_UART0_CLK>;
0056                         clock-names = "uartclk", "apb_pclk";
0057                         status = "disable";
0058                 };
0059 
0060                 uart1: serial@12101000 {
0061                         compatible = "arm,pl011", "arm,primecell";
0062                         reg = <0x12101000 0x1000>;
0063                         interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
0064                         clocks = <&crg HI3519_UART1_CLK>, <&crg HI3519_UART1_CLK>;
0065                         clock-names = "uartclk", "apb_pclk";
0066                         status = "disable";
0067                 };
0068 
0069                 uart2: serial@12102000 {
0070                         compatible = "arm,pl011", "arm,primecell";
0071                         reg = <0x12102000 0x1000>;
0072                         interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>;
0073                         clocks = <&crg HI3519_UART2_CLK>, <&crg HI3519_UART2_CLK>;
0074                         clock-names = "uartclk", "apb_pclk";
0075                         status = "disable";
0076                 };
0077 
0078                 uart3: serial@12103000 {
0079                         compatible = "arm,pl011", "arm,primecell";
0080                         reg = <0x12103000 0x1000>;
0081                         interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
0082                         clocks = <&crg HI3519_UART3_CLK>, <&crg HI3519_UART3_CLK>;
0083                         clock-names = "uartclk", "apb_pclk";
0084                         status = "disable";
0085                 };
0086 
0087                 uart4: serial@12104000 {
0088                         compatible = "arm,pl011", "arm,primecell";
0089                         reg = <0x12104000 0x1000>;
0090                         interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
0091                         clocks = <&crg HI3519_UART4_CLK>, <&crg HI3519_UART4_CLK>;
0092                         clock-names = "uartclk", "apb_pclk";
0093                         status = "disable";
0094                 };
0095 
0096                 dual_timer0: timer@12000000 {
0097                         compatible = "arm,sp804", "arm,primecell";
0098                         interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>,
0099                                      <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
0100                         reg = <0x12000000 0x1000>;
0101                         clocks = <&clk_3m>;
0102                         clock-names = "apb_pclk";
0103                         status = "disable";
0104                 };
0105 
0106                 dual_timer1: timer@12001000 {
0107                         compatible = "arm,sp804", "arm,primecell";
0108                         interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>,
0109                                      <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>;
0110                         reg = <0x12001000 0x1000>;
0111                         clocks = <&clk_3m>;
0112                         clock-names = "apb_pclk";
0113                         status = "disable";
0114                 };
0115 
0116                 dual_timer2: timer@12002000 {
0117                         compatible = "arm,sp804", "arm,primecell";
0118                         interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>,
0119                                      <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
0120                         reg = <0x12002000 0x1000>;
0121                         clocks = <&clk_3m>;
0122                         clock-names = "apb_pclk";
0123                         status = "disable";
0124                 };
0125 
0126                 spi_bus0: spi@12120000 {
0127                         compatible = "arm,pl022", "arm,primecell";
0128                         reg = <0x12120000 0x1000>;
0129                         interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
0130                         clocks = <&crg HI3519_SPI0_CLK>, <&crg HI3519_SPI0_CLK>;
0131                         clock-names = "sspclk", "apb_pclk";
0132                         num-cs = <1>;
0133                         #address-cells = <1>;
0134                         #size-cells = <0>;
0135                         status = "disable";
0136                 };
0137 
0138                 spi_bus1: spi@12121000 {
0139                         compatible = "arm,pl022", "arm,primecell";
0140                         reg = <0x12121000 0x1000>;
0141                         interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
0142                         clocks = <&crg HI3519_SPI1_CLK>, <&crg HI3519_SPI1_CLK>;
0143                         clock-names = "sspclk", "apb_pclk";
0144                         num-cs = <1>;
0145                         #address-cells = <1>;
0146                         #size-cells = <0>;
0147                         status = "disable";
0148                 };
0149 
0150                 spi_bus2: spi@12122000 {
0151                         compatible = "arm,pl022", "arm,primecell";
0152                         reg = <0x12122000 0x1000>;
0153                         interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
0154                         clocks = <&crg HI3519_SPI2_CLK>, <&crg HI3519_SPI2_CLK>;
0155                         clock-names = "sspclk", "apb_pclk";
0156                         num-cs = <1>;
0157                         #address-cells = <1>;
0158                         #size-cells = <0>;
0159                         status = "disable";
0160                 };
0161 
0162                 sysctrl: system-controller@12020000 {
0163                         compatible = "hisilicon,hi3519-sysctrl", "syscon";
0164                         reg = <0x12020000 0x1000>;
0165                 };
0166 
0167                 reboot {
0168                         compatible = "syscon-reboot";
0169                         regmap = <&sysctrl>;
0170                         offset = <0x4>;
0171                         mask = <0xdeadbeef>;
0172                 };
0173         };
0174 };