1 // SPDX-License-Identifier: GPL-2.0+
3 * Copyright (C) 2018 Álvaro Fernández Rojas <noltari@gmail.com>
6 #include <dt-bindings/clock/bcm6318-clock.h>
7 #include <dt-bindings/dma/bcm6318-dma.h>
8 #include <dt-bindings/gpio/gpio.h>
9 #include <dt-bindings/power-domain/bcm6318-power-domain.h>
10 #include <dt-bindings/reset/bcm6318-reset.h>
11 #include "skeleton.dtsi"
14 compatible = "brcm,bcm6318";
21 reg = <0x10000000 0x4>;
27 compatible = "brcm,bcm6318-cpu", "mips,mips4Kc";
35 compatible = "simple-bus";
40 hsspi_pll: hsspi-pll {
41 compatible = "fixed-clock";
43 clock-frequency = <250000000>;
46 periph_osc: periph-osc {
47 compatible = "fixed-clock";
49 clock-frequency = <50000000>;
53 periph_clk: periph-clk {
54 compatible = "brcm,bcm6345-clk";
55 reg = <0x10000004 0x4>;
60 compatible = "brcm,bcm6345-clk";
61 reg = <0x10000008 0x4>;
67 compatible = "simple-bus";
72 periph_rst: reset-controller@10000010 {
73 compatible = "brcm,bcm6345-reset";
74 reg = <0x10000010 0x4>;
78 wdt: watchdog@10000068 {
79 compatible = "brcm,bcm6345-wdt";
80 reg = <0x10000068 0xc>;
81 clocks = <&periph_osc>;
85 compatible = "wdt-reboot";
89 pll_cntl: syscon@10000074 {
90 compatible = "syscon";
91 reg = <0x10000074 0x4>;
95 compatible = "syscon-reboot";
101 gpio1: gpio-controller@10000080 {
102 compatible = "brcm,bcm6345-gpio";
103 reg = <0x10000080 0x4>, <0x10000088 0x4>;
111 gpio0: gpio-controller@10000084 {
112 compatible = "brcm,bcm6345-gpio";
113 reg = <0x10000084 0x4>, <0x1000008c 0x4>;
120 uart0: serial@10000100 {
121 compatible = "brcm,bcm6345-uart";
122 reg = <0x10000100 0x18>;
123 clocks = <&periph_osc>;
128 leds: led-controller@10000200 {
129 compatible = "brcm,bcm6328-leds";
130 reg = <0x10000200 0x28>;
131 #address-cells = <1>;
137 periph_pwr: power-controller@100008e8 {
138 compatible = "brcm,bcm6328-power-domain";
139 reg = <0x100008e8 0x4>;
140 #power-domain-cells = <1>;
144 compatible = "brcm,bcm6328-hsspi";
145 #address-cells = <1>;
147 reg = <0x10003000 0x600>;
148 clocks = <&periph_clk BCM6318_CLK_HSSPI>, <&hsspi_pll>;
149 clock-names = "hsspi", "pll";
150 resets = <&periph_rst BCM6318_RST_SPI>;
151 spi-max-frequency = <33333334>;
157 memory-controller@10004000 {
158 compatible = "brcm,bcm6318-mc";
159 reg = <0x10004000 0x38>;
163 ehci: usb-controller@10005000 {
164 compatible = "brcm,bcm6318-ehci", "generic-ehci";
165 reg = <0x10005000 0x100>;
172 ohci: usb-controller@10005100 {
173 compatible = "brcm,bcm6318-ohci", "generic-ohci";
174 reg = <0x10005100 0x100>;
181 usbh: usb-phy@10005200 {
182 compatible = "brcm,bcm6318-usbh";
183 reg = <0x10005200 0x30>;
185 clocks = <&periph_clk BCM6318_CLK_USB>;
186 clock-names = "usbh";
187 power-domains = <&periph_pwr BCM6318_PWR_USB>;
188 resets = <&periph_rst BCM6318_RST_USBH>;
193 enet: ethernet@10080000 {
194 compatible = "brcm,bcm6368-enet";
195 #address-cells = <1>;
197 reg = <0x10080000 0x8000>;
198 clocks = <&periph_clk BCM6318_CLK_ROBOSW250>,
199 <&periph_clk BCM6318_CLK_ROBOSW025>,
200 <&ubus_clk BCM6318_UCLK_ROBOSW>;
201 resets = <&periph_rst BCM6318_RST_ENETSW>,
202 <&periph_rst BCM6318_RST_EPHY>;
203 dmas = <&iudma BCM6318_DMA_ENETSW_RX>,
204 <&iudma BCM6318_DMA_ENETSW_TX>;
207 brcm,num-ports = <5>;
212 iudma: dma-controller@10088000 {
213 compatible = "brcm,bcm6368-iudma";
214 reg = <0x10088000 0x80>,