Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0
0002 // Copyright (c) 2021 Nuvoton Technology tomer.maimon@nuvoton.com
0003 
0004 #include <dt-bindings/clock/nuvoton,npcm845-clk.h>
0005 #include <dt-bindings/interrupt-controller/arm-gic.h>
0006 #include <dt-bindings/interrupt-controller/irq.h>
0007 
0008 / {
0009         #address-cells = <2>;
0010         #size-cells = <2>;
0011         interrupt-parent = <&gic>;
0012 
0013         soc {
0014                 #address-cells = <2>;
0015                 #size-cells = <2>;
0016                 compatible = "simple-bus";
0017                 interrupt-parent = <&gic>;
0018                 ranges;
0019 
0020                 gcr: system-controller@f0800000 {
0021                         compatible = "nuvoton,npcm845-gcr", "syscon";
0022                         reg = <0x0 0xf0800000 0x0 0x1000>;
0023                 };
0024 
0025                 gic: interrupt-controller@dfff9000 {
0026                         compatible = "arm,gic-400";
0027                         reg = <0x0 0xdfff9000 0x0 0x1000>,
0028                               <0x0 0xdfffa000 0x0 0x2000>,
0029                               <0x0 0xdfffc000 0x0 0x2000>,
0030                               <0x0 0xdfffe000 0x0 0x2000>;
0031                         interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
0032                         #interrupt-cells = <3>;
0033                         interrupt-controller;
0034                         #address-cells = <0>;
0035                         ppi-partitions {
0036                                 ppi_cluster0: interrupt-partition-0 {
0037                                         affinity = <&cpu0 &cpu1 &cpu2 &cpu3>;
0038                                 };
0039                         };
0040                 };
0041         };
0042 
0043         ahb {
0044                 #address-cells = <2>;
0045                 #size-cells = <2>;
0046                 compatible = "simple-bus";
0047                 interrupt-parent = <&gic>;
0048                 ranges;
0049 
0050                 rstc: reset-controller@f0801000 {
0051                         compatible = "nuvoton,npcm845-reset";
0052                         reg = <0x0 0xf0801000 0x0 0x78>;
0053                         #reset-cells = <2>;
0054                         nuvoton,sysgcr = <&gcr>;
0055                 };
0056 
0057                 clk: clock-controller@f0801000 {
0058                         compatible = "nuvoton,npcm845-clk";
0059                         #clock-cells = <1>;
0060                         reg = <0x0 0xf0801000 0x0 0x1000>;
0061                 };
0062 
0063                 apb {
0064                         #address-cells = <1>;
0065                         #size-cells = <1>;
0066                         compatible = "simple-bus";
0067                         interrupt-parent = <&gic>;
0068                         ranges = <0x0 0x0 0xf0000000 0x00300000>,
0069                                 <0xfff00000 0x0 0xfff00000 0x00016000>;
0070 
0071                         timer0: timer@8000 {
0072                                 compatible = "nuvoton,npcm845-timer";
0073                                 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
0074                                 reg = <0x8000 0x1C>;
0075                                 clocks = <&clk NPCM8XX_CLK_REFCLK>;
0076                                 clock-names = "refclk";
0077                         };
0078 
0079                         serial0: serial@0 {
0080                                 compatible = "nuvoton,npcm845-uart", "nuvoton,npcm750-uart";
0081                                 reg = <0x0 0x1000>;
0082                                 clocks = <&clk NPCM8XX_CLK_UART>;
0083                                 interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>;
0084                                 reg-shift = <2>;
0085                                 status = "disabled";
0086                         };
0087 
0088                         serial1: serial@1000 {
0089                                 compatible = "nuvoton,npcm845-uart", "nuvoton,npcm750-uart";
0090                                 reg = <0x1000 0x1000>;
0091                                 clocks = <&clk NPCM8XX_CLK_UART>;
0092                                 interrupts = <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>;
0093                                 reg-shift = <2>;
0094                                 status = "disabled";
0095                         };
0096 
0097                         serial2: serial@2000 {
0098                                 compatible = "nuvoton,npcm845-uart", "nuvoton,npcm750-uart";
0099                                 reg = <0x2000 0x1000>;
0100                                 clocks = <&clk NPCM8XX_CLK_UART>;
0101                                 interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>;
0102                                 reg-shift = <2>;
0103                                 status = "disabled";
0104                         };
0105 
0106                         serial3: serial@3000 {
0107                                 compatible = "nuvoton,npcm845-uart", "nuvoton,npcm750-uart";
0108                                 reg = <0x3000 0x1000>;
0109                                 clocks = <&clk NPCM8XX_CLK_UART>;
0110                                 interrupts = <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>;
0111                                 reg-shift = <2>;
0112                                 status = "disabled";
0113                         };
0114 
0115                         serial4: serial@4000 {
0116                                 compatible = "nuvoton,npcm845-uart", "nuvoton,npcm750-uart";
0117                                 reg = <0x4000 0x1000>;
0118                                 clocks = <&clk NPCM8XX_CLK_UART>;
0119                                 interrupts = <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>;
0120                                 reg-shift = <2>;
0121                                 status = "disabled";
0122                         };
0123 
0124                         serial5: serial@5000 {
0125                                 compatible = "nuvoton,npcm845-uart", "nuvoton,npcm750-uart";
0126                                 reg = <0x5000 0x1000>;
0127                                 clocks = <&clk NPCM8XX_CLK_UART>;
0128                                 interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>;
0129                                 reg-shift = <2>;
0130                                 status = "disabled";
0131                         };
0132 
0133                         serial6: serial@6000 {
0134                                 compatible = "nuvoton,npcm845-uart", "nuvoton,npcm750-uart";
0135                                 reg = <0x6000 0x1000>;
0136                                 clocks = <&clk NPCM8XX_CLK_UART>;
0137                                 interrupts = <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>;
0138                                 reg-shift = <2>;
0139                                 status = "disabled";
0140                         };
0141 
0142                         watchdog0: watchdog@801c {
0143                                 compatible = "nuvoton,npcm845-wdt", "nuvoton,npcm750-wdt";
0144                                 interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
0145                                 reg = <0x801c 0x4>;
0146                                 status = "disabled";
0147                                 clocks = <&clk NPCM8XX_CLK_REFCLK>;
0148                                 syscon = <&gcr>;
0149                         };
0150 
0151                         watchdog1: watchdog@901c {
0152                                 compatible = "nuvoton,npcm845-wdt", "nuvoton,npcm750-wdt";
0153                                 interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
0154                                 reg = <0x901c 0x4>;
0155                                 status = "disabled";
0156                                 clocks = <&clk NPCM8XX_CLK_REFCLK>;
0157                                 syscon = <&gcr>;
0158                         };
0159 
0160                         watchdog2: watchdog@a01c {
0161                                 compatible = "nuvoton,npcm845-wdt", "nuvoton,npcm750-wdt";
0162                                 interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
0163                                 reg = <0xa01c 0x4>;
0164                                 status = "disabled";
0165                                 clocks = <&clk NPCM8XX_CLK_REFCLK>;
0166                                 syscon = <&gcr>;
0167                         };
0168                 };
0169         };
0170 };