xref: /openbmc/linux/arch/mips/boot/dts/brcm/bcm6328.dtsi (revision 1e4388a1)
1// SPDX-License-Identifier: GPL-2.0
2
3#include "dt-bindings/clock/bcm6328-clock.h"
4#include "dt-bindings/reset/bcm6328-reset.h"
5#include "dt-bindings/soc/bcm6328-pm.h"
6
7/ {
8	#address-cells = <1>;
9	#size-cells = <1>;
10	compatible = "brcm,bcm6328";
11
12	cpus {
13		#address-cells = <1>;
14		#size-cells = <0>;
15
16		mips-hpt-frequency = <160000000>;
17
18		cpu@0 {
19			compatible = "brcm,bmips4350";
20			device_type = "cpu";
21			reg = <0>;
22		};
23
24		cpu@1 {
25			compatible = "brcm,bmips4350";
26			device_type = "cpu";
27			reg = <1>;
28		};
29	};
30
31	clocks {
32		periph_clk: periph-clk {
33			compatible = "fixed-clock";
34			#clock-cells = <0>;
35			clock-frequency = <50000000>;
36		};
37	};
38
39	aliases {
40		serial0 = &uart0;
41		serial1 = &uart1;
42	};
43
44	cpu_intc: interrupt-controller {
45		#address-cells = <0>;
46		compatible = "mti,cpu-interrupt-controller";
47
48		interrupt-controller;
49		#interrupt-cells = <1>;
50	};
51
52	ubus {
53		#address-cells = <1>;
54		#size-cells = <1>;
55
56		compatible = "simple-bus";
57		ranges;
58
59		clkctl: clock-controller@10000004 {
60			compatible = "brcm,bcm6328-clocks";
61			reg = <0x10000004 0x4>;
62			#clock-cells = <1>;
63		};
64
65		periph_rst: reset-controller@10000010 {
66			compatible = "brcm,bcm6345-reset";
67			reg = <0x10000010 0x4>;
68			#reset-cells = <1>;
69		};
70
71		periph_intc: interrupt-controller@10000020 {
72			compatible = "brcm,bcm6345-l1-intc";
73			reg = <0x10000020 0x10>,
74			      <0x10000030 0x10>;
75
76			interrupt-controller;
77			#interrupt-cells = <1>;
78
79			interrupt-parent = <&cpu_intc>;
80			interrupts = <2>, <3>;
81		};
82
83		uart0: serial@10000100 {
84			compatible = "brcm,bcm6345-uart";
85			reg = <0x10000100 0x18>;
86			interrupt-parent = <&periph_intc>;
87			interrupts = <28>;
88			clocks = <&periph_clk>;
89			clock-names = "refclk";
90			status = "disabled";
91		};
92
93		uart1: serial@10000120 {
94			compatible = "brcm,bcm6345-uart";
95			reg = <0x10000120 0x18>;
96			interrupt-parent = <&periph_intc>;
97			interrupts = <39>;
98			clocks = <&periph_clk>;
99			clock-names = "refclk";
100			status = "disabled";
101		};
102
103		timer: syscon@10000040 {
104			compatible = "syscon";
105			reg = <0x10000040 0x2c>;
106			native-endian;
107		};
108
109		reboot: syscon-reboot@10000068 {
110			compatible = "syscon-reboot";
111			regmap = <&timer>;
112			offset = <0x28>;
113			mask = <0x1>;
114		};
115
116		leds0: led-controller@10000800 {
117			#address-cells = <1>;
118			#size-cells = <0>;
119			compatible = "brcm,bcm6328-leds";
120			reg = <0x10000800 0x24>;
121			status = "disabled";
122		};
123
124		periph_pwr: power-controller@10001848 {
125			compatible = "brcm,bcm6328-power-controller";
126			reg = <0x10001848 0x4>;
127			#power-domain-cells = <1>;
128		};
129
130		ehci: usb@10002500 {
131			compatible = "brcm,bcm6328-ehci", "generic-ehci";
132			reg = <0x10002500 0x100>;
133			big-endian;
134			interrupt-parent = <&periph_intc>;
135			interrupts = <42>;
136			status = "disabled";
137		};
138
139		ohci: usb@10002600 {
140			compatible = "brcm,bcm6328-ohci", "generic-ohci";
141			reg = <0x10002600 0x100>;
142			big-endian;
143			no-big-frame-no;
144			interrupt-parent = <&periph_intc>;
145			interrupts = <41>;
146			status = "disabled";
147		};
148	};
149};
150