xref: /OK3568_Linux_fs/kernel/arch/arm/boot/dts/aspeed-bmc-facebook-yosemitev2.dts (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0-or-later
2*4882a593Smuzhiyun// Copyright (c) 2018 Facebook Inc.
3*4882a593Smuzhiyun/dts-v1/;
4*4882a593Smuzhiyun#include "aspeed-g5.dtsi"
5*4882a593Smuzhiyun#include <dt-bindings/i2c/i2c.h>
6*4882a593Smuzhiyun
7*4882a593Smuzhiyun/ {
8*4882a593Smuzhiyun	model = "Facebook Yosemitev2 BMC";
9*4882a593Smuzhiyun	compatible = "facebook,yosemitev2-bmc", "aspeed,ast2500";
10*4882a593Smuzhiyun	aliases {
11*4882a593Smuzhiyun		serial4 = &uart5;
12*4882a593Smuzhiyun	};
13*4882a593Smuzhiyun	chosen {
14*4882a593Smuzhiyun		stdout-path = &uart5;
15*4882a593Smuzhiyun	};
16*4882a593Smuzhiyun
17*4882a593Smuzhiyun	memory@80000000 {
18*4882a593Smuzhiyun		reg = <0x80000000 0x20000000>;
19*4882a593Smuzhiyun	};
20*4882a593Smuzhiyun
21*4882a593Smuzhiyun	iio-hwmon {
22*4882a593Smuzhiyun		// VOLATAGE SENSOR
23*4882a593Smuzhiyun		compatible = "iio-hwmon";
24*4882a593Smuzhiyun		io-channels = <&adc 0> , <&adc 1> , <&adc 2> ,  <&adc 3> ,
25*4882a593Smuzhiyun		<&adc 4> , <&adc 5> , <&adc 6> ,  <&adc 7> ,
26*4882a593Smuzhiyun		<&adc 8> , <&adc 9> , <&adc 10>, <&adc 11> ,
27*4882a593Smuzhiyun		<&adc 12> , <&adc 13> , <&adc 14> , <&adc 15> ;
28*4882a593Smuzhiyun	};
29*4882a593Smuzhiyun};
30*4882a593Smuzhiyun
31*4882a593Smuzhiyun&fmc {
32*4882a593Smuzhiyun	status = "okay";
33*4882a593Smuzhiyun	flash@0 {
34*4882a593Smuzhiyun		status = "okay";
35*4882a593Smuzhiyun		m25p,fast-read;
36*4882a593Smuzhiyun#include "openbmc-flash-layout.dtsi"
37*4882a593Smuzhiyun	};
38*4882a593Smuzhiyun};
39*4882a593Smuzhiyun
40*4882a593Smuzhiyun&spi1 {
41*4882a593Smuzhiyun	status = "okay";
42*4882a593Smuzhiyun	pinctrl-names = "default";
43*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_spi1_default>;
44*4882a593Smuzhiyun	flash@0 {
45*4882a593Smuzhiyun		status = "okay";
46*4882a593Smuzhiyun		m25p,fast-read;
47*4882a593Smuzhiyun		label = "pnor";
48*4882a593Smuzhiyun	};
49*4882a593Smuzhiyun};
50*4882a593Smuzhiyun&uart1 {
51*4882a593Smuzhiyun	// Host1 Console
52*4882a593Smuzhiyun	status = "okay";
53*4882a593Smuzhiyun	pinctrl-names = "default";
54*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_txd1_default
55*4882a593Smuzhiyun		     &pinctrl_rxd1_default>;
56*4882a593Smuzhiyun};
57*4882a593Smuzhiyun
58*4882a593Smuzhiyun&uart2 {
59*4882a593Smuzhiyun	// Host2 Console
60*4882a593Smuzhiyun	status = "okay";
61*4882a593Smuzhiyun	pinctrl-names = "default";
62*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_txd2_default
63*4882a593Smuzhiyun		     &pinctrl_rxd2_default>;
64*4882a593Smuzhiyun
65*4882a593Smuzhiyun};
66*4882a593Smuzhiyun
67*4882a593Smuzhiyun&uart3 {
68*4882a593Smuzhiyun	// Host3 Console
69*4882a593Smuzhiyun	status = "okay";
70*4882a593Smuzhiyun	pinctrl-names = "default";
71*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_txd3_default
72*4882a593Smuzhiyun		     &pinctrl_rxd3_default>;
73*4882a593Smuzhiyun};
74*4882a593Smuzhiyun
75*4882a593Smuzhiyun&uart4 {
76*4882a593Smuzhiyun	// Host4 Console
77*4882a593Smuzhiyun	status = "okay";
78*4882a593Smuzhiyun	pinctrl-names = "default";
79*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_txd4_default
80*4882a593Smuzhiyun		     &pinctrl_rxd4_default>;
81*4882a593Smuzhiyun};
82*4882a593Smuzhiyun
83*4882a593Smuzhiyun&uart5 {
84*4882a593Smuzhiyun	// BMC Console
85*4882a593Smuzhiyun	status = "okay";
86*4882a593Smuzhiyun};
87*4882a593Smuzhiyun
88*4882a593Smuzhiyun&vuart {
89*4882a593Smuzhiyun	// Virtual UART
90*4882a593Smuzhiyun	status = "okay";
91*4882a593Smuzhiyun};
92*4882a593Smuzhiyun
93*4882a593Smuzhiyun&mac0 {
94*4882a593Smuzhiyun	status = "okay";
95*4882a593Smuzhiyun	pinctrl-names = "default";
96*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_rmii1_default>;
97*4882a593Smuzhiyun	use-ncsi;
98*4882a593Smuzhiyun	mlx,multi-host;
99*4882a593Smuzhiyun};
100*4882a593Smuzhiyun
101*4882a593Smuzhiyun&adc {
102*4882a593Smuzhiyun	status = "okay";
103*4882a593Smuzhiyun	pinctrl-names = "default";
104*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_adc0_default
105*4882a593Smuzhiyun			&pinctrl_adc1_default
106*4882a593Smuzhiyun			&pinctrl_adc2_default
107*4882a593Smuzhiyun			&pinctrl_adc3_default
108*4882a593Smuzhiyun			&pinctrl_adc4_default
109*4882a593Smuzhiyun			&pinctrl_adc5_default
110*4882a593Smuzhiyun			&pinctrl_adc6_default
111*4882a593Smuzhiyun			&pinctrl_adc7_default
112*4882a593Smuzhiyun			&pinctrl_adc8_default
113*4882a593Smuzhiyun			&pinctrl_adc9_default
114*4882a593Smuzhiyun			&pinctrl_adc10_default
115*4882a593Smuzhiyun			&pinctrl_adc11_default
116*4882a593Smuzhiyun			&pinctrl_adc12_default
117*4882a593Smuzhiyun			&pinctrl_adc13_default
118*4882a593Smuzhiyun			&pinctrl_adc14_default
119*4882a593Smuzhiyun			&pinctrl_adc15_default>;
120*4882a593Smuzhiyun};
121*4882a593Smuzhiyun
122*4882a593Smuzhiyun&i2c1 {
123*4882a593Smuzhiyun	//Host1 IPMB bus
124*4882a593Smuzhiyun	status = "okay";
125*4882a593Smuzhiyun	multi-master;
126*4882a593Smuzhiyun	ipmb1@10 {
127*4882a593Smuzhiyun		compatible = "ipmb-dev";
128*4882a593Smuzhiyun		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
129*4882a593Smuzhiyun		i2c-protocol;
130*4882a593Smuzhiyun	};
131*4882a593Smuzhiyun};
132*4882a593Smuzhiyun
133*4882a593Smuzhiyun&i2c3 {
134*4882a593Smuzhiyun	//Host2 IPMB bus
135*4882a593Smuzhiyun	status = "okay";
136*4882a593Smuzhiyun	multi-master;
137*4882a593Smuzhiyun	ipmb3@10 {
138*4882a593Smuzhiyun		compatible = "ipmb-dev";
139*4882a593Smuzhiyun		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
140*4882a593Smuzhiyun		i2c-protocol;
141*4882a593Smuzhiyun	};
142*4882a593Smuzhiyun};
143*4882a593Smuzhiyun
144*4882a593Smuzhiyun&i2c5 {
145*4882a593Smuzhiyun	//Host3 IPMB bus
146*4882a593Smuzhiyun	status = "okay";
147*4882a593Smuzhiyun	multi-master;
148*4882a593Smuzhiyun	ipmb5@10 {
149*4882a593Smuzhiyun		compatible = "ipmb-dev";
150*4882a593Smuzhiyun		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
151*4882a593Smuzhiyun		i2c-protocol;
152*4882a593Smuzhiyun	};
153*4882a593Smuzhiyun};
154*4882a593Smuzhiyun
155*4882a593Smuzhiyun&i2c7 {
156*4882a593Smuzhiyun	//Host4 IPMB bus
157*4882a593Smuzhiyun	status = "okay";
158*4882a593Smuzhiyun	multi-master;
159*4882a593Smuzhiyun	ipmb7@10 {
160*4882a593Smuzhiyun		compatible = "ipmb-dev";
161*4882a593Smuzhiyun		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
162*4882a593Smuzhiyun		i2c-protocol;
163*4882a593Smuzhiyun	};
164*4882a593Smuzhiyun};
165*4882a593Smuzhiyun
166*4882a593Smuzhiyun&i2c8 {
167*4882a593Smuzhiyun	status = "okay";
168*4882a593Smuzhiyun	//FRU EEPROM
169*4882a593Smuzhiyun	eeprom@51 {
170*4882a593Smuzhiyun		compatible = "atmel,24c64";
171*4882a593Smuzhiyun		reg = <0x51>;
172*4882a593Smuzhiyun		pagesize = <32>;
173*4882a593Smuzhiyun	};
174*4882a593Smuzhiyun};
175*4882a593Smuzhiyun
176*4882a593Smuzhiyun&i2c9 {
177*4882a593Smuzhiyun	status = "okay";
178*4882a593Smuzhiyun	tmp421@4e {
179*4882a593Smuzhiyun	//INLET TEMP
180*4882a593Smuzhiyun		compatible = "ti,tmp421";
181*4882a593Smuzhiyun		reg = <0x4e>;
182*4882a593Smuzhiyun	};
183*4882a593Smuzhiyun	//OUTLET TEMP
184*4882a593Smuzhiyun	tmp421@4f {
185*4882a593Smuzhiyun		compatible = "ti,tmp421";
186*4882a593Smuzhiyun		reg = <0x4f>;
187*4882a593Smuzhiyun	};
188*4882a593Smuzhiyun};
189*4882a593Smuzhiyun
190*4882a593Smuzhiyun&i2c10 {
191*4882a593Smuzhiyun	status = "okay";
192*4882a593Smuzhiyun	//HSC
193*4882a593Smuzhiyun	adm1278@40 {
194*4882a593Smuzhiyun		compatible = "adi,adm1278";
195*4882a593Smuzhiyun		reg = <0x40>;
196*4882a593Smuzhiyun	};
197*4882a593Smuzhiyun};
198*4882a593Smuzhiyun
199*4882a593Smuzhiyun&i2c11 {
200*4882a593Smuzhiyun	status = "okay";
201*4882a593Smuzhiyun	//MEZZ_TEMP_SENSOR
202*4882a593Smuzhiyun	tmp421@1f {
203*4882a593Smuzhiyun		compatible = "ti,tmp421";
204*4882a593Smuzhiyun		reg = <0x1f>;
205*4882a593Smuzhiyun	};
206*4882a593Smuzhiyun};
207*4882a593Smuzhiyun
208*4882a593Smuzhiyun&i2c12 {
209*4882a593Smuzhiyun	status = "okay";
210*4882a593Smuzhiyun	//MEZZ_FRU
211*4882a593Smuzhiyun	eeprom@51 {
212*4882a593Smuzhiyun		compatible = "atmel,24c64";
213*4882a593Smuzhiyun		reg = <0x51>;
214*4882a593Smuzhiyun		pagesize = <32>;
215*4882a593Smuzhiyun	};
216*4882a593Smuzhiyun};
217*4882a593Smuzhiyun
218*4882a593Smuzhiyun&pwm_tacho {
219*4882a593Smuzhiyun	status = "okay";
220*4882a593Smuzhiyun	//FSC
221*4882a593Smuzhiyun	pinctrl-names = "default";
222*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_pwm0_default &pinctrl_pwm1_default>;
223*4882a593Smuzhiyun	fan@0 {
224*4882a593Smuzhiyun		reg = <0x00>;
225*4882a593Smuzhiyun		aspeed,fan-tach-ch = /bits/ 8 <0x00>;
226*4882a593Smuzhiyun	};
227*4882a593Smuzhiyun	fan@1 {
228*4882a593Smuzhiyun		reg = <0x01>;
229*4882a593Smuzhiyun		aspeed,fan-tach-ch = /bits/ 8 <0x01>;
230*4882a593Smuzhiyun	};
231*4882a593Smuzhiyun};
232