1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-or-later
2724ba675SRob Herring// Copyright (c) 2018 Facebook Inc.
3724ba675SRob Herring/dts-v1/;
4724ba675SRob Herring#include "aspeed-g5.dtsi"
5724ba675SRob Herring#include <dt-bindings/i2c/i2c.h>
6724ba675SRob Herring
7724ba675SRob Herring/ {
8724ba675SRob Herring	model = "Facebook Yosemitev2 BMC";
9724ba675SRob Herring	compatible = "facebook,yosemitev2-bmc", "aspeed,ast2500";
10724ba675SRob Herring	aliases {
11724ba675SRob Herring		serial4 = &uart5;
12724ba675SRob Herring	};
13724ba675SRob Herring	chosen {
14724ba675SRob Herring		stdout-path = &uart5;
15724ba675SRob Herring	};
16724ba675SRob Herring
17724ba675SRob Herring	memory@80000000 {
18724ba675SRob Herring		reg = <0x80000000 0x20000000>;
19724ba675SRob Herring	};
20724ba675SRob Herring
21724ba675SRob Herring	iio-hwmon {
22724ba675SRob Herring		// VOLATAGE SENSOR
23724ba675SRob Herring		compatible = "iio-hwmon";
24724ba675SRob Herring		io-channels = <&adc 0> , <&adc 1> , <&adc 2> ,  <&adc 3> ,
25724ba675SRob Herring		<&adc 4> , <&adc 5> , <&adc 6> ,  <&adc 7> ,
26724ba675SRob Herring		<&adc 8> , <&adc 9> , <&adc 10>, <&adc 11> ,
27724ba675SRob Herring		<&adc 12> , <&adc 13> , <&adc 14> , <&adc 15> ;
28724ba675SRob Herring	};
29724ba675SRob Herring};
30724ba675SRob Herring
31724ba675SRob Herring&fmc {
32724ba675SRob Herring	status = "okay";
33724ba675SRob Herring	flash@0 {
34724ba675SRob Herring		status = "okay";
35724ba675SRob Herring		m25p,fast-read;
36724ba675SRob Herring#include "openbmc-flash-layout.dtsi"
37724ba675SRob Herring	};
38724ba675SRob Herring};
39724ba675SRob Herring
40724ba675SRob Herring&spi1 {
41724ba675SRob Herring	status = "okay";
42724ba675SRob Herring	pinctrl-names = "default";
43724ba675SRob Herring	pinctrl-0 = <&pinctrl_spi1_default>;
44724ba675SRob Herring	flash@0 {
45724ba675SRob Herring		status = "okay";
46724ba675SRob Herring		m25p,fast-read;
47724ba675SRob Herring		label = "pnor";
48724ba675SRob Herring	};
49724ba675SRob Herring};
50724ba675SRob Herring&uart1 {
51724ba675SRob Herring	// Host1 Console
52724ba675SRob Herring	status = "okay";
53724ba675SRob Herring	pinctrl-names = "default";
54724ba675SRob Herring	pinctrl-0 = <&pinctrl_txd1_default
55724ba675SRob Herring		     &pinctrl_rxd1_default>;
56724ba675SRob Herring};
57724ba675SRob Herring
58724ba675SRob Herring&uart2 {
59724ba675SRob Herring	// Host2 Console
60724ba675SRob Herring	status = "okay";
61724ba675SRob Herring	pinctrl-names = "default";
62724ba675SRob Herring	pinctrl-0 = <&pinctrl_txd2_default
63724ba675SRob Herring		     &pinctrl_rxd2_default>;
64724ba675SRob Herring
65724ba675SRob Herring};
66724ba675SRob Herring
67724ba675SRob Herring&uart3 {
68724ba675SRob Herring	// Host3 Console
69724ba675SRob Herring	status = "okay";
70724ba675SRob Herring	pinctrl-names = "default";
71724ba675SRob Herring	pinctrl-0 = <&pinctrl_txd3_default
72724ba675SRob Herring		     &pinctrl_rxd3_default>;
73724ba675SRob Herring};
74724ba675SRob Herring
75724ba675SRob Herring&uart4 {
76724ba675SRob Herring	// Host4 Console
77724ba675SRob Herring	status = "okay";
78724ba675SRob Herring	pinctrl-names = "default";
79724ba675SRob Herring	pinctrl-0 = <&pinctrl_txd4_default
80724ba675SRob Herring		     &pinctrl_rxd4_default>;
81724ba675SRob Herring};
82724ba675SRob Herring
83724ba675SRob Herring&uart5 {
84724ba675SRob Herring	// BMC Console
85724ba675SRob Herring	status = "okay";
86724ba675SRob Herring};
87724ba675SRob Herring
88724ba675SRob Herring&vuart {
89724ba675SRob Herring	// Virtual UART
90724ba675SRob Herring	status = "okay";
91724ba675SRob Herring};
92724ba675SRob Herring
93724ba675SRob Herring&mac0 {
94724ba675SRob Herring	status = "okay";
95724ba675SRob Herring	pinctrl-names = "default";
96724ba675SRob Herring	pinctrl-0 = <&pinctrl_rmii1_default>;
97724ba675SRob Herring	use-ncsi;
980c5318acSKrzysztof Kozlowski	mellanox,multi-host;
99724ba675SRob Herring};
100724ba675SRob Herring
101724ba675SRob Herring&adc {
102724ba675SRob Herring	status = "okay";
103724ba675SRob Herring	pinctrl-names = "default";
104724ba675SRob Herring	pinctrl-0 = <&pinctrl_adc0_default
105724ba675SRob Herring			&pinctrl_adc1_default
106724ba675SRob Herring			&pinctrl_adc2_default
107724ba675SRob Herring			&pinctrl_adc3_default
108724ba675SRob Herring			&pinctrl_adc4_default
109724ba675SRob Herring			&pinctrl_adc5_default
110724ba675SRob Herring			&pinctrl_adc6_default
111724ba675SRob Herring			&pinctrl_adc7_default
112724ba675SRob Herring			&pinctrl_adc8_default
113724ba675SRob Herring			&pinctrl_adc9_default
114724ba675SRob Herring			&pinctrl_adc10_default
115724ba675SRob Herring			&pinctrl_adc11_default
116724ba675SRob Herring			&pinctrl_adc12_default
117724ba675SRob Herring			&pinctrl_adc13_default
118724ba675SRob Herring			&pinctrl_adc14_default
119724ba675SRob Herring			&pinctrl_adc15_default>;
120724ba675SRob Herring};
121724ba675SRob Herring
122724ba675SRob Herring&i2c1 {
123724ba675SRob Herring	//Host1 IPMB bus
124724ba675SRob Herring	status = "okay";
125724ba675SRob Herring	multi-master;
126724ba675SRob Herring	ipmb1@10 {
127724ba675SRob Herring		compatible = "ipmb-dev";
128724ba675SRob Herring		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
129724ba675SRob Herring		i2c-protocol;
130724ba675SRob Herring	};
131724ba675SRob Herring};
132724ba675SRob Herring
133724ba675SRob Herring&i2c3 {
134724ba675SRob Herring	//Host2 IPMB bus
135724ba675SRob Herring	status = "okay";
136724ba675SRob Herring	multi-master;
137724ba675SRob Herring	ipmb3@10 {
138724ba675SRob Herring		compatible = "ipmb-dev";
139724ba675SRob Herring		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
140724ba675SRob Herring		i2c-protocol;
141724ba675SRob Herring	};
142724ba675SRob Herring};
143724ba675SRob Herring
144724ba675SRob Herring&i2c5 {
145724ba675SRob Herring	//Host3 IPMB bus
146724ba675SRob Herring	status = "okay";
147724ba675SRob Herring	multi-master;
148724ba675SRob Herring	ipmb5@10 {
149724ba675SRob Herring		compatible = "ipmb-dev";
150724ba675SRob Herring		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
151724ba675SRob Herring		i2c-protocol;
152724ba675SRob Herring	};
153724ba675SRob Herring};
154724ba675SRob Herring
155724ba675SRob Herring&i2c7 {
156724ba675SRob Herring	//Host4 IPMB bus
157724ba675SRob Herring	status = "okay";
158724ba675SRob Herring	multi-master;
159724ba675SRob Herring	ipmb7@10 {
160724ba675SRob Herring		compatible = "ipmb-dev";
161724ba675SRob Herring		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
162724ba675SRob Herring		i2c-protocol;
163724ba675SRob Herring	};
164724ba675SRob Herring};
165724ba675SRob Herring
166724ba675SRob Herring&i2c8 {
167724ba675SRob Herring	status = "okay";
168724ba675SRob Herring	//FRU EEPROM
169724ba675SRob Herring	eeprom@51 {
170724ba675SRob Herring		compatible = "atmel,24c64";
171724ba675SRob Herring		reg = <0x51>;
172724ba675SRob Herring		pagesize = <32>;
173724ba675SRob Herring	};
174724ba675SRob Herring};
175724ba675SRob Herring
176724ba675SRob Herring&i2c9 {
177724ba675SRob Herring	status = "okay";
178724ba675SRob Herring	tmp421@4e {
179724ba675SRob Herring	//INLET TEMP
180724ba675SRob Herring		compatible = "ti,tmp421";
181724ba675SRob Herring		reg = <0x4e>;
182724ba675SRob Herring	};
183724ba675SRob Herring	//OUTLET TEMP
184724ba675SRob Herring	tmp421@4f {
185724ba675SRob Herring		compatible = "ti,tmp421";
186724ba675SRob Herring		reg = <0x4f>;
187724ba675SRob Herring	};
188724ba675SRob Herring};
189724ba675SRob Herring
190724ba675SRob Herring&i2c10 {
191724ba675SRob Herring	status = "okay";
192724ba675SRob Herring	//HSC
193724ba675SRob Herring	adm1278@40 {
194724ba675SRob Herring		compatible = "adi,adm1278";
195724ba675SRob Herring		reg = <0x40>;
196724ba675SRob Herring	};
197724ba675SRob Herring};
198724ba675SRob Herring
199724ba675SRob Herring&i2c11 {
200724ba675SRob Herring	status = "okay";
201724ba675SRob Herring	//MEZZ_TEMP_SENSOR
202724ba675SRob Herring	tmp421@1f {
203724ba675SRob Herring		compatible = "ti,tmp421";
204724ba675SRob Herring		reg = <0x1f>;
205724ba675SRob Herring	};
206724ba675SRob Herring};
207724ba675SRob Herring
208724ba675SRob Herring&i2c12 {
209724ba675SRob Herring	status = "okay";
210724ba675SRob Herring};
211724ba675SRob Herring
212724ba675SRob Herring&i2c13 {
213724ba675SRob Herring	status = "okay";
214724ba675SRob Herring	// Debug Card
215724ba675SRob Herring	multi-master;
216724ba675SRob Herring	ipmb13@10 {
217724ba675SRob Herring		compatible = "ipmb-dev";
218724ba675SRob Herring		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
219724ba675SRob Herring		i2c-protocol;
220724ba675SRob Herring	};
221724ba675SRob Herring};
222724ba675SRob Herring
22355d9bc54SKarthikeyan Pasupathi&i2c13 {
22455d9bc54SKarthikeyan Pasupathi	status = "okay";
22555d9bc54SKarthikeyan Pasupathi	// Debug Card
22655d9bc54SKarthikeyan Pasupathi	multi-master;
22755d9bc54SKarthikeyan Pasupathi	ipmb13@10 {
22855d9bc54SKarthikeyan Pasupathi		compatible = "ipmb-dev";
22955d9bc54SKarthikeyan Pasupathi		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
23055d9bc54SKarthikeyan Pasupathi		i2c-protocol;
23155d9bc54SKarthikeyan Pasupathi	};
23255d9bc54SKarthikeyan Pasupathi};
23355d9bc54SKarthikeyan Pasupathi
234724ba675SRob Herring&pwm_tacho {
235724ba675SRob Herring	status = "okay";
236724ba675SRob Herring	//FSC
237724ba675SRob Herring	pinctrl-names = "default";
238724ba675SRob Herring	pinctrl-0 = <&pinctrl_pwm0_default &pinctrl_pwm1_default>;
239724ba675SRob Herring	fan@0 {
240724ba675SRob Herring		reg = <0x00>;
241724ba675SRob Herring		aspeed,fan-tach-ch = /bits/ 8 <0x00>;
242724ba675SRob Herring	};
243724ba675SRob Herring	fan@1 {
244724ba675SRob Herring		reg = <0x01>;
245724ba675SRob Herring		aspeed,fan-tach-ch = /bits/ 8 <0x01>;
246724ba675SRob Herring	};
247724ba675SRob Herring};
248