162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci/ {
362306a36Sopenharmony_ci	#address-cells = <1>;
462306a36Sopenharmony_ci	#size-cells = <1>;
562306a36Sopenharmony_ci	compatible = "brcm,bcm3384", "brcm,bcm33843";
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci	memory@0 {
862306a36Sopenharmony_ci		device_type = "memory";
962306a36Sopenharmony_ci
1062306a36Sopenharmony_ci		/* Typical range.  The bootloader should fill this in. */
1162306a36Sopenharmony_ci		reg = <0x0 0x08000000>;
1262306a36Sopenharmony_ci	};
1362306a36Sopenharmony_ci
1462306a36Sopenharmony_ci	cpus {
1562306a36Sopenharmony_ci		#address-cells = <1>;
1662306a36Sopenharmony_ci		#size-cells = <0>;
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ci		/* On BMIPS5000 this is 1/8th of the CPU core clock */
1962306a36Sopenharmony_ci		mips-hpt-frequency = <100000000>;
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ci		cpu@0 {
2262306a36Sopenharmony_ci			compatible = "brcm,bmips5000";
2362306a36Sopenharmony_ci			device_type = "cpu";
2462306a36Sopenharmony_ci			reg = <0>;
2562306a36Sopenharmony_ci		};
2662306a36Sopenharmony_ci
2762306a36Sopenharmony_ci		cpu@1 {
2862306a36Sopenharmony_ci			compatible = "brcm,bmips5000";
2962306a36Sopenharmony_ci			device_type = "cpu";
3062306a36Sopenharmony_ci			reg = <1>;
3162306a36Sopenharmony_ci		};
3262306a36Sopenharmony_ci	};
3362306a36Sopenharmony_ci
3462306a36Sopenharmony_ci	cpu_intc: cpu_intc {
3562306a36Sopenharmony_ci		#address-cells = <0>;
3662306a36Sopenharmony_ci		compatible = "mti,cpu-interrupt-controller";
3762306a36Sopenharmony_ci
3862306a36Sopenharmony_ci		interrupt-controller;
3962306a36Sopenharmony_ci		#interrupt-cells = <1>;
4062306a36Sopenharmony_ci	};
4162306a36Sopenharmony_ci
4262306a36Sopenharmony_ci	clocks {
4362306a36Sopenharmony_ci		periph_clk: periph_clk {
4462306a36Sopenharmony_ci			compatible = "fixed-clock";
4562306a36Sopenharmony_ci			#clock-cells = <0>;
4662306a36Sopenharmony_ci			clock-frequency = <54000000>;
4762306a36Sopenharmony_ci		};
4862306a36Sopenharmony_ci	};
4962306a36Sopenharmony_ci
5062306a36Sopenharmony_ci	aliases {
5162306a36Sopenharmony_ci		uart0 = &uart0;
5262306a36Sopenharmony_ci	};
5362306a36Sopenharmony_ci
5462306a36Sopenharmony_ci	ubus {
5562306a36Sopenharmony_ci		#address-cells = <1>;
5662306a36Sopenharmony_ci		#size-cells = <1>;
5762306a36Sopenharmony_ci
5862306a36Sopenharmony_ci		compatible = "brcm,ubus", "simple-bus";
5962306a36Sopenharmony_ci		ranges;
6062306a36Sopenharmony_ci		dma-ranges = <0x00000000 0x08000000 0x08000000>,
6162306a36Sopenharmony_ci			     <0x08000000 0x00000000 0x08000000>;
6262306a36Sopenharmony_ci
6362306a36Sopenharmony_ci		periph_intc: periph_intc@14e00038 {
6462306a36Sopenharmony_ci			compatible = "brcm,bcm3380-l2-intc";
6562306a36Sopenharmony_ci			reg = <0x14e00038 0x4 0x14e0003c 0x4>,
6662306a36Sopenharmony_ci			      <0x14e00340 0x4 0x14e00344 0x4>;
6762306a36Sopenharmony_ci
6862306a36Sopenharmony_ci			interrupt-controller;
6962306a36Sopenharmony_ci			#interrupt-cells = <1>;
7062306a36Sopenharmony_ci
7162306a36Sopenharmony_ci			interrupt-parent = <&cpu_intc>;
7262306a36Sopenharmony_ci			interrupts = <4>;
7362306a36Sopenharmony_ci		};
7462306a36Sopenharmony_ci
7562306a36Sopenharmony_ci		zmips_intc: zmips_intc@104b0060 {
7662306a36Sopenharmony_ci			compatible = "brcm,bcm3380-l2-intc";
7762306a36Sopenharmony_ci			reg = <0x104b0060 0x4 0x104b0064 0x4>;
7862306a36Sopenharmony_ci
7962306a36Sopenharmony_ci			interrupt-controller;
8062306a36Sopenharmony_ci			#interrupt-cells = <1>;
8162306a36Sopenharmony_ci
8262306a36Sopenharmony_ci			interrupt-parent = <&periph_intc>;
8362306a36Sopenharmony_ci			interrupts = <29>;
8462306a36Sopenharmony_ci			brcm,int-map-mask = <0xffffffff>;
8562306a36Sopenharmony_ci		};
8662306a36Sopenharmony_ci
8762306a36Sopenharmony_ci		iop_intc: iop_intc@14e00058 {
8862306a36Sopenharmony_ci			compatible = "brcm,bcm3380-l2-intc";
8962306a36Sopenharmony_ci			reg = <0x14e00058 0x4 0x14e0005c 0x4>;
9062306a36Sopenharmony_ci
9162306a36Sopenharmony_ci			interrupt-controller;
9262306a36Sopenharmony_ci			#interrupt-cells = <1>;
9362306a36Sopenharmony_ci
9462306a36Sopenharmony_ci			interrupt-parent = <&cpu_intc>;
9562306a36Sopenharmony_ci			interrupts = <6>;
9662306a36Sopenharmony_ci			brcm,int-map-mask = <0xffffffff>;
9762306a36Sopenharmony_ci		};
9862306a36Sopenharmony_ci
9962306a36Sopenharmony_ci		uart0: serial@14e00520 {
10062306a36Sopenharmony_ci			compatible = "brcm,bcm6345-uart";
10162306a36Sopenharmony_ci			reg = <0x14e00520 0x18>;
10262306a36Sopenharmony_ci			interrupt-parent = <&periph_intc>;
10362306a36Sopenharmony_ci			interrupts = <2>;
10462306a36Sopenharmony_ci			clocks = <&periph_clk>;
10562306a36Sopenharmony_ci			status = "disabled";
10662306a36Sopenharmony_ci		};
10762306a36Sopenharmony_ci
10862306a36Sopenharmony_ci		ehci0: usb@15400300 {
10962306a36Sopenharmony_ci			compatible = "brcm,bcm3384-ehci", "generic-ehci";
11062306a36Sopenharmony_ci			reg = <0x15400300 0x100>;
11162306a36Sopenharmony_ci			big-endian;
11262306a36Sopenharmony_ci			interrupt-parent = <&periph_intc>;
11362306a36Sopenharmony_ci			interrupts = <41>;
11462306a36Sopenharmony_ci			status = "disabled";
11562306a36Sopenharmony_ci		};
11662306a36Sopenharmony_ci
11762306a36Sopenharmony_ci		ohci0: usb@15400400 {
11862306a36Sopenharmony_ci			compatible = "brcm,bcm3384-ohci", "generic-ohci";
11962306a36Sopenharmony_ci			reg = <0x15400400 0x100>;
12062306a36Sopenharmony_ci			big-endian;
12162306a36Sopenharmony_ci			no-big-frame-no;
12262306a36Sopenharmony_ci			interrupt-parent = <&periph_intc>;
12362306a36Sopenharmony_ci			interrupts = <40>;
12462306a36Sopenharmony_ci			status = "disabled";
12562306a36Sopenharmony_ci		};
12662306a36Sopenharmony_ci	};
12762306a36Sopenharmony_ci};
128