xref: /linux/scripts/dtc/include-prefixes/arm/aspeed/aspeed-bmc-facebook-minerva.dts (revision 6ee9b93999a9efb4529dbc78deb524ec890aba1a)
1*6ee9b939SYang Chen// SPDX-License-Identifier: GPL-2.0+
2*6ee9b939SYang Chen// Copyright (c) 2023 Facebook Inc.
3*6ee9b939SYang Chen/dts-v1/;
4*6ee9b939SYang Chen
5*6ee9b939SYang Chen#include "aspeed-g6.dtsi"
6*6ee9b939SYang Chen#include <dt-bindings/gpio/aspeed-gpio.h>
7*6ee9b939SYang Chen#include <dt-bindings/i2c/i2c.h>
8*6ee9b939SYang Chen
9*6ee9b939SYang Chen/ {
10*6ee9b939SYang Chen	model = "Facebook Minerva CMM";
11*6ee9b939SYang Chen	compatible = "facebook,minerva-cmc", "aspeed,ast2600";
12*6ee9b939SYang Chen
13*6ee9b939SYang Chen	aliases {
14*6ee9b939SYang Chen		serial5 = &uart5;
15*6ee9b939SYang Chen	};
16*6ee9b939SYang Chen
17*6ee9b939SYang Chen	chosen {
18*6ee9b939SYang Chen		stdout-path = "serial5:57600n8";
19*6ee9b939SYang Chen	};
20*6ee9b939SYang Chen
21*6ee9b939SYang Chen	memory@80000000 {
22*6ee9b939SYang Chen		device_type = "memory";
23*6ee9b939SYang Chen		reg = <0x80000000 0x80000000>;
24*6ee9b939SYang Chen	};
25*6ee9b939SYang Chen
26*6ee9b939SYang Chen	iio-hwmon {
27*6ee9b939SYang Chen		compatible = "iio-hwmon";
28*6ee9b939SYang Chen		io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>, <&adc0 3>,
29*6ee9b939SYang Chen			<&adc0 4>, <&adc0 5>, <&adc0 6>, <&adc0 7>,
30*6ee9b939SYang Chen			<&adc1 2>;
31*6ee9b939SYang Chen	};
32*6ee9b939SYang Chen};
33*6ee9b939SYang Chen
34*6ee9b939SYang Chen&uart6 {
35*6ee9b939SYang Chen	status = "okay";
36*6ee9b939SYang Chen};
37*6ee9b939SYang Chen
38*6ee9b939SYang Chen&wdt1 {
39*6ee9b939SYang Chen	status = "okay";
40*6ee9b939SYang Chen	pinctrl-names = "default";
41*6ee9b939SYang Chen	pinctrl-0 = <&pinctrl_wdtrst1_default>;
42*6ee9b939SYang Chen	aspeed,reset-type = "soc";
43*6ee9b939SYang Chen	aspeed,external-signal;
44*6ee9b939SYang Chen	aspeed,ext-push-pull;
45*6ee9b939SYang Chen	aspeed,ext-active-high;
46*6ee9b939SYang Chen	aspeed,ext-pulse-duration = <256>;
47*6ee9b939SYang Chen};
48*6ee9b939SYang Chen
49*6ee9b939SYang Chen&mac3 {
50*6ee9b939SYang Chen	status = "okay";
51*6ee9b939SYang Chen	pinctrl-names = "default";
52*6ee9b939SYang Chen	pinctrl-0 = <&pinctrl_rmii4_default>;
53*6ee9b939SYang Chen	use-ncsi;
54*6ee9b939SYang Chen	mlx,multi-host;
55*6ee9b939SYang Chen};
56*6ee9b939SYang Chen
57*6ee9b939SYang Chen&fmc {
58*6ee9b939SYang Chen	status = "okay";
59*6ee9b939SYang Chen	flash@0 {
60*6ee9b939SYang Chen		status = "okay";
61*6ee9b939SYang Chen		m25p,fast-read;
62*6ee9b939SYang Chen		label = "bmc";
63*6ee9b939SYang Chen		spi-max-frequency = <50000000>;
64*6ee9b939SYang Chen#include "openbmc-flash-layout-128.dtsi"
65*6ee9b939SYang Chen	};
66*6ee9b939SYang Chen	flash@1 {
67*6ee9b939SYang Chen		status = "okay";
68*6ee9b939SYang Chen		m25p,fast-read;
69*6ee9b939SYang Chen		label = "alt-bmc";
70*6ee9b939SYang Chen		spi-max-frequency = <50000000>;
71*6ee9b939SYang Chen	};
72*6ee9b939SYang Chen};
73*6ee9b939SYang Chen
74*6ee9b939SYang Chen&rtc {
75*6ee9b939SYang Chen	status = "okay";
76*6ee9b939SYang Chen};
77*6ee9b939SYang Chen
78*6ee9b939SYang Chen&sgpiom1 {
79*6ee9b939SYang Chen	status = "okay";
80*6ee9b939SYang Chen	ngpios = <128>;
81*6ee9b939SYang Chen	bus-frequency = <2000000>;
82*6ee9b939SYang Chen};
83*6ee9b939SYang Chen
84*6ee9b939SYang Chen&i2c0 {
85*6ee9b939SYang Chen	status = "okay";
86*6ee9b939SYang Chen};
87*6ee9b939SYang Chen
88*6ee9b939SYang Chen&i2c1 {
89*6ee9b939SYang Chen	status = "okay";
90*6ee9b939SYang Chen
91*6ee9b939SYang Chen	temperature-sensor@4b {
92*6ee9b939SYang Chen		compatible = "ti,tmp75";
93*6ee9b939SYang Chen		reg = <0x4B>;
94*6ee9b939SYang Chen	};
95*6ee9b939SYang Chen
96*6ee9b939SYang Chen	eeprom@51 {
97*6ee9b939SYang Chen		compatible = "atmel,24c128";
98*6ee9b939SYang Chen		reg = <0x51>;
99*6ee9b939SYang Chen	};
100*6ee9b939SYang Chen};
101*6ee9b939SYang Chen
102*6ee9b939SYang Chen&i2c2 {
103*6ee9b939SYang Chen	status = "okay";
104*6ee9b939SYang Chen
105*6ee9b939SYang Chen	i2c-mux@77 {
106*6ee9b939SYang Chen		compatible = "nxp,pca9548";
107*6ee9b939SYang Chen		reg = <0x77>;
108*6ee9b939SYang Chen		#address-cells = <1>;
109*6ee9b939SYang Chen		#size-cells = <0>;
110*6ee9b939SYang Chen		i2c-mux-idle-disconnect;
111*6ee9b939SYang Chen
112*6ee9b939SYang Chen		i2c@0 {
113*6ee9b939SYang Chen			#address-cells = <1>;
114*6ee9b939SYang Chen			#size-cells = <0>;
115*6ee9b939SYang Chen			reg = <0>;
116*6ee9b939SYang Chen
117*6ee9b939SYang Chen			eeprom@50 {
118*6ee9b939SYang Chen				compatible = "atmel,24c128";
119*6ee9b939SYang Chen				reg = <0x50>;
120*6ee9b939SYang Chen			};
121*6ee9b939SYang Chen		};
122*6ee9b939SYang Chen
123*6ee9b939SYang Chen		i2c@1 {
124*6ee9b939SYang Chen			#address-cells = <1>;
125*6ee9b939SYang Chen			#size-cells = <0>;
126*6ee9b939SYang Chen			reg = <1>;
127*6ee9b939SYang Chen
128*6ee9b939SYang Chen			eeprom@50 {
129*6ee9b939SYang Chen				compatible = "atmel,24c128";
130*6ee9b939SYang Chen				reg = <0x50>;
131*6ee9b939SYang Chen			};
132*6ee9b939SYang Chen		};
133*6ee9b939SYang Chen
134*6ee9b939SYang Chen		i2c@2 {
135*6ee9b939SYang Chen			#address-cells = <1>;
136*6ee9b939SYang Chen			#size-cells = <0>;
137*6ee9b939SYang Chen			reg = <2>;
138*6ee9b939SYang Chen
139*6ee9b939SYang Chen			eeprom@50 {
140*6ee9b939SYang Chen				compatible = "atmel,24c128";
141*6ee9b939SYang Chen				reg = <0x50>;
142*6ee9b939SYang Chen			};
143*6ee9b939SYang Chen		};
144*6ee9b939SYang Chen
145*6ee9b939SYang Chen		i2c@3 {
146*6ee9b939SYang Chen			#address-cells = <1>;
147*6ee9b939SYang Chen			#size-cells = <0>;
148*6ee9b939SYang Chen			reg = <3>;
149*6ee9b939SYang Chen
150*6ee9b939SYang Chen			eeprom@50 {
151*6ee9b939SYang Chen				compatible = "atmel,24c128";
152*6ee9b939SYang Chen				reg = <0x50>;
153*6ee9b939SYang Chen			};
154*6ee9b939SYang Chen		};
155*6ee9b939SYang Chen
156*6ee9b939SYang Chen		i2c@4 {
157*6ee9b939SYang Chen			#address-cells = <1>;
158*6ee9b939SYang Chen			#size-cells = <0>;
159*6ee9b939SYang Chen			reg = <4>;
160*6ee9b939SYang Chen
161*6ee9b939SYang Chen			eeprom@50 {
162*6ee9b939SYang Chen				compatible = "atmel,24c128";
163*6ee9b939SYang Chen				reg = <0x50>;
164*6ee9b939SYang Chen			};
165*6ee9b939SYang Chen		};
166*6ee9b939SYang Chen
167*6ee9b939SYang Chen		i2c@5 {
168*6ee9b939SYang Chen			#address-cells = <1>;
169*6ee9b939SYang Chen			#size-cells = <0>;
170*6ee9b939SYang Chen			reg = <5>;
171*6ee9b939SYang Chen
172*6ee9b939SYang Chen			eeprom@50 {
173*6ee9b939SYang Chen				compatible = "atmel,24c128";
174*6ee9b939SYang Chen				reg = <0x50>;
175*6ee9b939SYang Chen			};
176*6ee9b939SYang Chen		};
177*6ee9b939SYang Chen	};
178*6ee9b939SYang Chen};
179*6ee9b939SYang Chen
180*6ee9b939SYang Chen&i2c3 {
181*6ee9b939SYang Chen	status = "okay";
182*6ee9b939SYang Chen};
183*6ee9b939SYang Chen
184*6ee9b939SYang Chen&i2c4 {
185*6ee9b939SYang Chen	status = "okay";
186*6ee9b939SYang Chen};
187*6ee9b939SYang Chen
188*6ee9b939SYang Chen&i2c5 {
189*6ee9b939SYang Chen	status = "okay";
190*6ee9b939SYang Chen};
191*6ee9b939SYang Chen
192*6ee9b939SYang Chen&i2c6 {
193*6ee9b939SYang Chen	status = "okay";
194*6ee9b939SYang Chen};
195*6ee9b939SYang Chen
196*6ee9b939SYang Chen&i2c7 {
197*6ee9b939SYang Chen	status = "okay";
198*6ee9b939SYang Chen};
199*6ee9b939SYang Chen
200*6ee9b939SYang Chen&i2c8 {
201*6ee9b939SYang Chen	status = "okay";
202*6ee9b939SYang Chen};
203*6ee9b939SYang Chen
204*6ee9b939SYang Chen&i2c9 {
205*6ee9b939SYang Chen	status = "okay";
206*6ee9b939SYang Chen};
207*6ee9b939SYang Chen
208*6ee9b939SYang Chen&i2c10 {
209*6ee9b939SYang Chen	status = "okay";
210*6ee9b939SYang Chen};
211*6ee9b939SYang Chen
212*6ee9b939SYang Chen&i2c11 {
213*6ee9b939SYang Chen	status = "okay";
214*6ee9b939SYang Chen};
215*6ee9b939SYang Chen
216*6ee9b939SYang Chen&i2c12 {
217*6ee9b939SYang Chen	status = "okay";
218*6ee9b939SYang Chen};
219*6ee9b939SYang Chen
220*6ee9b939SYang Chen&i2c13 {
221*6ee9b939SYang Chen	status = "okay";
222*6ee9b939SYang Chen};
223*6ee9b939SYang Chen
224*6ee9b939SYang Chen&i2c14 {
225*6ee9b939SYang Chen	status = "okay";
226*6ee9b939SYang Chen	multi-master;
227*6ee9b939SYang Chen
228*6ee9b939SYang Chen	ipmb@10 {
229*6ee9b939SYang Chen		compatible = "ipmb-dev";
230*6ee9b939SYang Chen		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
231*6ee9b939SYang Chen		i2c-protocol;
232*6ee9b939SYang Chen	};
233*6ee9b939SYang Chen};
234*6ee9b939SYang Chen
235*6ee9b939SYang Chen&i2c15 {
236*6ee9b939SYang Chen	status = "okay";
237*6ee9b939SYang Chen
238*6ee9b939SYang Chen	eeprom@50 {
239*6ee9b939SYang Chen		compatible = "atmel,24c128";
240*6ee9b939SYang Chen		reg = <0x50>;
241*6ee9b939SYang Chen	};
242*6ee9b939SYang Chen};
243*6ee9b939SYang Chen
244*6ee9b939SYang Chen&adc0 {
245*6ee9b939SYang Chen	aspeed,int-vref-microvolt = <2500000>;
246*6ee9b939SYang Chen	status = "okay";
247*6ee9b939SYang Chen	pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default
248*6ee9b939SYang Chen		&pinctrl_adc2_default &pinctrl_adc3_default
249*6ee9b939SYang Chen		&pinctrl_adc4_default &pinctrl_adc5_default
250*6ee9b939SYang Chen		&pinctrl_adc6_default &pinctrl_adc7_default>;
251*6ee9b939SYang Chen};
252*6ee9b939SYang Chen
253*6ee9b939SYang Chen&adc1 {
254*6ee9b939SYang Chen	aspeed,int-vref-microvolt = <2500000>;
255*6ee9b939SYang Chen	status = "okay";
256*6ee9b939SYang Chen	pinctrl-0 = <&pinctrl_adc10_default>;
257*6ee9b939SYang Chen};
258*6ee9b939SYang Chen
259*6ee9b939SYang Chen&ehci1 {
260*6ee9b939SYang Chen	status = "okay";
261*6ee9b939SYang Chen};
262*6ee9b939SYang Chen
263*6ee9b939SYang Chen&uhci {
264*6ee9b939SYang Chen	status = "okay";
265*6ee9b939SYang Chen};
266