xref: /freebsd/sys/contrib/device-tree/src/arm/aspeed/aspeed-bmc-ampere-mtjefferson.dts (revision 2846c90520eb4cc74e24d586a0ea0f4a0006bc73)
1*2846c905SEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only
2*2846c905SEmmanuel Vadot// Copyright 2024 Ampere Computing LLC.
3*2846c905SEmmanuel Vadot
4*2846c905SEmmanuel Vadot/dts-v1/;
5*2846c905SEmmanuel Vadot
6*2846c905SEmmanuel Vadot#include "aspeed-g6.dtsi"
7*2846c905SEmmanuel Vadot#include <dt-bindings/i2c/i2c.h>
8*2846c905SEmmanuel Vadot#include <dt-bindings/gpio/aspeed-gpio.h>
9*2846c905SEmmanuel Vadot
10*2846c905SEmmanuel Vadot/ {
11*2846c905SEmmanuel Vadot	model = "Ampere Mt. Jefferson BMC";
12*2846c905SEmmanuel Vadot	compatible = "ampere,mtjefferson-bmc", "aspeed,ast2600";
13*2846c905SEmmanuel Vadot
14*2846c905SEmmanuel Vadot	aliases {
15*2846c905SEmmanuel Vadot		i2c20 = &i2c4_bus70_chn0;
16*2846c905SEmmanuel Vadot		i2c22 = &i2c4_bus70_chn2;
17*2846c905SEmmanuel Vadot
18*2846c905SEmmanuel Vadot		/*
19*2846c905SEmmanuel Vadot		 *  I2C OCP alias port
20*2846c905SEmmanuel Vadot		 */
21*2846c905SEmmanuel Vadot		i2c30 = &ocpslot;
22*2846c905SEmmanuel Vadot
23*2846c905SEmmanuel Vadot		/*
24*2846c905SEmmanuel Vadot		 *  I2C NVMe alias port
25*2846c905SEmmanuel Vadot		 */
26*2846c905SEmmanuel Vadot		i2c48 = &nvmeslot_0;
27*2846c905SEmmanuel Vadot		i2c49 = &nvmeslot_1;
28*2846c905SEmmanuel Vadot		i2c50 = &nvmeslot_2;
29*2846c905SEmmanuel Vadot		i2c51 = &nvmeslot_3;
30*2846c905SEmmanuel Vadot		i2c52 = &nvmeslot_4;
31*2846c905SEmmanuel Vadot		i2c53 = &nvmeslot_5;
32*2846c905SEmmanuel Vadot		i2c54 = &nvmeslot_6;
33*2846c905SEmmanuel Vadot		i2c55 = &nvmeslot_7;
34*2846c905SEmmanuel Vadot		i2c56 = &nvmeslot_8;
35*2846c905SEmmanuel Vadot		i2c57 = &nvmeslot_9;
36*2846c905SEmmanuel Vadot		i2c58 = &nvmeslot_10;
37*2846c905SEmmanuel Vadot		i2c59 = &nvmeslot_11;
38*2846c905SEmmanuel Vadot	};
39*2846c905SEmmanuel Vadot
40*2846c905SEmmanuel Vadot	chosen {
41*2846c905SEmmanuel Vadot		stdout-path = &uart5;
42*2846c905SEmmanuel Vadot	};
43*2846c905SEmmanuel Vadot
44*2846c905SEmmanuel Vadot	memory@80000000 {
45*2846c905SEmmanuel Vadot		device_type = "memory";
46*2846c905SEmmanuel Vadot		reg = <0x80000000 0x80000000>;
47*2846c905SEmmanuel Vadot	};
48*2846c905SEmmanuel Vadot
49*2846c905SEmmanuel Vadot	reserved-memory {
50*2846c905SEmmanuel Vadot		#address-cells = <1>;
51*2846c905SEmmanuel Vadot		#size-cells = <1>;
52*2846c905SEmmanuel Vadot		ranges;
53*2846c905SEmmanuel Vadot
54*2846c905SEmmanuel Vadot		gfx_memory: framebuffer {
55*2846c905SEmmanuel Vadot			size = <0x01000000>;
56*2846c905SEmmanuel Vadot			alignment = <0x01000000>;
57*2846c905SEmmanuel Vadot			compatible = "shared-dma-pool";
58*2846c905SEmmanuel Vadot			reusable;
59*2846c905SEmmanuel Vadot		};
60*2846c905SEmmanuel Vadot
61*2846c905SEmmanuel Vadot		video_engine_memory: video {
62*2846c905SEmmanuel Vadot			size = <0x04000000>;
63*2846c905SEmmanuel Vadot			alignment = <0x01000000>;
64*2846c905SEmmanuel Vadot			compatible = "shared-dma-pool";
65*2846c905SEmmanuel Vadot			reusable;
66*2846c905SEmmanuel Vadot		};
67*2846c905SEmmanuel Vadot
68*2846c905SEmmanuel Vadot		vga_memory: region@bf000000 {
69*2846c905SEmmanuel Vadot			no-map;
70*2846c905SEmmanuel Vadot			compatible = "shared-dma-pool";
71*2846c905SEmmanuel Vadot			reg = <0xbf000000 0x01000000>;  /* 16M */
72*2846c905SEmmanuel Vadot		};
73*2846c905SEmmanuel Vadot	};
74*2846c905SEmmanuel Vadot
75*2846c905SEmmanuel Vadot	voltage_mon_reg: voltage-mon-regulator {
76*2846c905SEmmanuel Vadot		compatible = "regulator-fixed";
77*2846c905SEmmanuel Vadot		regulator-name = "ltc2497_reg";
78*2846c905SEmmanuel Vadot		regulator-min-microvolt = <3300000>;
79*2846c905SEmmanuel Vadot		regulator-max-microvolt = <3300000>;
80*2846c905SEmmanuel Vadot		regulator-always-on;
81*2846c905SEmmanuel Vadot	};
82*2846c905SEmmanuel Vadot
83*2846c905SEmmanuel Vadot	leds {
84*2846c905SEmmanuel Vadot		compatible = "gpio-leds";
85*2846c905SEmmanuel Vadot		led-bmc-ready {
86*2846c905SEmmanuel Vadot			gpios = <&gpio0 ASPEED_GPIO(W, 5) (GPIO_ACTIVE_HIGH | GPIO_TRANSITORY)>;
87*2846c905SEmmanuel Vadot		};
88*2846c905SEmmanuel Vadot
89*2846c905SEmmanuel Vadot		led-sw-heartbeat {
90*2846c905SEmmanuel Vadot			gpios = <&gpio0 ASPEED_GPIO(N, 3) GPIO_ACTIVE_HIGH>;
91*2846c905SEmmanuel Vadot		};
92*2846c905SEmmanuel Vadot
93*2846c905SEmmanuel Vadot		led-identify {
94*2846c905SEmmanuel Vadot			gpios = <&gpio0 ASPEED_GPIO(S, 3) GPIO_ACTIVE_HIGH>;
95*2846c905SEmmanuel Vadot		};
96*2846c905SEmmanuel Vadot
97*2846c905SEmmanuel Vadot		led-fault {
98*2846c905SEmmanuel Vadot			gpios = <&gpio0 ASPEED_GPIO(P, 4) GPIO_ACTIVE_HIGH>;
99*2846c905SEmmanuel Vadot		};
100*2846c905SEmmanuel Vadot	};
101*2846c905SEmmanuel Vadot
102*2846c905SEmmanuel Vadot	iio-hwmon {
103*2846c905SEmmanuel Vadot		compatible = "iio-hwmon";
104*2846c905SEmmanuel Vadot		io-channels =   <&adc0 0>, <&adc0 1>, <&adc0 2>,
105*2846c905SEmmanuel Vadot				<&adc_i2c_2 0>, <&adc_i2c_2 1>,
106*2846c905SEmmanuel Vadot				<&adc_i2c_2 2>, <&adc_i2c_2 3>,
107*2846c905SEmmanuel Vadot				<&adc_i2c_2 4>, <&adc_i2c_2 5>,
108*2846c905SEmmanuel Vadot				<&adc_i2c_2 6>, <&adc_i2c_2 7>,
109*2846c905SEmmanuel Vadot				<&adc_i2c_2 8>, <&adc_i2c_2 9>,
110*2846c905SEmmanuel Vadot				<&adc_i2c_2 10>, <&adc_i2c_2 11>,
111*2846c905SEmmanuel Vadot				<&adc_i2c_2 12>, <&adc_i2c_2 13>,
112*2846c905SEmmanuel Vadot				<&adc_i2c_2 14>, <&adc_i2c_2 15>,
113*2846c905SEmmanuel Vadot				<&adc_i2c_0 0>, <&adc_i2c_0 1>,
114*2846c905SEmmanuel Vadot				<&adc_i2c_0 2>, <&adc_i2c_0 3>,
115*2846c905SEmmanuel Vadot				<&adc_i2c_0 4>, <&adc_i2c_0 5>,
116*2846c905SEmmanuel Vadot				<&adc_i2c_0 6>, <&adc_i2c_0 7>,
117*2846c905SEmmanuel Vadot				<&adc_i2c_0 8>, <&adc_i2c_0 9>,
118*2846c905SEmmanuel Vadot				<&adc_i2c_0 10>, <&adc_i2c_0 11>,
119*2846c905SEmmanuel Vadot				<&adc_i2c_0 12>;
120*2846c905SEmmanuel Vadot	};
121*2846c905SEmmanuel Vadot};
122*2846c905SEmmanuel Vadot
123*2846c905SEmmanuel Vadot&mdio0 {
124*2846c905SEmmanuel Vadot	status = "okay";
125*2846c905SEmmanuel Vadot
126*2846c905SEmmanuel Vadot	ethphy0: ethernet-phy@0 {
127*2846c905SEmmanuel Vadot		compatible = "ethernet-phy-ieee802.3-c22";
128*2846c905SEmmanuel Vadot		reg = <0>;
129*2846c905SEmmanuel Vadot	};
130*2846c905SEmmanuel Vadot};
131*2846c905SEmmanuel Vadot
132*2846c905SEmmanuel Vadot&mac0 {
133*2846c905SEmmanuel Vadot	status = "okay";
134*2846c905SEmmanuel Vadot
135*2846c905SEmmanuel Vadot	phy-mode = "rgmii";
136*2846c905SEmmanuel Vadot	phy-handle = <&ethphy0>;
137*2846c905SEmmanuel Vadot
138*2846c905SEmmanuel Vadot	pinctrl-names = "default";
139*2846c905SEmmanuel Vadot	pinctrl-0 = <&pinctrl_rgmii1_default>;
140*2846c905SEmmanuel Vadot};
141*2846c905SEmmanuel Vadot
142*2846c905SEmmanuel Vadot&mac3 {
143*2846c905SEmmanuel Vadot	status = "okay";
144*2846c905SEmmanuel Vadot	pinctrl-names = "default";
145*2846c905SEmmanuel Vadot	pinctrl-0 = <&pinctrl_rmii4_default>;
146*2846c905SEmmanuel Vadot	use-ncsi;
147*2846c905SEmmanuel Vadot};
148*2846c905SEmmanuel Vadot
149*2846c905SEmmanuel Vadot&fmc {
150*2846c905SEmmanuel Vadot	status = "okay";
151*2846c905SEmmanuel Vadot	flash@0 {
152*2846c905SEmmanuel Vadot		status = "okay";
153*2846c905SEmmanuel Vadot		m25p,fast-read;
154*2846c905SEmmanuel Vadot		label = "bmc";
155*2846c905SEmmanuel Vadot		spi-max-frequency = <50000000>;
156*2846c905SEmmanuel Vadot#include "openbmc-flash-layout-64.dtsi"
157*2846c905SEmmanuel Vadot	};
158*2846c905SEmmanuel Vadot
159*2846c905SEmmanuel Vadot	flash@1 {
160*2846c905SEmmanuel Vadot		status = "okay";
161*2846c905SEmmanuel Vadot		m25p,fast-read;
162*2846c905SEmmanuel Vadot		label = "alt-bmc";
163*2846c905SEmmanuel Vadot		spi-max-frequency = <50000000>;
164*2846c905SEmmanuel Vadot#include "openbmc-flash-layout-64-alt.dtsi"
165*2846c905SEmmanuel Vadot	};
166*2846c905SEmmanuel Vadot};
167*2846c905SEmmanuel Vadot
168*2846c905SEmmanuel Vadot&spi1 {
169*2846c905SEmmanuel Vadot	status = "okay";
170*2846c905SEmmanuel Vadot	pinctrl-names = "default";
171*2846c905SEmmanuel Vadot	pinctrl-0 = <&pinctrl_spi1_default>;
172*2846c905SEmmanuel Vadot
173*2846c905SEmmanuel Vadot	flash@0 {
174*2846c905SEmmanuel Vadot		status = "okay";
175*2846c905SEmmanuel Vadot		m25p,fast-read;
176*2846c905SEmmanuel Vadot		label = "pnor";
177*2846c905SEmmanuel Vadot		spi-max-frequency = <20000000>;
178*2846c905SEmmanuel Vadot	};
179*2846c905SEmmanuel Vadot};
180*2846c905SEmmanuel Vadot
181*2846c905SEmmanuel Vadot&uart1 {
182*2846c905SEmmanuel Vadot	status = "okay";
183*2846c905SEmmanuel Vadot};
184*2846c905SEmmanuel Vadot
185*2846c905SEmmanuel Vadot&uart2 {
186*2846c905SEmmanuel Vadot	status = "okay";
187*2846c905SEmmanuel Vadot};
188*2846c905SEmmanuel Vadot
189*2846c905SEmmanuel Vadot&i2c0 {
190*2846c905SEmmanuel Vadot	status = "okay";
191*2846c905SEmmanuel Vadot};
192*2846c905SEmmanuel Vadot
193*2846c905SEmmanuel Vadot&i2c1 {
194*2846c905SEmmanuel Vadot	status = "okay";
195*2846c905SEmmanuel Vadot};
196*2846c905SEmmanuel Vadot
197*2846c905SEmmanuel Vadot&i2c2 {
198*2846c905SEmmanuel Vadot	status = "okay";
199*2846c905SEmmanuel Vadot};
200*2846c905SEmmanuel Vadot
201*2846c905SEmmanuel Vadot&i2c3 {
202*2846c905SEmmanuel Vadot	status = "okay";
203*2846c905SEmmanuel Vadot	bus-frequency = <1000000>;
204*2846c905SEmmanuel Vadot	multi-master;
205*2846c905SEmmanuel Vadot	mctp-controller;
206*2846c905SEmmanuel Vadot
207*2846c905SEmmanuel Vadot	mctp@10 {
208*2846c905SEmmanuel Vadot		compatible = "mctp-i2c-controller";
209*2846c905SEmmanuel Vadot		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
210*2846c905SEmmanuel Vadot	};
211*2846c905SEmmanuel Vadot};
212*2846c905SEmmanuel Vadot
213*2846c905SEmmanuel Vadot&i2c4 {
214*2846c905SEmmanuel Vadot	status = "okay";
215*2846c905SEmmanuel Vadot	eeprom@50 {
216*2846c905SEmmanuel Vadot		compatible = "atmel,24c64";
217*2846c905SEmmanuel Vadot		reg = <0x50>;
218*2846c905SEmmanuel Vadot		pagesize = <32>;
219*2846c905SEmmanuel Vadot	};
220*2846c905SEmmanuel Vadot
221*2846c905SEmmanuel Vadot	i2c-mux@70 {
222*2846c905SEmmanuel Vadot		compatible = "nxp,pca9545";
223*2846c905SEmmanuel Vadot		#address-cells = <1>;
224*2846c905SEmmanuel Vadot		#size-cells = <0>;
225*2846c905SEmmanuel Vadot		reg = <0x70>;
226*2846c905SEmmanuel Vadot		i2c-mux-idle-disconnect;
227*2846c905SEmmanuel Vadot
228*2846c905SEmmanuel Vadot		i2c4_bus70_chn0: i2c@0 {
229*2846c905SEmmanuel Vadot			#address-cells = <1>;
230*2846c905SEmmanuel Vadot			#size-cells = <0>;
231*2846c905SEmmanuel Vadot			reg = <0x0>;
232*2846c905SEmmanuel Vadot
233*2846c905SEmmanuel Vadot			eeprom@52 {
234*2846c905SEmmanuel Vadot				compatible = "atmel,24c256";
235*2846c905SEmmanuel Vadot				reg = <0x52>;
236*2846c905SEmmanuel Vadot				pagesize = <32>;
237*2846c905SEmmanuel Vadot			};
238*2846c905SEmmanuel Vadot			temperature-sensor@48 {
239*2846c905SEmmanuel Vadot				compatible = "ti,tmp75";
240*2846c905SEmmanuel Vadot				reg = <0x48>;
241*2846c905SEmmanuel Vadot			};
242*2846c905SEmmanuel Vadot			temperature-sensor@49 {
243*2846c905SEmmanuel Vadot				compatible = "ti,tmp75";
244*2846c905SEmmanuel Vadot				reg = <0x49>;
245*2846c905SEmmanuel Vadot			};
246*2846c905SEmmanuel Vadot			temperature-sensor@4a{
247*2846c905SEmmanuel Vadot				compatible = "ti,tmp75";
248*2846c905SEmmanuel Vadot				reg = <0x4a>;
249*2846c905SEmmanuel Vadot			};
250*2846c905SEmmanuel Vadot			temperature-sensor@4b {
251*2846c905SEmmanuel Vadot				compatible = "ti,tmp464";
252*2846c905SEmmanuel Vadot				reg = <0x4b>;
253*2846c905SEmmanuel Vadot				#address-cells = <1>;
254*2846c905SEmmanuel Vadot				#size-cells = <0>;
255*2846c905SEmmanuel Vadot
256*2846c905SEmmanuel Vadot				channel@0 {
257*2846c905SEmmanuel Vadot					reg = <0x0>;
258*2846c905SEmmanuel Vadot					status = "disabled";
259*2846c905SEmmanuel Vadot				};
260*2846c905SEmmanuel Vadot				channel@1 {
261*2846c905SEmmanuel Vadot					reg = <0x1>;
262*2846c905SEmmanuel Vadot					status = "disabled";
263*2846c905SEmmanuel Vadot				};
264*2846c905SEmmanuel Vadot				channel@2 {
265*2846c905SEmmanuel Vadot					reg = <0x2>;
266*2846c905SEmmanuel Vadot					status = "disabled";
267*2846c905SEmmanuel Vadot				};
268*2846c905SEmmanuel Vadot				channel@3 {
269*2846c905SEmmanuel Vadot					reg = <0x3>;
270*2846c905SEmmanuel Vadot					status = "disabled";
271*2846c905SEmmanuel Vadot				};
272*2846c905SEmmanuel Vadot				channel@4 {
273*2846c905SEmmanuel Vadot					reg = <0x4>;
274*2846c905SEmmanuel Vadot				};
275*2846c905SEmmanuel Vadot			};
276*2846c905SEmmanuel Vadot			temperature-sensor@4d {
277*2846c905SEmmanuel Vadot				compatible = "ti,tmp75";
278*2846c905SEmmanuel Vadot				reg = <0x4d>;
279*2846c905SEmmanuel Vadot			};
280*2846c905SEmmanuel Vadot			temperature-sensor@4e {
281*2846c905SEmmanuel Vadot				compatible = "ti,tmp75";
282*2846c905SEmmanuel Vadot				reg = <0x4e>;
283*2846c905SEmmanuel Vadot			};
284*2846c905SEmmanuel Vadot			temperature-sensor@4f {
285*2846c905SEmmanuel Vadot				compatible = "ti,tmp75";
286*2846c905SEmmanuel Vadot				reg = <0x4f>;
287*2846c905SEmmanuel Vadot			};
288*2846c905SEmmanuel Vadot			temperature-sensor@28 {
289*2846c905SEmmanuel Vadot				compatible = "nuvoton,nct7802";
290*2846c905SEmmanuel Vadot				reg = <0x28>;
291*2846c905SEmmanuel Vadot
292*2846c905SEmmanuel Vadot				#address-cells = <1>;
293*2846c905SEmmanuel Vadot				#size-cells = <0>;
294*2846c905SEmmanuel Vadot				channel@1 { /* RTD1 */
295*2846c905SEmmanuel Vadot					reg = <1>;
296*2846c905SEmmanuel Vadot					sensor-type = "temperature";
297*2846c905SEmmanuel Vadot					temperature-mode = "thermistor";
298*2846c905SEmmanuel Vadot				};
299*2846c905SEmmanuel Vadot			};
300*2846c905SEmmanuel Vadot			adc_i2c_0: adc@14 {
301*2846c905SEmmanuel Vadot				compatible = "lltc,ltc2497";
302*2846c905SEmmanuel Vadot				reg = <0x14>;
303*2846c905SEmmanuel Vadot				vref-supply = <&voltage_mon_reg>;
304*2846c905SEmmanuel Vadot				#io-channel-cells = <1>;
305*2846c905SEmmanuel Vadot			};
306*2846c905SEmmanuel Vadot		};
307*2846c905SEmmanuel Vadot
308*2846c905SEmmanuel Vadot		i2c4_bus70_chn2: i2c@2 {
309*2846c905SEmmanuel Vadot			#address-cells = <1>;
310*2846c905SEmmanuel Vadot			#size-cells = <0>;
311*2846c905SEmmanuel Vadot			reg = <0x2>;
312*2846c905SEmmanuel Vadot
313*2846c905SEmmanuel Vadot			adc_i2c_2: adc@14 {
314*2846c905SEmmanuel Vadot				compatible = "lltc,ltc2497";
315*2846c905SEmmanuel Vadot				reg = <0x14>;
316*2846c905SEmmanuel Vadot				vref-supply = <&voltage_mon_reg>;
317*2846c905SEmmanuel Vadot				#io-channel-cells = <1>;
318*2846c905SEmmanuel Vadot			};
319*2846c905SEmmanuel Vadot		};
320*2846c905SEmmanuel Vadot	};
321*2846c905SEmmanuel Vadot};
322*2846c905SEmmanuel Vadot
323*2846c905SEmmanuel Vadot&i2c5 {
324*2846c905SEmmanuel Vadot	status = "okay";
325*2846c905SEmmanuel Vadot	i2c-mux@70 {
326*2846c905SEmmanuel Vadot		compatible = "nxp,pca9548";
327*2846c905SEmmanuel Vadot		#address-cells = <1>;
328*2846c905SEmmanuel Vadot		#size-cells = <0>;
329*2846c905SEmmanuel Vadot		reg = <0x70>;
330*2846c905SEmmanuel Vadot		i2c-mux-idle-disconnect;
331*2846c905SEmmanuel Vadot
332*2846c905SEmmanuel Vadot		i2c@0 {
333*2846c905SEmmanuel Vadot			#address-cells = <1>;
334*2846c905SEmmanuel Vadot			#size-cells = <0>;
335*2846c905SEmmanuel Vadot			reg = <0x0>;
336*2846c905SEmmanuel Vadot
337*2846c905SEmmanuel Vadot			i2c-mux@71 {
338*2846c905SEmmanuel Vadot				compatible = "nxp,pca9548";
339*2846c905SEmmanuel Vadot				#address-cells = <1>;
340*2846c905SEmmanuel Vadot				#size-cells = <0>;
341*2846c905SEmmanuel Vadot				reg = <0x71>;
342*2846c905SEmmanuel Vadot				i2c-mux-idle-disconnect;
343*2846c905SEmmanuel Vadot
344*2846c905SEmmanuel Vadot				nvmeslot_8: i2c@0 {
345*2846c905SEmmanuel Vadot					#address-cells = <1>;
346*2846c905SEmmanuel Vadot					#size-cells = <0>;
347*2846c905SEmmanuel Vadot					reg = <0x0>;
348*2846c905SEmmanuel Vadot				};
349*2846c905SEmmanuel Vadot				nvmeslot_9: i2c@1 {
350*2846c905SEmmanuel Vadot					#address-cells = <1>;
351*2846c905SEmmanuel Vadot					#size-cells = <0>;
352*2846c905SEmmanuel Vadot					reg = <0x1>;
353*2846c905SEmmanuel Vadot				};
354*2846c905SEmmanuel Vadot				nvmeslot_10: i2c@2 {
355*2846c905SEmmanuel Vadot					#address-cells = <1>;
356*2846c905SEmmanuel Vadot					#size-cells = <0>;
357*2846c905SEmmanuel Vadot					reg = <0x2>;
358*2846c905SEmmanuel Vadot				};
359*2846c905SEmmanuel Vadot				nvmeslot_11: i2c@3 {
360*2846c905SEmmanuel Vadot					#address-cells = <1>;
361*2846c905SEmmanuel Vadot					#size-cells = <0>;
362*2846c905SEmmanuel Vadot					reg = <0x3>;
363*2846c905SEmmanuel Vadot				};
364*2846c905SEmmanuel Vadot			};
365*2846c905SEmmanuel Vadot
366*2846c905SEmmanuel Vadot			i2c-mux@72 {
367*2846c905SEmmanuel Vadot				compatible = "nxp,pca9548";
368*2846c905SEmmanuel Vadot				#address-cells = <1>;
369*2846c905SEmmanuel Vadot				#size-cells = <0>;
370*2846c905SEmmanuel Vadot				reg = <0x72>;
371*2846c905SEmmanuel Vadot				i2c-mux-idle-disconnect;
372*2846c905SEmmanuel Vadot
373*2846c905SEmmanuel Vadot				nvmeslot_4: i2c@4 {
374*2846c905SEmmanuel Vadot					#address-cells = <1>;
375*2846c905SEmmanuel Vadot					#size-cells = <0>;
376*2846c905SEmmanuel Vadot					reg = <0x4>;
377*2846c905SEmmanuel Vadot				};
378*2846c905SEmmanuel Vadot				nvmeslot_5: i2c@5 {
379*2846c905SEmmanuel Vadot					#address-cells = <1>;
380*2846c905SEmmanuel Vadot					#size-cells = <0>;
381*2846c905SEmmanuel Vadot					reg = <0x5>;
382*2846c905SEmmanuel Vadot				};
383*2846c905SEmmanuel Vadot				nvmeslot_6: i2c@6 {
384*2846c905SEmmanuel Vadot					#address-cells = <1>;
385*2846c905SEmmanuel Vadot					#size-cells = <0>;
386*2846c905SEmmanuel Vadot					reg = <0x6>;
387*2846c905SEmmanuel Vadot				};
388*2846c905SEmmanuel Vadot				nvmeslot_7: i2c@7 {
389*2846c905SEmmanuel Vadot					#address-cells = <1>;
390*2846c905SEmmanuel Vadot					#size-cells = <0>;
391*2846c905SEmmanuel Vadot					reg = <0x7>;
392*2846c905SEmmanuel Vadot				};
393*2846c905SEmmanuel Vadot			};
394*2846c905SEmmanuel Vadot
395*2846c905SEmmanuel Vadot			i2c-mux@74 {
396*2846c905SEmmanuel Vadot				compatible = "nxp,pca9548";
397*2846c905SEmmanuel Vadot				#address-cells = <1>;
398*2846c905SEmmanuel Vadot				#size-cells = <0>;
399*2846c905SEmmanuel Vadot				reg = <0x74>;
400*2846c905SEmmanuel Vadot				i2c-mux-idle-disconnect;
401*2846c905SEmmanuel Vadot
402*2846c905SEmmanuel Vadot				ocpslot: i2c@0 {
403*2846c905SEmmanuel Vadot					#address-cells = <1>;
404*2846c905SEmmanuel Vadot					#size-cells = <0>;
405*2846c905SEmmanuel Vadot					reg = <0x0>;
406*2846c905SEmmanuel Vadot
407*2846c905SEmmanuel Vadot					ocpslot_temp: temperature-sensor@1f {
408*2846c905SEmmanuel Vadot						compatible = "ti,tmp421";
409*2846c905SEmmanuel Vadot						reg = <0x1f>;
410*2846c905SEmmanuel Vadot						#address-cells = <1>;
411*2846c905SEmmanuel Vadot						#size-cells = <0>;
412*2846c905SEmmanuel Vadot
413*2846c905SEmmanuel Vadot						channel@0 {
414*2846c905SEmmanuel Vadot							reg = <0x0>;
415*2846c905SEmmanuel Vadot							status = "disabled";
416*2846c905SEmmanuel Vadot						};
417*2846c905SEmmanuel Vadot						channel@1 {
418*2846c905SEmmanuel Vadot							reg = <0x1>;
419*2846c905SEmmanuel Vadot						};
420*2846c905SEmmanuel Vadot					};
421*2846c905SEmmanuel Vadot				};
422*2846c905SEmmanuel Vadot
423*2846c905SEmmanuel Vadot				nvmeslot_0: i2c@4 {
424*2846c905SEmmanuel Vadot					#address-cells = <1>;
425*2846c905SEmmanuel Vadot					#size-cells = <0>;
426*2846c905SEmmanuel Vadot					reg = <0x4>;
427*2846c905SEmmanuel Vadot				};
428*2846c905SEmmanuel Vadot				nvmeslot_1: i2c@5 {
429*2846c905SEmmanuel Vadot					#address-cells = <1>;
430*2846c905SEmmanuel Vadot					#size-cells = <0>;
431*2846c905SEmmanuel Vadot					reg = <0x5>;
432*2846c905SEmmanuel Vadot				};
433*2846c905SEmmanuel Vadot				nvmeslot_2: i2c@6 {
434*2846c905SEmmanuel Vadot					#address-cells = <1>;
435*2846c905SEmmanuel Vadot					#size-cells = <0>;
436*2846c905SEmmanuel Vadot					reg = <0x6>;
437*2846c905SEmmanuel Vadot				};
438*2846c905SEmmanuel Vadot				nvmeslot_3: i2c@7 {
439*2846c905SEmmanuel Vadot					#address-cells = <1>;
440*2846c905SEmmanuel Vadot					#size-cells = <0>;
441*2846c905SEmmanuel Vadot					reg = <0x7>;
442*2846c905SEmmanuel Vadot				};
443*2846c905SEmmanuel Vadot			};
444*2846c905SEmmanuel Vadot		};
445*2846c905SEmmanuel Vadot	};
446*2846c905SEmmanuel Vadot};
447*2846c905SEmmanuel Vadot
448*2846c905SEmmanuel Vadot&i2c6 {
449*2846c905SEmmanuel Vadot	status = "okay";
450*2846c905SEmmanuel Vadot
451*2846c905SEmmanuel Vadot	rtc@51 {
452*2846c905SEmmanuel Vadot		compatible = "nxp,pcf8563";
453*2846c905SEmmanuel Vadot		reg = <0x51>;
454*2846c905SEmmanuel Vadot	};
455*2846c905SEmmanuel Vadot};
456*2846c905SEmmanuel Vadot
457*2846c905SEmmanuel Vadot&i2c7 {
458*2846c905SEmmanuel Vadot	status = "okay";
459*2846c905SEmmanuel Vadot
460*2846c905SEmmanuel Vadot	temperature-sensor@4f {
461*2846c905SEmmanuel Vadot		compatible = "ti,tmp75";
462*2846c905SEmmanuel Vadot		reg = <0x4f>;
463*2846c905SEmmanuel Vadot	};
464*2846c905SEmmanuel Vadot};
465*2846c905SEmmanuel Vadot
466*2846c905SEmmanuel Vadot&i2c8 {
467*2846c905SEmmanuel Vadot	status = "okay";
468*2846c905SEmmanuel Vadot
469*2846c905SEmmanuel Vadot	fan-controller@5c {
470*2846c905SEmmanuel Vadot		compatible = "onnn,adt7462";
471*2846c905SEmmanuel Vadot		reg = <0x5c>;
472*2846c905SEmmanuel Vadot	};
473*2846c905SEmmanuel Vadot};
474*2846c905SEmmanuel Vadot
475*2846c905SEmmanuel Vadot&i2c9 {
476*2846c905SEmmanuel Vadot	status = "okay";
477*2846c905SEmmanuel Vadot
478*2846c905SEmmanuel Vadot	#address-cells = <1>;
479*2846c905SEmmanuel Vadot	#size-cells = <0>;
480*2846c905SEmmanuel Vadot
481*2846c905SEmmanuel Vadot	eeprom@50 {
482*2846c905SEmmanuel Vadot		compatible = "atmel,24c02";
483*2846c905SEmmanuel Vadot		reg = <0x50>;
484*2846c905SEmmanuel Vadot	};
485*2846c905SEmmanuel Vadot
486*2846c905SEmmanuel Vadot	eeprom@52 {
487*2846c905SEmmanuel Vadot		compatible = "atmel,24c02";
488*2846c905SEmmanuel Vadot		reg = <0x52>;
489*2846c905SEmmanuel Vadot	};
490*2846c905SEmmanuel Vadot
491*2846c905SEmmanuel Vadot	temperature-sensor@18 {
492*2846c905SEmmanuel Vadot		compatible = "jedec,jc-42.4-temp";
493*2846c905SEmmanuel Vadot		reg = <0x18>;
494*2846c905SEmmanuel Vadot	};
495*2846c905SEmmanuel Vadot
496*2846c905SEmmanuel Vadot	temperature-sensor@1a {
497*2846c905SEmmanuel Vadot		compatible = "jedec,jc-42.4-temp";
498*2846c905SEmmanuel Vadot		reg = <0x1a>;
499*2846c905SEmmanuel Vadot	};
500*2846c905SEmmanuel Vadot};
501*2846c905SEmmanuel Vadot
502*2846c905SEmmanuel Vadot&i2c10 {
503*2846c905SEmmanuel Vadot	status = "okay";
504*2846c905SEmmanuel Vadot};
505*2846c905SEmmanuel Vadot
506*2846c905SEmmanuel Vadot&i2c11 {
507*2846c905SEmmanuel Vadot	status = "okay";
508*2846c905SEmmanuel Vadot	ssif-bmc@10 {
509*2846c905SEmmanuel Vadot		compatible = "ssif-bmc";
510*2846c905SEmmanuel Vadot		reg = <0x10>;
511*2846c905SEmmanuel Vadot	};
512*2846c905SEmmanuel Vadot};
513*2846c905SEmmanuel Vadot
514*2846c905SEmmanuel Vadot&i2c14 {
515*2846c905SEmmanuel Vadot	status = "okay";
516*2846c905SEmmanuel Vadot	eeprom@50 {
517*2846c905SEmmanuel Vadot		compatible = "atmel,24c64";
518*2846c905SEmmanuel Vadot		reg = <0x50>;
519*2846c905SEmmanuel Vadot		pagesize = <32>;
520*2846c905SEmmanuel Vadot	};
521*2846c905SEmmanuel Vadot
522*2846c905SEmmanuel Vadot	bmc_ast2600_cpu: temperature-sensor@48 {
523*2846c905SEmmanuel Vadot		compatible = "ti,tmp75";
524*2846c905SEmmanuel Vadot		reg = <0x48>;
525*2846c905SEmmanuel Vadot	};
526*2846c905SEmmanuel Vadot};
527*2846c905SEmmanuel Vadot
528*2846c905SEmmanuel Vadot&i2c15 {
529*2846c905SEmmanuel Vadot	status = "okay";
530*2846c905SEmmanuel Vadot	gpio_expander1: gpio-expander@22 {
531*2846c905SEmmanuel Vadot		compatible = "nxp,pca9535";
532*2846c905SEmmanuel Vadot		reg = <0x22>;
533*2846c905SEmmanuel Vadot		gpio-controller;
534*2846c905SEmmanuel Vadot		#gpio-cells = <2>;
535*2846c905SEmmanuel Vadot		gpio-line-names =
536*2846c905SEmmanuel Vadot			"presence-ocp1","presence-ocp2",
537*2846c905SEmmanuel Vadot			"","",
538*2846c905SEmmanuel Vadot			"","",
539*2846c905SEmmanuel Vadot			"","",
540*2846c905SEmmanuel Vadot			"","",
541*2846c905SEmmanuel Vadot			"","",
542*2846c905SEmmanuel Vadot			"","",
543*2846c905SEmmanuel Vadot			"","";
544*2846c905SEmmanuel Vadot	};
545*2846c905SEmmanuel Vadot};
546*2846c905SEmmanuel Vadot
547*2846c905SEmmanuel Vadot&adc0 {
548*2846c905SEmmanuel Vadot	status = "okay";
549*2846c905SEmmanuel Vadot
550*2846c905SEmmanuel Vadot	pinctrl-names = "default";
551*2846c905SEmmanuel Vadot	pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default
552*2846c905SEmmanuel Vadot		&pinctrl_adc2_default>;
553*2846c905SEmmanuel Vadot};
554*2846c905SEmmanuel Vadot
555*2846c905SEmmanuel Vadot&vhub {
556*2846c905SEmmanuel Vadot	status = "okay";
557*2846c905SEmmanuel Vadot};
558*2846c905SEmmanuel Vadot
559*2846c905SEmmanuel Vadot&video {
560*2846c905SEmmanuel Vadot	status = "okay";
561*2846c905SEmmanuel Vadot	memory-region = <&video_engine_memory>;
562*2846c905SEmmanuel Vadot};
563*2846c905SEmmanuel Vadot
564*2846c905SEmmanuel Vadot&gpio0 {
565*2846c905SEmmanuel Vadot	gpio-line-names =
566*2846c905SEmmanuel Vadot	/*A0-A7*/	"","","","","cpu-type-detect","i2c2-reset-n","i2c6-reset-n","i2c5-reset-n",
567*2846c905SEmmanuel Vadot	/*B0-B7*/	"","","","","host0-sysreset-n","host0-pmin-n","fru-rd-complete",
568*2846c905SEmmanuel Vadot			"chassis-id-sel",
569*2846c905SEmmanuel Vadot	/*C0-C7*/	"s0-vrd-fault-n","","bmc-debug-mode","","cpld-3v3-irq-n","","vrd-sel",
570*2846c905SEmmanuel Vadot			"spd-sel",
571*2846c905SEmmanuel Vadot	/*D0-D7*/	"presence-ps0","presence-ps1","hsc-12vmain-alt2-n","ext-high-temp-n",
572*2846c905SEmmanuel Vadot			"","","","",
573*2846c905SEmmanuel Vadot	/*E0-E7*/	"eth-phy-rst-n","eth-phy-int-n","","","","","","",
574*2846c905SEmmanuel Vadot	/*F0-F7*/	"s0-pcp-oc-warn-n","","power-chassis-control",
575*2846c905SEmmanuel Vadot			"cpu-bios-recover","s0-heartbeat","hs-scout-proc-hot","s0-vr-hot-n","",
576*2846c905SEmmanuel Vadot	/*G0-G7*/	"","","hsc-12vmain-alt1-n","","","bp-cpld-program-en","led-fp-sta-gr",
577*2846c905SEmmanuel Vadot			"led-fp-sta-amb",
578*2846c905SEmmanuel Vadot	/*H0-H7*/	"jtag-program-sel","jtag-cmpl2","wd-disable-n","power-chassis-good","","",
579*2846c905SEmmanuel Vadot			"","",
580*2846c905SEmmanuel Vadot	/*I0-I7*/	"","","","","","","power-button","rtc-battery-voltage-read-enable",
581*2846c905SEmmanuel Vadot	/*J0-J7*/	"","","","","","","","",
582*2846c905SEmmanuel Vadot	/*K0-K7*/	"","","","","","","","",
583*2846c905SEmmanuel Vadot	/*L0-L7*/	"","","","","reset-button","","","",
584*2846c905SEmmanuel Vadot	/*M0-M7*/	"nmi-n","s0-ddr-save","soc-spi-nor-access","presence-cpu0","s0-rtc-lock",
585*2846c905SEmmanuel Vadot			"","","",
586*2846c905SEmmanuel Vadot	/*N0-N7*/	"hpm-fw-recovery","hpm-stby-rst-n","jtag-sel-s0","led-sw-hb",
587*2846c905SEmmanuel Vadot			"jtag-dbgr-prsnt-n","","","",
588*2846c905SEmmanuel Vadot	/*O0-O7*/	"","","","","","","","",
589*2846c905SEmmanuel Vadot	/*P0-P7*/	"ps0-ac-loss-n","ps1-ac-loss-n","","","led-fault","user-mode","jtag-srst-n",
590*2846c905SEmmanuel Vadot			"led-bmc-hb",
591*2846c905SEmmanuel Vadot	/*Q0-Q7*/	"","","","","","","","",
592*2846c905SEmmanuel Vadot	/*R0-R7*/	"","","","","","","","",
593*2846c905SEmmanuel Vadot	/*S0-S7*/	"","","identify-button","led-identify","","spi-nor-access","host0-ready","",
594*2846c905SEmmanuel Vadot	/*T0-T7*/	"","","","","","","","",
595*2846c905SEmmanuel Vadot	/*U0-U7*/	"","","","","","","","",
596*2846c905SEmmanuel Vadot	/*V0-V7*/	"s0-hightemp-n","s0-fault-alert","s0-sys-auth-failure-n",
597*2846c905SEmmanuel Vadot			"host0-reboot-ack-n","s0-fw-boot-ok","host0-shd-req-n",
598*2846c905SEmmanuel Vadot			"host0-shd-ack-n","s0-overtemp-n",
599*2846c905SEmmanuel Vadot	/*W0-W7*/	"ocp-aux-pwren","ocp-main-pwren","ocp-pgood","",
600*2846c905SEmmanuel Vadot			"bmc-ok","bmc-ready","spi0-program-sel","spi0-backup-sel",
601*2846c905SEmmanuel Vadot	/*X0-X7*/	"","","","","","","","",
602*2846c905SEmmanuel Vadot	/*Y0-Y7*/	"","","","vrd-prg-en-n","","","","host0-special-boot",
603*2846c905SEmmanuel Vadot	/*Z0-Z7*/	"","ps0-pgood","ps1-pgood","","","","","";
604*2846c905SEmmanuel Vadot
605*2846c905SEmmanuel Vadot	ocp-aux-pwren-hog {
606*2846c905SEmmanuel Vadot		gpio-hog;
607*2846c905SEmmanuel Vadot		gpios = <ASPEED_GPIO(W, 0) GPIO_ACTIVE_HIGH>;
608*2846c905SEmmanuel Vadot		output-high;
609*2846c905SEmmanuel Vadot		line-name = "ocp-aux-pwren";
610*2846c905SEmmanuel Vadot	};
611*2846c905SEmmanuel Vadot
612*2846c905SEmmanuel Vadot};
613*2846c905SEmmanuel Vadot
614*2846c905SEmmanuel Vadot&gpio1 {
615*2846c905SEmmanuel Vadot	gpio-line-names =
616*2846c905SEmmanuel Vadot	/*18A0-18A7*/	"","","","","","","","",
617*2846c905SEmmanuel Vadot	/*18B0-18B7*/	"","","","","s0-soc-pgood","vga-ft-press-n","emmc-rst-n","s01-uart1-sel",
618*2846c905SEmmanuel Vadot	/*18C0-18C7*/	"uart1-mode0","uart1-mode1","uart2-mode0","uart2-mode1",
619*2846c905SEmmanuel Vadot			"","","","",
620*2846c905SEmmanuel Vadot	/*18D0-18D7*/	"","","","","","","","",
621*2846c905SEmmanuel Vadot	/*18E0-18E3*/	"","","","";
622*2846c905SEmmanuel Vadot};
623