1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
3 #include <dt-bindings/interrupt-controller/irq.h>
4 #include <dt-bindings/interrupt-controller/arm-gic.h>
5 #include <dt-bindings/phy/phy.h>
6 #include <dt-bindings/soc/bcm-pmb.h>
11 interrupt-parent = <&gic>;
21 stdout-path = "serial0:115200n8";
30 compatible = "brcm,brahma-b53";
32 next-level-cache = <&l2>;
37 compatible = "brcm,brahma-b53";
39 enable-method = "spin-table";
40 cpu-release-addr = <0x0 0xfff8>;
41 next-level-cache = <&l2>;
46 compatible = "brcm,brahma-b53";
48 enable-method = "spin-table";
49 cpu-release-addr = <0x0 0xfff8>;
50 next-level-cache = <&l2>;
55 compatible = "brcm,brahma-b53";
57 enable-method = "spin-table";
58 cpu-release-addr = <0x0 0xfff8>;
59 next-level-cache = <&l2>;
68 compatible = "simple-bus";
71 ranges = <0x00 0x00 0x81000000 0x4000>;
73 gic: interrupt-controller@1000 {
74 compatible = "arm,gic-400";
75 #interrupt-cells = <3>;
78 reg = <0x1000 0x1000>,
84 compatible = "arm,armv8-timer";
85 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
86 <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
87 <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
88 <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
92 compatible = "arm,cortex-a53-pmu";
93 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
94 <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
95 <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
96 <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
97 interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
101 periph_clk: periph_clk {
102 compatible = "fixed-clock";
104 clock-frequency = <50000000>;
105 clock-output-names = "periph";
110 compatible = "simple-bus";
111 #address-cells = <1>;
113 ranges = <0x00 0x00 0x80000000 0x281000>;
115 enet: ethernet@2000 {
116 compatible = "brcm,bcm4908-enet";
117 reg = <0x2000 0x1000>;
119 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>,
120 <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
121 interrupt-names = "rx", "tx";
124 usb_phy: usb-phy@c200 {
125 compatible = "brcm,bcm4908-usb-phy";
126 reg = <0xc200 0x100>;
128 power-domains = <&pmb BCM_PMB_HOST_USB>;
137 compatible = "generic-ehci";
138 reg = <0xc300 0x100>;
139 interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
140 phys = <&usb_phy PHY_TYPE_USB2>;
145 compatible = "generic-ohci";
146 reg = <0xc400 0x100>;
147 interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
148 phys = <&usb_phy PHY_TYPE_USB2>;
153 compatible = "generic-xhci";
154 reg = <0xd000 0x8c8>;
155 interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
156 phys = <&usb_phy PHY_TYPE_USB3>;
161 compatible = "simple-bus";
163 #address-cells = <1>;
164 ranges = <0 0x80000 0x50000>;
167 compatible = "brcm,bcm4908-switch";
174 reg-names = "core", "reg", "intrl2_0",
175 "intrl2_1", "fcb", "acb";
176 interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
177 <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
179 brcm,num-rgmii-ports = <2>;
181 #address-cells = <1>;
185 #address-cells = <1>;
190 phy-mode = "internal";
191 phy-handle = <&phy8>;
196 phy-mode = "internal";
197 phy-handle = <&phy9>;
202 phy-mode = "internal";
203 phy-handle = <&phy10>;
208 phy-mode = "internal";
209 phy-handle = <&phy11>;
214 phy-mode = "internal";
226 compatible = "brcm,unimac-mdio";
230 #address-cells = <1>;
232 phy8: ethernet-phy@8 {
236 phy9: ethernet-phy@9 {
240 phy10: ethernet-phy@a {
244 phy11: ethernet-phy@b {
248 phy12: ethernet-phy@c {
254 procmon: syscon@280000 {
255 compatible = "simple-bus";
256 reg = <0x280000 0x1000>;
259 #address-cells = <1>;
262 pmb: power-controller@2800c0 {
263 compatible = "brcm,bcm4908-pmb";
264 reg = <0x2800c0 0x40>;
265 #power-domain-cells = <1>;
271 compatible = "simple-bus";
272 #address-cells = <1>;
274 ranges = <0x00 0x00 0xff800000 0x3000>;
277 compatible = "brcm,bcm6328-timer", "syscon";
281 gpio0: gpio-controller@500 {
282 compatible = "brcm,bcm6345-gpio";
283 reg-names = "dirout", "dat";
284 reg = <0x500 0x28>, <0x528 0x28>;
291 compatible = "brcm,bcm6345-uart";
293 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
294 clocks = <&periph_clk>;
295 clock-names = "periph";
300 #address-cells = <1>;
302 compatible = "brcm,nand-bcm63138", "brcm,brcmnand-v7.1", "brcm,brcmnand";
303 reg = <0x1800 0x600>, <0x2000 0x10>;
304 reg-names = "nand", "nand-int-base";
305 interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
306 interrupt-names = "nand";
310 compatible = "brcm,nandcs";
316 compatible = "brcm,misc", "simple-mfd";
319 #address-cells = <1>;
321 ranges = <0x00 0x2600 0xe4>;
323 reset-controller@2644 {
324 compatible = "brcm,bcm4908-misc-pcie-reset";
331 compatible = "syscon-reboot";