xref: /openbmc/u-boot/arch/mips/dts/brcm,bcm6318.dtsi (revision ae485b54)
1// SPDX-License-Identifier: GPL-2.0+
2/*
3 * Copyright (C) 2018 Álvaro Fernández Rojas <noltari@gmail.com>
4 */
5
6#include <dt-bindings/clock/bcm6318-clock.h>
7#include <dt-bindings/gpio/gpio.h>
8#include <dt-bindings/power-domain/bcm6318-power-domain.h>
9#include <dt-bindings/reset/bcm6318-reset.h>
10#include "skeleton.dtsi"
11
12/ {
13	compatible = "brcm,bcm6318";
14
15	aliases {
16		spi0 = &spi;
17	};
18
19	cpus {
20		reg = <0x10000000 0x4>;
21		#address-cells = <1>;
22		#size-cells = <0>;
23		u-boot,dm-pre-reloc;
24
25		cpu@0 {
26			compatible = "brcm,bcm6318-cpu", "mips,mips4Kc";
27			device_type = "cpu";
28			reg = <0>;
29			u-boot,dm-pre-reloc;
30		};
31	};
32
33	clocks {
34		compatible = "simple-bus";
35		#address-cells = <1>;
36		#size-cells = <1>;
37		u-boot,dm-pre-reloc;
38
39		hsspi_pll: hsspi-pll {
40			compatible = "fixed-clock";
41			#clock-cells = <0>;
42			clock-frequency = <250000000>;
43		};
44
45		periph_osc: periph-osc {
46			compatible = "fixed-clock";
47			#clock-cells = <0>;
48			clock-frequency = <50000000>;
49			u-boot,dm-pre-reloc;
50		};
51
52		periph_clk: periph-clk {
53			compatible = "brcm,bcm6345-clk";
54			reg = <0x10000004 0x4>;
55			#clock-cells = <1>;
56		};
57	};
58
59	ubus {
60		compatible = "simple-bus";
61		#address-cells = <1>;
62		#size-cells = <1>;
63		u-boot,dm-pre-reloc;
64
65		periph_rst: reset-controller@10000010 {
66			compatible = "brcm,bcm6345-reset";
67			reg = <0x10000010 0x4>;
68			#reset-cells = <1>;
69		};
70
71		wdt: watchdog@10000068 {
72			compatible = "brcm,bcm6345-wdt";
73			reg = <0x10000068 0xc>;
74			clocks = <&periph_osc>;
75		};
76
77		wdt-reboot {
78			compatible = "wdt-reboot";
79			wdt = <&wdt>;
80		};
81
82		pll_cntl: syscon@10000074 {
83			compatible = "syscon";
84			reg = <0x10000074 0x4>;
85		};
86
87		syscon-reboot {
88			compatible = "syscon-reboot";
89			regmap = <&pll_cntl>;
90			offset = <0x0>;
91			mask = <0x1>;
92		};
93
94		gpio1: gpio-controller@10000080 {
95			compatible = "brcm,bcm6345-gpio";
96			reg = <0x10000080 0x4>, <0x10000088 0x4>;
97			gpio-controller;
98			#gpio-cells = <2>;
99			ngpios = <18>;
100
101			status = "disabled";
102		};
103
104		gpio0: gpio-controller@10000084 {
105			compatible = "brcm,bcm6345-gpio";
106			reg = <0x10000084 0x4>, <0x1000008c 0x4>;
107			gpio-controller;
108			#gpio-cells = <2>;
109
110			status = "disabled";
111		};
112
113		uart0: serial@10000100 {
114			compatible = "brcm,bcm6345-uart";
115			reg = <0x10000100 0x18>;
116			clocks = <&periph_osc>;
117
118			status = "disabled";
119		};
120
121		leds: led-controller@10000200 {
122			compatible = "brcm,bcm6328-leds";
123			reg = <0x10000200 0x28>;
124			#address-cells = <1>;
125			#size-cells = <0>;
126
127			status = "disabled";
128		};
129
130		periph_pwr: power-controller@100008e8 {
131			compatible = "brcm,bcm6328-power-domain";
132			reg = <0x100008e8 0x4>;
133			#power-domain-cells = <1>;
134		};
135
136		spi: spi@10003000 {
137			compatible = "brcm,bcm6328-hsspi";
138			#address-cells = <1>;
139			#size-cells = <0>;
140			reg = <0x10003000 0x600>;
141			clocks = <&periph_clk BCM6318_CLK_HSSPI>, <&hsspi_pll>;
142			clock-names = "hsspi", "pll";
143			resets = <&periph_rst BCM6318_RST_SPI>;
144			spi-max-frequency = <33333334>;
145			num-cs = <3>;
146
147			status = "disabled";
148		};
149
150		memory-controller@10004000 {
151			compatible = "brcm,bcm6318-mc";
152			reg = <0x10004000 0x38>;
153			u-boot,dm-pre-reloc;
154		};
155
156		ehci: usb-controller@10005000 {
157			compatible = "brcm,bcm6318-ehci", "generic-ehci";
158			reg = <0x10005000 0x100>;
159			phys = <&usbh>;
160			big-endian;
161
162			status = "disabled";
163		};
164
165		ohci: usb-controller@10005100 {
166			compatible = "brcm,bcm6318-ohci", "generic-ohci";
167			reg = <0x10005100 0x100>;
168			phys = <&usbh>;
169			big-endian;
170
171			status = "disabled";
172		};
173
174		usbh: usb-phy@10005200 {
175			compatible = "brcm,bcm6318-usbh";
176			reg = <0x10005200 0x30>;
177			#phy-cells = <0>;
178			clocks = <&periph_clk BCM6318_CLK_USB>;
179			clock-names = "usbh";
180			power-domains = <&periph_pwr BCM6318_PWR_USB>;
181			resets = <&periph_rst BCM6318_RST_USBH>;
182
183			status = "disabled";
184		};
185	};
186};
187