xref: /openbmc/u-boot/arch/mips/dts/brcm,bcm6318.dtsi (revision 7e40d0a3)
183d290c5STom Rini// SPDX-License-Identifier: GPL-2.0+
23483f28eSÁlvaro Fernández Rojas/*
33483f28eSÁlvaro Fernández Rojas * Copyright (C) 2018 Álvaro Fernández Rojas <noltari@gmail.com>
43483f28eSÁlvaro Fernández Rojas */
53483f28eSÁlvaro Fernández Rojas
63483f28eSÁlvaro Fernández Rojas#include <dt-bindings/clock/bcm6318-clock.h>
76e0faa22SÁlvaro Fernández Rojas#include <dt-bindings/dma/bcm6318-dma.h>
83483f28eSÁlvaro Fernández Rojas#include <dt-bindings/gpio/gpio.h>
93483f28eSÁlvaro Fernández Rojas#include <dt-bindings/power-domain/bcm6318-power-domain.h>
103483f28eSÁlvaro Fernández Rojas#include <dt-bindings/reset/bcm6318-reset.h>
113483f28eSÁlvaro Fernández Rojas#include "skeleton.dtsi"
123483f28eSÁlvaro Fernández Rojas
133483f28eSÁlvaro Fernández Rojas/ {
143483f28eSÁlvaro Fernández Rojas	compatible = "brcm,bcm6318";
153483f28eSÁlvaro Fernández Rojas
163483f28eSÁlvaro Fernández Rojas	aliases {
173483f28eSÁlvaro Fernández Rojas		spi0 = &spi;
183483f28eSÁlvaro Fernández Rojas	};
193483f28eSÁlvaro Fernández Rojas
203483f28eSÁlvaro Fernández Rojas	cpus {
213483f28eSÁlvaro Fernández Rojas		reg = <0x10000000 0x4>;
223483f28eSÁlvaro Fernández Rojas		#address-cells = <1>;
233483f28eSÁlvaro Fernández Rojas		#size-cells = <0>;
243483f28eSÁlvaro Fernández Rojas		u-boot,dm-pre-reloc;
253483f28eSÁlvaro Fernández Rojas
263483f28eSÁlvaro Fernández Rojas		cpu@0 {
273483f28eSÁlvaro Fernández Rojas			compatible = "brcm,bcm6318-cpu", "mips,mips4Kc";
283483f28eSÁlvaro Fernández Rojas			device_type = "cpu";
293483f28eSÁlvaro Fernández Rojas			reg = <0>;
303483f28eSÁlvaro Fernández Rojas			u-boot,dm-pre-reloc;
313483f28eSÁlvaro Fernández Rojas		};
323483f28eSÁlvaro Fernández Rojas	};
333483f28eSÁlvaro Fernández Rojas
343483f28eSÁlvaro Fernández Rojas	clocks {
353483f28eSÁlvaro Fernández Rojas		compatible = "simple-bus";
363483f28eSÁlvaro Fernández Rojas		#address-cells = <1>;
373483f28eSÁlvaro Fernández Rojas		#size-cells = <1>;
383483f28eSÁlvaro Fernández Rojas		u-boot,dm-pre-reloc;
393483f28eSÁlvaro Fernández Rojas
403483f28eSÁlvaro Fernández Rojas		hsspi_pll: hsspi-pll {
413483f28eSÁlvaro Fernández Rojas			compatible = "fixed-clock";
423483f28eSÁlvaro Fernández Rojas			#clock-cells = <0>;
433483f28eSÁlvaro Fernández Rojas			clock-frequency = <250000000>;
443483f28eSÁlvaro Fernández Rojas		};
453483f28eSÁlvaro Fernández Rojas
463483f28eSÁlvaro Fernández Rojas		periph_osc: periph-osc {
473483f28eSÁlvaro Fernández Rojas			compatible = "fixed-clock";
483483f28eSÁlvaro Fernández Rojas			#clock-cells = <0>;
493483f28eSÁlvaro Fernández Rojas			clock-frequency = <50000000>;
503483f28eSÁlvaro Fernández Rojas			u-boot,dm-pre-reloc;
513483f28eSÁlvaro Fernández Rojas		};
523483f28eSÁlvaro Fernández Rojas
533483f28eSÁlvaro Fernández Rojas		periph_clk: periph-clk {
543483f28eSÁlvaro Fernández Rojas			compatible = "brcm,bcm6345-clk";
553483f28eSÁlvaro Fernández Rojas			reg = <0x10000004 0x4>;
563483f28eSÁlvaro Fernández Rojas			#clock-cells = <1>;
573483f28eSÁlvaro Fernández Rojas		};
586e0faa22SÁlvaro Fernández Rojas
596e0faa22SÁlvaro Fernández Rojas		ubus_clk: ubus-clk {
606e0faa22SÁlvaro Fernández Rojas			compatible = "brcm,bcm6345-clk";
616e0faa22SÁlvaro Fernández Rojas			reg = <0x10000008 0x4>;
626e0faa22SÁlvaro Fernández Rojas			#clock-cells = <1>;
636e0faa22SÁlvaro Fernández Rojas		};
643483f28eSÁlvaro Fernández Rojas	};
653483f28eSÁlvaro Fernández Rojas
663483f28eSÁlvaro Fernández Rojas	ubus {
673483f28eSÁlvaro Fernández Rojas		compatible = "simple-bus";
683483f28eSÁlvaro Fernández Rojas		#address-cells = <1>;
693483f28eSÁlvaro Fernández Rojas		#size-cells = <1>;
703483f28eSÁlvaro Fernández Rojas		u-boot,dm-pre-reloc;
713483f28eSÁlvaro Fernández Rojas
723483f28eSÁlvaro Fernández Rojas		periph_rst: reset-controller@10000010 {
733483f28eSÁlvaro Fernández Rojas			compatible = "brcm,bcm6345-reset";
743483f28eSÁlvaro Fernández Rojas			reg = <0x10000010 0x4>;
753483f28eSÁlvaro Fernández Rojas			#reset-cells = <1>;
763483f28eSÁlvaro Fernández Rojas		};
773483f28eSÁlvaro Fernández Rojas
783483f28eSÁlvaro Fernández Rojas		wdt: watchdog@10000068 {
793483f28eSÁlvaro Fernández Rojas			compatible = "brcm,bcm6345-wdt";
803483f28eSÁlvaro Fernández Rojas			reg = <0x10000068 0xc>;
813483f28eSÁlvaro Fernández Rojas			clocks = <&periph_osc>;
823483f28eSÁlvaro Fernández Rojas		};
833483f28eSÁlvaro Fernández Rojas
843483f28eSÁlvaro Fernández Rojas		wdt-reboot {
853483f28eSÁlvaro Fernández Rojas			compatible = "wdt-reboot";
863483f28eSÁlvaro Fernández Rojas			wdt = <&wdt>;
873483f28eSÁlvaro Fernández Rojas		};
883483f28eSÁlvaro Fernández Rojas
893483f28eSÁlvaro Fernández Rojas		pll_cntl: syscon@10000074 {
903483f28eSÁlvaro Fernández Rojas			compatible = "syscon";
913483f28eSÁlvaro Fernández Rojas			reg = <0x10000074 0x4>;
923483f28eSÁlvaro Fernández Rojas		};
933483f28eSÁlvaro Fernández Rojas
943483f28eSÁlvaro Fernández Rojas		syscon-reboot {
953483f28eSÁlvaro Fernández Rojas			compatible = "syscon-reboot";
963483f28eSÁlvaro Fernández Rojas			regmap = <&pll_cntl>;
973483f28eSÁlvaro Fernández Rojas			offset = <0x0>;
983483f28eSÁlvaro Fernández Rojas			mask = <0x1>;
993483f28eSÁlvaro Fernández Rojas		};
1003483f28eSÁlvaro Fernández Rojas
1013483f28eSÁlvaro Fernández Rojas		gpio1: gpio-controller@10000080 {
1023483f28eSÁlvaro Fernández Rojas			compatible = "brcm,bcm6345-gpio";
1033483f28eSÁlvaro Fernández Rojas			reg = <0x10000080 0x4>, <0x10000088 0x4>;
1043483f28eSÁlvaro Fernández Rojas			gpio-controller;
1053483f28eSÁlvaro Fernández Rojas			#gpio-cells = <2>;
1063483f28eSÁlvaro Fernández Rojas			ngpios = <18>;
1073483f28eSÁlvaro Fernández Rojas
1083483f28eSÁlvaro Fernández Rojas			status = "disabled";
1093483f28eSÁlvaro Fernández Rojas		};
1103483f28eSÁlvaro Fernández Rojas
1113483f28eSÁlvaro Fernández Rojas		gpio0: gpio-controller@10000084 {
1123483f28eSÁlvaro Fernández Rojas			compatible = "brcm,bcm6345-gpio";
1133483f28eSÁlvaro Fernández Rojas			reg = <0x10000084 0x4>, <0x1000008c 0x4>;
1143483f28eSÁlvaro Fernández Rojas			gpio-controller;
1153483f28eSÁlvaro Fernández Rojas			#gpio-cells = <2>;
1163483f28eSÁlvaro Fernández Rojas
1173483f28eSÁlvaro Fernández Rojas			status = "disabled";
1183483f28eSÁlvaro Fernández Rojas		};
1193483f28eSÁlvaro Fernández Rojas
1203483f28eSÁlvaro Fernández Rojas		uart0: serial@10000100 {
1213483f28eSÁlvaro Fernández Rojas			compatible = "brcm,bcm6345-uart";
1223483f28eSÁlvaro Fernández Rojas			reg = <0x10000100 0x18>;
1233483f28eSÁlvaro Fernández Rojas			clocks = <&periph_osc>;
1243483f28eSÁlvaro Fernández Rojas
1253483f28eSÁlvaro Fernández Rojas			status = "disabled";
1263483f28eSÁlvaro Fernández Rojas		};
1273483f28eSÁlvaro Fernández Rojas
1283483f28eSÁlvaro Fernández Rojas		leds: led-controller@10000200 {
1293483f28eSÁlvaro Fernández Rojas			compatible = "brcm,bcm6328-leds";
1303483f28eSÁlvaro Fernández Rojas			reg = <0x10000200 0x28>;
1313483f28eSÁlvaro Fernández Rojas			#address-cells = <1>;
1323483f28eSÁlvaro Fernández Rojas			#size-cells = <0>;
1333483f28eSÁlvaro Fernández Rojas
1343483f28eSÁlvaro Fernández Rojas			status = "disabled";
1353483f28eSÁlvaro Fernández Rojas		};
1363483f28eSÁlvaro Fernández Rojas
1373483f28eSÁlvaro Fernández Rojas		periph_pwr: power-controller@100008e8 {
1383483f28eSÁlvaro Fernández Rojas			compatible = "brcm,bcm6328-power-domain";
1393483f28eSÁlvaro Fernández Rojas			reg = <0x100008e8 0x4>;
1403483f28eSÁlvaro Fernández Rojas			#power-domain-cells = <1>;
1413483f28eSÁlvaro Fernández Rojas		};
1423483f28eSÁlvaro Fernández Rojas
1433483f28eSÁlvaro Fernández Rojas		spi: spi@10003000 {
1443483f28eSÁlvaro Fernández Rojas			compatible = "brcm,bcm6328-hsspi";
1453483f28eSÁlvaro Fernández Rojas			#address-cells = <1>;
1463483f28eSÁlvaro Fernández Rojas			#size-cells = <0>;
1473483f28eSÁlvaro Fernández Rojas			reg = <0x10003000 0x600>;
1483483f28eSÁlvaro Fernández Rojas			clocks = <&periph_clk BCM6318_CLK_HSSPI>, <&hsspi_pll>;
1493483f28eSÁlvaro Fernández Rojas			clock-names = "hsspi", "pll";
1503483f28eSÁlvaro Fernández Rojas			resets = <&periph_rst BCM6318_RST_SPI>;
1513483f28eSÁlvaro Fernández Rojas			spi-max-frequency = <33333334>;
1523483f28eSÁlvaro Fernández Rojas			num-cs = <3>;
1533483f28eSÁlvaro Fernández Rojas
1543483f28eSÁlvaro Fernández Rojas			status = "disabled";
1553483f28eSÁlvaro Fernández Rojas		};
1563483f28eSÁlvaro Fernández Rojas
1573483f28eSÁlvaro Fernández Rojas		memory-controller@10004000 {
1583483f28eSÁlvaro Fernández Rojas			compatible = "brcm,bcm6318-mc";
1593483f28eSÁlvaro Fernández Rojas			reg = <0x10004000 0x38>;
1603483f28eSÁlvaro Fernández Rojas			u-boot,dm-pre-reloc;
1613483f28eSÁlvaro Fernández Rojas		};
162ee1f79b7SÁlvaro Fernández Rojas
163ee1f79b7SÁlvaro Fernández Rojas		ehci: usb-controller@10005000 {
164ee1f79b7SÁlvaro Fernández Rojas			compatible = "brcm,bcm6318-ehci", "generic-ehci";
165ee1f79b7SÁlvaro Fernández Rojas			reg = <0x10005000 0x100>;
166ee1f79b7SÁlvaro Fernández Rojas			phys = <&usbh>;
167ee1f79b7SÁlvaro Fernández Rojas			big-endian;
168ee1f79b7SÁlvaro Fernández Rojas
169ee1f79b7SÁlvaro Fernández Rojas			status = "disabled";
170ee1f79b7SÁlvaro Fernández Rojas		};
171ee1f79b7SÁlvaro Fernández Rojas
172ee1f79b7SÁlvaro Fernández Rojas		ohci: usb-controller@10005100 {
173ee1f79b7SÁlvaro Fernández Rojas			compatible = "brcm,bcm6318-ohci", "generic-ohci";
174ee1f79b7SÁlvaro Fernández Rojas			reg = <0x10005100 0x100>;
175ee1f79b7SÁlvaro Fernández Rojas			phys = <&usbh>;
176ee1f79b7SÁlvaro Fernández Rojas			big-endian;
177ee1f79b7SÁlvaro Fernández Rojas
178ee1f79b7SÁlvaro Fernández Rojas			status = "disabled";
179ee1f79b7SÁlvaro Fernández Rojas		};
180ee1f79b7SÁlvaro Fernández Rojas
181ee1f79b7SÁlvaro Fernández Rojas		usbh: usb-phy@10005200 {
182ee1f79b7SÁlvaro Fernández Rojas			compatible = "brcm,bcm6318-usbh";
183ee1f79b7SÁlvaro Fernández Rojas			reg = <0x10005200 0x30>;
184ee1f79b7SÁlvaro Fernández Rojas			#phy-cells = <0>;
185ee1f79b7SÁlvaro Fernández Rojas			clocks = <&periph_clk BCM6318_CLK_USB>;
186ee1f79b7SÁlvaro Fernández Rojas			clock-names = "usbh";
187ee1f79b7SÁlvaro Fernández Rojas			power-domains = <&periph_pwr BCM6318_PWR_USB>;
188ee1f79b7SÁlvaro Fernández Rojas			resets = <&periph_rst BCM6318_RST_USBH>;
189ee1f79b7SÁlvaro Fernández Rojas
190ee1f79b7SÁlvaro Fernández Rojas			status = "disabled";
191ee1f79b7SÁlvaro Fernández Rojas		};
1926e0faa22SÁlvaro Fernández Rojas
193*93bd64bfSÁlvaro Fernández Rojas		enet: ethernet@10080000 {
194*93bd64bfSÁlvaro Fernández Rojas			compatible = "brcm,bcm6368-enet";
195*93bd64bfSÁlvaro Fernández Rojas			#address-cells = <1>;
196*93bd64bfSÁlvaro Fernández Rojas			#size-cells = <0>;
197*93bd64bfSÁlvaro Fernández Rojas			reg = <0x10080000 0x8000>;
198*93bd64bfSÁlvaro Fernández Rojas			clocks = <&periph_clk BCM6318_CLK_ROBOSW250>,
199*93bd64bfSÁlvaro Fernández Rojas				 <&periph_clk BCM6318_CLK_ROBOSW025>,
200*93bd64bfSÁlvaro Fernández Rojas				 <&ubus_clk BCM6318_UCLK_ROBOSW>;
201*93bd64bfSÁlvaro Fernández Rojas			resets = <&periph_rst BCM6318_RST_ENETSW>,
202*93bd64bfSÁlvaro Fernández Rojas				 <&periph_rst BCM6318_RST_EPHY>;
203*93bd64bfSÁlvaro Fernández Rojas			dmas = <&iudma BCM6318_DMA_ENETSW_RX>,
204*93bd64bfSÁlvaro Fernández Rojas			       <&iudma BCM6318_DMA_ENETSW_TX>;
205*93bd64bfSÁlvaro Fernández Rojas			dma-names = "rx",
206*93bd64bfSÁlvaro Fernández Rojas				    "tx";
207*93bd64bfSÁlvaro Fernández Rojas			brcm,num-ports = <5>;
208*93bd64bfSÁlvaro Fernández Rojas
209*93bd64bfSÁlvaro Fernández Rojas			status = "disabled";
210*93bd64bfSÁlvaro Fernández Rojas		};
211*93bd64bfSÁlvaro Fernández Rojas
2126e0faa22SÁlvaro Fernández Rojas		iudma: dma-controller@10088000 {
2136e0faa22SÁlvaro Fernández Rojas			compatible = "brcm,bcm6368-iudma";
2146e0faa22SÁlvaro Fernández Rojas			reg = <0x10088000 0x80>,
2156e0faa22SÁlvaro Fernández Rojas			      <0x10088200 0x80>,
2166e0faa22SÁlvaro Fernández Rojas			      <0x10088400 0x80>;
2176e0faa22SÁlvaro Fernández Rojas			reg-names = "dma",
2186e0faa22SÁlvaro Fernández Rojas				    "dma-channels",
2196e0faa22SÁlvaro Fernández Rojas				    "dma-sram";
2206e0faa22SÁlvaro Fernández Rojas			#dma-cells = <1>;
2216e0faa22SÁlvaro Fernández Rojas			dma-channels = <8>;
2226e0faa22SÁlvaro Fernández Rojas		};
2233483f28eSÁlvaro Fernández Rojas	};
2243483f28eSÁlvaro Fernández Rojas};
225