From 4489e41ff4205456d47b2d871c4106cd9f6ec5fd Mon Sep 17 00:00:00 2001 From: Lukasz Kotasa <lukasz.kotasa@iopsys.eu> Date: Tue, 25 Jan 2022 12:06:17 +0100 Subject: [PATCH] iopsys-econet: Arcee and Rodimus dts files copy of: en7523.dts file --- iopsys-econet/dts/arcee.dts | 486 ++++++++++++++++++++++++++++++++++ iopsys-econet/dts/rodimus.dts | 486 ++++++++++++++++++++++++++++++++++ 2 files changed, 972 insertions(+) create mode 100755 iopsys-econet/dts/arcee.dts create mode 100755 iopsys-econet/dts/rodimus.dts diff --git a/iopsys-econet/dts/arcee.dts b/iopsys-econet/dts/arcee.dts new file mode 100755 index 000000000..3db333271 --- /dev/null +++ b/iopsys-econet/dts/arcee.dts @@ -0,0 +1,486 @@ + + +#include <dt-bindings/interrupt-controller/irq.h> +#include <dt-bindings/interrupt-controller/arm-gic.h> + +/dts-v1/; + +/ { + compatible = "econet,en7523"; + interrupt-parent = <&gic>; + #address-cells = <1>; + #size-cells = <1>; + + chosen { + bootargs = "root=/dev/mtdblock3 ro console=ttyS0,115200n8 earlycon init=/sbin/init"; + stdout-path = &uart1; + }; + + reserved-memory { + #address-cells = <1>; + #size-cells = <1>; + ranges; + + atf-reserved-memory@80000000 { + compatible = "econet,en7523-atf-reserved-memory"; + no-map; + reg = <0x80000000 0x40000>; + }; + + npu_reserved: npu_binary@84000000 { + no-map; + reg = <0x84000000 0x100000>; + }; + + }; + + psci { + compatible = "arm,psci-0.2"; + method = "smc"; + }; + + cpus { + #address-cells = <1>; + #size-cells = <0>; + + cpu-map { + cluster0 { + core0 { + cpu = <&cpu0>; + }; + core1 { + cpu = <&cpu1>; + }; + }; + }; + + cpu0: cpu@0 { + device_type = "cpu"; + compatible = "arm,cortex-a53"; + reg = <0x0>; + enable-method = "psci"; + clock-frequency = <80000000>; + next-level-cache = <&L2_0>; + }; + + cpu1: cpu@1 { + device_type = "cpu"; + compatible = "arm,cortex-a53"; + reg = <0x1>; + enable-method = "psci"; + clock-frequency = <80000000>; + next-level-cache = <&L2_0>; + }; + + L2_0: l2-cache0 { + compatible = "cache"; + }; + }; + + gic: interrupt-controller@09000000 { + compatible = "arm,gic-v3"; + interrupt-controller; + #interrupt-cells = <3>; + #address-cells = <1>; + #size-cells = <1>; + reg = <0x09000000 0x20000>, + <0x09080000 0x80000>; + interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_LOW>; + + its: gic-its@09020000 { + compatible = "arm,gic-v3-its"; + msi-controller; + #msi-cell = <1>; + reg = <0x090200000 0x20000>; + }; + }; + + + timer { + compatible = "arm,armv8-timer"; + interrupt-parent = <&gic>; + interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, + <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, + <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, + <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; + clock-frequency = <25000000>; + }; + + pmu { + //compatible = "arm,armv8-pmuv3"; + compatible = "arm,cortex-a15-pmu"; + interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH>; + }; + + npu@1e800000 { + compatible = "econet,ecnt-npu"; + reg = <0x1e800000 0x60000>, //NPU 384K SRAM + <0x1e900000 0x313000>; //NPU 16K SRAM, Registers + memory-region = <&npu_reserved>; + interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, // 102+16 tr done + <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>, // 105+16 hadap irq0 + <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>; //mbox2host irq + }; + + apb_timer1: apb_timer1@1fbf0100 { + compatible = "econet,ecnt-timer"; + reg = <0x1fbf0100 0x40>; + interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; + }; + + memory@80000000 { + device_type = "memory"; + reg = <0x80000000 0x40000000>; + }; + + rbus@1fa00000 { + compatible = "econet,ecnt-rbus"; + reg = <0x1fa00000 0x1000>; //RBus Core + }; + + sram@1fa40000 { + compatible = "econet,ecnt-sram"; + reg = <0x1fa40000 0x8000>, //GDMP SRAM + <0x08000000 0x40000>, //L2C SRAM (only for CPU internal access) + <0x1EFC0000 0x40000>, //L2C SRAM (only for CPU/NPU/GDMA/SPI/Crypto/WOE external access via pbus) + <0x1E880000 0x40000>, //L2C SRAM (only for CPU/NPU/HSDMA/PCIE external access via npu_rbus) + <0x1fbe3000 0x200>; //I2C_SLAVE SRAM + }; + + scu@1fb00000 { + compatible = "econet,ecnt-scu"; + reg = <0x1fb00000 0x960>, //NP SCU + <0x1fa20000 0x360>, //CHIP SCU + <0x1fa2FF30 0x10>; //Rbus clk ctl for FPGA + interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>; + }; + + pcie@0x1fa91000 { + compatible = "ecnt,pcie-en7523"; + device_type = "pci"; + reg = <0x1fa91000 0x1000>, + <0x1fa92000 0x1000>, + <0x1fa90000 0x1000>, /* pcie top*/ + <0x1a100000 0x1000>, /* switch lane */ + <0x1a148000 0x1000>, /* 4, rc0 phy base, for change xtal setting */ + <0x1a14a000 0x1000>; /* 5, rc1 phy base, for change xtal setting */ + interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>, //23+16 + <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>; //24+16 + bus-range = <0x00 0xff>; + #address-cells = <3>; + #size-cells = <2>; + /* change xtal for 40M, default is 25M */ + /* change-xtal; */ + /* disable io coherent for RC and EP default. */ + /*dma-coherent;*/ + ranges = <0x82000000 0 0x20000000 0x20000000 0 0x10000000>; + + pcie0: pcie@0,0 { + device_type = "pci"; + reg = <0x0000 0 0 0 0>; + #address-cells = <3>; + #size-cells = <2>; + #interrupt-cells = <1>; + ranges; + interrupt-map-mask = <0 0 0 7>; + interrupt-map = <0 0 0 1 &pcie_intc0 1>, + <0 0 0 2 &pcie_intc0 2>, + <0 0 0 3 &pcie_intc0 3>, + <0 0 0 4 &pcie_intc0 4>; + pcie-port = <0>; + num-lanes = <1>; + status = "okay"; + pcie_intc0: interrupt-controller { + interrupt-controller; + #address-cells = <0>; + #interrupt-cells = <1>; + }; + }; + + pcie1: pcie@1,0 { + device_type = "pci"; + reg = <0x0800 0 0 0 0>; + #address-cells = <3>; + #size-cells = <2>; + #interrupt-cells = <1>; + ranges; + interrupt-map-mask = <0 0 0 7>; + interrupt-map = <0 0 0 1 &pcie_intc1 1>, + <0 0 0 2 &pcie_intc1 2>, + <0 0 0 3 &pcie_intc1 3>, + <0 0 0 4 &pcie_intc1 4>; + pcie-port = <1>; + num-lanes = <1>; + status = "okay"; + pcie_intc1: interrupt-controller { + interrupt-controller; + #address-cells = <0>; + #interrupt-cells = <1>; + }; + }; + }; + + wdma{ + compatible = "en751221,wdma"; + reg = <0x1fa06000 0x400 >, + <0x1fa06400 0x400 >; + interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; + }; + + wed{ + compatible = "en751221,wed"; + wed_num = <2>; + pci_slot_map = <0>, <1>; + reg = <0x1fa02000 0xb00 >, + <0x1fa03000 0xb00 >; + interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>; + }; + + wed2{ + compatible = "en751221,wed2"; + wed_num = <2>; + pci_slot_map = <0>, <1>; + reg = <0x1fa02000 0xb00 >, + <0x1fa03000 0xb00 >; + interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>; + }; + + wed_test{ + compatible = "en751221,wed_test"; + wed_num = <2>; + reg = <0x1fa02b00 0x100 >, + <0x1fa03b00 0x100 >; + }; + + + + i2c@1fbf8000 { + compatible = "econet,ecnt-i2c"; + reg = <0x1fbf8000 0x65>; + }; + + gdump@1fbf9000 { + compatible = "econet,ecnt-gdump"; + reg = <0x1fbf9000 0x84>; + }; + + crypto_k@1fb70000 { + compatible = "econet,ecnt-crypto_k"; + reg = <0x1fb70000 0x804>; + interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>; + }; + + trng@1faa1000 { + compatible = "econet,ecnt-trng"; + reg = <0x1faa1000 0xc04>; + interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; + }; + + gdma@1fb30000 { + compatible = "econet,ecnt-gdma"; + reg = <0x1fb30000 0x2b0>; + }; + + xsi@1fa60000 { + compatible = "econet,ecnt-xsi"; + reg = <0x1fa60000 0x300>, //hsgmii ae + <0x1fa70000 0x300>, //hsgmii pcie0 + <0x1fa71000 0x300>, //hsgmii pcie1 + <0x1fa80000 0x300>; //hsgmii usb + }; + + i2c_slave@1fbe3300 { + compatible = "econet,ecnt-i2c_slave"; + reg = <0x1fbe3300 0x10>; + dev0_addr = <0x60>; + dev1_addr = <0x62>; + interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>; + }; + + uart1: serial@1fbf0000 { + compatible = "econet,ecnt-uart1"; + reg = <0x1fbf0000 0x30>; + interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>; + //status = "disabled"; + }; + uart2: serial@1fbf0300 { + compatible = "econet,ecnt-uart2"; + reg = <0x1fbf0300 0x30>; + interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; + //status = "disabled"; + }; + gpio@1fbf0200 { + compatible = "econet,ecnt-gpio"; + reg = <0x1fbf0200 0x80>; + }; + + spi_ctrl: spi_controller@1fa10000 { + compatible = "econet,ecnt-spi_ctrl"; + reg = <0x1fa10000 0x140>, //SPI Controller Base + <0x00000000 0x1000>; //SPI Controller auto read interrupt test + interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; + }; + + spi_spi2nfi: spi_spi2nfi@1fa11000 { + compatible = "econet,ecnt-spi2nfi"; + reg = <0x1fa11000 0x160>; //NFI2SPI + }; + + spi_ecc: spi_ecc@1fa12000 { + compatible = "econet,ecnt-spi_ecc"; + reg = <0x1fa12000 0x150>; //NFI ECC + }; + + frame_engine: frame_engine@1fb50000 { + compatible = "econet,ecnt-frame_engine"; + reg = <0x1fb50000 0x2600>, //FE + PPE + <0x1fb54000 0x4000>, //QDMA + <0x1fb58000 0x8000>; //SWITCH + interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>, // QDMA LAN INT1 21+16 + <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>, // QDMA LAN INT2 39+16 + <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>, // QDMA LAN INT3 40+16 + <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>, // QDMA LAN INT4 41+16 + <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>, // QDMA WAN INT1 22+16 + <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>, // QDMA WAN INT2 42+16 + <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>, // QDMA WAN INT3 43+16 + <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>, // QDMA WAN INT4 44+16 + <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>, // FE ERROR INTR 33+16 + <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>; // PDMA INTR 48+16 + }; + + spi_nor_flash: snor { + compatible = "econet,ecnt-snor"; + spi-controller = <&spi_ctrl>; + }; + + nand_flash: nand@1fa10000 { + compatible = "econet,ecnt-nand"; + spi-controller = <&spi_ctrl>; + spi2nfi = <&spi_spi2nfi>; + spi-ecc = <&spi_ecc>; + }; + + hsdma: dma-controller@1fa01800 { + compatible = "econet,en7523-hsdma"; + reg = <0x1fa01800 0x300>; + interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>; + #dma-cells = <1>; + dma-channels = <2>; + dma-requests = <2>; + }; + + cpu_top@1efb0000 { + compatible = "econet,ecnt-cpu_top"; + reg = <0x1efbc800 0x10>; //CTRL + }; + + xpon_mac: xpon@1fb64000 { + compatible = "econet,ecnt-xpon"; + reg = <0x1fb64000 0x3e8>, + <0x1fb66000 0x23c>; + interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>, // XPON MAC INT 26+16 + <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;// DYINGGASP INT 18+16 + }; + + xhci_hcd: xhci@1fab0000 { + compatible = "econet,ecnt-xhci"; + reg = <0x1fab0000 0x3e00>, //MAC base address + <0x1fab3e00 0x100>; //IPPC base address + interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; + }; + + pon_phy: pon_phy@1faf0000 { + compatible = "econet,ecnt-pon_phy"; + reg = <0x1faf0000 0x800>, // PON_PHY_ASIC_RG range + <0x1fa2ff24 0x4>, // PON_PHY_FPGA_RG_TX_OFF + <0x1faf3000 0xfff>, // PON_PHY_ASIC_RG range2 + <0x1faf4000 0xfff>; // PON_PHY_ASIC_RG range3 + interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>; // XPON_PHY_INTR 27+16 + }; + + pcm@bfbd0000 { + compatible = "econet,ecnt-pcm"; + reg = <0x1fbd0000 0x4fff>; + interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; + }; + + i2s@1fbe2200 { + compatible = "econet,ecnt-i2s"; + reg = <0x1fbe2200 0xfc>, + <0x1fbe2e00 0x114>; + interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>; + }; + + pcie_phy: pcie_phy@1fa93700 { + compatible = "econet,en7523-pcie_phy"; + reg = <0x1fa93700 0x568>, //PC0 RG range + <0x1fa95700 0x568>; //PC1 RG range + }; + pon_hsgmii: pon_hsgmii@1fa65000 { + compatible = "econet,ecnt-pon_hsgmii"; + reg = <0x1fa65100 0x4a0>, //PCS mode1 range + <0x1fa65a00 0x1ac>, //PCS mode2 range + <0x1fa65e00 0x64>, //AN range + <0x1fa66000 0xdc>; //rate adaption range + interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>; // pon_hsgmii INT 50+16 + }; + sgmii_p0: sgmii_p0@1fa72000 { + compatible = "econet,ecnt-sgmii"; + reg = <0x1fa72100 0x4a0>, //PCS mode1 range + <0x1fa72a00 0x160>, //PCS mode2 range + <0x1fa72000 0x64>, //AN range + <0x1fa72600 0xdc>, //rate adaption range + <0x1fa72c00 0x3b0>; //phya + interrupts = <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>; // pc0_hsgmii INT 135+16 + int_name = "sgmii_pcie0"; + int_id = <0>; + }; + sgmii_p1: sgmii_p1@1fa77000 { + compatible = "econet,ecnt-sgmii"; + reg = <0x1fa77100 0x4a0>, //PCS mode1 range + <0x1fa77a00 0x160>, //PCS mode2 range + <0x1fa77000 0x64>, //AN range + <0x1fa77600 0xdc>, //rate adaption range + <0x1fa77c00 0x3b0>; //phya + interrupts = <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>; // pc1_hsgmii INT 136+16 + int_name = "sgmii_pcie1"; + int_id = <1>; + }; + sgmii_u0: sgmii_u0@1fa81000 { + compatible = "econet,ecnt-sgmii"; + reg = <0x1fa81100 0x4a0>, //PCS mode1 range + <0x1fa81a00 0x160>, //PCS mode2 range + <0x1fa81000 0x64>, //AN range + <0x1fa81600 0xdc>, //rate adaption range + <0x1fa81c00 0x3b0>; //phya + interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>; // usb_hsgmii INT 137+16 + int_name = "sgmii_usb0"; + int_id = <2>; + }; + + usb_phy@1fad0000 { + compatible = "econet,ecnt-usb_phy"; + reg = <0x1fad0000 0x1fff>; + }; + + thermal_phy: thermal_phy@1efbd000 { + compatible = "econet,ecnt-thermal_phy"; + reg = <0x1efbd000 0x0fff>; //ptp_thermal_ctrl + }; + + +}; diff --git a/iopsys-econet/dts/rodimus.dts b/iopsys-econet/dts/rodimus.dts new file mode 100755 index 000000000..3db333271 --- /dev/null +++ b/iopsys-econet/dts/rodimus.dts @@ -0,0 +1,486 @@ + + +#include <dt-bindings/interrupt-controller/irq.h> +#include <dt-bindings/interrupt-controller/arm-gic.h> + +/dts-v1/; + +/ { + compatible = "econet,en7523"; + interrupt-parent = <&gic>; + #address-cells = <1>; + #size-cells = <1>; + + chosen { + bootargs = "root=/dev/mtdblock3 ro console=ttyS0,115200n8 earlycon init=/sbin/init"; + stdout-path = &uart1; + }; + + reserved-memory { + #address-cells = <1>; + #size-cells = <1>; + ranges; + + atf-reserved-memory@80000000 { + compatible = "econet,en7523-atf-reserved-memory"; + no-map; + reg = <0x80000000 0x40000>; + }; + + npu_reserved: npu_binary@84000000 { + no-map; + reg = <0x84000000 0x100000>; + }; + + }; + + psci { + compatible = "arm,psci-0.2"; + method = "smc"; + }; + + cpus { + #address-cells = <1>; + #size-cells = <0>; + + cpu-map { + cluster0 { + core0 { + cpu = <&cpu0>; + }; + core1 { + cpu = <&cpu1>; + }; + }; + }; + + cpu0: cpu@0 { + device_type = "cpu"; + compatible = "arm,cortex-a53"; + reg = <0x0>; + enable-method = "psci"; + clock-frequency = <80000000>; + next-level-cache = <&L2_0>; + }; + + cpu1: cpu@1 { + device_type = "cpu"; + compatible = "arm,cortex-a53"; + reg = <0x1>; + enable-method = "psci"; + clock-frequency = <80000000>; + next-level-cache = <&L2_0>; + }; + + L2_0: l2-cache0 { + compatible = "cache"; + }; + }; + + gic: interrupt-controller@09000000 { + compatible = "arm,gic-v3"; + interrupt-controller; + #interrupt-cells = <3>; + #address-cells = <1>; + #size-cells = <1>; + reg = <0x09000000 0x20000>, + <0x09080000 0x80000>; + interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_LOW>; + + its: gic-its@09020000 { + compatible = "arm,gic-v3-its"; + msi-controller; + #msi-cell = <1>; + reg = <0x090200000 0x20000>; + }; + }; + + + timer { + compatible = "arm,armv8-timer"; + interrupt-parent = <&gic>; + interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, + <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, + <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, + <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; + clock-frequency = <25000000>; + }; + + pmu { + //compatible = "arm,armv8-pmuv3"; + compatible = "arm,cortex-a15-pmu"; + interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH>; + }; + + npu@1e800000 { + compatible = "econet,ecnt-npu"; + reg = <0x1e800000 0x60000>, //NPU 384K SRAM + <0x1e900000 0x313000>; //NPU 16K SRAM, Registers + memory-region = <&npu_reserved>; + interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, // 102+16 tr done + <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>, // 105+16 hadap irq0 + <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>; //mbox2host irq + }; + + apb_timer1: apb_timer1@1fbf0100 { + compatible = "econet,ecnt-timer"; + reg = <0x1fbf0100 0x40>; + interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; + }; + + memory@80000000 { + device_type = "memory"; + reg = <0x80000000 0x40000000>; + }; + + rbus@1fa00000 { + compatible = "econet,ecnt-rbus"; + reg = <0x1fa00000 0x1000>; //RBus Core + }; + + sram@1fa40000 { + compatible = "econet,ecnt-sram"; + reg = <0x1fa40000 0x8000>, //GDMP SRAM + <0x08000000 0x40000>, //L2C SRAM (only for CPU internal access) + <0x1EFC0000 0x40000>, //L2C SRAM (only for CPU/NPU/GDMA/SPI/Crypto/WOE external access via pbus) + <0x1E880000 0x40000>, //L2C SRAM (only for CPU/NPU/HSDMA/PCIE external access via npu_rbus) + <0x1fbe3000 0x200>; //I2C_SLAVE SRAM + }; + + scu@1fb00000 { + compatible = "econet,ecnt-scu"; + reg = <0x1fb00000 0x960>, //NP SCU + <0x1fa20000 0x360>, //CHIP SCU + <0x1fa2FF30 0x10>; //Rbus clk ctl for FPGA + interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>; + }; + + pcie@0x1fa91000 { + compatible = "ecnt,pcie-en7523"; + device_type = "pci"; + reg = <0x1fa91000 0x1000>, + <0x1fa92000 0x1000>, + <0x1fa90000 0x1000>, /* pcie top*/ + <0x1a100000 0x1000>, /* switch lane */ + <0x1a148000 0x1000>, /* 4, rc0 phy base, for change xtal setting */ + <0x1a14a000 0x1000>; /* 5, rc1 phy base, for change xtal setting */ + interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>, //23+16 + <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>; //24+16 + bus-range = <0x00 0xff>; + #address-cells = <3>; + #size-cells = <2>; + /* change xtal for 40M, default is 25M */ + /* change-xtal; */ + /* disable io coherent for RC and EP default. */ + /*dma-coherent;*/ + ranges = <0x82000000 0 0x20000000 0x20000000 0 0x10000000>; + + pcie0: pcie@0,0 { + device_type = "pci"; + reg = <0x0000 0 0 0 0>; + #address-cells = <3>; + #size-cells = <2>; + #interrupt-cells = <1>; + ranges; + interrupt-map-mask = <0 0 0 7>; + interrupt-map = <0 0 0 1 &pcie_intc0 1>, + <0 0 0 2 &pcie_intc0 2>, + <0 0 0 3 &pcie_intc0 3>, + <0 0 0 4 &pcie_intc0 4>; + pcie-port = <0>; + num-lanes = <1>; + status = "okay"; + pcie_intc0: interrupt-controller { + interrupt-controller; + #address-cells = <0>; + #interrupt-cells = <1>; + }; + }; + + pcie1: pcie@1,0 { + device_type = "pci"; + reg = <0x0800 0 0 0 0>; + #address-cells = <3>; + #size-cells = <2>; + #interrupt-cells = <1>; + ranges; + interrupt-map-mask = <0 0 0 7>; + interrupt-map = <0 0 0 1 &pcie_intc1 1>, + <0 0 0 2 &pcie_intc1 2>, + <0 0 0 3 &pcie_intc1 3>, + <0 0 0 4 &pcie_intc1 4>; + pcie-port = <1>; + num-lanes = <1>; + status = "okay"; + pcie_intc1: interrupt-controller { + interrupt-controller; + #address-cells = <0>; + #interrupt-cells = <1>; + }; + }; + }; + + wdma{ + compatible = "en751221,wdma"; + reg = <0x1fa06000 0x400 >, + <0x1fa06400 0x400 >; + interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; + }; + + wed{ + compatible = "en751221,wed"; + wed_num = <2>; + pci_slot_map = <0>, <1>; + reg = <0x1fa02000 0xb00 >, + <0x1fa03000 0xb00 >; + interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>; + }; + + wed2{ + compatible = "en751221,wed2"; + wed_num = <2>; + pci_slot_map = <0>, <1>; + reg = <0x1fa02000 0xb00 >, + <0x1fa03000 0xb00 >; + interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>; + }; + + wed_test{ + compatible = "en751221,wed_test"; + wed_num = <2>; + reg = <0x1fa02b00 0x100 >, + <0x1fa03b00 0x100 >; + }; + + + + i2c@1fbf8000 { + compatible = "econet,ecnt-i2c"; + reg = <0x1fbf8000 0x65>; + }; + + gdump@1fbf9000 { + compatible = "econet,ecnt-gdump"; + reg = <0x1fbf9000 0x84>; + }; + + crypto_k@1fb70000 { + compatible = "econet,ecnt-crypto_k"; + reg = <0x1fb70000 0x804>; + interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>; + }; + + trng@1faa1000 { + compatible = "econet,ecnt-trng"; + reg = <0x1faa1000 0xc04>; + interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; + }; + + gdma@1fb30000 { + compatible = "econet,ecnt-gdma"; + reg = <0x1fb30000 0x2b0>; + }; + + xsi@1fa60000 { + compatible = "econet,ecnt-xsi"; + reg = <0x1fa60000 0x300>, //hsgmii ae + <0x1fa70000 0x300>, //hsgmii pcie0 + <0x1fa71000 0x300>, //hsgmii pcie1 + <0x1fa80000 0x300>; //hsgmii usb + }; + + i2c_slave@1fbe3300 { + compatible = "econet,ecnt-i2c_slave"; + reg = <0x1fbe3300 0x10>; + dev0_addr = <0x60>; + dev1_addr = <0x62>; + interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>; + }; + + uart1: serial@1fbf0000 { + compatible = "econet,ecnt-uart1"; + reg = <0x1fbf0000 0x30>; + interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>; + //status = "disabled"; + }; + uart2: serial@1fbf0300 { + compatible = "econet,ecnt-uart2"; + reg = <0x1fbf0300 0x30>; + interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; + //status = "disabled"; + }; + gpio@1fbf0200 { + compatible = "econet,ecnt-gpio"; + reg = <0x1fbf0200 0x80>; + }; + + spi_ctrl: spi_controller@1fa10000 { + compatible = "econet,ecnt-spi_ctrl"; + reg = <0x1fa10000 0x140>, //SPI Controller Base + <0x00000000 0x1000>; //SPI Controller auto read interrupt test + interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; + }; + + spi_spi2nfi: spi_spi2nfi@1fa11000 { + compatible = "econet,ecnt-spi2nfi"; + reg = <0x1fa11000 0x160>; //NFI2SPI + }; + + spi_ecc: spi_ecc@1fa12000 { + compatible = "econet,ecnt-spi_ecc"; + reg = <0x1fa12000 0x150>; //NFI ECC + }; + + frame_engine: frame_engine@1fb50000 { + compatible = "econet,ecnt-frame_engine"; + reg = <0x1fb50000 0x2600>, //FE + PPE + <0x1fb54000 0x4000>, //QDMA + <0x1fb58000 0x8000>; //SWITCH + interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>, // QDMA LAN INT1 21+16 + <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>, // QDMA LAN INT2 39+16 + <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>, // QDMA LAN INT3 40+16 + <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>, // QDMA LAN INT4 41+16 + <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>, // QDMA WAN INT1 22+16 + <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>, // QDMA WAN INT2 42+16 + <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>, // QDMA WAN INT3 43+16 + <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>, // QDMA WAN INT4 44+16 + <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>, // FE ERROR INTR 33+16 + <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>; // PDMA INTR 48+16 + }; + + spi_nor_flash: snor { + compatible = "econet,ecnt-snor"; + spi-controller = <&spi_ctrl>; + }; + + nand_flash: nand@1fa10000 { + compatible = "econet,ecnt-nand"; + spi-controller = <&spi_ctrl>; + spi2nfi = <&spi_spi2nfi>; + spi-ecc = <&spi_ecc>; + }; + + hsdma: dma-controller@1fa01800 { + compatible = "econet,en7523-hsdma"; + reg = <0x1fa01800 0x300>; + interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>; + #dma-cells = <1>; + dma-channels = <2>; + dma-requests = <2>; + }; + + cpu_top@1efb0000 { + compatible = "econet,ecnt-cpu_top"; + reg = <0x1efbc800 0x10>; //CTRL + }; + + xpon_mac: xpon@1fb64000 { + compatible = "econet,ecnt-xpon"; + reg = <0x1fb64000 0x3e8>, + <0x1fb66000 0x23c>; + interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>, // XPON MAC INT 26+16 + <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;// DYINGGASP INT 18+16 + }; + + xhci_hcd: xhci@1fab0000 { + compatible = "econet,ecnt-xhci"; + reg = <0x1fab0000 0x3e00>, //MAC base address + <0x1fab3e00 0x100>; //IPPC base address + interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; + }; + + pon_phy: pon_phy@1faf0000 { + compatible = "econet,ecnt-pon_phy"; + reg = <0x1faf0000 0x800>, // PON_PHY_ASIC_RG range + <0x1fa2ff24 0x4>, // PON_PHY_FPGA_RG_TX_OFF + <0x1faf3000 0xfff>, // PON_PHY_ASIC_RG range2 + <0x1faf4000 0xfff>; // PON_PHY_ASIC_RG range3 + interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>; // XPON_PHY_INTR 27+16 + }; + + pcm@bfbd0000 { + compatible = "econet,ecnt-pcm"; + reg = <0x1fbd0000 0x4fff>; + interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; + }; + + i2s@1fbe2200 { + compatible = "econet,ecnt-i2s"; + reg = <0x1fbe2200 0xfc>, + <0x1fbe2e00 0x114>; + interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>; + }; + + pcie_phy: pcie_phy@1fa93700 { + compatible = "econet,en7523-pcie_phy"; + reg = <0x1fa93700 0x568>, //PC0 RG range + <0x1fa95700 0x568>; //PC1 RG range + }; + pon_hsgmii: pon_hsgmii@1fa65000 { + compatible = "econet,ecnt-pon_hsgmii"; + reg = <0x1fa65100 0x4a0>, //PCS mode1 range + <0x1fa65a00 0x1ac>, //PCS mode2 range + <0x1fa65e00 0x64>, //AN range + <0x1fa66000 0xdc>; //rate adaption range + interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>; // pon_hsgmii INT 50+16 + }; + sgmii_p0: sgmii_p0@1fa72000 { + compatible = "econet,ecnt-sgmii"; + reg = <0x1fa72100 0x4a0>, //PCS mode1 range + <0x1fa72a00 0x160>, //PCS mode2 range + <0x1fa72000 0x64>, //AN range + <0x1fa72600 0xdc>, //rate adaption range + <0x1fa72c00 0x3b0>; //phya + interrupts = <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>; // pc0_hsgmii INT 135+16 + int_name = "sgmii_pcie0"; + int_id = <0>; + }; + sgmii_p1: sgmii_p1@1fa77000 { + compatible = "econet,ecnt-sgmii"; + reg = <0x1fa77100 0x4a0>, //PCS mode1 range + <0x1fa77a00 0x160>, //PCS mode2 range + <0x1fa77000 0x64>, //AN range + <0x1fa77600 0xdc>, //rate adaption range + <0x1fa77c00 0x3b0>; //phya + interrupts = <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>; // pc1_hsgmii INT 136+16 + int_name = "sgmii_pcie1"; + int_id = <1>; + }; + sgmii_u0: sgmii_u0@1fa81000 { + compatible = "econet,ecnt-sgmii"; + reg = <0x1fa81100 0x4a0>, //PCS mode1 range + <0x1fa81a00 0x160>, //PCS mode2 range + <0x1fa81000 0x64>, //AN range + <0x1fa81600 0xdc>, //rate adaption range + <0x1fa81c00 0x3b0>; //phya + interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>; // usb_hsgmii INT 137+16 + int_name = "sgmii_usb0"; + int_id = <2>; + }; + + usb_phy@1fad0000 { + compatible = "econet,ecnt-usb_phy"; + reg = <0x1fad0000 0x1fff>; + }; + + thermal_phy: thermal_phy@1efbd000 { + compatible = "econet,ecnt-thermal_phy"; + reg = <0x1efbd000 0x0fff>; //ptp_thermal_ctrl + }; + + +}; -- GitLab