1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
5 * Copyright (C) 2021 Marvell
6 * Copyright (C) 2022 Allied Telesis Labs
9 #include <dt-bindings/gpio/gpio.h>
10 #include <dt-bindings/interrupt-controller/arm-gic.h>
13 model = "Marvell AC5 SoC";
14 compatible = "marvell,ac5";
15 interrupt-parent = <&gic>;
36 compatible = "arm,cortex-a55";
38 enable-method = "psci";
39 next-level-cache = <&l2>;
44 compatible = "arm,cortex-a55";
46 enable-method = "psci";
47 next-level-cache = <&l2>;
56 compatible = "arm,psci-0.2";
61 compatible = "arm,armv8-timer";
62 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>,
63 <GIC_PPI 8 IRQ_TYPE_LEVEL_HIGH>,
64 <GIC_PPI 10 IRQ_TYPE_LEVEL_HIGH>,
65 <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH>;
69 compatible = "arm,armv8-pmuv3";
70 interrupts = <GIC_PPI 12 IRQ_TYPE_LEVEL_HIGH>;
74 compatible = "simple-bus";
80 internal-regs@7f000000 {
83 compatible = "simple-bus";
84 /* 16M internal register @ 0x7f00_0000 */
85 ranges = <0x0 0x0 0x7f000000 0x1000000>;
89 compatible = "snps,dw-apb-uart";
90 reg = <0x12000 0x100>;
92 interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
94 clocks = <&cnm_clock>;
99 compatible = "snps,dw-apb-uart";
100 reg = <0x12100 0x100>;
103 clocks = <&cnm_clock>;
107 uart2: serial@12200 {
108 compatible = "snps,dw-apb-uart";
109 reg = <0x12200 0x100>;
112 clocks = <&cnm_clock>;
116 uart3: serial@12300 {
117 compatible = "snps,dw-apb-uart";
118 reg = <0x12300 0x100>;
121 clocks = <&cnm_clock>;
126 #address-cells = <1>;
128 compatible = "marvell,orion-mdio";
130 clocks = <&cnm_clock>;
134 compatible = "marvell,mv78230-i2c";
135 reg = <0x11000 0x20>;
136 #address-cells = <1>;
139 clocks = <&cnm_clock>;
140 clock-names = "core";
141 interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
142 clock-frequency=<100000>;
147 compatible = "marvell,mv78230-i2c";
148 reg = <0x11100 0x20>;
149 #address-cells = <1>;
152 clocks = <&cnm_clock>;
153 clock-names = "core";
154 interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>;
155 clock-frequency=<100000>;
160 compatible = "marvell,orion-gpio";
161 reg = <0x18100 0x40>;
169 reg = <0x18140 0x40>;
170 compatible = "marvell,orion-gpio";
179 * Dedicated section for devices behind 32bit controllers so we
180 * can configure specific DMA mapping for them
182 behind-32bit-controller@7f000000 {
183 compatible = "simple-bus";
184 #address-cells = <0x2>;
186 ranges = <0x0 0x0 0x0 0x7f000000 0x0 0x1000000>;
187 /* Host phy ram starts at 0x200M */
188 dma-ranges = <0x0 0x0 0x2 0x0 0x1 0x0>;
191 eth0: ethernet@20000 {
192 compatible = "marvell,armada-ac5-neta";
193 reg = <0x0 0x20000 0x0 0x4000>;
194 interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
195 clocks = <&cnm_clock>;
200 eth1: ethernet@24000 {
201 compatible = "marvell,armada-ac5-neta";
202 reg = <0x0 0x24000 0x0 0x4000>;
203 interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
204 clocks = <&cnm_clock>;
210 compatible = "marvell,ac5-ehci";
211 reg = <0x0 0x80000 0x0 0x500>;
212 interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>;
217 compatible = "marvell,ac5-ehci";
218 reg = <0x0 0xa0000 0x0 0x500>;
219 interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
224 pinctrl0: pinctrl@80020100 {
225 compatible = "marvell,mvebu-pinctrl";
226 reg = <0 0x80020100 0 0x20>;
233 compatible = "marvell,armada-3700-spi";
234 reg = <0x0 0x805a0000 0x0 0x50>;
235 #address-cells = <0x1>;
237 clocks = <&spi_clock>;
238 interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
244 compatible = "marvell,armada-3700-spi";
245 reg = <0x0 0x805a8000 0x0 0x50>;
246 #address-cells = <0x1>;
248 clocks = <&spi_clock>;
249 interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
254 gic: interrupt-controller@80600000 {
255 compatible = "arm,gic-v3";
256 #interrupt-cells = <3>;
257 interrupt-controller;
258 reg = <0x0 0x80600000 0x0 0x10000>, /* GICD */
259 <0x0 0x80660000 0x0 0x40000>; /* GICR */
260 interrupts = <GIC_PPI 6 IRQ_TYPE_LEVEL_HIGH>;
265 cnm_clock: cnm-clock {
266 compatible = "fixed-clock";
268 clock-frequency = <328000000>;
271 spi_clock: spi-clock {
272 compatible = "fixed-clock";
274 clock-frequency = <200000000>;