xref: /openbmc/linux/arch/arm/boot/dts/aspeed/aspeed-bmc-ampere-mtmitchell.dts (revision ec53ab396f5894ea23cb4d6f17e9ea27ff0453d1)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-only
2724ba675SRob Herring// Copyright (c) 2022, Ampere Computing LLC
3724ba675SRob Herring
4724ba675SRob Herring/dts-v1/;
5724ba675SRob Herring
6724ba675SRob Herring#include "aspeed-g6.dtsi"
7962047a3SChanh Nguyen#include <dt-bindings/i2c/i2c.h>
8724ba675SRob Herring#include <dt-bindings/gpio/aspeed-gpio.h>
9724ba675SRob Herring
10724ba675SRob Herring/ {
11724ba675SRob Herring	model = "Ampere Mt.Mitchell BMC";
12724ba675SRob Herring	compatible = "ampere,mtmitchell-bmc", "aspeed,ast2600";
13724ba675SRob Herring
14d50b1bafSChanh Nguyen	aliases {
15d50b1bafSChanh Nguyen		serial7 = &uart8;
16d50b1bafSChanh Nguyen		serial8 = &uart9;
1775e0376eSChanh Nguyen
1875e0376eSChanh Nguyen		/*
1939466da1SChanh Nguyen		 * I2C temperature alias port
2039466da1SChanh Nguyen		 */
2139466da1SChanh Nguyen		i2c20 = &i2c4_bus70_chn0;
2239466da1SChanh Nguyen		i2c21 = &i2c4_bus70_chn1;
2339466da1SChanh Nguyen		i2c22 = &i2c4_bus70_chn2;
2439466da1SChanh Nguyen		i2c23 = &i2c4_bus70_chn3;
2539466da1SChanh Nguyen
2639466da1SChanh Nguyen		/*
27e86aa257SChanh Nguyen		 *  i2c bus 30-31 assigned to OCP slot 0-1
28e86aa257SChanh Nguyen		 */
29e86aa257SChanh Nguyen		i2c30 = &ocpslot_0;
30e86aa257SChanh Nguyen		i2c31 = &ocpslot_1;
31e86aa257SChanh Nguyen
32e86aa257SChanh Nguyen		/*
335df24d2bSChanh Nguyen		 *  i2c bus 32-33 assigned to Riser slot 0-1
345df24d2bSChanh Nguyen		 */
355df24d2bSChanh Nguyen		i2c32 = &i2c_riser0;
365df24d2bSChanh Nguyen		i2c33 = &i2c_riser1;
375df24d2bSChanh Nguyen
385df24d2bSChanh Nguyen		/*
395df24d2bSChanh Nguyen		 *  i2c bus 38-39 assigned to FRU on Riser slot 0-1
405df24d2bSChanh Nguyen		 */
415df24d2bSChanh Nguyen		i2c38 = &i2c_riser0_chn_0;
425df24d2bSChanh Nguyen		i2c39 = &i2c_riser1_chn_0;
435df24d2bSChanh Nguyen
445df24d2bSChanh Nguyen		/*
4575e0376eSChanh Nguyen		 *  I2C NVMe alias port
4675e0376eSChanh Nguyen		 */
4775e0376eSChanh Nguyen		i2c100 = &backplane_0;
4875e0376eSChanh Nguyen		i2c48 = &nvmeslot_0;
4975e0376eSChanh Nguyen		i2c49 = &nvmeslot_1;
5075e0376eSChanh Nguyen		i2c50 = &nvmeslot_2;
5175e0376eSChanh Nguyen		i2c51 = &nvmeslot_3;
5275e0376eSChanh Nguyen		i2c52 = &nvmeslot_4;
5375e0376eSChanh Nguyen		i2c53 = &nvmeslot_5;
5475e0376eSChanh Nguyen		i2c54 = &nvmeslot_6;
5575e0376eSChanh Nguyen		i2c55 = &nvmeslot_7;
5675e0376eSChanh Nguyen
5775e0376eSChanh Nguyen		i2c101 = &backplane_1;
5875e0376eSChanh Nguyen		i2c56 = &nvmeslot_8;
5975e0376eSChanh Nguyen		i2c57 = &nvmeslot_9;
6075e0376eSChanh Nguyen		i2c58 = &nvmeslot_10;
6175e0376eSChanh Nguyen		i2c59 = &nvmeslot_11;
6275e0376eSChanh Nguyen		i2c60 = &nvmeslot_12;
6375e0376eSChanh Nguyen		i2c61 = &nvmeslot_13;
6475e0376eSChanh Nguyen		i2c62 = &nvmeslot_14;
6575e0376eSChanh Nguyen		i2c63 = &nvmeslot_15;
6675e0376eSChanh Nguyen
6775e0376eSChanh Nguyen		i2c102 = &backplane_2;
6875e0376eSChanh Nguyen		i2c64 = &nvmeslot_16;
6975e0376eSChanh Nguyen		i2c65 = &nvmeslot_17;
7075e0376eSChanh Nguyen		i2c66 = &nvmeslot_18;
7175e0376eSChanh Nguyen		i2c67 = &nvmeslot_19;
7275e0376eSChanh Nguyen		i2c68 = &nvmeslot_20;
7375e0376eSChanh Nguyen		i2c69 = &nvmeslot_21;
7475e0376eSChanh Nguyen		i2c70 = &nvmeslot_22;
7575e0376eSChanh Nguyen		i2c71 = &nvmeslot_23;
7675e0376eSChanh Nguyen
7775e0376eSChanh Nguyen		i2c80 = &nvme_m2_0;
7875e0376eSChanh Nguyen		i2c81 = &nvme_m2_1;
79d50b1bafSChanh Nguyen	};
80d50b1bafSChanh Nguyen
81724ba675SRob Herring	chosen {
82724ba675SRob Herring		stdout-path = &uart5;
83724ba675SRob Herring	};
84724ba675SRob Herring
85724ba675SRob Herring	memory@80000000 {
86724ba675SRob Herring		device_type = "memory";
87724ba675SRob Herring		reg = <0x80000000 0x80000000>;
88724ba675SRob Herring	};
89724ba675SRob Herring
90724ba675SRob Herring	reserved-memory {
91724ba675SRob Herring		#address-cells = <1>;
92724ba675SRob Herring		#size-cells = <1>;
93724ba675SRob Herring		ranges;
94724ba675SRob Herring
95724ba675SRob Herring		gfx_memory: framebuffer {
96724ba675SRob Herring			size = <0x01000000>;
97724ba675SRob Herring			alignment = <0x01000000>;
98724ba675SRob Herring			compatible = "shared-dma-pool";
99724ba675SRob Herring			reusable;
100724ba675SRob Herring		};
101724ba675SRob Herring
102724ba675SRob Herring		video_engine_memory: video {
103724ba675SRob Herring			size = <0x04000000>;
104724ba675SRob Herring			alignment = <0x01000000>;
105724ba675SRob Herring			compatible = "shared-dma-pool";
106724ba675SRob Herring			reusable;
107724ba675SRob Herring		};
108724ba675SRob Herring
109724ba675SRob Herring		vga_memory: region@bf000000 {
110724ba675SRob Herring			no-map;
111724ba675SRob Herring			compatible = "shared-dma-pool";
112724ba675SRob Herring			reg = <0xbf000000 0x01000000>;  /* 16M */
113724ba675SRob Herring		};
114724ba675SRob Herring	};
115724ba675SRob Herring
1162ccd70a1SChanh Nguyen	leds {
1172ccd70a1SChanh Nguyen		compatible = "gpio-leds";
1182ccd70a1SChanh Nguyen		/*
1192ccd70a1SChanh Nguyen		 * Use gpio-leds to configure GPIOW5 (bmc-ready) pin to be reseted when
1202ccd70a1SChanh Nguyen		 * watchdog timeout.
1212ccd70a1SChanh Nguyen		 */
1222ccd70a1SChanh Nguyen		led-bmc-ready {
1232ccd70a1SChanh Nguyen			gpios = <&gpio0 ASPEED_GPIO(W, 5) (GPIO_ACTIVE_HIGH | GPIO_TRANSITORY)>;
1242ccd70a1SChanh Nguyen		};
1252ccd70a1SChanh Nguyen
1262ccd70a1SChanh Nguyen		led-sw-heartbeat {
1272ccd70a1SChanh Nguyen			gpios = <&gpio0 ASPEED_GPIO(N, 3) GPIO_ACTIVE_HIGH>;
1282ccd70a1SChanh Nguyen		};
1292ccd70a1SChanh Nguyen
1302ccd70a1SChanh Nguyen		led-identify {
1312ccd70a1SChanh Nguyen			gpios = <&gpio0 ASPEED_GPIO(S, 3) GPIO_ACTIVE_HIGH>;
1322ccd70a1SChanh Nguyen		};
1332ccd70a1SChanh Nguyen
1342ccd70a1SChanh Nguyen		led-fault {
1352ccd70a1SChanh Nguyen			gpios = <&gpio0 ASPEED_GPIO(P, 4) GPIO_ACTIVE_HIGH>;
1362ccd70a1SChanh Nguyen		};
1372ccd70a1SChanh Nguyen
1382ccd70a1SChanh Nguyen		led-fan-fault {
1392ccd70a1SChanh Nguyen			gpios = <&gpio_expander1 0 GPIO_ACTIVE_HIGH>;
1402ccd70a1SChanh Nguyen		};
1412ccd70a1SChanh Nguyen
1422ccd70a1SChanh Nguyen		led-psu-fault {
1432ccd70a1SChanh Nguyen			gpios = <&gpio_expander1 1 GPIO_ACTIVE_HIGH>;
1442ccd70a1SChanh Nguyen		};
1452ccd70a1SChanh Nguyen	};
1462ccd70a1SChanh Nguyen
147724ba675SRob Herring	voltage_mon_reg: voltage-mon-regulator {
148724ba675SRob Herring		compatible = "regulator-fixed";
149724ba675SRob Herring		regulator-name = "ltc2497_reg";
150724ba675SRob Herring		regulator-min-microvolt = <3300000>;
151724ba675SRob Herring		regulator-max-microvolt = <3300000>;
152724ba675SRob Herring		regulator-always-on;
153724ba675SRob Herring	};
154724ba675SRob Herring
155724ba675SRob Herring	gpioI5mux: mux-controller {
156724ba675SRob Herring		compatible = "gpio-mux";
157724ba675SRob Herring		#mux-control-cells = <0>;
158724ba675SRob Herring		mux-gpios = <&gpio0 ASPEED_GPIO(I, 5) GPIO_ACTIVE_HIGH>;
159724ba675SRob Herring	};
160724ba675SRob Herring
161724ba675SRob Herring	adc0mux: adc0mux {
162724ba675SRob Herring		compatible = "io-channel-mux";
163acde9078SChanh Nguyen		io-channels = <&adc_i2c_0 0>;
164724ba675SRob Herring		#io-channel-cells = <1>;
165724ba675SRob Herring		io-channel-names = "parent";
166724ba675SRob Herring		mux-controls = <&gpioI5mux>;
167acde9078SChanh Nguyen		settle-time-us = <10000>;
168724ba675SRob Herring		channels = "s0", "s1";
169724ba675SRob Herring	};
170724ba675SRob Herring
171724ba675SRob Herring	adc1mux: adc1mux {
172724ba675SRob Herring		compatible = "io-channel-mux";
173acde9078SChanh Nguyen		io-channels = <&adc_i2c_0 1>;
174724ba675SRob Herring		#io-channel-cells = <1>;
175724ba675SRob Herring		io-channel-names = "parent";
176724ba675SRob Herring		mux-controls = <&gpioI5mux>;
177acde9078SChanh Nguyen		settle-time-us = <10000>;
178724ba675SRob Herring		channels = "s0", "s1";
179724ba675SRob Herring	};
180724ba675SRob Herring
181724ba675SRob Herring	adc2mux: adc2mux {
182724ba675SRob Herring		compatible = "io-channel-mux";
183acde9078SChanh Nguyen		io-channels = <&adc_i2c_0 2>;
184724ba675SRob Herring		#io-channel-cells = <1>;
185724ba675SRob Herring		io-channel-names = "parent";
186724ba675SRob Herring		mux-controls = <&gpioI5mux>;
187acde9078SChanh Nguyen		settle-time-us = <10000>;
188724ba675SRob Herring		channels = "s0", "s1";
189724ba675SRob Herring	};
190724ba675SRob Herring
191724ba675SRob Herring	adc3mux: adc3mux {
192724ba675SRob Herring		compatible = "io-channel-mux";
193acde9078SChanh Nguyen		io-channels = <&adc_i2c_0 3>;
194724ba675SRob Herring		#io-channel-cells = <1>;
195724ba675SRob Herring		io-channel-names = "parent";
196724ba675SRob Herring		mux-controls = <&gpioI5mux>;
197acde9078SChanh Nguyen		settle-time-us = <10000>;
198724ba675SRob Herring		channels = "s0", "s1";
199724ba675SRob Herring	};
200724ba675SRob Herring
201724ba675SRob Herring	adc4mux: adc4mux {
202724ba675SRob Herring		compatible = "io-channel-mux";
203acde9078SChanh Nguyen		io-channels = <&adc_i2c_0 4>;
204724ba675SRob Herring		#io-channel-cells = <1>;
205724ba675SRob Herring		io-channel-names = "parent";
206724ba675SRob Herring		mux-controls = <&gpioI5mux>;
207acde9078SChanh Nguyen		settle-time-us = <10000>;
208724ba675SRob Herring		channels = "s0", "s1";
209724ba675SRob Herring	};
210724ba675SRob Herring
211724ba675SRob Herring	adc5mux: adc5mux {
212724ba675SRob Herring		compatible = "io-channel-mux";
213acde9078SChanh Nguyen		io-channels = <&adc_i2c_0 5>;
214724ba675SRob Herring		#io-channel-cells = <1>;
215724ba675SRob Herring		io-channel-names = "parent";
216724ba675SRob Herring		mux-controls = <&gpioI5mux>;
217acde9078SChanh Nguyen		settle-time-us = <10000>;
218724ba675SRob Herring		channels = "s0", "s1";
219724ba675SRob Herring	};
220724ba675SRob Herring
221724ba675SRob Herring	adc6mux: adc6mux {
222724ba675SRob Herring		compatible = "io-channel-mux";
223acde9078SChanh Nguyen		io-channels = <&adc_i2c_0 6>;
224724ba675SRob Herring		#io-channel-cells = <1>;
225724ba675SRob Herring		io-channel-names = "parent";
226724ba675SRob Herring		mux-controls = <&gpioI5mux>;
227acde9078SChanh Nguyen		settle-time-us = <10000>;
228724ba675SRob Herring		channels = "s0", "s1";
229724ba675SRob Herring	};
230724ba675SRob Herring
231724ba675SRob Herring	adc7mux: adc7mux {
232724ba675SRob Herring		compatible = "io-channel-mux";
233acde9078SChanh Nguyen		io-channels = <&adc_i2c_0 7>;
234724ba675SRob Herring		#io-channel-cells = <1>;
235724ba675SRob Herring		io-channel-names = "parent";
236724ba675SRob Herring		mux-controls = <&gpioI5mux>;
237acde9078SChanh Nguyen		settle-time-us = <10000>;
238724ba675SRob Herring		channels = "s0", "s1";
239724ba675SRob Herring	};
240724ba675SRob Herring
241724ba675SRob Herring	adc8mux: adc8mux {
242724ba675SRob Herring		compatible = "io-channel-mux";
243acde9078SChanh Nguyen		io-channels = <&adc_i2c_0 8>;
244724ba675SRob Herring		#io-channel-cells = <1>;
245724ba675SRob Herring		io-channel-names = "parent";
246724ba675SRob Herring		mux-controls = <&gpioI5mux>;
247acde9078SChanh Nguyen		settle-time-us = <10000>;
248724ba675SRob Herring		channels = "s0", "s1";
249724ba675SRob Herring	};
250724ba675SRob Herring
251724ba675SRob Herring	adc9mux: adc9mux {
252724ba675SRob Herring		compatible = "io-channel-mux";
253acde9078SChanh Nguyen		io-channels = <&adc_i2c_0 9>;
254724ba675SRob Herring		#io-channel-cells = <1>;
255724ba675SRob Herring		io-channel-names = "parent";
256724ba675SRob Herring		mux-controls = <&gpioI5mux>;
257acde9078SChanh Nguyen		settle-time-us = <10000>;
258724ba675SRob Herring		channels = "s0", "s1";
259724ba675SRob Herring	};
260724ba675SRob Herring
261724ba675SRob Herring	adc10mux: adc10mux {
262724ba675SRob Herring		compatible = "io-channel-mux";
263acde9078SChanh Nguyen		io-channels = <&adc_i2c_0 10>;
264724ba675SRob Herring		#io-channel-cells = <1>;
265724ba675SRob Herring		io-channel-names = "parent";
266724ba675SRob Herring		mux-controls = <&gpioI5mux>;
267acde9078SChanh Nguyen		settle-time-us = <10000>;
268724ba675SRob Herring		channels = "s0", "s1";
269724ba675SRob Herring	};
270724ba675SRob Herring
271724ba675SRob Herring	adc11mux: adc11mux {
272724ba675SRob Herring		compatible = "io-channel-mux";
273acde9078SChanh Nguyen		io-channels = <&adc_i2c_0 11>;
274724ba675SRob Herring		#io-channel-cells = <1>;
275724ba675SRob Herring		io-channel-names = "parent";
276724ba675SRob Herring		mux-controls = <&gpioI5mux>;
277acde9078SChanh Nguyen		settle-time-us = <10000>;
278724ba675SRob Herring		channels = "s0", "s1";
279724ba675SRob Herring	};
280724ba675SRob Herring
281724ba675SRob Herring	adc12mux: adc12mux {
282724ba675SRob Herring		compatible = "io-channel-mux";
283acde9078SChanh Nguyen		io-channels = <&adc_i2c_0 12>;
284724ba675SRob Herring		#io-channel-cells = <1>;
285724ba675SRob Herring		io-channel-names = "parent";
286724ba675SRob Herring		mux-controls = <&gpioI5mux>;
287acde9078SChanh Nguyen		settle-time-us = <10000>;
288724ba675SRob Herring		channels = "s0", "s1";
289724ba675SRob Herring	};
290724ba675SRob Herring
291724ba675SRob Herring	adc13mux: adc13mux {
292724ba675SRob Herring		compatible = "io-channel-mux";
293acde9078SChanh Nguyen		io-channels = <&adc_i2c_0 13>;
294724ba675SRob Herring		#io-channel-cells = <1>;
295724ba675SRob Herring		io-channel-names = "parent";
296724ba675SRob Herring		mux-controls = <&gpioI5mux>;
297acde9078SChanh Nguyen		settle-time-us = <10000>;
298724ba675SRob Herring		channels = "s0", "s1";
299724ba675SRob Herring	};
300724ba675SRob Herring
301724ba675SRob Herring	adc14mux: adc14mux {
302724ba675SRob Herring		compatible = "io-channel-mux";
303acde9078SChanh Nguyen		io-channels = <&adc_i2c_0 14>;
304724ba675SRob Herring		#io-channel-cells = <1>;
305724ba675SRob Herring		io-channel-names = "parent";
306724ba675SRob Herring		mux-controls = <&gpioI5mux>;
307acde9078SChanh Nguyen		settle-time-us = <10000>;
308724ba675SRob Herring		channels = "s0", "s1";
309724ba675SRob Herring	};
310724ba675SRob Herring
311724ba675SRob Herring	adc15mux: adc15mux {
312724ba675SRob Herring		compatible = "io-channel-mux";
313acde9078SChanh Nguyen		io-channels = <&adc_i2c_0 15>;
314724ba675SRob Herring		#io-channel-cells = <1>;
315724ba675SRob Herring		io-channel-names = "parent";
316724ba675SRob Herring		mux-controls = <&gpioI5mux>;
317acde9078SChanh Nguyen		settle-time-us = <10000>;
318724ba675SRob Herring		channels = "s0", "s1";
319724ba675SRob Herring	};
320724ba675SRob Herring
321724ba675SRob Herring	iio-hwmon {
322724ba675SRob Herring		compatible = "iio-hwmon";
323724ba675SRob Herring		io-channels =	<&adc0mux 0>, <&adc0mux 1>,
324724ba675SRob Herring				<&adc1mux 0>, <&adc1mux 1>,
325724ba675SRob Herring				<&adc2mux 0>, <&adc2mux 1>,
326724ba675SRob Herring				<&adc3mux 0>, <&adc3mux 1>,
327724ba675SRob Herring				<&adc4mux 0>, <&adc4mux 1>,
328724ba675SRob Herring				<&adc5mux 0>, <&adc5mux 1>,
329724ba675SRob Herring				<&adc6mux 0>, <&adc6mux 1>,
330724ba675SRob Herring				<&adc7mux 0>, <&adc7mux 1>,
331724ba675SRob Herring				<&adc8mux 0>, <&adc8mux 1>,
332724ba675SRob Herring				<&adc9mux 0>, <&adc9mux 1>,
333724ba675SRob Herring				<&adc10mux 0>, <&adc10mux 1>,
334724ba675SRob Herring				<&adc11mux 0>, <&adc11mux 1>,
335724ba675SRob Herring				<&adc12mux 0>, <&adc12mux 1>,
336724ba675SRob Herring				<&adc13mux 0>, <&adc13mux 1>,
337724ba675SRob Herring				<&adc14mux 0>, <&adc14mux 1>,
338724ba675SRob Herring				<&adc15mux 0>, <&adc15mux 1>,
339acde9078SChanh Nguyen				<&adc_i2c_1 0>, <&adc_i2c_1 1>,
340acde9078SChanh Nguyen				<&adc_i2c_1 2>, <&adc_i2c_1 3>,
341acde9078SChanh Nguyen				<&adc_i2c_1 4>, <&adc_i2c_1 5>,
342acde9078SChanh Nguyen				<&adc_i2c_1 6>, <&adc_i2c_1 7>,
343acde9078SChanh Nguyen				<&adc_i2c_1 8>, <&adc_i2c_1 9>,
344acde9078SChanh Nguyen				<&adc_i2c_1 10>, <&adc_i2c_1 11>,
345acde9078SChanh Nguyen				<&adc_i2c_1 12>, <&adc_i2c_1 13>,
346acde9078SChanh Nguyen				<&adc_i2c_1 14>, <&adc_i2c_1 15>,
347acde9078SChanh Nguyen				<&adc0 0>, <&adc0 1>,
348acde9078SChanh Nguyen				<&adc0 2>;
349724ba675SRob Herring	};
350724ba675SRob Herring};
351724ba675SRob Herring
352724ba675SRob Herring&mdio0 {
353724ba675SRob Herring	status = "okay";
354724ba675SRob Herring
355724ba675SRob Herring	ethphy0: ethernet-phy@0 {
356724ba675SRob Herring		compatible = "ethernet-phy-ieee802.3-c22";
357724ba675SRob Herring		reg = <0>;
358724ba675SRob Herring	};
359724ba675SRob Herring};
360724ba675SRob Herring
361724ba675SRob Herring&mac0 {
362724ba675SRob Herring	status = "okay";
363724ba675SRob Herring
364724ba675SRob Herring	phy-mode = "rgmii";
365724ba675SRob Herring	phy-handle = <&ethphy0>;
366724ba675SRob Herring
367724ba675SRob Herring	pinctrl-names = "default";
368724ba675SRob Herring	pinctrl-0 = <&pinctrl_rgmii1_default>;
369724ba675SRob Herring};
370724ba675SRob Herring
371724ba675SRob Herring&mac3 {
372724ba675SRob Herring	status = "okay";
373724ba675SRob Herring	pinctrl-names = "default";
374724ba675SRob Herring	pinctrl-0 = <&pinctrl_rmii4_default>;
375724ba675SRob Herring	clock-names = "MACCLK", "RCLK";
376724ba675SRob Herring	use-ncsi;
377724ba675SRob Herring};
378724ba675SRob Herring
379724ba675SRob Herring&fmc {
380724ba675SRob Herring	status = "okay";
381724ba675SRob Herring	flash@0 {
382724ba675SRob Herring		status = "okay";
383724ba675SRob Herring		m25p,fast-read;
384724ba675SRob Herring		label = "bmc";
385724ba675SRob Herring		spi-max-frequency = <50000000>;
386724ba675SRob Herring#include "openbmc-flash-layout-64.dtsi"
387724ba675SRob Herring	};
388724ba675SRob Herring
389724ba675SRob Herring	flash@1 {
390724ba675SRob Herring		status = "okay";
391724ba675SRob Herring		m25p,fast-read;
392724ba675SRob Herring		label = "alt-bmc";
393724ba675SRob Herring		spi-max-frequency = <50000000>;
394724ba675SRob Herring#include "openbmc-flash-layout-64-alt.dtsi"
395724ba675SRob Herring	};
396724ba675SRob Herring};
397724ba675SRob Herring
398724ba675SRob Herring&spi1 {
399724ba675SRob Herring	status = "okay";
400724ba675SRob Herring	pinctrl-names = "default";
401724ba675SRob Herring	pinctrl-0 = <&pinctrl_spi1_default>;
402724ba675SRob Herring
403724ba675SRob Herring	flash@0 {
404724ba675SRob Herring		status = "okay";
405724ba675SRob Herring		m25p,fast-read;
406724ba675SRob Herring		label = "pnor";
407724ba675SRob Herring		spi-max-frequency = <20000000>;
408724ba675SRob Herring	};
409724ba675SRob Herring};
410724ba675SRob Herring
411724ba675SRob Herring&uart1 {
412724ba675SRob Herring	status = "okay";
413724ba675SRob Herring};
414724ba675SRob Herring
415724ba675SRob Herring&uart2 {
416724ba675SRob Herring	status = "okay";
417724ba675SRob Herring};
418724ba675SRob Herring
419724ba675SRob Herring&uart3 {
420724ba675SRob Herring	status = "okay";
421724ba675SRob Herring};
422724ba675SRob Herring
423724ba675SRob Herring&uart4 {
424724ba675SRob Herring	status = "okay";
425724ba675SRob Herring};
426724ba675SRob Herring
427d50b1bafSChanh Nguyen&uart8 {
428d50b1bafSChanh Nguyen	status = "okay";
429d50b1bafSChanh Nguyen};
430d50b1bafSChanh Nguyen
431d50b1bafSChanh Nguyen&uart9 {
432d50b1bafSChanh Nguyen	status = "okay";
433d50b1bafSChanh Nguyen};
434d50b1bafSChanh Nguyen
435724ba675SRob Herring&i2c0 {
436724ba675SRob Herring	status = "okay";
437724ba675SRob Herring
438724ba675SRob Herring	temperature-sensor@2e {
439724ba675SRob Herring		compatible = "adi,adt7490";
440724ba675SRob Herring		reg = <0x2e>;
441724ba675SRob Herring	};
442724ba675SRob Herring};
443724ba675SRob Herring
444724ba675SRob Herring&i2c1 {
445724ba675SRob Herring	status = "okay";
446724ba675SRob Herring};
447724ba675SRob Herring
448724ba675SRob Herring&i2c2 {
449724ba675SRob Herring	status = "okay";
450724ba675SRob Herring
451724ba675SRob Herring	psu@58 {
452724ba675SRob Herring		compatible = "pmbus";
453724ba675SRob Herring		reg = <0x58>;
454724ba675SRob Herring	};
455724ba675SRob Herring
456724ba675SRob Herring	psu@59 {
457724ba675SRob Herring		compatible = "pmbus";
458724ba675SRob Herring		reg = <0x59>;
459724ba675SRob Herring	};
460724ba675SRob Herring};
461724ba675SRob Herring
462724ba675SRob Herring&i2c3 {
463724ba675SRob Herring	status = "okay";
464962047a3SChanh Nguyen	bus-frequency = <1000000>;
465962047a3SChanh Nguyen	multi-master;
466962047a3SChanh Nguyen	mctp-controller;
467962047a3SChanh Nguyen
468962047a3SChanh Nguyen	mctp@10 {
469962047a3SChanh Nguyen		compatible = "mctp-i2c-controller";
470962047a3SChanh Nguyen		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
471962047a3SChanh Nguyen	};
472724ba675SRob Herring};
473724ba675SRob Herring
474724ba675SRob Herring&i2c4 {
475724ba675SRob Herring	status = "okay";
476724ba675SRob Herring
477acde9078SChanh Nguyen	adc_i2c_0: adc@14 {
478acde9078SChanh Nguyen		compatible = "lltc,ltc2497";
479acde9078SChanh Nguyen		reg = <0x14>;
480acde9078SChanh Nguyen		vref-supply = <&voltage_mon_reg>;
481acde9078SChanh Nguyen		#io-channel-cells = <1>;
482acde9078SChanh Nguyen	 };
483acde9078SChanh Nguyen
484acde9078SChanh Nguyen	adc_i2c_1: adc@16 {
485724ba675SRob Herring		compatible = "lltc,ltc2497";
486724ba675SRob Herring		reg = <0x16>;
487724ba675SRob Herring		vref-supply = <&voltage_mon_reg>;
488724ba675SRob Herring		#io-channel-cells = <1>;
489724ba675SRob Herring	 };
490724ba675SRob Herring
491724ba675SRob Herring	eeprom@50 {
492724ba675SRob Herring		compatible = "atmel,24c64";
493724ba675SRob Herring		reg = <0x50>;
494724ba675SRob Herring		pagesize = <32>;
495724ba675SRob Herring	};
496724ba675SRob Herring
497724ba675SRob Herring	i2c-mux@70 {
498724ba675SRob Herring		compatible = "nxp,pca9545";
499724ba675SRob Herring		#address-cells = <1>;
500724ba675SRob Herring		#size-cells = <0>;
501724ba675SRob Herring		reg = <0x70>;
502724ba675SRob Herring		i2c-mux-idle-disconnect;
503724ba675SRob Herring
504724ba675SRob Herring		i2c4_bus70_chn0: i2c@0 {
505724ba675SRob Herring			#address-cells = <1>;
506724ba675SRob Herring			#size-cells = <0>;
507724ba675SRob Herring			reg = <0x0>;
508724ba675SRob Herring
509724ba675SRob Herring			outlet_temp1: temperature-sensor@48 {
510724ba675SRob Herring				compatible = "ti,tmp75";
511724ba675SRob Herring				reg = <0x48>;
512724ba675SRob Herring			};
513724ba675SRob Herring			psu1_inlet_temp2: temperature-sensor@49 {
514724ba675SRob Herring				compatible = "ti,tmp75";
515724ba675SRob Herring				reg = <0x49>;
516724ba675SRob Herring			};
517724ba675SRob Herring		};
518724ba675SRob Herring
519724ba675SRob Herring		i2c4_bus70_chn1: i2c@1 {
520724ba675SRob Herring			#address-cells = <1>;
521724ba675SRob Herring			#size-cells = <0>;
522724ba675SRob Herring			reg = <0x1>;
523724ba675SRob Herring
524724ba675SRob Herring			pcie_zone_temp1: temperature-sensor@48 {
525724ba675SRob Herring				compatible = "ti,tmp75";
526724ba675SRob Herring				reg = <0x48>;
527724ba675SRob Herring			};
528724ba675SRob Herring			psu0_inlet_temp2: temperature-sensor@49 {
529724ba675SRob Herring				compatible = "ti,tmp75";
530724ba675SRob Herring				reg = <0x49>;
531724ba675SRob Herring			};
532724ba675SRob Herring		};
533724ba675SRob Herring
534724ba675SRob Herring		i2c4_bus70_chn2: i2c@2 {
535724ba675SRob Herring			#address-cells = <1>;
536724ba675SRob Herring			#size-cells = <0>;
537724ba675SRob Herring			reg = <0x2>;
538724ba675SRob Herring
539724ba675SRob Herring			pcie_zone_temp2: temperature-sensor@48 {
540724ba675SRob Herring				compatible = "ti,tmp75";
541724ba675SRob Herring				reg = <0x48>;
542724ba675SRob Herring			};
543724ba675SRob Herring			outlet_temp2: temperature-sensor@49 {
544724ba675SRob Herring				compatible = "ti,tmp75";
545724ba675SRob Herring				reg = <0x49>;
546724ba675SRob Herring			};
547724ba675SRob Herring		};
548724ba675SRob Herring
549724ba675SRob Herring		i2c4_bus70_chn3: i2c@3 {
550724ba675SRob Herring			#address-cells = <1>;
551724ba675SRob Herring			#size-cells = <0>;
552724ba675SRob Herring			reg = <0x3>;
553724ba675SRob Herring
554724ba675SRob Herring			mb_inlet_temp1: temperature-sensor@7c {
555724ba675SRob Herring				compatible = "microchip,emc1413";
556724ba675SRob Herring				reg = <0x7c>;
557724ba675SRob Herring			};
558724ba675SRob Herring			mb_inlet_temp2: temperature-sensor@4c {
559724ba675SRob Herring				compatible = "microchip,emc1413";
560724ba675SRob Herring				reg = <0x4c>;
561724ba675SRob Herring			};
562724ba675SRob Herring		};
563724ba675SRob Herring	};
564724ba675SRob Herring};
565724ba675SRob Herring
566724ba675SRob Herring&i2c5 {
567724ba675SRob Herring	status = "okay";
568724ba675SRob Herring
569724ba675SRob Herring	i2c-mux@70 {
570724ba675SRob Herring		compatible = "nxp,pca9548";
571724ba675SRob Herring		#address-cells = <1>;
572724ba675SRob Herring		#size-cells = <0>;
573724ba675SRob Herring		reg = <0x70>;
574724ba675SRob Herring		i2c-mux-idle-disconnect;
575e86aa257SChanh Nguyen
576e86aa257SChanh Nguyen		ocpslot_0: i2c@0 {
577e86aa257SChanh Nguyen			#address-cells = <1>;
578e86aa257SChanh Nguyen			#size-cells = <0>;
579e86aa257SChanh Nguyen			reg = <0x0>;
580e86aa257SChanh Nguyen
581e86aa257SChanh Nguyen			ocpslot_0_temp: temperature-sensor@1f {
582e86aa257SChanh Nguyen				compatible = "ti,tmp421";
583e86aa257SChanh Nguyen				reg = <0x1f>;
584e86aa257SChanh Nguyen			};
585e86aa257SChanh Nguyen		};
586e86aa257SChanh Nguyen
587e86aa257SChanh Nguyen		ocpslot_1: i2c@1 {
588e86aa257SChanh Nguyen			#address-cells = <1>;
589e86aa257SChanh Nguyen			#size-cells = <0>;
590e86aa257SChanh Nguyen			reg = <0x1>;
591e86aa257SChanh Nguyen
592e86aa257SChanh Nguyen			ocpslot_1_temp: temperature-sensor@1f {
593e86aa257SChanh Nguyen				compatible = "ti,tmp421";
594e86aa257SChanh Nguyen				reg = <0x1f>;
595e86aa257SChanh Nguyen			};
596e86aa257SChanh Nguyen		};
5975df24d2bSChanh Nguyen
5985df24d2bSChanh Nguyen		i2c_riser0: i2c@2 {
5995df24d2bSChanh Nguyen			#address-cells = <1>;
6005df24d2bSChanh Nguyen			#size-cells = <0>;
6015df24d2bSChanh Nguyen			reg = <0x2>;
6025df24d2bSChanh Nguyen
6035df24d2bSChanh Nguyen			i2c-mux@72 {
6045df24d2bSChanh Nguyen				compatible = "nxp,pca9546";
6055df24d2bSChanh Nguyen				#address-cells = <1>;
6065df24d2bSChanh Nguyen				#size-cells = <0>;
6075df24d2bSChanh Nguyen				reg = <0x72>;
6085df24d2bSChanh Nguyen				i2c-mux-idle-disconnect;
6095df24d2bSChanh Nguyen
6105df24d2bSChanh Nguyen				i2c_riser0_chn_0: i2c@0 {
6115df24d2bSChanh Nguyen					#address-cells = <1>;
6125df24d2bSChanh Nguyen					#size-cells = <0>;
6135df24d2bSChanh Nguyen					reg = <0x0>;
6145df24d2bSChanh Nguyen
6155df24d2bSChanh Nguyen					eeprom@50 {
6165df24d2bSChanh Nguyen						compatible = "atmel,24c02";
6175df24d2bSChanh Nguyen						reg = <0x50>;
6185df24d2bSChanh Nguyen						pagesize = <16>;
6195df24d2bSChanh Nguyen					};
6205df24d2bSChanh Nguyen				};
6215df24d2bSChanh Nguyen			};
6225df24d2bSChanh Nguyen		};
6235df24d2bSChanh Nguyen
6245df24d2bSChanh Nguyen		i2c_riser1: i2c@3 {
6255df24d2bSChanh Nguyen			#address-cells = <1>;
6265df24d2bSChanh Nguyen			#size-cells = <0>;
6275df24d2bSChanh Nguyen			reg = <0x3>;
6285df24d2bSChanh Nguyen
6295df24d2bSChanh Nguyen			i2c-mux@72 {
6305df24d2bSChanh Nguyen				compatible = "nxp,pca9546";
6315df24d2bSChanh Nguyen				#address-cells = <1>;
6325df24d2bSChanh Nguyen				#size-cells = <0>;
6335df24d2bSChanh Nguyen				reg = <0x72>;
6345df24d2bSChanh Nguyen				i2c-mux-idle-disconnect;
6355df24d2bSChanh Nguyen
6365df24d2bSChanh Nguyen				i2c_riser1_chn_0: i2c@0 {
6375df24d2bSChanh Nguyen					#address-cells = <1>;
6385df24d2bSChanh Nguyen					#size-cells = <0>;
6395df24d2bSChanh Nguyen					reg = <0x0>;
6405df24d2bSChanh Nguyen
6415df24d2bSChanh Nguyen					eeprom@50 {
6425df24d2bSChanh Nguyen						compatible = "atmel,24c02";
6435df24d2bSChanh Nguyen						reg = <0x50>;
6445df24d2bSChanh Nguyen						pagesize = <16>;
6455df24d2bSChanh Nguyen					};
6465df24d2bSChanh Nguyen				};
6475df24d2bSChanh Nguyen			};
6485df24d2bSChanh Nguyen		};
649724ba675SRob Herring	};
650724ba675SRob Herring};
651724ba675SRob Herring
652724ba675SRob Herring&i2c6 {
653724ba675SRob Herring	status = "okay";
654724ba675SRob Herring	rtc@51 {
655724ba675SRob Herring		compatible = "nxp,pcf85063a";
656724ba675SRob Herring		reg = <0x51>;
657724ba675SRob Herring	};
658724ba675SRob Herring};
659724ba675SRob Herring
660724ba675SRob Herring&i2c7 {
661724ba675SRob Herring	status = "okay";
662724ba675SRob Herring};
663724ba675SRob Herring
664724ba675SRob Herring&i2c8 {
665724ba675SRob Herring	status = "okay";
666724ba675SRob Herring
667064135b5SChanh Nguyen	temperature-sensor@48 {
668064135b5SChanh Nguyen		compatible = "ti,tmp112";
669064135b5SChanh Nguyen		reg = <0x48>;
670064135b5SChanh Nguyen	};
671064135b5SChanh Nguyen
672724ba675SRob Herring	gpio@77 {
673724ba675SRob Herring		compatible = "nxp,pca9539";
674724ba675SRob Herring		reg = <0x77>;
675724ba675SRob Herring		gpio-controller;
676724ba675SRob Herring		#address-cells = <1>;
677724ba675SRob Herring		#size-cells = <0>;
678724ba675SRob Herring		#gpio-cells = <2>;
679724ba675SRob Herring
680*ec53ab39SChanh Nguyen		gpio-line-names =
681*ec53ab39SChanh Nguyen		"ext-vref-sel","","presence-hdd-bp5-n","presence-hdd-bp6-n",
682*ec53ab39SChanh Nguyen		"","bmc-riser-en-n","bmc-ocp1-en-n","bmc-ocp0-en-n",
683*ec53ab39SChanh Nguyen		"","","","",
684*ec53ab39SChanh Nguyen		"","","","";
685*ec53ab39SChanh Nguyen
686724ba675SRob Herring		bmc-ocp0-en-hog {
687724ba675SRob Herring			gpio-hog;
688724ba675SRob Herring			gpios = <7 GPIO_ACTIVE_LOW>;
689724ba675SRob Herring			output-high;
690724ba675SRob Herring			line-name = "bmc-ocp0-en-n";
691724ba675SRob Herring		};
692724ba675SRob Herring	};
6935f310c82SChanh Nguyen
6945f310c82SChanh Nguyen	fan-controller0@20 {
6955f310c82SChanh Nguyen		compatible = "maxim,max31790";
6965f310c82SChanh Nguyen		reg = <0x20>;
6975f310c82SChanh Nguyen	};
6985f310c82SChanh Nguyen
6995f310c82SChanh Nguyen	fan-controller1@2f {
7005f310c82SChanh Nguyen		compatible = "maxim,max31790";
7015f310c82SChanh Nguyen		reg = <0x2f>;
7025f310c82SChanh Nguyen	};
703724ba675SRob Herring};
704724ba675SRob Herring
705724ba675SRob Herring&i2c9 {
706724ba675SRob Herring	status = "okay";
70775e0376eSChanh Nguyen	i2c-mux@70 {
70875e0376eSChanh Nguyen		compatible = "nxp,pca9548";
70975e0376eSChanh Nguyen		#address-cells = <1>;
71075e0376eSChanh Nguyen		#size-cells = <0>;
71175e0376eSChanh Nguyen		reg = <0x70>;
71275e0376eSChanh Nguyen		i2c-mux-idle-disconnect;
71375e0376eSChanh Nguyen
71475e0376eSChanh Nguyen		backplane_1: i2c@0 {
71575e0376eSChanh Nguyen			#address-cells = <1>;
71675e0376eSChanh Nguyen			#size-cells = <0>;
71775e0376eSChanh Nguyen			reg = <0x0>;
71875e0376eSChanh Nguyen
71975e0376eSChanh Nguyen			eeprom@50 {
72075e0376eSChanh Nguyen				compatible = "atmel,24c64";
72175e0376eSChanh Nguyen				reg = <0x50>;
72275e0376eSChanh Nguyen				pagesize = <32>;
72375e0376eSChanh Nguyen			};
72475e0376eSChanh Nguyen
72575e0376eSChanh Nguyen			i2c-mux@71 {
72675e0376eSChanh Nguyen				compatible = "nxp,pca9548";
72775e0376eSChanh Nguyen				#address-cells = <1>;
72875e0376eSChanh Nguyen				#size-cells = <0>;
72975e0376eSChanh Nguyen				reg = <0x71>;
73075e0376eSChanh Nguyen				i2c-mux-idle-disconnect;
73175e0376eSChanh Nguyen
73275e0376eSChanh Nguyen				nvmeslot_8: i2c@0 {
73375e0376eSChanh Nguyen					#address-cells = <1>;
73475e0376eSChanh Nguyen					#size-cells = <0>;
73575e0376eSChanh Nguyen					reg = <0x0>;
73675e0376eSChanh Nguyen				};
73775e0376eSChanh Nguyen				nvmeslot_9: i2c@1 {
73875e0376eSChanh Nguyen					#address-cells = <1>;
73975e0376eSChanh Nguyen					#size-cells = <0>;
74075e0376eSChanh Nguyen					reg = <0x1>;
74175e0376eSChanh Nguyen				};
74275e0376eSChanh Nguyen				nvmeslot_10: i2c@2 {
74375e0376eSChanh Nguyen					#address-cells = <1>;
74475e0376eSChanh Nguyen					#size-cells = <0>;
74575e0376eSChanh Nguyen					reg = <0x2>;
74675e0376eSChanh Nguyen				};
74775e0376eSChanh Nguyen				nvmeslot_11: i2c@3 {
74875e0376eSChanh Nguyen					#address-cells = <1>;
74975e0376eSChanh Nguyen					#size-cells = <0>;
75075e0376eSChanh Nguyen					reg = <0x3>;
75175e0376eSChanh Nguyen				};
75275e0376eSChanh Nguyen				nvmeslot_12: i2c@4 {
75375e0376eSChanh Nguyen					#address-cells = <1>;
75475e0376eSChanh Nguyen					#size-cells = <0>;
75575e0376eSChanh Nguyen					reg = <0x4>;
75675e0376eSChanh Nguyen				};
75775e0376eSChanh Nguyen				nvmeslot_13: i2c@5 {
75875e0376eSChanh Nguyen					#address-cells = <1>;
75975e0376eSChanh Nguyen					#size-cells = <0>;
76075e0376eSChanh Nguyen					reg = <0x5>;
76175e0376eSChanh Nguyen				};
76275e0376eSChanh Nguyen				nvmeslot_14: i2c@6 {
76375e0376eSChanh Nguyen					#address-cells = <1>;
76475e0376eSChanh Nguyen					#size-cells = <0>;
76575e0376eSChanh Nguyen					reg = <0x6>;
76675e0376eSChanh Nguyen				};
76775e0376eSChanh Nguyen				nvmeslot_15: i2c@7 {
76875e0376eSChanh Nguyen					#address-cells = <1>;
76975e0376eSChanh Nguyen					#size-cells = <0>;
77075e0376eSChanh Nguyen					reg = <0x7>;
77175e0376eSChanh Nguyen				};
77275e0376eSChanh Nguyen			};
77375e0376eSChanh Nguyen
77475e0376eSChanh Nguyen			tmp432@4c {
77575e0376eSChanh Nguyen				compatible = "ti,tmp75";
77675e0376eSChanh Nguyen				reg = <0x4c>;
77775e0376eSChanh Nguyen			};
77875e0376eSChanh Nguyen		};
77975e0376eSChanh Nguyen
78075e0376eSChanh Nguyen		backplane_2: i2c@2 {
78175e0376eSChanh Nguyen			#address-cells = <1>;
78275e0376eSChanh Nguyen			#size-cells = <0>;
78375e0376eSChanh Nguyen			reg = <0x2>;
78475e0376eSChanh Nguyen
78575e0376eSChanh Nguyen			eeprom@50 {
78675e0376eSChanh Nguyen				compatible = "atmel,24c64";
78775e0376eSChanh Nguyen				reg = <0x50>;
78875e0376eSChanh Nguyen				pagesize = <32>;
78975e0376eSChanh Nguyen			};
79075e0376eSChanh Nguyen
79175e0376eSChanh Nguyen			i2c-mux@71 {
79275e0376eSChanh Nguyen				compatible = "nxp,pca9548";
79375e0376eSChanh Nguyen				#address-cells = <1>;
79475e0376eSChanh Nguyen				#size-cells = <0>;
79575e0376eSChanh Nguyen				reg = <0x71>;
79675e0376eSChanh Nguyen				i2c-mux-idle-disconnect;
79775e0376eSChanh Nguyen
79875e0376eSChanh Nguyen				nvmeslot_16: i2c@0 {
79975e0376eSChanh Nguyen					#address-cells = <1>;
80075e0376eSChanh Nguyen					#size-cells = <0>;
80175e0376eSChanh Nguyen					reg = <0x0>;
80275e0376eSChanh Nguyen				};
80375e0376eSChanh Nguyen				nvmeslot_17: i2c@1 {
80475e0376eSChanh Nguyen					#address-cells = <1>;
80575e0376eSChanh Nguyen					#size-cells = <0>;
80675e0376eSChanh Nguyen					reg = <0x1>;
80775e0376eSChanh Nguyen				};
80875e0376eSChanh Nguyen				nvmeslot_18: i2c@2 {
80975e0376eSChanh Nguyen					#address-cells = <1>;
81075e0376eSChanh Nguyen					#size-cells = <0>;
81175e0376eSChanh Nguyen					reg = <0x2>;
81275e0376eSChanh Nguyen				};
81375e0376eSChanh Nguyen				nvmeslot_19: i2c@3 {
81475e0376eSChanh Nguyen					#address-cells = <1>;
81575e0376eSChanh Nguyen					#size-cells = <0>;
81675e0376eSChanh Nguyen					reg = <0x3>;
81775e0376eSChanh Nguyen				};
81875e0376eSChanh Nguyen				nvmeslot_20: i2c@4 {
81975e0376eSChanh Nguyen					#address-cells = <1>;
82075e0376eSChanh Nguyen					#size-cells = <0>;
82175e0376eSChanh Nguyen					reg = <0x4>;
82275e0376eSChanh Nguyen				};
82375e0376eSChanh Nguyen				nvmeslot_21: i2c@5 {
82475e0376eSChanh Nguyen					#address-cells = <1>;
82575e0376eSChanh Nguyen					#size-cells = <0>;
82675e0376eSChanh Nguyen					reg = <0x5>;
82775e0376eSChanh Nguyen				};
82875e0376eSChanh Nguyen				nvmeslot_22: i2c@6 {
82975e0376eSChanh Nguyen					#address-cells = <1>;
83075e0376eSChanh Nguyen					#size-cells = <0>;
83175e0376eSChanh Nguyen					reg = <0x6>;
83275e0376eSChanh Nguyen				};
83375e0376eSChanh Nguyen				nvmeslot_23: i2c@7 {
83475e0376eSChanh Nguyen					#address-cells = <1>;
83575e0376eSChanh Nguyen					#size-cells = <0>;
83675e0376eSChanh Nguyen					reg = <0x7>;
83775e0376eSChanh Nguyen				};
83875e0376eSChanh Nguyen			};
83975e0376eSChanh Nguyen
84075e0376eSChanh Nguyen			tmp432@4c {
84175e0376eSChanh Nguyen				compatible = "ti,tmp75";
84275e0376eSChanh Nguyen				reg = <0x4c>;
84375e0376eSChanh Nguyen			};
84475e0376eSChanh Nguyen		};
84575e0376eSChanh Nguyen
84675e0376eSChanh Nguyen		backplane_0: i2c@4 {
84775e0376eSChanh Nguyen			#address-cells = <1>;
84875e0376eSChanh Nguyen			#size-cells = <0>;
84975e0376eSChanh Nguyen			reg = <0x4>;
85075e0376eSChanh Nguyen
85175e0376eSChanh Nguyen			eeprom@50 {
85275e0376eSChanh Nguyen				compatible = "atmel,24c64";
85375e0376eSChanh Nguyen				reg = <0x50>;
85475e0376eSChanh Nguyen				pagesize = <32>;
85575e0376eSChanh Nguyen			};
85675e0376eSChanh Nguyen
85775e0376eSChanh Nguyen			i2c-mux@71 {
85875e0376eSChanh Nguyen				compatible = "nxp,pca9548";
85975e0376eSChanh Nguyen				#address-cells = <1>;
86075e0376eSChanh Nguyen				#size-cells = <0>;
86175e0376eSChanh Nguyen				reg = <0x71>;
86275e0376eSChanh Nguyen				i2c-mux-idle-disconnect;
86375e0376eSChanh Nguyen
86475e0376eSChanh Nguyen				nvmeslot_0: i2c@0 {
86575e0376eSChanh Nguyen					#address-cells = <1>;
86675e0376eSChanh Nguyen					#size-cells = <0>;
86775e0376eSChanh Nguyen					reg = <0x0>;
86875e0376eSChanh Nguyen				};
86975e0376eSChanh Nguyen				nvmeslot_1: i2c@1 {
87075e0376eSChanh Nguyen					#address-cells = <1>;
87175e0376eSChanh Nguyen					#size-cells = <0>;
87275e0376eSChanh Nguyen					reg = <0x1>;
87375e0376eSChanh Nguyen				};
87475e0376eSChanh Nguyen				nvmeslot_2: i2c@2 {
87575e0376eSChanh Nguyen					#address-cells = <1>;
87675e0376eSChanh Nguyen					#size-cells = <0>;
87775e0376eSChanh Nguyen					reg = <0x2>;
87875e0376eSChanh Nguyen				};
87975e0376eSChanh Nguyen				nvmeslot_3: i2c@3 {
88075e0376eSChanh Nguyen					#address-cells = <1>;
88175e0376eSChanh Nguyen					#size-cells = <0>;
88275e0376eSChanh Nguyen					reg = <0x3>;
88375e0376eSChanh Nguyen				};
88475e0376eSChanh Nguyen				nvmeslot_4: i2c@4 {
88575e0376eSChanh Nguyen					#address-cells = <1>;
88675e0376eSChanh Nguyen					#size-cells = <0>;
88775e0376eSChanh Nguyen					reg = <0x4>;
88875e0376eSChanh Nguyen				};
88975e0376eSChanh Nguyen				nvmeslot_5: i2c@5 {
89075e0376eSChanh Nguyen					#address-cells = <1>;
89175e0376eSChanh Nguyen					#size-cells = <0>;
89275e0376eSChanh Nguyen					reg = <0x5>;
89375e0376eSChanh Nguyen				};
89475e0376eSChanh Nguyen				nvmeslot_6: i2c@6 {
89575e0376eSChanh Nguyen					#address-cells = <1>;
89675e0376eSChanh Nguyen					#size-cells = <0>;
89775e0376eSChanh Nguyen					reg = <0x6>;
89875e0376eSChanh Nguyen				};
89975e0376eSChanh Nguyen				nvmeslot_7: i2c@7 {
90075e0376eSChanh Nguyen					#address-cells = <1>;
90175e0376eSChanh Nguyen					#size-cells = <0>;
90275e0376eSChanh Nguyen					reg = <0x7>;
90375e0376eSChanh Nguyen				};
90475e0376eSChanh Nguyen			};
90575e0376eSChanh Nguyen
90675e0376eSChanh Nguyen			tmp432@4c {
90775e0376eSChanh Nguyen				compatible = "ti,tmp75";
90875e0376eSChanh Nguyen				reg = <0x4c>;
90975e0376eSChanh Nguyen			};
91075e0376eSChanh Nguyen		};
91175e0376eSChanh Nguyen
91275e0376eSChanh Nguyen		i2c@7 {
91375e0376eSChanh Nguyen			#address-cells = <1>;
91475e0376eSChanh Nguyen			#size-cells = <0>;
91575e0376eSChanh Nguyen			reg = <0x7>;
91675e0376eSChanh Nguyen
91775e0376eSChanh Nguyen			i2c-mux@71 {
91875e0376eSChanh Nguyen				compatible = "nxp,pca9546";
91975e0376eSChanh Nguyen				#address-cells = <1>;
92075e0376eSChanh Nguyen				#size-cells = <0>;
92175e0376eSChanh Nguyen				reg = <0x71>;
92275e0376eSChanh Nguyen				i2c-mux-idle-disconnect;
92375e0376eSChanh Nguyen
92475e0376eSChanh Nguyen				nvme_m2_0: i2c@0 {
92575e0376eSChanh Nguyen					#address-cells = <1>;
92675e0376eSChanh Nguyen					#size-cells = <0>;
92775e0376eSChanh Nguyen					reg = <0x0>;
92875e0376eSChanh Nguyen				};
92975e0376eSChanh Nguyen
93075e0376eSChanh Nguyen				nvme_m2_1: i2c@1 {
93175e0376eSChanh Nguyen					#address-cells = <1>;
93275e0376eSChanh Nguyen					#size-cells = <0>;
93375e0376eSChanh Nguyen					reg = <0x1>;
93475e0376eSChanh Nguyen				};
93575e0376eSChanh Nguyen			};
93675e0376eSChanh Nguyen		};
93775e0376eSChanh Nguyen	};
938724ba675SRob Herring};
939724ba675SRob Herring
9409695d4bdSChanh Nguyen&i2c10 {
9419695d4bdSChanh Nguyen	status = "okay";
9429695d4bdSChanh Nguyen};
9439695d4bdSChanh Nguyen
944724ba675SRob Herring&i2c11 {
945724ba675SRob Herring	status = "okay";
946724ba675SRob Herring	ssif-bmc@10 {
947724ba675SRob Herring		compatible = "ssif-bmc";
948724ba675SRob Herring		reg = <0x10>;
949724ba675SRob Herring	};
950724ba675SRob Herring};
951724ba675SRob Herring
952724ba675SRob Herring&i2c14 {
953724ba675SRob Herring	status = "okay";
954724ba675SRob Herring	eeprom@50 {
955724ba675SRob Herring		compatible = "atmel,24c64";
956724ba675SRob Herring		reg = <0x50>;
957724ba675SRob Herring		pagesize = <32>;
958724ba675SRob Herring	};
959724ba675SRob Herring
960724ba675SRob Herring	bmc_ast2600_cpu: temperature-sensor@35 {
961724ba675SRob Herring		compatible = "ti,tmp175";
962724ba675SRob Herring		reg = <0x35>;
963724ba675SRob Herring	};
964724ba675SRob Herring};
965724ba675SRob Herring
9669695d4bdSChanh Nguyen&i2c15 {
9679695d4bdSChanh Nguyen	status = "okay";
9689695d4bdSChanh Nguyen	gpio_expander1: gpio-expander@22 {
9699695d4bdSChanh Nguyen		compatible = "nxp,pca9535";
9709695d4bdSChanh Nguyen		reg = <0x22>;
9719695d4bdSChanh Nguyen		gpio-controller;
9729695d4bdSChanh Nguyen		#gpio-cells = <2>;
9739695d4bdSChanh Nguyen		gpio-line-names =
9749695d4bdSChanh Nguyen			"fan-fault","psu-fault",
9759695d4bdSChanh Nguyen			"","",
9769695d4bdSChanh Nguyen			"","",
977*ec53ab39SChanh Nguyen			"gpi0","gpi1",
9789695d4bdSChanh Nguyen			"","",
9799695d4bdSChanh Nguyen			"","",
9809695d4bdSChanh Nguyen			"","",
9819695d4bdSChanh Nguyen			"","";
9829695d4bdSChanh Nguyen	};
9839695d4bdSChanh Nguyen};
9849695d4bdSChanh Nguyen
985724ba675SRob Herring&adc0 {
986724ba675SRob Herring	status = "okay";
987724ba675SRob Herring
988724ba675SRob Herring	pinctrl-names = "default";
989724ba675SRob Herring	pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default
99065889db8SChanh Nguyen		&pinctrl_adc2_default>;
991724ba675SRob Herring};
992724ba675SRob Herring
993724ba675SRob Herring&vhub {
994724ba675SRob Herring	status = "okay";
995724ba675SRob Herring};
996724ba675SRob Herring
997724ba675SRob Herring&video {
998724ba675SRob Herring	status = "okay";
999724ba675SRob Herring	memory-region = <&video_engine_memory>;
1000724ba675SRob Herring};
1001724ba675SRob Herring
1002724ba675SRob Herring&gpio0 {
1003724ba675SRob Herring	gpio-line-names =
1004724ba675SRob Herring	/*A0-A7*/	"","","","","","i2c2-reset-n","i2c6-reset-n","i2c4-reset-n",
1005724ba675SRob Herring	/*B0-B7*/	"","","","","host0-sysreset-n","host0-pmin-n","","",
1006dfbb3da3SChanh Nguyen	/*C0-C7*/	"s0-vrd-fault-n","s1-vrd-fault-n","bmc-debug-mode","",
1007724ba675SRob Herring			"irq-n","","vrd-sel","spd-sel",
1008724ba675SRob Herring	/*D0-D7*/	"presence-ps0","presence-ps1","hsc-12vmain-alt2-n","ext-high-temp-n",
1009724ba675SRob Herring			"","bmc-ncsi-txen","","",
1010dfbb3da3SChanh Nguyen	/*E0-E7*/	"","eth-phy-int-n","clk50m-bmc-ncsi","","","","","",
1011724ba675SRob Herring	/*F0-F7*/	"s0-pcp-oc-warn-n","s1-pcp-oc-warn-n","power-chassis-control",
1012724ba675SRob Herring			"cpu-bios-recover","s0-heartbeat","hs-csout-prochot",
1013724ba675SRob Herring			"s0-vr-hot-n","s1-vr-hot-n",
1014724ba675SRob Herring	/*G0-G7*/	"","","hsc-12vmain-alt1-n","","","","","",
1015dfbb3da3SChanh Nguyen	/*H0-H7*/	"jtag-program-sel","fpga-program-b","wd-disable-n",
1016dfbb3da3SChanh Nguyen			"power-chassis-good","","","","",
1017724ba675SRob Herring	/*I0-I7*/	"","","","","","adc-sw","power-button","rtc-battery-voltage-read-enable",
1018724ba675SRob Herring	/*J0-J7*/	"","","","","","","","",
1019724ba675SRob Herring	/*K0-K7*/	"","","","","","","","",
1020724ba675SRob Herring	/*L0-L7*/	"","","","","","","","",
1021724ba675SRob Herring	/*M0-M7*/	"","s0-ddr-save","soc-spi-nor-access","presence-cpu0",
1022724ba675SRob Herring			"s0-rtc-lock","","","",
1023724ba675SRob Herring	/*N0-N7*/	"hpm-fw-recovery","hpm-stby-rst-n","jtag-sel-s0","led-sw-hb",
1024724ba675SRob Herring			"jtag-dbgr-prsnt-n","s1-heartbeat","","",
1025724ba675SRob Herring	/*O0-O7*/	"","","","","","","","",
1026724ba675SRob Herring	/*P0-P7*/	"ps0-ac-loss-n","ps1-ac-loss-n","","",
1027724ba675SRob Herring			"led-fault","cpld-user-mode","jtag-srst-n","led-bmc-hb",
1028724ba675SRob Herring	/*Q0-Q7*/	"","","","","","","","",
1029724ba675SRob Herring	/*R0-R7*/	"","","","","","","","",
1030724ba675SRob Herring	/*S0-S7*/	"","","identify-button","led-identify",
1031ddc0af89SChanh Nguyen			"s1-ddr-save","spi-nor-access","host0-ready","presence-cpu1",
1032724ba675SRob Herring	/*T0-T7*/	"","","","","","","","",
1033724ba675SRob Herring	/*U0-U7*/	"","","","","","","","",
1034724ba675SRob Herring	/*V0-V7*/	"s0-hightemp-n","s0-fault-alert","s0-sys-auth-failure-n",
1035ddc0af89SChanh Nguyen			"host0-reboot-ack-n","s0-fw-boot-ok","host0-shd-req-n",
1036724ba675SRob Herring			"host0-shd-ack-n","s0-overtemp-n",
1037dfbb3da3SChanh Nguyen	/*W0-W7*/	"ocp-aux-pwren","ocp-main-pwren","ocp-pgood","s1-pcp-pgood",
1038724ba675SRob Herring			"bmc-ok","bmc-ready","spi0-program-sel","spi0-backup-sel",
1039724ba675SRob Herring	/*X0-X7*/	"i2c-backup-sel","s1-fault-alert","s1-fw-boot-ok",
1040724ba675SRob Herring			"s1-hightemp-n","s0-spi-auth-fail-n","s1-sys-auth-failure-n",
1041ddc0af89SChanh Nguyen			"s1-overtemp-n","cpld-s1-spi-auth-fail-n",
1042724ba675SRob Herring	/*Y0-Y7*/	"","","","","","","","host0-special-boot",
1043724ba675SRob Herring	/*Z0-Z7*/	"reset-button","ps0-pgood","ps1-pgood","","","","","";
1044724ba675SRob Herring
1045724ba675SRob Herring	ocp-aux-pwren-hog {
1046724ba675SRob Herring		gpio-hog;
1047724ba675SRob Herring		gpios = <ASPEED_GPIO(W, 0) GPIO_ACTIVE_HIGH>;
1048724ba675SRob Herring		output-high;
1049724ba675SRob Herring		line-name = "ocp-aux-pwren";
1050724ba675SRob Herring	};
1051724ba675SRob Herring};
1052724ba675SRob Herring
1053724ba675SRob Herring&gpio1 {
1054724ba675SRob Herring	gpio-line-names =
1055724ba675SRob Herring	/*18A0-18A7*/	"","","","","","","","",
1056724ba675SRob Herring	/*18B0-18B7*/	"","","","","","","s0-soc-pgood","",
1057724ba675SRob Herring	/*18C0-18C7*/	"uart1-mode0","uart1-mode1","uart2-mode0","uart2-mode1",
1058724ba675SRob Herring			"uart3-mode0","uart3-mode1","uart4-mode0","uart4-mode1",
1059724ba675SRob Herring	/*18D0-18D7*/	"","","","","","","","",
1060724ba675SRob Herring	/*18E0-18E3*/	"","","","";
1061724ba675SRob Herring};
1062