xref: /linux/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-yosemite5.dts (revision 0cac5ce06e524755b3dac1e0a060b05992076d93)
1// SPDX-License-Identifier: GPL-2.0+
2// Copyright (c) 2025 Facebook Inc.
3
4/dts-v1/;
5#include "aspeed-g6.dtsi"
6#include <dt-bindings/gpio/aspeed-gpio.h>
7#include <dt-bindings/i2c/i2c.h>
8
9/ {
10	model = "Facebook Yosemite 5 BMC";
11	compatible = "facebook,yosemite5-bmc", "aspeed,ast2600";
12
13	aliases {
14		i2c16 = &i2c5mux0ch0;
15		i2c17 = &i2c5mux0ch1;
16		i2c18 = &i2c5mux0ch2;
17		i2c19 = &i2c5mux0ch3;
18		i2c20 = &i2c5mux1ch0;
19		i2c21 = &i2c5mux1ch1;
20		i2c22 = &i2c5mux1ch2;
21		i2c23 = &i2c5mux1ch3;
22		i2c24 = &i2c6mux0ch0;
23		i2c25 = &i2c6mux0ch1;
24		i2c26 = &i2c6mux0ch2;
25		i2c27 = &i2c6mux0ch3;
26		i2c28 = &i2c8mux0ch0;
27		i2c29 = &i2c8mux0ch1;
28		i2c30 = &i2c8mux0ch2;
29		i2c31 = &i2c8mux0ch3;
30		i2c32 = &i2c30mux0ch0;
31		i2c33 = &i2c30mux0ch1;
32		i2c34 = &i2c30mux0ch2;
33		i2c35 = &i2c30mux0ch3;
34		serial0 = &uart1;
35		serial2 = &uart3;
36		serial3 = &uart4;
37		serial4 = &uart5;
38	};
39
40	chosen {
41		stdout-path = "serial4:57600n8";
42	};
43
44	iio-hwmon {
45		compatible = "iio-hwmon";
46		io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>, <&adc0 3>,
47					  <&adc0 4>, <&adc0 5>, <&adc0 6>, <&adc0 7>,
48					  <&adc1 2>;
49	};
50
51	leds {
52		compatible = "gpio-leds";
53
54		led-0 {
55			label = "bmc_heartbeat_amber";
56			gpios = <&gpio0 ASPEED_GPIO(P, 7) GPIO_ACTIVE_LOW>;
57			linux,default-trigger = "heartbeat";
58		};
59
60		led-1 {
61			label = "fp_id_amber";
62			default-state = "off";
63			gpios = <&gpio0 ASPEED_GPIO(B, 5) GPIO_ACTIVE_HIGH>;
64		};
65
66		led-2 {
67			label = "power_blue";
68			default-state = "off";
69			gpios = <&gpio0 ASPEED_GPIO(P, 4) GPIO_ACTIVE_HIGH>;
70		};
71	};
72
73	memory@80000000 {
74		device_type = "memory";
75		reg = <0x80000000 0x80000000>;
76	};
77
78	spi_gpio: spi {
79		compatible = "spi-gpio";
80		#address-cells = <1>;
81		#size-cells = <0>;
82
83		sck-gpios = <&gpio0 ASPEED_GPIO(Z, 3) GPIO_ACTIVE_HIGH>;
84		mosi-gpios = <&gpio0 ASPEED_GPIO(Z, 4) GPIO_ACTIVE_HIGH>;
85		miso-gpios = <&gpio0 ASPEED_GPIO(Z, 5) GPIO_ACTIVE_HIGH>;
86		cs-gpios = <&gpio0 ASPEED_GPIO(Z, 0) GPIO_ACTIVE_LOW>;
87		num-chipselects = <1>;
88		status = "okay";
89
90		tpm@0 {
91			compatible = "infineon,slb9670", "tcg,tpm_tis-spi";
92			spi-max-frequency = <33000000>;
93			reg = <0>;
94		};
95	};
96};
97
98&adc0 {
99	aspeed,int-vref-microvolt = <2500000>;
100	pinctrl-names = "default";
101	pinctrl-0 = <&pinctrl_adc0_default
102		&pinctrl_adc1_default
103		&pinctrl_adc2_default
104		&pinctrl_adc3_default
105		&pinctrl_adc4_default
106		&pinctrl_adc5_default
107		&pinctrl_adc6_default
108		&pinctrl_adc7_default>;
109	status = "okay";
110};
111
112&adc1 {
113	aspeed,int-vref-microvolt = <2500000>;
114	pinctrl-names = "default";
115	pinctrl-0 = <&pinctrl_adc10_default>;
116	status = "okay";
117};
118
119&ehci0 {
120	status = "okay";
121};
122
123&ehci1 {
124	status = "okay";
125};
126
127&fmc {
128	status = "okay";
129
130	flash@0 {
131		status = "okay";
132		m25p,fast-read;
133		label = "bmc";
134		spi-max-frequency = <50000000>;
135#include "openbmc-flash-layout-128.dtsi"
136	};
137
138	flash@1 {
139		status = "okay";
140		m25p,fast-read;
141		label = "alt-bmc";
142		spi-max-frequency = <50000000>;
143	};
144};
145
146&gpio0 {
147	gpio-line-names =
148	/*A0-A7*/	"","","","","","","","",
149	/*B0-B7*/	"BATTERY_DETECT","","BMC_I2C1_FPGA_ALERT","BMC_READY",
150			"IOEXP_INT_3V3","FM_ID_LED","","",
151	/*C0-C7*/	"","","","",
152			"PMBUS_REQ_N","PSU_FW_UPDATE_REQ_N","","BMC_I2C_SSIF_ALERT",
153	/*D0-D7*/	"","","","","","","","",
154	/*E0-E7*/	"","","","","","","","",
155	/*F0-F7*/	"","","","","","","","",
156	/*G0-G7*/	"FM_BMC_MUX1_SEL","","","",
157			"","","FM_DEBUG_PORT_PRSNT_N","FM_BMC_DBP_PRESENT_N",
158	/*H0-H7*/	"","","","","","","","",
159	/*I0-I7*/	"","","","","","FLASH_WP_STATUS","BMC_JTAG_MUX_SEL","",
160	/*J0-J7*/	"","","","","","","","",
161	/*K0-K7*/	"","","","","","","","",
162	/*L0-L7*/	"","","","","","","","",
163	/*M0-M7*/	"PCIE_EP_RST_EN","BMC_FRU_WP","SCM_HPM_STBY_RST_N",
164			"SCM_HPM_STBY_EN","STBY_POWER_PG_3V3","TH500_SHDN_OK","","",
165	/*N0-N7*/	"led-postcode-0","led-postcode-1","led-postcode-2",
166			"led-postcode-3","led-postcode-4","led-postcode-5",
167			"led-postcode-6","led-postcode-7",
168	/*O0-O7*/	"RUN_POWER_PG","PWR_BRAKE","CHASSIS_AC_LOSS","BSM_PRSNT_N",
169			"PSU_SMB_ALERT","FM_TPM_PRSNT_0_N","PSU_FW_UPDATING_N","",
170	/*P0-P7*/	"PWR_BTN_BMC_N","IPEX_CABLE_PRSNT","ID_RST_BTN_BMC_N",
171			"RST_BMC_RSTBTN_OUT_N","BMC_PWR_LED","RUN_POWER_EN","SHDN_FORCE","",
172	/*Q0-Q7*/	"IRQ_PCH_TPM_SPI_LV3_N","USB_OC0_REAR_N","UART_MUX_SEL",
173			"I2C_MUX_RESET","RSVD_NV_PLT_DETECT","SPI_TPM_INT",
174			"CPU_JTAG_MUX_SELECT","THERM_BB_OVERT",
175	/*R0-R7*/	"THERM_BB_WARN","SPI_BMC_FPGA_INT","CPU_BOOT_DONE","PMBUS_GNT",
176			"CHASSIS_PWR_BRK","PCIE_WAKE","PDB_THERM_OVERT","SHDN_REQ",
177	/*S0-S7*/	"","","SYS_BMC_PWRBTN_N","FM_TPM_PRSNT_1_N",
178			"FM_BMC_DEBUG_SW_N","UID_LED_N","SYS_FAULT_LED_N","RUN_POWER_FAULT",
179	/*T0-T7*/	"","","","","","","","",
180	/*U0-U7*/	"FM_DBP_BMC_PRDY_N","","","","","","","",
181	/*V0-V7*/	"L2_RST_REQ_OUT","L0L1_RST_REQ_OUT","BMC_ID_BEEP_SEL",
182			"BMC_I2C0_FPGA_ALERT","SMB_BMC_TMP_ALERT","PWR_LED_N",
183			"SYS_RST_OUT","IRQ_TPM_SPI_N",
184	/*W0-W7*/	"","","","","","","IRQ_ESPI_LPC_SERIRQ_ALERT0_N","",
185	/*X0-X7*/	"","FM_DBP_CPU_PREQ_GF_N","","","","","","",
186	/*Y0-Y7*/	"","","FM_FLASH_LATCH_N","BMC_EMMC_RST_N","","","","",
187	/*Z0-Z7*/	"","","","","","","","";
188};
189
190&gpio1 {
191	gpio-line-names =
192	/*18A0-18A7*/	"","","","","","","","",
193	/*18B0-18B7*/	"","","","","FM_BOARD_BMC_REV_ID0",
194			"FM_BOARD_BMC_REV_ID1","FM_BOARD_BMC_REV_ID2","",
195	/*18C0-18C7*/	"","","SPI_BMC_BIOS_ROM_IRQ0_N","","","","","",
196	/*18D0-18D7*/	"","","","","","","","",
197	/*18E0-18E3*/	"FM_BMC_PROT_LS_EN","AC_PWR_BMC_BTN_N","","";
198};
199
200/* MB CPLD I2C */
201&i2c0 {
202	status = "okay";
203};
204
205/* CPU I2C */
206&i2c1 {
207	status = "okay";
208};
209
210/* MCIO 2A I2C */
211&i2c2 {
212	status = "okay";
213};
214
215&i2c3 {
216	status = "okay";
217
218	/* Socket 0 SBRMI */
219	sbrmi@3c {
220		compatible = "amd,sbrmi";
221		reg = <0x3c>;
222	};
223
224	/* Socket 0 SBTSI */
225	sbtsi@4c {
226		compatible = "amd,sbtsi";
227		reg = <0x4c>;
228	};
229};
230
231&i2c4 {
232	multi-master;
233	mctp-controller;
234	status = "okay";
235
236	mctp@10 {
237		compatible = "mctp-i2c-controller";
238		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
239	};
240
241	/* OCP NIC TEMP */
242	temperature-sensor@1f {
243		compatible = "ti,tmp421";
244		reg = <0x1f>;
245	};
246
247	/* OCP NIC FRU EEPROM */
248	eeprom@50 {
249		compatible = "atmel,24c64";
250		reg = <0x50>;
251	};
252};
253
254&i2c5 {
255	status = "okay";
256
257	/* I2C MUX for MCIO 1A */
258	i2c-mux@70 {
259		compatible = "nxp,pca9546";
260		reg = <0x70>;
261		#address-cells = <1>;
262		#size-cells = <0>;
263		i2c-mux-idle-disconnect;
264
265		i2c5mux0ch0: i2c@0 {
266			reg = <0>;
267			#address-cells = <1>;
268			#size-cells = <0>;
269		};
270
271		i2c5mux0ch1: i2c@1 {
272			reg = <1>;
273			#address-cells = <1>;
274			#size-cells = <0>;
275		};
276
277		i2c5mux0ch2: i2c@2 {
278			reg = <2>;
279			#address-cells = <1>;
280			#size-cells = <0>;
281		};
282
283		i2c5mux0ch3: i2c@3 {
284			reg = <3>;
285			#address-cells = <1>;
286			#size-cells = <0>;
287		};
288	};
289
290	/* I2C MUX for MCIO 0A */
291	i2c-mux@77 {
292		compatible = "nxp,pca9546";
293		reg = <0x77>;
294		#address-cells = <1>;
295		#size-cells = <0>;
296		i2c-mux-idle-disconnect;
297
298		i2c5mux1ch0: i2c@0 {
299			reg = <0>;
300			#address-cells = <1>;
301			#size-cells = <0>;
302		};
303
304		i2c5mux1ch1: i2c@1 {
305			reg = <1>;
306			#address-cells = <1>;
307			#size-cells = <0>;
308		};
309
310		i2c5mux1ch2: i2c@2 {
311			reg = <2>;
312			#address-cells = <1>;
313			#size-cells = <0>;
314		};
315
316		i2c5mux1ch3: i2c@3 {
317			reg = <3>;
318			#address-cells = <1>;
319			#size-cells = <0>;
320		};
321	};
322};
323
324&i2c6 {
325	status = "okay";
326
327	/* I2C MUX for PWRPIC #13 ~ #16 */
328	i2c-mux@77 {
329		compatible = "nxp,pca9546";
330		reg = <0x77>;
331		#address-cells = <1>;
332		#size-cells = <0>;
333		i2c-mux-idle-disconnect;
334
335		/* PWRPIC #13 */
336		i2c6mux0ch0: i2c@0 {
337			reg = <0>;
338			#address-cells = <1>;
339			#size-cells = <0>;
340		};
341
342		/* PWRPIC #14 */
343		i2c6mux0ch1: i2c@1 {
344			reg = <1>;
345			#address-cells = <1>;
346			#size-cells = <0>;
347		};
348
349		/* PWRPIC #16 */
350		i2c6mux0ch2: i2c@2 {
351			reg = <2>;
352			#address-cells = <1>;
353			#size-cells = <0>;
354		};
355
356		/* PWRPIC #15 */
357		i2c6mux0ch3: i2c@3 {
358			reg = <3>;
359			#address-cells = <1>;
360			#size-cells = <0>;
361		};
362	};
363};
364
365/* SCM CPLD I2C */
366&i2c7 {
367	status = "okay";
368};
369
370&i2c8 {
371	status = "okay";
372
373	power-monitor@14 {
374		compatible = "infineon,xdp710";
375		reg = <0x14>;
376	};
377
378	adc@1d {
379		compatible = "ti,adc128d818";
380		reg = <0x1d>;
381		ti,mode = /bits/ 8 <1>;
382	};
383
384	power-sensor@40 {
385		compatible = "ti,ina238";
386		reg = <0x40>;
387		shunt-resistor = <1000>;
388	};
389
390	/* PADDLE BD IOEXP */
391	gpio-expander@41 {
392		compatible = "nxp,pca9536";
393		reg = <0x41>;
394		gpio-controller;
395		#gpio-cells = <2>;
396		gpio-line-names =
397			"HSC_OC_GPIO0", "HSC_OC_GPIO1",
398			"HSC_OC_GPIO2", "HSC_OC_GPIO3";
399	};
400
401	power-sensor@42 {
402		compatible = "ti,ina238";
403		reg = <0x42>;
404		shunt-resistor = <1000>;
405	};
406
407	power-monitor@43 {
408		compatible = "lltc,ltc4287";
409		reg = <0x43>;
410		shunt-resistor-micro-ohms = <250>;
411	};
412
413	power-sensor@44 {
414		compatible = "ti,ina238";
415		reg = <0x44>;
416		shunt-resistor = <1000>;
417	};
418
419	power-sensor@45 {
420		compatible = "ti,ina238";
421		reg = <0x45>;
422		shunt-resistor = <1000>;
423	};
424
425	power-monitor@47 {
426		compatible = "ti,tps25990";
427		reg = <0x47>;
428		ti,rimon-micro-ohms = <430000000>;
429	};
430
431	temperature-sensor@48 {
432		compatible = "ti,tmp75";
433		reg = <0x48>;
434	};
435
436	temperature-sensor@49 {
437		compatible = "ti,tmp75";
438		reg = <0x49>;
439	};
440
441	/* PDB FRU */
442	eeprom@56 {
443		compatible = "atmel,24c128";
444		reg = <0x56>;
445	};
446
447	/* Paddle BD FRU */
448	eeprom@57 {
449		compatible = "atmel,24c128";
450		reg = <0x57>;
451	};
452
453	power-monitor@58 {
454		compatible = "renesas,isl28022";
455		reg = <0x58>;
456		shunt-resistor-micro-ohms = <1000>;
457	};
458
459	power-monitor@59 {
460		compatible = "renesas,isl28022";
461		reg = <0x59>;
462		shunt-resistor-micro-ohms = <1000>;
463	};
464
465	power-monitor@5a {
466		compatible = "renesas,isl28022";
467		reg = <0x5a>;
468		shunt-resistor-micro-ohms = <1000>;
469	};
470
471	power-monitor@5b {
472		compatible = "renesas,isl28022";
473		reg = <0x5b>;
474		shunt-resistor-micro-ohms = <1000>;
475	};
476
477	psu@5c {
478		compatible = "renesas,raa228006";
479		reg = <0x5c>;
480	};
481
482	fan-controller@5e{
483		compatible = "maxim,max31790";
484		reg = <0x5e>;
485	};
486
487	/* I2C MUX for PWRPIC #1, #2, #11, #12 */
488	i2c-mux@77 {
489		compatible = "nxp,pca9546";
490		reg = <0x77>;
491		#address-cells = <1>;
492		#size-cells = <0>;
493		i2c-mux-idle-disconnect;
494
495		/* PWRPIC #1 */
496		i2c8mux0ch0: i2c@0 {
497			reg = <0>;
498			#address-cells = <1>;
499			#size-cells = <0>;
500		};
501
502		/* PWRPIC #2 */
503		i2c8mux0ch1: i2c@1 {
504			reg = <1>;
505			#address-cells = <1>;
506			#size-cells = <0>;
507		};
508
509		/* PWRPIC #12 (Connector to CXL BD) */
510		i2c8mux0ch2: i2c@2 {
511			reg = <2>;
512			#address-cells = <1>;
513			#size-cells = <0>;
514
515			i2c-mux@70 {
516				compatible = "nxp,pca9546";
517				reg = <0x70>;
518				#address-cells = <1>;
519				#size-cells = <0>;
520				i2c-mux-idle-disconnect;
521
522				i2c30mux0ch0: i2c@0 {
523					reg = <0>;
524					#address-cells = <1>;
525					#size-cells = <0>;
526				};
527
528				i2c30mux0ch1: i2c@1 {
529					reg = <1>;
530					#address-cells = <1>;
531					#size-cells = <0>;
532				};
533
534				i2c30mux0ch2: i2c@2 {
535					reg = <2>;
536					#address-cells = <1>;
537					#size-cells = <0>;
538
539					adc@1e {
540						compatible = "ti,adc128d818";
541						reg = <0x1e>;
542						ti,mode = /bits/ 8 <1>;
543					};
544
545					adc@1f {
546						compatible = "ti,adc128d818";
547						reg = <0x1f>;
548						ti,mode = /bits/ 8 <1>;
549					};
550
551					/* CXL BD IOEXP */
552					gpio-expander@27 {
553						compatible = "nxp,pca9535";
554						reg = <0x27>;
555						gpio-controller;
556						#gpio-cells = <2>;
557						gpio-line-names =
558						"IRQ_TEMP_0_ALERT_N","IRQ_TEMP_1_ALERT_N",
559						"ALERT_PMBUS_0_N","ALERT_PMBUS_1_N",
560						"ALERT_PMBUS_2_N","IRQ_INA230_12V_ALERT_N",
561						"RST_IOX_CXL_N","DEBUG_UART_SEL_0",
562						"DEBUG_UART_SEL_1","BMC_REMOTEJTAG_EN_N",
563						"JTAG_BMC_3V3_CTL_CLR_N","DDR_CH02_I2C_MUX_SEL",
564						"DDR_CH13_I2C_MUX_SEL","SYS_OK",
565						"CXL_VRHOT_ALERT_R1_N","";
566					};
567
568					temperature-sensor@4a {
569						compatible = "ti,tmp75";
570						reg = <0x4a>;
571					};
572
573					temperature-sensor@4c {
574						compatible = "ti,tmp432";
575						reg = <0x4c>;
576					};
577
578					power-sensor@4d {
579						compatible = "ti,ina230";
580						reg = <0x4d>;
581						shunt-resistor = <2000>;
582					};
583
584					temperature-sensor@4e {
585						compatible = "ti,tmp75";
586						reg = <0x4e>;
587					};
588
589					/* CXL FRU */
590					eeprom@50 {
591						compatible = "atmel,24c64";
592						reg = <0x50>;
593					};
594				};
595
596				i2c30mux0ch3: i2c@3 {
597					reg = <3>;
598					#address-cells = <1>;
599					#size-cells = <0>;
600				};
601			};
602		};
603
604		/* PWRPIC #11 */
605		i2c8mux0ch3: i2c@3 {
606			#address-cells = <1>;
607			#size-cells = <0>;
608			reg = <3>;
609		};
610	};
611};
612
613&i2c9 {
614	status = "okay";
615
616	temperature-sensor@4b {
617		compatible = "ti,tmp75";
618		reg = <0x4b>;
619	};
620
621	/* SCM FRU */
622	eeprom@50 {
623		compatible = "atmel,24c128";
624		reg = <0x50>;
625	};
626
627	/* BSM FRU */
628	eeprom@56 {
629		compatible = "atmel,24c64";
630		reg = <0x56>;
631	};
632};
633
634/* MCIO 0A I2C */
635&i2c10 {
636	status = "okay";
637
638	/* E1S EB IOEXP0 */
639	gpio-expander@21 {
640		compatible = "nxp,pca9535";
641		interrupt-parent = <&sgpiom0>;
642		interrupts = <172 IRQ_TYPE_EDGE_FALLING>;
643		reg = <0x21>;
644		gpio-controller;
645		#gpio-cells = <2>;
646		gpio-line-names =
647			"RST_SMB_E1S_0","LED_ACTIVE_E1S_0",
648			"E1S_0_PRSNT_N","RST_PCIE_E1S_0_PERST",
649			"E1S_0_PWRDIS","ALERT_INA_0",
650			"","",
651			"RST_SMB_E1S_1","LED_ACTIVE_E1S_1",
652			"E1S_1_PRSNT_N","RST_PCIE_E1S_1_PERST",
653			"E1S_1_PWRDIS","ALERT_INA_1",
654			"","";
655	};
656
657	/* E1S EB IOEXP1 */
658	gpio-expander@22 {
659		compatible = "nxp,pca9535";
660		interrupt-parent = <&sgpiom0>;
661		interrupts = <174 IRQ_TYPE_EDGE_FALLING>;
662		reg = <0x22>;
663		gpio-controller;
664		#gpio-cells = <2>;
665		gpio-line-names =
666			"P12V_E1S_EN_0","PWRGD_P12V_E1S_0",
667			"P12V_E1S_FLTB_0","PWRGD_P3V3_E1S_0",
668			"FM_P3V3_E1S_0_FAULT","P12V_E1S_EN_1",
669			"PWRGD_P12V_E1S_1","P12V_E1S_FLTB_1",
670			"PWRGD_P3V3_E1S_1","FM_P3V3_E1S_1_FAULT",
671			"","",
672			"","",
673			"PWRGD_P3V3_AUX","ALERT_TEMP";
674	};
675
676	power-sensor@40 {
677		compatible = "ti,ina233";
678		reg = <0x40>;
679		shunt-resistor = <2000>;
680		ti,maximum-expected-current-microamp = <32768000>;
681	};
682
683	power-sensor@45 {
684		compatible = "ti,ina233";
685		reg = <0x45>;
686		shunt-resistor = <2000>;
687		ti,maximum-expected-current-microamp = <32768000>;
688	};
689
690	adc@48 {
691		compatible = "ti,ads7830";
692		reg = <0x48>;
693	};
694
695	temperature-sensor@49 {
696		compatible = "ti,tmp75";
697		reg = <0x49>;
698	};
699
700	/* E1S EB FRU */
701	eeprom@54 {
702		compatible = "atmel,24c128";
703		reg = <0x54>;
704	};
705};
706
707&i2c11 {
708	status = "okay";
709
710	/* MB IOEXP */
711	gpio-expander@21 {
712		compatible = "nxp,pca9535";
713		interrupt-parent = <&sgpiom0>;
714		interrupts = <170 IRQ_TYPE_EDGE_FALLING>;
715		reg = <0x21>;
716		gpio-controller;
717		#gpio-cells = <2>;
718		gpio-line-names =
719			"ALERT_CLKMUX_0_LOSS_N","ALERT_CLKMUX_1_LOSS_N",
720			"ALERT_CLKMUX_2_LOSS_N","ALERT_CLKMUX_3_LOSS_N",
721			"FM_CLKMUX_0_SEL","FM_CLKMUX_1_SEL",
722			"FM_CLKMUX_2_SEL","FM_CLKMUX_3_SEL",
723			"RST_USB_HUB_0_N","FM_CLKGEN_GPIO2",
724			"","FM_BMC_RTC_RST",
725			"FM_P3V_BAT_SCALED_EN","",
726			"FM_CLKGEN_GPIO4","RST_USB_HUB_1_N";
727	};
728
729	power-sensor@40 {
730		compatible = "ti,ina230";
731		reg = <0x40>;
732		shunt-resistor = <2000>;
733	};
734
735	power-sensor@41 {
736		compatible = "ti,ina230";
737		reg = <0x41>;
738		shunt-resistor = <2000>;
739	};
740
741	power-sensor@42 {
742		compatible = "ti,ina230";
743		reg = <0x42>;
744		shunt-resistor = <2000>;
745	};
746
747	power-sensor@43 {
748		compatible = "ti,ina230";
749		reg = <0x43>;
750		shunt-resistor = <2000>;
751	};
752
753	power-sensor@44 {
754		compatible = "ti,ina230";
755		reg = <0x44>;
756		shunt-resistor = <2000>;
757	};
758
759	power-sensor@45 {
760		compatible = "ti,ina230";
761		reg = <0x45>;
762		shunt-resistor = <2000>;
763	};
764
765	adc@48 {
766		compatible = "ti,ads7830";
767		reg = <0x48>;
768	};
769
770	adc@49 {
771		compatible = "ti,ads7830";
772		reg = <0x49>;
773	};
774
775	adc@4b {
776		compatible = "ti,ads7830";
777		reg = <0x4b>;
778	};
779};
780
781/* MCIO 4A I2C */
782&i2c12 {
783	multi-master;
784	mctp-controller;
785	status = "okay";
786
787	mctp@10 {
788		compatible = "mctp-i2c-controller";
789		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
790	};
791};
792
793&i2c13 {
794	status = "okay";
795
796	power-sensor@40 {
797		compatible = "ti,ina230";
798		reg = <0x40>;
799		shunt-resistor = <2000>;
800	};
801
802	power-sensor@41 {
803		compatible = "ti,ina230";
804		reg = <0x41>;
805		shunt-resistor = <2000>;
806	};
807
808	power-sensor@44 {
809		compatible = "ti,ina230";
810		reg = <0x44>;
811		shunt-resistor = <2000>;
812	};
813
814	power-sensor@45 {
815		compatible = "ti,ina230";
816		reg = <0x45>;
817		shunt-resistor = <2000>;
818	};
819
820	temperature-sensor@48 {
821		compatible = "national,lm75b";
822		reg = <0x48>;
823	};
824
825	temperature-sensor@49 {
826		compatible = "national,lm75b";
827		reg = <0x49>;
828	};
829
830	/* CLKGEN FRU */
831	eeprom@50 {
832		compatible = "atmel,24c16";
833		reg = <0x50>;
834	};
835
836	/* MB FRU */
837	eeprom@51 {
838		compatible = "atmel,24c128";
839		reg = <0x51>;
840	};
841
842	/* CPU FRU */
843	eeprom@53 {
844		compatible = "atmel,24c128";
845		reg = <0x53>;
846	};
847
848	rtc@68 {
849		compatible = "dallas,ds1339";
850		reg = <0x68>;
851	};
852};
853
854/* PROT reserve */
855&i2c14 {
856	status = "okay";
857};
858
859/* MCIO 3A I2C */
860&i2c15 {
861	status = "okay";
862};
863
864&kcs2 {
865	aspeed,lpc-io-reg = <0xca8>;
866	status = "okay";
867};
868
869&kcs3 {
870	aspeed,lpc-io-reg = <0xca2>;
871	status = "okay";
872};
873
874&mac2 {
875	pinctrl-names = "default";
876	pinctrl-0 = <&pinctrl_ncsi3_default>;
877	use-ncsi;
878	status = "okay";
879};
880
881&pinctrl {
882	pinctrl_ncsi3_default: ncsi3_default {
883		function = "RMII3";
884		groups = "NCSI3";
885	};
886};
887
888&sgpiom0 {
889	ngpios = <128>;
890	bus-frequency = <2000000>;
891	gpio-line-names =
892	/*"input pin","output pin"*/
893	/*bit0-bit7*/
894	"PWRGD_CPU_PWROK","SGPIO_RSTBTN_OUT",
895	"PWRGD_CPU_PWROK_1","SGPIO_BMC_READY",
896	"PWRGD_CPU_PWROK_2","IBB_BMC_SRST",
897	"host0-ready","FM_I3C_SPD_AH_SEL_R",
898	"PCIe_HP_BOOT","FM_I3C_SPD_IP_SEL_R",
899	"PCIe_HP_DATA","FM_JTAG_BMC_MUX_S0_R",
900	"PCIe_HP_NIC","FM_JTAG_BMC_MUX_S1_R",
901	"","FM_JTAG_BMC_OE_1_R_N",
902	/*bit8-bit15*/
903	"PWRGD_PVDDCR_CPU0_P0","FM_JTAG_BMC_OE_R_N",
904	"PWRGD_PVDDCR_SOC_P0","FM_REMOTEJTAG_EN_R_N",
905	"PWRGD_PVDDCR_CPU1_P0","FM_CPU_FORCE_SELFREFRESH_R",
906	"PWRGD_P3V3_STBY","FM_CPU_NMI_SYNC_FLOOD_R_N",
907	"PWRGD_PVDD33_S5","FM_CPU_TRIGGERTSC_OE_R_N",
908	"PWRGD_PVDD18_S5_P0","FM_PASSWORD_CLEAR_R_N",
909	"PWRGD_PVDDIO_P0","FM_BIOS_USB_RECOVERY_N",
910	"PWRGD_PVDDIO_MEM_S3_P0","FM_USB_MUX_OE_R_N",
911	/*bit16-bit23*/
912	"PWRGD_P1V8_STBY","FM_USB_MUX_SEL_R",
913	"PWRGD_P1V0_STBY","RST_SMB_BOOT_R_N",
914	"PWRGD_P1V2_STBY","RST_SMB_MCIO0A_R_N",
915	"IBB_BMC_SRST","RST_SMB_NIC_R_N",
916	"PWRGD_P12V_E1S_0","FM_PPS_NIC_IN_BUF_OE_R_N",
917	"PWRGD_P12V_E1S_1","FM_PPS_NIC_IN_EN_R",
918	"RST_PCIE_BOOT_PERST_N","FM_PPS_NIC_IN_OE_R_N",
919	"PWRGD_P12V_NIC","FM_PPS_NIC_IN_S0_R",
920	/*bit24-bit31*/
921	"PWRGD_P12V_SCM","FM_PPS_NIC_IN_S1_R",
922	"PWRGD_P12V_DIMM","FM_PPS_NIC_OUT_BUF_OE_R_N",
923	"PWRGD_CPU_DIMM0_AH","FM_PPS_NIC_OUT_CPU_OE_R_N",
924	"PWRGD_CPU_DIMM1_IP","FM_PPS_NIC_OUT_EN_R",
925	"PWRGD_NIC_CPLD","JTAG_CPLD_DBREQ_R_N",
926	"ALERT_INA230_DIMM_0_N","HDT_HDR_RESET_R_N",
927	"ALERT_INA230_DIMM_1_N","FM_SMB_AUTH_MUX_OE_R_N",
928	"ALERT_INA230_E1S_0_N","FM_SCM_LED_R_N",
929	/*bit32-bit39*/
930	"ALERT_INA230_E1S_1_N","",
931	"ALERT_INA230_FAN0_N","",
932	"ALERT_INA230_FAN1_N","",
933	"ALERT_INA230_FAN2_N","",
934	"ALERT_INA230_FAN3_N","",
935	"ALERT_INA230_NIC_N","",
936	"ALERT_INA230_SCM_N","",
937	"ALERT_IRQ_PMBUS_PWR11_N","",
938	/*bit40-bit47*/
939	"ALERT_MCIO2A_LEAK_DETECT_N","",
940	"ALERT_MCIO3A_LEAK_DETECT_N","",
941	"ALERT_MCIO4A_LEAK_DETECT_N","",
942	"ALERT_OC_PADDLE2_N","",
943	"ALERT_OC_PWR2_N","",
944	"ALERT_OC_PWR11_N","",
945	"ALERT_PADDLE2_SMB_N","",
946	"ALERT_PWR14_SB2_LEAK_DETECT_N","",
947	/*bit48-bit55*/
948	"ALERT_PWR14_SB3_LEAK_DETECT_N","",
949	"ALERT_PWR15_SB2_LEAK_DETECT_N","",
950	"ALERT_PWR15_SB3_LEAK_DETECT_N","",
951	"ALERT_SMB_MCIO0A_N","",
952	"ALERT_SMB_MCIO1A_N","",
953	"ALERT_SMB_MCIO2A_N","",
954	"ALERT_SMB_MCIO2B_N","",
955	"ALERT_SMB_MCIO3A_N","",
956	/*bit56-bit63*/
957	"ALERT_SMB_MCIO3B_N","",
958	"ALERT_SMB_MCIO4A_N","",
959	"ALERT_SMB_MCIO4B_N","",
960	"ALERT_THERMALTRIP_MCIO1A_N","",
961	"ALERT_THERMALTRIP_MCIO2A_N","",
962	"ALERT_THERMALTRIP_MCIO3A_N","",
963	"ALERT_THERMALTRIP_MCIO4A_N","",
964	"ALERT_UV_PADDLE2_N","",
965	/*bit64-bit71*/
966	"ALERT_UV_PWR2_N","",
967	"ALERT_UV_PWR11_N","",
968	"ALERT_VR_SMB_N","",
969	"FAULT_FAN_0_N","",
970	"FAULT_FAN_1_N","",
971	"FAULT_FAN_2_N","",
972	"FAULT_FAN_3_N","",
973	"FAULT_P3V3_E1S_0_N","",
974	/*bit72-bit79*/
975	"FAULT_P3V3_E1S_1_N","",
976	"FAULT_P3V3_NIC_N","",
977	"FAULT_P12V_NIC_N","",
978	"FAULT_P12V_SCM_N","",
979	"P0_I3C_APML_ALERT_L","",
980	"ALERT_INLET_TEMP_N","",
981	"FM_CPU_PROCHOT_R_N","",
982	"FM_CPU_THERMTRIP_N","",
983	/*bit80-bit87*/
984	"ALERT_OUTLET_TEMP_N","",
985	"ALERT_RTC_N","",
986	"PVDDCR_CPU0_P0_OCP_N","",
987	"PVDDCR_CPU1_P0_OCP_N","",
988	"PVDDCR_SOC_P0_OCP_N","",
989	"MB_IOEXP_INT","",
990	"E1S_0_BD_IOEXP","",
991	"E1S_1_BD_IOEXP","",
992	/*bit88-bit95*/
993	"PADDLE_BD_IOEXP_INT","",
994	"FM_BOARD_REV_ID0","",
995	"FM_BOARD_REV_ID1","",
996	"FM_BOARD_REV_ID2","",
997	"FM_VR_TYPE_ID0","",
998	"FM_VR_TYPE_ID1","",
999	"PRSNT_BOOT_N_IOEXP","",
1000	"PRSNT_DATA_N_IOEXP","",
1001	/*bit96-bit103*/
1002	"PRSNT_NIC_N_IOEXP","",
1003	"PRSNT_BOOT_N_FF","",
1004	"PRSNT_MCIO1A_N_FF","",
1005	"NIC_PRSNT_N","",
1006	"","",
1007	"","",
1008	"","",
1009	"","",
1010	/*bit104-bit111*/
1011	"","","","","","","","","","","","","","","","",
1012	/*bit112-bit119*/
1013	"","","","","","","","","","","","","","","","",
1014	/*bit120-bit127*/
1015	"","","","","","","","","","","","","","","","";
1016	status = "okay";
1017};
1018
1019/* BIOS Flash */
1020&spi2 {
1021	pinctrl-names = "default";
1022	pinctrl-0 = <&pinctrl_spi2_default>;
1023	status = "okay";
1024
1025	flash@0 {
1026		m25p,fast-read;
1027		label = "pnor";
1028		spi-max-frequency = <12000000>;
1029		spi-tx-bus-width = <2>;
1030		spi-rx-bus-width = <2>;
1031		status = "okay";
1032	};
1033};
1034
1035/* Host Console */
1036&uart1 {
1037	status = "okay";
1038};
1039
1040&uart2 {
1041	status = "okay";
1042};
1043
1044/* SOL */
1045&uart3 {
1046	status = "okay";
1047};
1048
1049&uart4 {
1050	status = "okay";
1051};
1052
1053/* BMC Console */
1054&uart5 {
1055	status = "okay";
1056};
1057
1058&wdt1 {
1059	pinctrl-names = "default";
1060	pinctrl-0 = <&pinctrl_wdtrst1_default>;
1061	aspeed,reset-type = "soc";
1062	aspeed,external-signal;
1063	aspeed,ext-push-pull;
1064	aspeed,ext-active-high;
1065	aspeed,ext-pulse-duration = <256>;
1066	status = "okay";
1067};
1068