xref: /linux/arch/mips/boot/dts/brcm/bcm63268.dtsi (revision 7ae9fb1b7ecbb5d85d07857943f677fd1a559b18)
1b2441318SGreg Kroah-Hartman// SPDX-License-Identifier: GPL-2.0
2cd26db59SÁlvaro Fernández Rojas
3cd26db59SÁlvaro Fernández Rojas#include "dt-bindings/clock/bcm63268-clock.h"
4cd26db59SÁlvaro Fernández Rojas#include "dt-bindings/reset/bcm63268-reset.h"
5cd26db59SÁlvaro Fernández Rojas#include "dt-bindings/soc/bcm63268-pm.h"
6cd26db59SÁlvaro Fernández Rojas
7786e19a8SÁlvaro Fernández Rojas/ {
8786e19a8SÁlvaro Fernández Rojas	#address-cells = <1>;
9786e19a8SÁlvaro Fernández Rojas	#size-cells = <1>;
10786e19a8SÁlvaro Fernández Rojas	compatible = "brcm,bcm63268";
11786e19a8SÁlvaro Fernández Rojas
12786e19a8SÁlvaro Fernández Rojas	cpus {
13786e19a8SÁlvaro Fernández Rojas		#address-cells = <1>;
14786e19a8SÁlvaro Fernández Rojas		#size-cells = <0>;
15786e19a8SÁlvaro Fernández Rojas
16786e19a8SÁlvaro Fernández Rojas		mips-hpt-frequency = <200000000>;
17786e19a8SÁlvaro Fernández Rojas
18786e19a8SÁlvaro Fernández Rojas		cpu@0 {
19786e19a8SÁlvaro Fernández Rojas			compatible = "brcm,bmips4350";
20786e19a8SÁlvaro Fernández Rojas			device_type = "cpu";
21786e19a8SÁlvaro Fernández Rojas			reg = <0>;
22786e19a8SÁlvaro Fernández Rojas		};
23786e19a8SÁlvaro Fernández Rojas
24786e19a8SÁlvaro Fernández Rojas		cpu@1 {
25786e19a8SÁlvaro Fernández Rojas			compatible = "brcm,bmips4350";
26786e19a8SÁlvaro Fernández Rojas			device_type = "cpu";
27786e19a8SÁlvaro Fernández Rojas			reg = <1>;
28786e19a8SÁlvaro Fernández Rojas		};
29786e19a8SÁlvaro Fernández Rojas	};
30786e19a8SÁlvaro Fernández Rojas
31786e19a8SÁlvaro Fernández Rojas	clocks {
32666c1fc9SÁlvaro Fernández Rojas		periph_osc: periph-osc {
33786e19a8SÁlvaro Fernández Rojas			compatible = "fixed-clock";
34786e19a8SÁlvaro Fernández Rojas			#clock-cells = <0>;
35786e19a8SÁlvaro Fernández Rojas			clock-frequency = <50000000>;
36666c1fc9SÁlvaro Fernández Rojas			clock-output-names = "periph";
37666c1fc9SÁlvaro Fernández Rojas		};
38666c1fc9SÁlvaro Fernández Rojas
39666c1fc9SÁlvaro Fernández Rojas		hsspi_osc: hsspi-osc {
40666c1fc9SÁlvaro Fernández Rojas			compatible = "fixed-clock";
41666c1fc9SÁlvaro Fernández Rojas
42666c1fc9SÁlvaro Fernández Rojas			#clock-cells = <0>;
43666c1fc9SÁlvaro Fernández Rojas
44666c1fc9SÁlvaro Fernández Rojas			clock-frequency = <400000000>;
45666c1fc9SÁlvaro Fernández Rojas			clock-output-names = "hsspi_osc";
46786e19a8SÁlvaro Fernández Rojas		};
47786e19a8SÁlvaro Fernández Rojas	};
48786e19a8SÁlvaro Fernández Rojas
49786e19a8SÁlvaro Fernández Rojas	aliases {
50666c1fc9SÁlvaro Fernández Rojas		nflash = &nflash;
51786e19a8SÁlvaro Fernández Rojas		serial0 = &uart0;
52786e19a8SÁlvaro Fernández Rojas		serial1 = &uart1;
53666c1fc9SÁlvaro Fernández Rojas		spi0 = &lsspi;
54666c1fc9SÁlvaro Fernández Rojas		spi1 = &hsspi;
55786e19a8SÁlvaro Fernández Rojas	};
56786e19a8SÁlvaro Fernández Rojas
57786e19a8SÁlvaro Fernández Rojas	cpu_intc: interrupt-controller {
58786e19a8SÁlvaro Fernández Rojas		#address-cells = <0>;
59786e19a8SÁlvaro Fernández Rojas		compatible = "mti,cpu-interrupt-controller";
60786e19a8SÁlvaro Fernández Rojas
61786e19a8SÁlvaro Fernández Rojas		interrupt-controller;
62786e19a8SÁlvaro Fernández Rojas		#interrupt-cells = <1>;
63786e19a8SÁlvaro Fernández Rojas	};
64786e19a8SÁlvaro Fernández Rojas
65786e19a8SÁlvaro Fernández Rojas	ubus {
66786e19a8SÁlvaro Fernández Rojas		#address-cells = <1>;
67786e19a8SÁlvaro Fernández Rojas		#size-cells = <1>;
68786e19a8SÁlvaro Fernández Rojas
69786e19a8SÁlvaro Fernández Rojas		compatible = "simple-bus";
70786e19a8SÁlvaro Fernández Rojas		ranges;
71786e19a8SÁlvaro Fernández Rojas
72666c1fc9SÁlvaro Fernández Rojas		periph_clk: clock-controller@10000004 {
73a23c4134SJonas Gorski			compatible = "brcm,bcm63268-clocks";
74a23c4134SJonas Gorski			reg = <0x10000004 0x4>;
75a23c4134SJonas Gorski			#clock-cells = <1>;
76a23c4134SJonas Gorski		};
77a23c4134SJonas Gorski
78666c1fc9SÁlvaro Fernández Rojas		pll_cntl: syscon@10000008 {
79786e19a8SÁlvaro Fernández Rojas			compatible = "syscon";
80cde58b86SÁlvaro Fernández Rojas			reg = <0x10000008 0x4>;
81786e19a8SÁlvaro Fernández Rojas			native-endian;
82786e19a8SÁlvaro Fernández Rojas
83666c1fc9SÁlvaro Fernández Rojas			reboot {
84786e19a8SÁlvaro Fernández Rojas				compatible = "syscon-reboot";
85a23c4134SJonas Gorski				offset = <0x0>;
86786e19a8SÁlvaro Fernández Rojas				mask = <0x1>;
87786e19a8SÁlvaro Fernández Rojas			};
88666c1fc9SÁlvaro Fernández Rojas		};
89786e19a8SÁlvaro Fernández Rojas
90b7aa2288SÁlvaro Fernández Rojas		periph_rst: reset-controller@10000010 {
91b7aa2288SÁlvaro Fernández Rojas			compatible = "brcm,bcm6345-reset";
92b7aa2288SÁlvaro Fernández Rojas			reg = <0x10000010 0x4>;
93b7aa2288SÁlvaro Fernández Rojas			#reset-cells = <1>;
94b7aa2288SÁlvaro Fernández Rojas		};
95b7aa2288SÁlvaro Fernández Rojas
96786e19a8SÁlvaro Fernández Rojas		periph_intc: interrupt-controller@10000020 {
97786e19a8SÁlvaro Fernández Rojas			compatible = "brcm,bcm6345-l1-intc";
98786e19a8SÁlvaro Fernández Rojas			reg = <0x10000020 0x20>,
99786e19a8SÁlvaro Fernández Rojas			      <0x10000040 0x20>;
100786e19a8SÁlvaro Fernández Rojas
101786e19a8SÁlvaro Fernández Rojas			interrupt-controller;
102786e19a8SÁlvaro Fernández Rojas			#interrupt-cells = <1>;
103786e19a8SÁlvaro Fernández Rojas
104786e19a8SÁlvaro Fernández Rojas			interrupt-parent = <&cpu_intc>;
105786e19a8SÁlvaro Fernández Rojas			interrupts = <2>, <3>;
106786e19a8SÁlvaro Fernández Rojas		};
107786e19a8SÁlvaro Fernández Rojas
108b971612cSRafał Miłecki		timer-mfd@10000080 {
109b971612cSRafał Miłecki			compatible = "brcm,bcm7038-twd", "simple-mfd", "syscon";
110b971612cSRafał Miłecki			reg = <0x10000080 0x30>;
111b971612cSRafał Miłecki			ranges = <0x0 0x10000080 0x30>;
112*24b333a8SFlorian Fainelli			#address-cells = <1>;
113*24b333a8SFlorian Fainelli			#size-cells = <1>;
114b971612cSRafał Miłecki
115d3db4b96SRafał Miłecki			timer@0 {
116d3db4b96SRafał Miłecki				compatible = "brcm,bcm6345-timer";
117d3db4b96SRafał Miłecki				reg = <0x0 0x1c>;
118d3db4b96SRafał Miłecki			};
119d3db4b96SRafał Miłecki
120b971612cSRafał Miłecki			wdt: watchdog@1c {
121666c1fc9SÁlvaro Fernández Rojas				compatible = "brcm,bcm7038-wdt";
122b971612cSRafał Miłecki				reg = <0x1c 0xc>;
123666c1fc9SÁlvaro Fernández Rojas
124666c1fc9SÁlvaro Fernández Rojas				clocks = <&periph_osc>;
125666c1fc9SÁlvaro Fernández Rojas				clock-names = "refclk";
126666c1fc9SÁlvaro Fernández Rojas
127666c1fc9SÁlvaro Fernández Rojas				timeout-sec = <30>;
128666c1fc9SÁlvaro Fernández Rojas			};
129b971612cSRafał Miłecki		};
130666c1fc9SÁlvaro Fernández Rojas
131786e19a8SÁlvaro Fernández Rojas		uart0: serial@10000180 {
132786e19a8SÁlvaro Fernández Rojas			compatible = "brcm,bcm6345-uart";
133786e19a8SÁlvaro Fernández Rojas			reg = <0x10000180 0x18>;
134786e19a8SÁlvaro Fernández Rojas
135786e19a8SÁlvaro Fernández Rojas			interrupt-parent = <&periph_intc>;
136786e19a8SÁlvaro Fernández Rojas			interrupts = <5>;
137786e19a8SÁlvaro Fernández Rojas
138666c1fc9SÁlvaro Fernández Rojas			clocks = <&periph_osc>;
139bed8d2a2SJonas Gorski			clock-names = "refclk";
140786e19a8SÁlvaro Fernández Rojas
141786e19a8SÁlvaro Fernández Rojas			status = "disabled";
142786e19a8SÁlvaro Fernández Rojas		};
143786e19a8SÁlvaro Fernández Rojas
144666c1fc9SÁlvaro Fernández Rojas		nflash: nand@10000200 {
145666c1fc9SÁlvaro Fernández Rojas			#address-cells = <1>;
146666c1fc9SÁlvaro Fernández Rojas			#size-cells = <0>;
147666c1fc9SÁlvaro Fernández Rojas			compatible = "brcm,nand-bcm6368",
148666c1fc9SÁlvaro Fernández Rojas				     "brcm,brcmnand-v4.0",
149666c1fc9SÁlvaro Fernández Rojas				     "brcm,brcmnand";
150666c1fc9SÁlvaro Fernández Rojas			reg = <0x10000200 0x180>,
151666c1fc9SÁlvaro Fernández Rojas			      <0x10000600 0x200>,
152666c1fc9SÁlvaro Fernández Rojas			      <0x100000b0 0x10>;
153666c1fc9SÁlvaro Fernández Rojas			reg-names = "nand",
154666c1fc9SÁlvaro Fernández Rojas				    "nand-cache",
155666c1fc9SÁlvaro Fernández Rojas				    "nand-int-base";
156666c1fc9SÁlvaro Fernández Rojas
157666c1fc9SÁlvaro Fernández Rojas			interrupt-parent = <&periph_intc>;
158666c1fc9SÁlvaro Fernández Rojas			interrupts = <50>;
159666c1fc9SÁlvaro Fernández Rojas
160666c1fc9SÁlvaro Fernández Rojas			clocks = <&periph_clk BCM63268_CLK_NAND>;
161666c1fc9SÁlvaro Fernández Rojas			clock-names = "nand";
162666c1fc9SÁlvaro Fernández Rojas
163666c1fc9SÁlvaro Fernández Rojas			status = "disabled";
164666c1fc9SÁlvaro Fernández Rojas		};
165666c1fc9SÁlvaro Fernández Rojas
166786e19a8SÁlvaro Fernández Rojas		uart1: serial@100001a0 {
167786e19a8SÁlvaro Fernández Rojas			compatible = "brcm,bcm6345-uart";
168786e19a8SÁlvaro Fernández Rojas			reg = <0x100001a0 0x18>;
169786e19a8SÁlvaro Fernández Rojas
170786e19a8SÁlvaro Fernández Rojas			interrupt-parent = <&periph_intc>;
171786e19a8SÁlvaro Fernández Rojas			interrupts = <34>;
172786e19a8SÁlvaro Fernández Rojas
173666c1fc9SÁlvaro Fernández Rojas			clocks = <&periph_osc>;
174bed8d2a2SJonas Gorski			clock-names = "refclk";
175786e19a8SÁlvaro Fernández Rojas
176786e19a8SÁlvaro Fernández Rojas			status = "disabled";
177786e19a8SÁlvaro Fernández Rojas		};
178786e19a8SÁlvaro Fernández Rojas
179666c1fc9SÁlvaro Fernández Rojas		lsspi: spi@10000800 {
180666c1fc9SÁlvaro Fernández Rojas			#address-cells = <1>;
181666c1fc9SÁlvaro Fernández Rojas			#size-cells = <0>;
182666c1fc9SÁlvaro Fernández Rojas			compatible = "brcm,bcm6358-spi";
183666c1fc9SÁlvaro Fernández Rojas			reg = <0x10000800 0x70c>;
184666c1fc9SÁlvaro Fernández Rojas
185666c1fc9SÁlvaro Fernández Rojas			interrupt-parent = <&periph_intc>;
186666c1fc9SÁlvaro Fernández Rojas			interrupts = <80>;
187666c1fc9SÁlvaro Fernández Rojas
188666c1fc9SÁlvaro Fernández Rojas			clocks = <&periph_clk BCM63268_CLK_SPI>;
189666c1fc9SÁlvaro Fernández Rojas			clock-names = "spi";
190666c1fc9SÁlvaro Fernández Rojas
191666c1fc9SÁlvaro Fernández Rojas			resets = <&periph_rst BCM63268_RST_SPI>;
192666c1fc9SÁlvaro Fernández Rojas
193666c1fc9SÁlvaro Fernández Rojas			status = "disabled";
194666c1fc9SÁlvaro Fernández Rojas		};
195666c1fc9SÁlvaro Fernández Rojas
196666c1fc9SÁlvaro Fernández Rojas		hsspi: spi@10001000 {
197666c1fc9SÁlvaro Fernández Rojas			#address-cells = <1>;
198666c1fc9SÁlvaro Fernández Rojas			#size-cells = <0>;
199666c1fc9SÁlvaro Fernández Rojas			compatible = "brcm,bcm6328-hsspi";
200666c1fc9SÁlvaro Fernández Rojas			reg = <0x10001000 0x600>;
201666c1fc9SÁlvaro Fernández Rojas
202666c1fc9SÁlvaro Fernández Rojas			interrupt-parent = <&periph_intc>;
203666c1fc9SÁlvaro Fernández Rojas			interrupts = <6>;
204666c1fc9SÁlvaro Fernández Rojas
205666c1fc9SÁlvaro Fernández Rojas			clocks = <&periph_clk BCM63268_CLK_HSSPI>,
206666c1fc9SÁlvaro Fernández Rojas				 <&hsspi_osc>;
207666c1fc9SÁlvaro Fernández Rojas			clock-names = "hsspi",
208666c1fc9SÁlvaro Fernández Rojas				      "pll";
209666c1fc9SÁlvaro Fernández Rojas
210666c1fc9SÁlvaro Fernández Rojas			resets = <&periph_rst BCM63268_RST_SPI>;
211666c1fc9SÁlvaro Fernández Rojas
212666c1fc9SÁlvaro Fernández Rojas			status = "disabled";
213666c1fc9SÁlvaro Fernández Rojas		};
214666c1fc9SÁlvaro Fernández Rojas
215666c1fc9SÁlvaro Fernández Rojas		periph_pwr: power-controller@1000184c {
216666c1fc9SÁlvaro Fernández Rojas			compatible = "brcm,bcm6328-power-controller";
217666c1fc9SÁlvaro Fernández Rojas			reg = <0x1000184c 0x4>;
218666c1fc9SÁlvaro Fernández Rojas			#power-domain-cells = <1>;
219666c1fc9SÁlvaro Fernández Rojas		};
220666c1fc9SÁlvaro Fernández Rojas
221786e19a8SÁlvaro Fernández Rojas		leds0: led-controller@10001900 {
222786e19a8SÁlvaro Fernández Rojas			#address-cells = <1>;
223786e19a8SÁlvaro Fernández Rojas			#size-cells = <0>;
224786e19a8SÁlvaro Fernández Rojas			compatible = "brcm,bcm6328-leds";
225786e19a8SÁlvaro Fernández Rojas			reg = <0x10001900 0x24>;
226786e19a8SÁlvaro Fernández Rojas
227786e19a8SÁlvaro Fernández Rojas			status = "disabled";
228786e19a8SÁlvaro Fernández Rojas		};
229786e19a8SÁlvaro Fernández Rojas
230786e19a8SÁlvaro Fernández Rojas		ehci: usb@10002500 {
231786e19a8SÁlvaro Fernández Rojas			compatible = "brcm,bcm63268-ehci", "generic-ehci";
232786e19a8SÁlvaro Fernández Rojas			reg = <0x10002500 0x100>;
233786e19a8SÁlvaro Fernández Rojas			big-endian;
234786e19a8SÁlvaro Fernández Rojas
235786e19a8SÁlvaro Fernández Rojas			interrupt-parent = <&periph_intc>;
236786e19a8SÁlvaro Fernández Rojas			interrupts = <10>;
237786e19a8SÁlvaro Fernández Rojas
238666c1fc9SÁlvaro Fernández Rojas			phys = <&usbh 0>;
239666c1fc9SÁlvaro Fernández Rojas			phy-names = "usb";
240666c1fc9SÁlvaro Fernández Rojas
241786e19a8SÁlvaro Fernández Rojas			status = "disabled";
242786e19a8SÁlvaro Fernández Rojas		};
243786e19a8SÁlvaro Fernández Rojas
244786e19a8SÁlvaro Fernández Rojas		ohci: usb@10002600 {
245786e19a8SÁlvaro Fernández Rojas			compatible = "brcm,bcm63268-ohci", "generic-ohci";
246786e19a8SÁlvaro Fernández Rojas			reg = <0x10002600 0x100>;
247786e19a8SÁlvaro Fernández Rojas			big-endian;
248786e19a8SÁlvaro Fernández Rojas			no-big-frame-no;
249786e19a8SÁlvaro Fernández Rojas
250786e19a8SÁlvaro Fernández Rojas			interrupt-parent = <&periph_intc>;
251786e19a8SÁlvaro Fernández Rojas			interrupts = <9>;
252786e19a8SÁlvaro Fernández Rojas
253666c1fc9SÁlvaro Fernández Rojas			phys = <&usbh 0>;
254666c1fc9SÁlvaro Fernández Rojas			phy-names = "usb";
255666c1fc9SÁlvaro Fernández Rojas
256666c1fc9SÁlvaro Fernández Rojas			status = "disabled";
257666c1fc9SÁlvaro Fernández Rojas		};
258666c1fc9SÁlvaro Fernández Rojas
259666c1fc9SÁlvaro Fernández Rojas		usbh: usb-phy@10002700 {
260666c1fc9SÁlvaro Fernández Rojas			compatible = "brcm,bcm63268-usbh-phy";
261666c1fc9SÁlvaro Fernández Rojas			reg = <0x10002700 0x38>;
262666c1fc9SÁlvaro Fernández Rojas			#phy-cells = <1>;
263666c1fc9SÁlvaro Fernández Rojas
264666c1fc9SÁlvaro Fernández Rojas			clocks = <&periph_clk BCM63268_CLK_USBH>;
265666c1fc9SÁlvaro Fernández Rojas			clock-names = "usbh";
266666c1fc9SÁlvaro Fernández Rojas
267666c1fc9SÁlvaro Fernández Rojas			power-domains = <&periph_pwr BCM63268_POWER_DOMAIN_USBH>;
268666c1fc9SÁlvaro Fernández Rojas
269666c1fc9SÁlvaro Fernández Rojas			resets = <&periph_rst BCM63268_RST_USBH>;
270666c1fc9SÁlvaro Fernández Rojas			reset-names = "usbh";
271666c1fc9SÁlvaro Fernández Rojas
272786e19a8SÁlvaro Fernández Rojas			status = "disabled";
273786e19a8SÁlvaro Fernández Rojas		};
274786e19a8SÁlvaro Fernández Rojas	};
275786e19a8SÁlvaro Fernández Rojas};
276