1 // SPDX-License-Identifier: GPL-2.0+
3 * Copyright (C) 2017 Álvaro Fernández Rojas <noltari@gmail.com>
6 #include <dt-bindings/clock/bcm6328-clock.h>
7 #include <dt-bindings/dma/bcm6328-dma.h>
8 #include <dt-bindings/gpio/gpio.h>
9 #include <dt-bindings/power-domain/bcm6328-power-domain.h>
10 #include <dt-bindings/reset/bcm6328-reset.h>
11 #include "skeleton.dtsi"
14 compatible = "brcm,bcm6328";
21 reg = <0x10000000 0x4>;
27 compatible = "brcm,bcm6328-cpu", "mips,mips4Kc";
34 compatible = "brcm,bcm6328-cpu", "mips,mips4Kc";
42 compatible = "simple-bus";
47 hsspi_pll: hsspi-pll {
48 compatible = "fixed-clock";
50 clock-frequency = <133333333>;
53 periph_osc: periph-osc {
54 compatible = "fixed-clock";
56 clock-frequency = <50000000>;
60 periph_clk: periph-clk {
61 compatible = "brcm,bcm6345-clk";
62 reg = <0x10000004 0x4>;
68 compatible = "simple-bus";
73 periph_rst: reset-controller@10000010 {
74 compatible = "brcm,bcm6345-reset";
75 reg = <0x10000010 0x4>;
79 pll_cntl: syscon@10000068 {
80 compatible = "syscon";
81 reg = <0x10000068 0x4>;
85 compatible = "syscon-reboot";
91 wdt: watchdog@1000005c {
92 compatible = "brcm,bcm6345-wdt";
93 reg = <0x1000005c 0xc>;
94 clocks = <&periph_osc>;
98 compatible = "wdt-reboot";
102 gpio: gpio-controller@10000084 {
103 compatible = "brcm,bcm6345-gpio";
104 reg = <0x10000084 0x4>, <0x1000008c 0x4>;
111 uart0: serial@10000100 {
112 compatible = "brcm,bcm6345-uart";
113 reg = <0x10000100 0x18>;
114 clocks = <&periph_osc>;
119 uart1: serial@10000120 {
120 compatible = "brcm,bcm6345-uart";
121 reg = <0x10000120 0x18>;
122 clocks = <&periph_osc>;
127 nand: nand-controller@10000200 {
128 #address-cells = <1>;
130 compatible = "brcm,nand-bcm6368",
131 "brcm,brcmnand-v2.2",
136 reg = <0x10000200 0x180>,
143 leds: led-controller@10000800 {
144 compatible = "brcm,bcm6328-leds";
145 reg = <0x10000800 0x24>;
146 #address-cells = <1>;
153 compatible = "brcm,bcm6328-hsspi";
154 #address-cells = <1>;
156 reg = <0x10001000 0x600>;
157 clocks = <&periph_clk BCM6328_CLK_HSSPI>, <&hsspi_pll>;
158 clock-names = "hsspi", "pll";
159 resets = <&periph_rst BCM6328_RST_SPI>;
160 spi-max-frequency = <33333334>;
166 periph_pwr: power-controller@10001848 {
167 compatible = "brcm,bcm6328-power-domain";
168 reg = <0x10001848 0x4>;
169 #power-domain-cells = <1>;
172 ehci: usb-controller@10002500 {
173 compatible = "brcm,bcm6328-ehci", "generic-ehci";
174 reg = <0x10002500 0x100>;
181 ohci: usb-controller@10002600 {
182 compatible = "brcm,bcm6328-ohci", "generic-ohci";
183 reg = <0x10002600 0x100>;
190 usbh: usb-phy@10002700 {
191 compatible = "brcm,bcm6328-usbh";
192 reg = <0x10002700 0x38>;
194 clocks = <&periph_clk BCM6328_CLK_USBH>;
195 clock-names = "usbh";
196 power-domains = <&periph_pwr BCM6328_PWR_USBH>;
197 resets = <&periph_rst BCM6328_RST_USBH>;
202 memory-controller@10003000 {
203 compatible = "brcm,bcm6328-mc";
204 reg = <0x10003000 0x864>;
208 iudma: dma-controller@1000d800 {
209 compatible = "brcm,bcm6368-iudma";
210 reg = <0x1000d800 0x80>,
220 enet: ethernet@10e00000 {
221 compatible = "brcm,bcm6368-enet";
222 #address-cells = <1>;
224 reg = <0x10e00000 0x10000>;
225 clocks = <&periph_clk BCM6328_CLK_ROBOSW>;
226 resets = <&periph_rst BCM6328_RST_ENETSW>,
227 <&periph_rst BCM6328_RST_EPHY>;
228 dmas = <&iudma BCM6328_DMA_ENETSW_RX>,
229 <&iudma BCM6328_DMA_ENETSW_TX>;
232 brcm,num-ports = <5>;