162306a36Sopenharmony_ci// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * lan966x.dtsi - Device Tree Include file for Microchip LAN966 family SoC 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * Copyright (C) 2021 Microchip Technology, Inc. and its subsidiaries 662306a36Sopenharmony_ci * 762306a36Sopenharmony_ci * Author: Kavyasree Kotagiri <kavyasree.kotagiri@microchip.com> 862306a36Sopenharmony_ci * 962306a36Sopenharmony_ci */ 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ci#include <dt-bindings/interrupt-controller/irq.h> 1262306a36Sopenharmony_ci#include <dt-bindings/interrupt-controller/arm-gic.h> 1362306a36Sopenharmony_ci#include <dt-bindings/mfd/atmel-flexcom.h> 1462306a36Sopenharmony_ci#include <dt-bindings/dma/at91.h> 1562306a36Sopenharmony_ci#include <dt-bindings/gpio/gpio.h> 1662306a36Sopenharmony_ci#include <dt-bindings/clock/microchip,lan966x.h> 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ci/ { 1962306a36Sopenharmony_ci model = "Microchip LAN966 family SoC"; 2062306a36Sopenharmony_ci compatible = "microchip,lan966"; 2162306a36Sopenharmony_ci interrupt-parent = <&gic>; 2262306a36Sopenharmony_ci #address-cells = <1>; 2362306a36Sopenharmony_ci #size-cells = <1>; 2462306a36Sopenharmony_ci 2562306a36Sopenharmony_ci cpus { 2662306a36Sopenharmony_ci #address-cells = <1>; 2762306a36Sopenharmony_ci #size-cells = <0>; 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_ci cpu@0 { 3062306a36Sopenharmony_ci device_type = "cpu"; 3162306a36Sopenharmony_ci compatible = "arm,cortex-a7"; 3262306a36Sopenharmony_ci clock-frequency = <600000000>; 3362306a36Sopenharmony_ci reg = <0x0>; 3462306a36Sopenharmony_ci }; 3562306a36Sopenharmony_ci }; 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ci clocks { 3862306a36Sopenharmony_ci sys_clk: sys_clk { 3962306a36Sopenharmony_ci compatible = "fixed-clock"; 4062306a36Sopenharmony_ci #clock-cells = <0>; 4162306a36Sopenharmony_ci clock-frequency = <165625000>; 4262306a36Sopenharmony_ci }; 4362306a36Sopenharmony_ci 4462306a36Sopenharmony_ci cpu_clk: cpu_clk { 4562306a36Sopenharmony_ci compatible = "fixed-clock"; 4662306a36Sopenharmony_ci #clock-cells = <0>; 4762306a36Sopenharmony_ci clock-frequency = <600000000>; 4862306a36Sopenharmony_ci }; 4962306a36Sopenharmony_ci 5062306a36Sopenharmony_ci ddr_clk: ddr_clk { 5162306a36Sopenharmony_ci compatible = "fixed-clock"; 5262306a36Sopenharmony_ci #clock-cells = <0>; 5362306a36Sopenharmony_ci clock-frequency = <300000000>; 5462306a36Sopenharmony_ci }; 5562306a36Sopenharmony_ci 5662306a36Sopenharmony_ci nic_clk: nic_clk { 5762306a36Sopenharmony_ci compatible = "fixed-clock"; 5862306a36Sopenharmony_ci #clock-cells = <0>; 5962306a36Sopenharmony_ci clock-frequency = <200000000>; 6062306a36Sopenharmony_ci }; 6162306a36Sopenharmony_ci }; 6262306a36Sopenharmony_ci 6362306a36Sopenharmony_ci clks: clock-controller@e00c00a8 { 6462306a36Sopenharmony_ci compatible = "microchip,lan966x-gck"; 6562306a36Sopenharmony_ci #clock-cells = <1>; 6662306a36Sopenharmony_ci clocks = <&cpu_clk>, <&ddr_clk>, <&sys_clk>; 6762306a36Sopenharmony_ci clock-names = "cpu", "ddr", "sys"; 6862306a36Sopenharmony_ci reg = <0xe00c00a8 0x38>, <0xe00c02cc 0x4>; 6962306a36Sopenharmony_ci }; 7062306a36Sopenharmony_ci 7162306a36Sopenharmony_ci timer { 7262306a36Sopenharmony_ci compatible = "arm,armv7-timer"; 7362306a36Sopenharmony_ci interrupt-parent = <&gic>; 7462306a36Sopenharmony_ci interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>, 7562306a36Sopenharmony_ci <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>, 7662306a36Sopenharmony_ci <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>, 7762306a36Sopenharmony_ci <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>; 7862306a36Sopenharmony_ci clock-frequency = <37500000>; 7962306a36Sopenharmony_ci }; 8062306a36Sopenharmony_ci 8162306a36Sopenharmony_ci soc { 8262306a36Sopenharmony_ci compatible = "simple-bus"; 8362306a36Sopenharmony_ci #address-cells = <1>; 8462306a36Sopenharmony_ci #size-cells = <1>; 8562306a36Sopenharmony_ci ranges; 8662306a36Sopenharmony_ci 8762306a36Sopenharmony_ci udc: usb@200000 { 8862306a36Sopenharmony_ci compatible = "microchip,lan9662-udc", 8962306a36Sopenharmony_ci "atmel,sama5d3-udc"; 9062306a36Sopenharmony_ci reg = <0x00200000 0x80000>, 9162306a36Sopenharmony_ci <0xe0808000 0x400>; 9262306a36Sopenharmony_ci interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; 9362306a36Sopenharmony_ci clocks = <&clks GCK_GATE_UDPHS>, <&nic_clk>; 9462306a36Sopenharmony_ci clock-names = "pclk", "hclk"; 9562306a36Sopenharmony_ci status = "disabled"; 9662306a36Sopenharmony_ci }; 9762306a36Sopenharmony_ci 9862306a36Sopenharmony_ci switch: switch@e0000000 { 9962306a36Sopenharmony_ci compatible = "microchip,lan966x-switch"; 10062306a36Sopenharmony_ci reg = <0xe0000000 0x0100000>, 10162306a36Sopenharmony_ci <0xe2000000 0x0800000>; 10262306a36Sopenharmony_ci reg-names = "cpu", "gcb"; 10362306a36Sopenharmony_ci interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>, 10462306a36Sopenharmony_ci <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>, 10562306a36Sopenharmony_ci <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>, 10662306a36Sopenharmony_ci <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>, 10762306a36Sopenharmony_ci <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 10862306a36Sopenharmony_ci interrupt-names = "xtr", "fdma", "ana", "ptp", 10962306a36Sopenharmony_ci "ptp-ext"; 11062306a36Sopenharmony_ci resets = <&reset 0>; 11162306a36Sopenharmony_ci reset-names = "switch"; 11262306a36Sopenharmony_ci status = "disabled"; 11362306a36Sopenharmony_ci 11462306a36Sopenharmony_ci ethernet-ports { 11562306a36Sopenharmony_ci #address-cells = <1>; 11662306a36Sopenharmony_ci #size-cells = <0>; 11762306a36Sopenharmony_ci 11862306a36Sopenharmony_ci port0: port@0 { 11962306a36Sopenharmony_ci reg = <0>; 12062306a36Sopenharmony_ci status = "disabled"; 12162306a36Sopenharmony_ci }; 12262306a36Sopenharmony_ci 12362306a36Sopenharmony_ci port1: port@1 { 12462306a36Sopenharmony_ci reg = <1>; 12562306a36Sopenharmony_ci status = "disabled"; 12662306a36Sopenharmony_ci }; 12762306a36Sopenharmony_ci 12862306a36Sopenharmony_ci port2: port@2 { 12962306a36Sopenharmony_ci reg = <2>; 13062306a36Sopenharmony_ci status = "disabled"; 13162306a36Sopenharmony_ci }; 13262306a36Sopenharmony_ci 13362306a36Sopenharmony_ci port3: port@3 { 13462306a36Sopenharmony_ci reg = <3>; 13562306a36Sopenharmony_ci status = "disabled"; 13662306a36Sopenharmony_ci }; 13762306a36Sopenharmony_ci 13862306a36Sopenharmony_ci port4: port@4 { 13962306a36Sopenharmony_ci reg = <4>; 14062306a36Sopenharmony_ci status = "disabled"; 14162306a36Sopenharmony_ci }; 14262306a36Sopenharmony_ci 14362306a36Sopenharmony_ci port5: port@5 { 14462306a36Sopenharmony_ci reg = <5>; 14562306a36Sopenharmony_ci status = "disabled"; 14662306a36Sopenharmony_ci }; 14762306a36Sopenharmony_ci 14862306a36Sopenharmony_ci port6: port@6 { 14962306a36Sopenharmony_ci reg = <6>; 15062306a36Sopenharmony_ci status = "disabled"; 15162306a36Sopenharmony_ci }; 15262306a36Sopenharmony_ci 15362306a36Sopenharmony_ci port7: port@7 { 15462306a36Sopenharmony_ci reg = <7>; 15562306a36Sopenharmony_ci status = "disabled"; 15662306a36Sopenharmony_ci }; 15762306a36Sopenharmony_ci }; 15862306a36Sopenharmony_ci }; 15962306a36Sopenharmony_ci 16062306a36Sopenharmony_ci otp: otp@e0021000 { 16162306a36Sopenharmony_ci compatible = "microchip,lan9668-otpc", "microchip,lan9662-otpc"; 16262306a36Sopenharmony_ci reg = <0xe0021000 0x300>; 16362306a36Sopenharmony_ci }; 16462306a36Sopenharmony_ci 16562306a36Sopenharmony_ci flx0: flexcom@e0040000 { 16662306a36Sopenharmony_ci compatible = "atmel,sama5d2-flexcom"; 16762306a36Sopenharmony_ci reg = <0xe0040000 0x100>; 16862306a36Sopenharmony_ci clocks = <&clks GCK_ID_FLEXCOM0>; 16962306a36Sopenharmony_ci #address-cells = <1>; 17062306a36Sopenharmony_ci #size-cells = <1>; 17162306a36Sopenharmony_ci ranges = <0x0 0xe0040000 0x800>; 17262306a36Sopenharmony_ci status = "disabled"; 17362306a36Sopenharmony_ci 17462306a36Sopenharmony_ci usart0: serial@200 { 17562306a36Sopenharmony_ci compatible = "atmel,at91sam9260-usart"; 17662306a36Sopenharmony_ci reg = <0x200 0x200>; 17762306a36Sopenharmony_ci interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>; 17862306a36Sopenharmony_ci dmas = <&dma0 AT91_XDMAC_DT_PERID(3)>, 17962306a36Sopenharmony_ci <&dma0 AT91_XDMAC_DT_PERID(2)>; 18062306a36Sopenharmony_ci dma-names = "tx", "rx"; 18162306a36Sopenharmony_ci clocks = <&nic_clk>; 18262306a36Sopenharmony_ci clock-names = "usart"; 18362306a36Sopenharmony_ci atmel,fifo-size = <32>; 18462306a36Sopenharmony_ci status = "disabled"; 18562306a36Sopenharmony_ci }; 18662306a36Sopenharmony_ci 18762306a36Sopenharmony_ci spi0: spi@400 { 18862306a36Sopenharmony_ci compatible = "atmel,at91rm9200-spi"; 18962306a36Sopenharmony_ci reg = <0x400 0x200>; 19062306a36Sopenharmony_ci interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>; 19162306a36Sopenharmony_ci dmas = <&dma0 AT91_XDMAC_DT_PERID(3)>, 19262306a36Sopenharmony_ci <&dma0 AT91_XDMAC_DT_PERID(2)>; 19362306a36Sopenharmony_ci dma-names = "tx", "rx"; 19462306a36Sopenharmony_ci clocks = <&nic_clk>; 19562306a36Sopenharmony_ci clock-names = "spi_clk"; 19662306a36Sopenharmony_ci atmel,fifo-size = <32>; 19762306a36Sopenharmony_ci #address-cells = <1>; 19862306a36Sopenharmony_ci #size-cells = <0>; 19962306a36Sopenharmony_ci status = "disabled"; 20062306a36Sopenharmony_ci }; 20162306a36Sopenharmony_ci 20262306a36Sopenharmony_ci i2c0: i2c@600 { 20362306a36Sopenharmony_ci compatible = "microchip,sam9x60-i2c"; 20462306a36Sopenharmony_ci reg = <0x600 0x200>; 20562306a36Sopenharmony_ci interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>; 20662306a36Sopenharmony_ci dmas = <&dma0 AT91_XDMAC_DT_PERID(3)>, 20762306a36Sopenharmony_ci <&dma0 AT91_XDMAC_DT_PERID(2)>; 20862306a36Sopenharmony_ci dma-names = "tx", "rx"; 20962306a36Sopenharmony_ci clocks = <&nic_clk>; 21062306a36Sopenharmony_ci #address-cells = <1>; 21162306a36Sopenharmony_ci #size-cells = <0>; 21262306a36Sopenharmony_ci status = "disabled"; 21362306a36Sopenharmony_ci }; 21462306a36Sopenharmony_ci }; 21562306a36Sopenharmony_ci 21662306a36Sopenharmony_ci flx1: flexcom@e0044000 { 21762306a36Sopenharmony_ci compatible = "atmel,sama5d2-flexcom"; 21862306a36Sopenharmony_ci reg = <0xe0044000 0x100>; 21962306a36Sopenharmony_ci clocks = <&clks GCK_ID_FLEXCOM1>; 22062306a36Sopenharmony_ci #address-cells = <1>; 22162306a36Sopenharmony_ci #size-cells = <1>; 22262306a36Sopenharmony_ci ranges = <0x0 0xe0044000 0x800>; 22362306a36Sopenharmony_ci status = "disabled"; 22462306a36Sopenharmony_ci 22562306a36Sopenharmony_ci usart1: serial@200 { 22662306a36Sopenharmony_ci compatible = "atmel,at91sam9260-usart"; 22762306a36Sopenharmony_ci reg = <0x200 0x200>; 22862306a36Sopenharmony_ci interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>; 22962306a36Sopenharmony_ci dmas = <&dma0 AT91_XDMAC_DT_PERID(5)>, 23062306a36Sopenharmony_ci <&dma0 AT91_XDMAC_DT_PERID(4)>; 23162306a36Sopenharmony_ci dma-names = "tx", "rx"; 23262306a36Sopenharmony_ci clocks = <&nic_clk>; 23362306a36Sopenharmony_ci clock-names = "usart"; 23462306a36Sopenharmony_ci atmel,fifo-size = <32>; 23562306a36Sopenharmony_ci status = "disabled"; 23662306a36Sopenharmony_ci }; 23762306a36Sopenharmony_ci 23862306a36Sopenharmony_ci spi1: spi@400 { 23962306a36Sopenharmony_ci compatible = "atmel,at91rm9200-spi"; 24062306a36Sopenharmony_ci reg = <0x400 0x200>; 24162306a36Sopenharmony_ci interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>; 24262306a36Sopenharmony_ci dmas = <&dma0 AT91_XDMAC_DT_PERID(5)>, 24362306a36Sopenharmony_ci <&dma0 AT91_XDMAC_DT_PERID(4)>; 24462306a36Sopenharmony_ci dma-names = "tx", "rx"; 24562306a36Sopenharmony_ci clocks = <&nic_clk>; 24662306a36Sopenharmony_ci clock-names = "spi_clk"; 24762306a36Sopenharmony_ci atmel,fifo-size = <32>; 24862306a36Sopenharmony_ci #address-cells = <1>; 24962306a36Sopenharmony_ci #size-cells = <0>; 25062306a36Sopenharmony_ci status = "disabled"; 25162306a36Sopenharmony_ci }; 25262306a36Sopenharmony_ci 25362306a36Sopenharmony_ci i2c1: i2c@600 { 25462306a36Sopenharmony_ci compatible = "microchip,sam9x60-i2c"; 25562306a36Sopenharmony_ci reg = <0x600 0x200>; 25662306a36Sopenharmony_ci interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>; 25762306a36Sopenharmony_ci dmas = <&dma0 AT91_XDMAC_DT_PERID(5)>, 25862306a36Sopenharmony_ci <&dma0 AT91_XDMAC_DT_PERID(4)>; 25962306a36Sopenharmony_ci dma-names = "tx", "rx"; 26062306a36Sopenharmony_ci clocks = <&nic_clk>; 26162306a36Sopenharmony_ci #address-cells = <1>; 26262306a36Sopenharmony_ci #size-cells = <0>; 26362306a36Sopenharmony_ci status = "disabled"; 26462306a36Sopenharmony_ci }; 26562306a36Sopenharmony_ci }; 26662306a36Sopenharmony_ci 26762306a36Sopenharmony_ci trng: rng@e0048000 { 26862306a36Sopenharmony_ci compatible = "atmel,at91sam9g45-trng"; 26962306a36Sopenharmony_ci reg = <0xe0048000 0x100>; 27062306a36Sopenharmony_ci clocks = <&nic_clk>; 27162306a36Sopenharmony_ci }; 27262306a36Sopenharmony_ci 27362306a36Sopenharmony_ci aes: crypto@e004c000 { 27462306a36Sopenharmony_ci compatible = "atmel,at91sam9g46-aes"; 27562306a36Sopenharmony_ci reg = <0xe004c000 0x100>; 27662306a36Sopenharmony_ci interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>; 27762306a36Sopenharmony_ci dmas = <&dma0 AT91_XDMAC_DT_PERID(12)>, 27862306a36Sopenharmony_ci <&dma0 AT91_XDMAC_DT_PERID(13)>; 27962306a36Sopenharmony_ci dma-names = "tx", "rx"; 28062306a36Sopenharmony_ci clocks = <&nic_clk>; 28162306a36Sopenharmony_ci clock-names = "aes_clk"; 28262306a36Sopenharmony_ci }; 28362306a36Sopenharmony_ci 28462306a36Sopenharmony_ci flx2: flexcom@e0060000 { 28562306a36Sopenharmony_ci compatible = "atmel,sama5d2-flexcom"; 28662306a36Sopenharmony_ci reg = <0xe0060000 0x100>; 28762306a36Sopenharmony_ci clocks = <&clks GCK_ID_FLEXCOM2>; 28862306a36Sopenharmony_ci #address-cells = <1>; 28962306a36Sopenharmony_ci #size-cells = <1>; 29062306a36Sopenharmony_ci ranges = <0x0 0xe0060000 0x800>; 29162306a36Sopenharmony_ci status = "disabled"; 29262306a36Sopenharmony_ci 29362306a36Sopenharmony_ci usart2: serial@200 { 29462306a36Sopenharmony_ci compatible = "atmel,at91sam9260-usart"; 29562306a36Sopenharmony_ci reg = <0x200 0x200>; 29662306a36Sopenharmony_ci interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; 29762306a36Sopenharmony_ci dmas = <&dma0 AT91_XDMAC_DT_PERID(7)>, 29862306a36Sopenharmony_ci <&dma0 AT91_XDMAC_DT_PERID(6)>; 29962306a36Sopenharmony_ci dma-names = "tx", "rx"; 30062306a36Sopenharmony_ci clocks = <&nic_clk>; 30162306a36Sopenharmony_ci clock-names = "usart"; 30262306a36Sopenharmony_ci atmel,fifo-size = <32>; 30362306a36Sopenharmony_ci status = "disabled"; 30462306a36Sopenharmony_ci }; 30562306a36Sopenharmony_ci 30662306a36Sopenharmony_ci spi2: spi@400 { 30762306a36Sopenharmony_ci compatible = "atmel,at91rm9200-spi"; 30862306a36Sopenharmony_ci reg = <0x400 0x200>; 30962306a36Sopenharmony_ci interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; 31062306a36Sopenharmony_ci dmas = <&dma0 AT91_XDMAC_DT_PERID(7)>, 31162306a36Sopenharmony_ci <&dma0 AT91_XDMAC_DT_PERID(6)>; 31262306a36Sopenharmony_ci dma-names = "tx", "rx"; 31362306a36Sopenharmony_ci clocks = <&nic_clk>; 31462306a36Sopenharmony_ci clock-names = "spi_clk"; 31562306a36Sopenharmony_ci atmel,fifo-size = <32>; 31662306a36Sopenharmony_ci #address-cells = <1>; 31762306a36Sopenharmony_ci #size-cells = <0>; 31862306a36Sopenharmony_ci status = "disabled"; 31962306a36Sopenharmony_ci }; 32062306a36Sopenharmony_ci 32162306a36Sopenharmony_ci i2c2: i2c@600 { 32262306a36Sopenharmony_ci compatible = "microchip,sam9x60-i2c"; 32362306a36Sopenharmony_ci reg = <0x600 0x200>; 32462306a36Sopenharmony_ci interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; 32562306a36Sopenharmony_ci dmas = <&dma0 AT91_XDMAC_DT_PERID(7)>, 32662306a36Sopenharmony_ci <&dma0 AT91_XDMAC_DT_PERID(6)>; 32762306a36Sopenharmony_ci dma-names = "tx", "rx"; 32862306a36Sopenharmony_ci clocks = <&nic_clk>; 32962306a36Sopenharmony_ci #address-cells = <1>; 33062306a36Sopenharmony_ci #size-cells = <0>; 33162306a36Sopenharmony_ci status = "disabled"; 33262306a36Sopenharmony_ci }; 33362306a36Sopenharmony_ci }; 33462306a36Sopenharmony_ci 33562306a36Sopenharmony_ci flx3: flexcom@e0064000 { 33662306a36Sopenharmony_ci compatible = "atmel,sama5d2-flexcom"; 33762306a36Sopenharmony_ci reg = <0xe0064000 0x100>; 33862306a36Sopenharmony_ci clocks = <&clks GCK_ID_FLEXCOM3>; 33962306a36Sopenharmony_ci #address-cells = <1>; 34062306a36Sopenharmony_ci #size-cells = <1>; 34162306a36Sopenharmony_ci ranges = <0x0 0xe0064000 0x800>; 34262306a36Sopenharmony_ci status = "disabled"; 34362306a36Sopenharmony_ci 34462306a36Sopenharmony_ci usart3: serial@200 { 34562306a36Sopenharmony_ci compatible = "atmel,at91sam9260-usart"; 34662306a36Sopenharmony_ci reg = <0x200 0x200>; 34762306a36Sopenharmony_ci interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; 34862306a36Sopenharmony_ci dmas = <&dma0 AT91_XDMAC_DT_PERID(9)>, 34962306a36Sopenharmony_ci <&dma0 AT91_XDMAC_DT_PERID(8)>; 35062306a36Sopenharmony_ci dma-names = "tx", "rx"; 35162306a36Sopenharmony_ci clocks = <&nic_clk>; 35262306a36Sopenharmony_ci clock-names = "usart"; 35362306a36Sopenharmony_ci atmel,fifo-size = <32>; 35462306a36Sopenharmony_ci status = "disabled"; 35562306a36Sopenharmony_ci }; 35662306a36Sopenharmony_ci 35762306a36Sopenharmony_ci spi3: spi@400 { 35862306a36Sopenharmony_ci compatible = "atmel,at91rm9200-spi"; 35962306a36Sopenharmony_ci reg = <0x400 0x200>; 36062306a36Sopenharmony_ci interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; 36162306a36Sopenharmony_ci dmas = <&dma0 AT91_XDMAC_DT_PERID(9)>, 36262306a36Sopenharmony_ci <&dma0 AT91_XDMAC_DT_PERID(8)>; 36362306a36Sopenharmony_ci dma-names = "tx", "rx"; 36462306a36Sopenharmony_ci clocks = <&nic_clk>; 36562306a36Sopenharmony_ci clock-names = "spi_clk"; 36662306a36Sopenharmony_ci atmel,fifo-size = <32>; 36762306a36Sopenharmony_ci #address-cells = <1>; 36862306a36Sopenharmony_ci #size-cells = <0>; 36962306a36Sopenharmony_ci status = "disabled"; 37062306a36Sopenharmony_ci }; 37162306a36Sopenharmony_ci 37262306a36Sopenharmony_ci i2c3: i2c@600 { 37362306a36Sopenharmony_ci compatible = "microchip,sam9x60-i2c"; 37462306a36Sopenharmony_ci reg = <0x600 0x200>; 37562306a36Sopenharmony_ci interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; 37662306a36Sopenharmony_ci dmas = <&dma0 AT91_XDMAC_DT_PERID(9)>, 37762306a36Sopenharmony_ci <&dma0 AT91_XDMAC_DT_PERID(8)>; 37862306a36Sopenharmony_ci dma-names = "tx", "rx"; 37962306a36Sopenharmony_ci clocks = <&nic_clk>; 38062306a36Sopenharmony_ci #address-cells = <1>; 38162306a36Sopenharmony_ci #size-cells = <0>; 38262306a36Sopenharmony_ci status = "disabled"; 38362306a36Sopenharmony_ci }; 38462306a36Sopenharmony_ci }; 38562306a36Sopenharmony_ci 38662306a36Sopenharmony_ci dma0: dma-controller@e0068000 { 38762306a36Sopenharmony_ci compatible = "microchip,sama7g5-dma"; 38862306a36Sopenharmony_ci reg = <0xe0068000 0x1000>; 38962306a36Sopenharmony_ci interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>; 39062306a36Sopenharmony_ci #dma-cells = <1>; 39162306a36Sopenharmony_ci clocks = <&nic_clk>; 39262306a36Sopenharmony_ci clock-names = "dma_clk"; 39362306a36Sopenharmony_ci }; 39462306a36Sopenharmony_ci 39562306a36Sopenharmony_ci sha: crypto@e006c000 { 39662306a36Sopenharmony_ci compatible = "atmel,at91sam9g46-sha"; 39762306a36Sopenharmony_ci reg = <0xe006c000 0xec>; 39862306a36Sopenharmony_ci interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>; 39962306a36Sopenharmony_ci dmas = <&dma0 AT91_XDMAC_DT_PERID(14)>; 40062306a36Sopenharmony_ci dma-names = "tx"; 40162306a36Sopenharmony_ci clocks = <&nic_clk>; 40262306a36Sopenharmony_ci clock-names = "sha_clk"; 40362306a36Sopenharmony_ci }; 40462306a36Sopenharmony_ci 40562306a36Sopenharmony_ci flx4: flexcom@e0070000 { 40662306a36Sopenharmony_ci compatible = "atmel,sama5d2-flexcom"; 40762306a36Sopenharmony_ci reg = <0xe0070000 0x100>; 40862306a36Sopenharmony_ci clocks = <&clks GCK_ID_FLEXCOM4>; 40962306a36Sopenharmony_ci #address-cells = <1>; 41062306a36Sopenharmony_ci #size-cells = <1>; 41162306a36Sopenharmony_ci ranges = <0x0 0xe0070000 0x800>; 41262306a36Sopenharmony_ci status = "disabled"; 41362306a36Sopenharmony_ci 41462306a36Sopenharmony_ci usart4: serial@200 { 41562306a36Sopenharmony_ci compatible = "atmel,at91sam9260-usart"; 41662306a36Sopenharmony_ci reg = <0x200 0x200>; 41762306a36Sopenharmony_ci interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>; 41862306a36Sopenharmony_ci dmas = <&dma0 AT91_XDMAC_DT_PERID(11)>, 41962306a36Sopenharmony_ci <&dma0 AT91_XDMAC_DT_PERID(10)>; 42062306a36Sopenharmony_ci dma-names = "tx", "rx"; 42162306a36Sopenharmony_ci clocks = <&nic_clk>; 42262306a36Sopenharmony_ci clock-names = "usart"; 42362306a36Sopenharmony_ci atmel,fifo-size = <32>; 42462306a36Sopenharmony_ci status = "disabled"; 42562306a36Sopenharmony_ci }; 42662306a36Sopenharmony_ci 42762306a36Sopenharmony_ci spi4: spi@400 { 42862306a36Sopenharmony_ci compatible = "atmel,at91rm9200-spi"; 42962306a36Sopenharmony_ci reg = <0x400 0x200>; 43062306a36Sopenharmony_ci interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>; 43162306a36Sopenharmony_ci dmas = <&dma0 AT91_XDMAC_DT_PERID(11)>, 43262306a36Sopenharmony_ci <&dma0 AT91_XDMAC_DT_PERID(10)>; 43362306a36Sopenharmony_ci dma-names = "tx", "rx"; 43462306a36Sopenharmony_ci clocks = <&nic_clk>; 43562306a36Sopenharmony_ci clock-names = "spi_clk"; 43662306a36Sopenharmony_ci atmel,fifo-size = <32>; 43762306a36Sopenharmony_ci #address-cells = <1>; 43862306a36Sopenharmony_ci #size-cells = <0>; 43962306a36Sopenharmony_ci status = "disabled"; 44062306a36Sopenharmony_ci }; 44162306a36Sopenharmony_ci 44262306a36Sopenharmony_ci i2c4: i2c@600 { 44362306a36Sopenharmony_ci compatible = "microchip,sam9x60-i2c"; 44462306a36Sopenharmony_ci reg = <0x600 0x200>; 44562306a36Sopenharmony_ci interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>; 44662306a36Sopenharmony_ci dmas = <&dma0 AT91_XDMAC_DT_PERID(11)>, 44762306a36Sopenharmony_ci <&dma0 AT91_XDMAC_DT_PERID(10)>; 44862306a36Sopenharmony_ci dma-names = "tx", "rx"; 44962306a36Sopenharmony_ci clocks = <&nic_clk>; 45062306a36Sopenharmony_ci #address-cells = <1>; 45162306a36Sopenharmony_ci #size-cells = <0>; 45262306a36Sopenharmony_ci status = "disabled"; 45362306a36Sopenharmony_ci }; 45462306a36Sopenharmony_ci }; 45562306a36Sopenharmony_ci 45662306a36Sopenharmony_ci timer0: timer@e008c000 { 45762306a36Sopenharmony_ci compatible = "snps,dw-apb-timer"; 45862306a36Sopenharmony_ci reg = <0xe008c000 0x400>; 45962306a36Sopenharmony_ci clocks = <&nic_clk>; 46062306a36Sopenharmony_ci clock-names = "timer"; 46162306a36Sopenharmony_ci interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>; 46262306a36Sopenharmony_ci }; 46362306a36Sopenharmony_ci 46462306a36Sopenharmony_ci watchdog: watchdog@e0090000 { 46562306a36Sopenharmony_ci compatible = "snps,dw-wdt"; 46662306a36Sopenharmony_ci reg = <0xe0090000 0x1000>; 46762306a36Sopenharmony_ci interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; 46862306a36Sopenharmony_ci clocks = <&nic_clk>; 46962306a36Sopenharmony_ci status = "disabled"; 47062306a36Sopenharmony_ci }; 47162306a36Sopenharmony_ci 47262306a36Sopenharmony_ci cpu_ctrl: syscon@e00c0000 { 47362306a36Sopenharmony_ci compatible = "microchip,lan966x-cpu-syscon", "syscon"; 47462306a36Sopenharmony_ci reg = <0xe00c0000 0x350>; 47562306a36Sopenharmony_ci }; 47662306a36Sopenharmony_ci 47762306a36Sopenharmony_ci can0: can@e081c000 { 47862306a36Sopenharmony_ci compatible = "bosch,m_can"; 47962306a36Sopenharmony_ci reg = <0xe081c000 0xfc>, <0x00100000 0x4000>; 48062306a36Sopenharmony_ci reg-names = "m_can", "message_ram"; 48162306a36Sopenharmony_ci interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>, 48262306a36Sopenharmony_ci <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 48362306a36Sopenharmony_ci interrupt-names = "int0", "int1"; 48462306a36Sopenharmony_ci clocks = <&clks GCK_ID_MCAN0>, <&clks GCK_ID_MCAN0>; 48562306a36Sopenharmony_ci clock-names = "hclk", "cclk"; 48662306a36Sopenharmony_ci assigned-clocks = <&clks GCK_ID_MCAN0>; 48762306a36Sopenharmony_ci assigned-clock-rates = <40000000>; 48862306a36Sopenharmony_ci bosch,mram-cfg = <0x0 0 0 64 0 0 32 32>; 48962306a36Sopenharmony_ci status = "disabled"; 49062306a36Sopenharmony_ci }; 49162306a36Sopenharmony_ci 49262306a36Sopenharmony_ci can1: can@e0820000 { 49362306a36Sopenharmony_ci compatible = "bosch,m_can"; 49462306a36Sopenharmony_ci reg = <0xe0820000 0xfc>, <0x00100000 0x8000>; 49562306a36Sopenharmony_ci reg-names = "m_can", "message_ram"; 49662306a36Sopenharmony_ci interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>, 49762306a36Sopenharmony_ci <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 49862306a36Sopenharmony_ci interrupt-names = "int0", "int1"; 49962306a36Sopenharmony_ci clocks = <&clks GCK_ID_MCAN1>, <&clks GCK_ID_MCAN1>; 50062306a36Sopenharmony_ci clock-names = "hclk", "cclk"; 50162306a36Sopenharmony_ci assigned-clocks = <&clks GCK_ID_MCAN1>; 50262306a36Sopenharmony_ci assigned-clock-rates = <40000000>; 50362306a36Sopenharmony_ci bosch,mram-cfg = <0x4000 0 0 64 0 0 32 32>; 50462306a36Sopenharmony_ci status = "disabled"; 50562306a36Sopenharmony_ci }; 50662306a36Sopenharmony_ci 50762306a36Sopenharmony_ci reset: reset-controller@e200400c { 50862306a36Sopenharmony_ci compatible = "microchip,lan966x-switch-reset"; 50962306a36Sopenharmony_ci reg = <0xe200400c 0x4>; 51062306a36Sopenharmony_ci reg-names = "gcb"; 51162306a36Sopenharmony_ci #reset-cells = <1>; 51262306a36Sopenharmony_ci cpu-syscon = <&cpu_ctrl>; 51362306a36Sopenharmony_ci }; 51462306a36Sopenharmony_ci 51562306a36Sopenharmony_ci gpio: pinctrl@e2004064 { 51662306a36Sopenharmony_ci compatible = "microchip,lan966x-pinctrl"; 51762306a36Sopenharmony_ci reg = <0xe2004064 0xb4>, 51862306a36Sopenharmony_ci <0xe2010024 0x138>; 51962306a36Sopenharmony_ci resets = <&reset 0>; 52062306a36Sopenharmony_ci reset-names = "switch"; 52162306a36Sopenharmony_ci gpio-controller; 52262306a36Sopenharmony_ci #gpio-cells = <2>; 52362306a36Sopenharmony_ci gpio-ranges = <&gpio 0 0 78>; 52462306a36Sopenharmony_ci interrupt-controller; 52562306a36Sopenharmony_ci interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; 52662306a36Sopenharmony_ci #interrupt-cells = <2>; 52762306a36Sopenharmony_ci }; 52862306a36Sopenharmony_ci 52962306a36Sopenharmony_ci mdio0: mdio@e2004118 { 53062306a36Sopenharmony_ci compatible = "microchip,lan966x-miim"; 53162306a36Sopenharmony_ci #address-cells = <1>; 53262306a36Sopenharmony_ci #size-cells = <0>; 53362306a36Sopenharmony_ci reg = <0xe2004118 0x24>; 53462306a36Sopenharmony_ci clocks = <&sys_clk>; 53562306a36Sopenharmony_ci status = "disabled"; 53662306a36Sopenharmony_ci }; 53762306a36Sopenharmony_ci 53862306a36Sopenharmony_ci mdio1: mdio@e200413c { 53962306a36Sopenharmony_ci compatible = "microchip,lan966x-miim"; 54062306a36Sopenharmony_ci #address-cells = <1>; 54162306a36Sopenharmony_ci #size-cells = <0>; 54262306a36Sopenharmony_ci reg = <0xe200413c 0x24>, 54362306a36Sopenharmony_ci <0xe2010020 0x4>; 54462306a36Sopenharmony_ci clocks = <&sys_clk>; 54562306a36Sopenharmony_ci status = "disabled"; 54662306a36Sopenharmony_ci 54762306a36Sopenharmony_ci phy0: ethernet-phy@1 { 54862306a36Sopenharmony_ci reg = <1>; 54962306a36Sopenharmony_ci interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>; 55062306a36Sopenharmony_ci status = "disabled"; 55162306a36Sopenharmony_ci }; 55262306a36Sopenharmony_ci 55362306a36Sopenharmony_ci phy1: ethernet-phy@2 { 55462306a36Sopenharmony_ci reg = <2>; 55562306a36Sopenharmony_ci interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>; 55662306a36Sopenharmony_ci status = "disabled"; 55762306a36Sopenharmony_ci }; 55862306a36Sopenharmony_ci }; 55962306a36Sopenharmony_ci 56062306a36Sopenharmony_ci sgpio: gpio@e2004190 { 56162306a36Sopenharmony_ci compatible = "microchip,sparx5-sgpio"; 56262306a36Sopenharmony_ci reg = <0xe2004190 0x118>; 56362306a36Sopenharmony_ci clocks = <&sys_clk>; 56462306a36Sopenharmony_ci resets = <&reset 0>; 56562306a36Sopenharmony_ci reset-names = "switch"; 56662306a36Sopenharmony_ci #address-cells = <1>; 56762306a36Sopenharmony_ci #size-cells = <0>; 56862306a36Sopenharmony_ci status = "disabled"; 56962306a36Sopenharmony_ci 57062306a36Sopenharmony_ci sgpio_in: gpio@0 { 57162306a36Sopenharmony_ci compatible = "microchip,sparx5-sgpio-bank"; 57262306a36Sopenharmony_ci reg = <0>; 57362306a36Sopenharmony_ci gpio-controller; 57462306a36Sopenharmony_ci #gpio-cells = <3>; 57562306a36Sopenharmony_ci interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>; 57662306a36Sopenharmony_ci interrupt-controller; 57762306a36Sopenharmony_ci #interrupt-cells = <3>; 57862306a36Sopenharmony_ci }; 57962306a36Sopenharmony_ci 58062306a36Sopenharmony_ci sgpio_out: gpio@1 { 58162306a36Sopenharmony_ci compatible = "microchip,sparx5-sgpio-bank"; 58262306a36Sopenharmony_ci reg = <1>; 58362306a36Sopenharmony_ci gpio-controller; 58462306a36Sopenharmony_ci #gpio-cells = <3>; 58562306a36Sopenharmony_ci }; 58662306a36Sopenharmony_ci }; 58762306a36Sopenharmony_ci 58862306a36Sopenharmony_ci hwmon: hwmon@e2010180 { 58962306a36Sopenharmony_ci compatible = "microchip,lan9668-hwmon"; 59062306a36Sopenharmony_ci reg = <0xe2010180 0xc>, 59162306a36Sopenharmony_ci <0xe20042a8 0xc>; 59262306a36Sopenharmony_ci reg-names = "pvt", "fan"; 59362306a36Sopenharmony_ci clocks = <&sys_clk>; 59462306a36Sopenharmony_ci }; 59562306a36Sopenharmony_ci 59662306a36Sopenharmony_ci serdes: serdes@e202c000 { 59762306a36Sopenharmony_ci compatible = "microchip,lan966x-serdes"; 59862306a36Sopenharmony_ci reg = <0xe202c000 0x9c>, 59962306a36Sopenharmony_ci <0xe2004010 0x4>; 60062306a36Sopenharmony_ci #phy-cells = <2>; 60162306a36Sopenharmony_ci status = "disabled"; 60262306a36Sopenharmony_ci }; 60362306a36Sopenharmony_ci 60462306a36Sopenharmony_ci gic: interrupt-controller@e8c11000 { 60562306a36Sopenharmony_ci compatible = "arm,gic-400", "arm,cortex-a7-gic"; 60662306a36Sopenharmony_ci #interrupt-cells = <3>; 60762306a36Sopenharmony_ci interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 60862306a36Sopenharmony_ci interrupt-controller; 60962306a36Sopenharmony_ci reg = <0xe8c11000 0x1000>, 61062306a36Sopenharmony_ci <0xe8c12000 0x2000>, 61162306a36Sopenharmony_ci <0xe8c14000 0x2000>, 61262306a36Sopenharmony_ci <0xe8c16000 0x2000>; 61362306a36Sopenharmony_ci }; 61462306a36Sopenharmony_ci }; 61562306a36Sopenharmony_ci}; 616