Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
0002 
0003 #include <dt-bindings/interrupt-controller/irq.h>
0004 #include <dt-bindings/interrupt-controller/arm-gic.h>
0005 #include <dt-bindings/gpio/gpio.h>
0006 #include <dt-bindings/clock/en7523-clk.h>
0007 
0008 / {
0009         interrupt-parent = <&gic>;
0010         #address-cells = <1>;
0011         #size-cells = <1>;
0012 
0013         reserved-memory {
0014                 #address-cells = <1>;
0015                 #size-cells = <1>;
0016                 ranges;
0017 
0018                 npu_binary@84000000 {
0019                         no-map;
0020                         reg = <0x84000000 0xA00000>;
0021                 };
0022 
0023                 npu_flag@84B0000 {
0024                         no-map;
0025                         reg = <0x84B00000 0x100000>;
0026                 };
0027 
0028                 npu_pkt@85000000 {
0029                         no-map;
0030                         reg = <0x85000000 0x1A00000>;
0031                 };
0032 
0033                 npu_phyaddr@86B00000 {
0034                         no-map;
0035                         reg = <0x86B00000 0x100000>;
0036                 };
0037 
0038                 npu_rxdesc@86D00000 {
0039                         no-map;
0040                         reg = <0x86D00000 0x100000>;
0041                 };
0042         };
0043 
0044         psci {
0045                 compatible = "arm,psci-0.2";
0046                 method = "smc";
0047         };
0048 
0049         cpus {
0050                 #address-cells = <1>;
0051                 #size-cells = <0>;
0052 
0053                 cpu-map {
0054                         cluster0 {
0055                                 core0 {
0056                                         cpu = <&cpu0>;
0057                                 };
0058                                 core1 {
0059                                         cpu = <&cpu1>;
0060                                 };
0061                         };
0062                 };
0063 
0064                 cpu0: cpu@0 {
0065                         device_type = "cpu";
0066                         compatible = "arm,cortex-a53";
0067                         reg = <0x0>;
0068                         enable-method = "psci";
0069                         clock-frequency = <80000000>;
0070                         next-level-cache = <&L2_0>;
0071                 };
0072 
0073                 cpu1: cpu@1 {
0074                         device_type = "cpu";
0075                         compatible = "arm,cortex-a53";
0076                         reg = <0x1>;
0077                         enable-method = "psci";
0078                         clock-frequency = <80000000>;
0079                         next-level-cache = <&L2_0>;
0080                 };
0081 
0082                 L2_0: l2-cache0 {
0083                         compatible = "cache";
0084                 };
0085         };
0086 
0087         scu: system-controller@1fa20000 {
0088                 compatible = "airoha,en7523-scu";
0089                 reg = <0x1fa20000 0x400>,
0090                       <0x1fb00000 0x1000>;
0091                 #clock-cells = <1>;
0092         };
0093 
0094         gic: interrupt-controller@9000000 {
0095                 compatible = "arm,gic-v3";
0096                 interrupt-controller;
0097                 #interrupt-cells = <3>;
0098                 #address-cells = <1>;
0099                 #size-cells = <1>;
0100                 reg = <0x09000000 0x20000>,
0101                       <0x09080000 0x80000>,
0102                       <0x09400000 0x2000>,
0103                       <0x09500000 0x2000>,
0104                       <0x09600000 0x20000>;
0105                 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_LOW>;
0106         };
0107 
0108         timer {
0109                 compatible = "arm,armv8-timer";
0110                 interrupt-parent = <&gic>;
0111                 interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>,
0112                              <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>,
0113                              <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>,
0114                              <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>;
0115         };
0116 
0117         uart1: serial@1fbf0000 {
0118                 compatible = "ns16550";
0119                 reg = <0x1fbf0000 0x30>;
0120                 reg-io-width = <4>;
0121                 reg-shift = <2>;
0122                 interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>;
0123                 clock-frequency = <1843200>;
0124                 status = "okay";
0125         };
0126 
0127         gpio0: gpio@1fbf0200 {
0128                 compatible = "airoha,en7523-gpio";
0129                 reg = <0x1fbf0204 0x4>,
0130                       <0x1fbf0200 0x4>,
0131                       <0x1fbf0220 0x4>,
0132                       <0x1fbf0214 0x4>;
0133                 gpio-controller;
0134                 #gpio-cells = <2>;
0135         };
0136 
0137         gpio1: gpio@1fbf0270 {
0138                 compatible = "airoha,en7523-gpio";
0139                 reg = <0x1fbf0270 0x4>,
0140                       <0x1fbf0260 0x4>,
0141                       <0x1fbf0264 0x4>,
0142                       <0x1fbf0278 0x4>;
0143                 gpio-controller;
0144                 #gpio-cells = <2>;
0145         };
0146 
0147         pcie0: pcie@1fa91000 {
0148                 compatible = "airoha,en7523-pcie", "mediatek,mt7622-pcie";
0149                 device_type = "pci";
0150                 reg = <0x1fa91000 0x1000>;
0151                 reg-names = "port0";
0152                 linux,pci-domain = <0>;
0153                 #address-cells = <3>;
0154                 #size-cells = <2>;
0155                 interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
0156                 interrupt-names = "pcie_irq";
0157                 clocks = <&scu EN7523_CLK_PCIE>;
0158                 clock-names = "sys_ck0";
0159                 bus-range = <0x00 0xff>;
0160                 ranges = <0x82000000 0 0x20000000  0x20000000  0 0x8000000>;
0161                 status = "disabled";
0162 
0163                 #interrupt-cells = <1>;
0164                 interrupt-map-mask = <0 0 0 7>;
0165                 interrupt-map = <0 0 0 1 &pcie_intc0 0>,
0166                                 <0 0 0 2 &pcie_intc0 1>,
0167                                 <0 0 0 3 &pcie_intc0 2>,
0168                                 <0 0 0 4 &pcie_intc0 3>;
0169                 pcie_intc0: interrupt-controller {
0170                         interrupt-controller;
0171                         #address-cells = <0>;
0172                         #interrupt-cells = <1>;
0173                 };
0174         };
0175 
0176         pcie1: pcie@1fa92000 {
0177                 compatible = "airoha,en7523-pcie", "mediatek,mt7622-pcie";
0178                 device_type = "pci";
0179                 reg = <0x1fa92000 0x1000>;
0180                 reg-names = "port1";
0181                 linux,pci-domain = <1>;
0182                 #address-cells = <3>;
0183                 #size-cells = <2>;
0184                 interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
0185                 interrupt-names = "pcie_irq";
0186                 clocks = <&scu EN7523_CLK_PCIE>;
0187                 clock-names = "sys_ck1";
0188                 bus-range = <0x00 0xff>;
0189                 ranges = <0x82000000 0 0x28000000  0x28000000  0 0x8000000>;
0190                 status = "disabled";
0191 
0192                 #interrupt-cells = <1>;
0193                 interrupt-map-mask = <0 0 0 7>;
0194                 interrupt-map = <0 0 0 1 &pcie_intc1 0>,
0195                                 <0 0 0 2 &pcie_intc1 1>,
0196                                 <0 0 0 3 &pcie_intc1 2>,
0197                                 <0 0 0 4 &pcie_intc1 3>;
0198                 pcie_intc1: interrupt-controller {
0199                         interrupt-controller;
0200                         #address-cells = <0>;
0201                         #interrupt-cells = <1>;
0202                 };
0203         };
0204 };