xref: /linux/scripts/dtc/include-prefixes/arm/aspeed/aspeed-bmc-facebook-santabarbara.dts (revision 115e74a29b530d121891238e9551c4bcdf7b04b5)
1// SPDX-License-Identifier: GPL-2.0-or-later
2// Copyright 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 Santabarbara BMC";
11	compatible = "facebook,santabarbara-bmc", "aspeed,ast2600";
12
13	aliases {
14		serial0 = &uart1;
15		serial2 = &uart3;
16		serial3 = &uart4;
17		serial4 = &uart5;
18		i2c16 = &i2c4mux0ch0;
19		i2c17 = &i2c4mux0ch1;
20		i2c18 = &i2c4mux0ch2;
21		i2c19 = &i2c4mux0ch3;
22		i2c20 = &i2c4mux0ch4;
23		i2c21 = &i2c4mux0ch5;
24		i2c22 = &i2c4mux0ch6;
25		i2c23 = &i2c4mux0ch7;
26		i2c24 = &i2c5mux0ch0;
27		i2c25 = &i2c5mux0ch1;
28		i2c26 = &i2c5mux0ch2;
29		i2c27 = &i2c5mux0ch3;
30		i2c28 = &i2c5mux1ch0;
31		i2c29 = &i2c5mux1ch1;
32		i2c30 = &i2c5mux1ch2;
33		i2c31 = &i2c5mux1ch3;
34		i2c32 = &i2c12mux0ch0;
35		i2c33 = &i2c12mux0ch1;
36		i2c34 = &i2c12mux0ch2;
37		i2c35 = &i2c12mux0ch3;
38		i2c36 = &i2c12mux0ch4;
39		i2c37 = &i2c12mux0ch5;
40		i2c38 = &i2c12mux0ch6;
41		i2c39 = &i2c12mux0ch7;
42	};
43
44	chosen {
45		stdout-path = "serial4:57600n8";
46	};
47
48	iio-hwmon {
49		compatible = "iio-hwmon";
50		io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>, <&adc0 3>,
51			      <&adc0 4>, <&adc0 5>, <&adc0 6>, <&adc0 7>,
52			      <&adc1 2>;
53	};
54
55	leds {
56		compatible = "gpio-leds";
57
58		led-0 {
59			label = "bmc_heartbeat_amber";
60			gpios = <&gpio0 ASPEED_GPIO(P, 7) GPIO_ACTIVE_LOW>;
61			linux,default-trigger = "heartbeat";
62		};
63
64		led-1 {
65			label = "fp_id_amber";
66			default-state = "off";
67			gpios = <&gpio0 ASPEED_GPIO(B, 5) GPIO_ACTIVE_HIGH>;
68		};
69
70		led-2 {
71			label = "power_blue";
72			default-state = "off";
73			gpios = <&gpio0 ASPEED_GPIO(P, 4) GPIO_ACTIVE_HIGH>;
74		};
75	};
76
77	memory@80000000 {
78		device_type = "memory";
79		reg = <0x80000000 0x80000000>;
80	};
81
82	p3v3_bmc_aux: regulator-p3v3-bmc-aux {
83		compatible = "regulator-fixed";
84		regulator-name = "p3v3_bmc_aux";
85		regulator-min-microvolt = <3300000>;
86		regulator-max-microvolt = <3300000>;
87		regulator-always-on;
88	};
89
90	spi_gpio: spi {
91		compatible = "spi-gpio";
92		#address-cells = <1>;
93		#size-cells = <0>;
94
95		sck-gpios = <&gpio0 ASPEED_GPIO(Z, 3) GPIO_ACTIVE_HIGH>;
96		mosi-gpios = <&gpio0 ASPEED_GPIO(Z, 4) GPIO_ACTIVE_HIGH>;
97		miso-gpios = <&gpio0 ASPEED_GPIO(Z, 5) GPIO_ACTIVE_HIGH>;
98		num-chipselects = <1>;
99		cs-gpios = <&gpio0 ASPEED_GPIO(Z, 0) GPIO_ACTIVE_LOW>;
100		status = "okay";
101
102		tpm@0 {
103			compatible = "infineon,slb9670", "tcg,tpm_tis-spi";
104			spi-max-frequency = <33000000>;
105			reg = <0>;
106		};
107	};
108};
109
110&adc0 {
111	aspeed,int-vref-microvolt = <2500000>;
112	pinctrl-names = "default";
113	pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default
114		&pinctrl_adc2_default &pinctrl_adc3_default
115		&pinctrl_adc4_default &pinctrl_adc5_default
116		&pinctrl_adc6_default &pinctrl_adc7_default>;
117	status = "okay";
118};
119
120&adc1 {
121	aspeed,int-vref-microvolt = <2500000>;
122	pinctrl-names = "default";
123	pinctrl-0 = <&pinctrl_adc10_default>;
124	status = "okay";
125};
126
127&ehci0 {
128	status = "okay";
129};
130
131&ehci1 {
132	status = "okay";
133};
134
135&fmc {
136	status = "okay";
137
138	flash@0 {
139		status = "okay";
140		m25p,fast-read;
141		label = "bmc";
142		spi-max-frequency = <50000000>;
143#include "openbmc-flash-layout-128.dtsi"
144	};
145
146	flash@1 {
147		status = "okay";
148		m25p,fast-read;
149		label = "alt-bmc";
150		spi-max-frequency = <50000000>;
151	};
152};
153
154&gpio0 {
155	gpio-line-names =
156	/*A0-A7*/	"","","","","","","","",
157	/*B0-B7*/	"rtc-battery-voltage-read-enable","","","BMC_READY",
158			"","led-identify","","",
159	/*C0-C7*/	"","","","","","","","",
160	/*D0-D7*/	"","","","","","","","",
161	/*E0-E7*/	"","","","","","","","",
162	/*F0-F7*/	"","","","","","","","",
163	/*G0-G7*/	"FM_MUX1_SEL_R","","","","","","","",
164	/*H0-H7*/	"","","","","","","","",
165	/*I0-I7*/	"","","","","","","","",
166	/*J0-J7*/	"","","","","","","","",
167	/*K0-K7*/	"","","","","","","","",
168	/*L0-L7*/	"","","","","","","","",
169	/*M0-M7*/	"","","","","","","","",
170	/*N0-N7*/	"led-postcode-0","led-postcode-1",
171			"led-postcode-2","led-postcode-3",
172			"led-postcode-4","led-postcode-5",
173			"led-postcode-6","led-postcode-7",
174	/*O0-O7*/	"","","","","","","","",
175	/*P0-P7*/	"power-button","","reset-button","",
176			"led-power","","","",
177	/*Q0-Q7*/	"","","","","","","","",
178	/*R0-R7*/	"","","","","","","","",
179	/*S0-S7*/	"","","power-host-control","","","","","",
180	/*T0-T7*/	"","","","","","","","",
181	/*U0-U7*/	"","","","","","","","",
182	/*V0-V7*/	"","","","","","","","",
183	/*W0-W7*/	"","","","","","","","",
184	/*X0-X7*/	"","","","","","","","",
185	/*Y0-Y7*/	"","","","","","","","",
186	/*Z0-Z7*/	"","","","","","","","";
187};
188
189&gpio1 {
190	gpio-line-names =
191	/*18A0-18A7*/	"","","","","","","","",
192	/*18B0-18B7*/	"","","","",
193				"FM_BOARD_BMC_REV_ID0","FM_BOARD_BMC_REV_ID1",
194				"FM_BOARD_BMC_REV_ID2","",
195	/*18C0-18C7*/	"SPI_BMC_BIOS_ROM_IRQ0_R_N","","","","","","","",
196	/*18D0-18D7*/	"","","","","","","","",
197	/*18E0-18E3*/	"FM_BMC_PROT_LS_EN","AC_PWR_BMC_BTN_R_N","","";
198};
199
200&i2c0 {
201	status = "okay";
202
203	// MB FRU
204	eeprom@53 {
205		compatible = "atmel,24c128";
206		reg = <0x53>;
207	};
208
209	rtc@68 {
210		compatible = "dallas,ds1339";
211		reg = <0x68>;
212	};
213};
214
215&i2c1 {
216	status = "okay";
217
218	gpio@20 {
219		compatible = "nxp,pca9555";
220		reg = <0x20>;
221		gpio-controller;
222		#gpio-cells = <2>;
223		interrupt-parent = <&sgpiom0>;
224		interrupts = <112 IRQ_TYPE_LEVEL_LOW>;
225		gpio-line-names =
226			"FM_NIC_PPS_IN_OE_N","FM_NIC_PPS_OUT_OE_N",
227			"FM_CPU0_TRIGGERTSC_OE_N","FM_NIC_PPS_IN_MUX_OE_N",
228			"FM_CPU0_CORETYPE0","FM_CPU0_CORETYPE1",
229			"FM_CPU0_CORETYPE2","FM_NIC_PPS_OUT_MUX_OE",
230			"CLKMUX_INPUT_LOSS_U45_R_N","FM_CPU0_SP7R1",
231			"FM_CPU0_SP7R2","FM_CPU0_SP7R3",
232			"FM_CPU0_SP7R4","",
233			"FM_NIC_PPS_IN_S0_R","FM_NIC_PPS_IN_S1_R";
234	};
235
236	fan-controller@21{
237		compatible = "maxim,max31790";
238		reg = <0x21>;
239	};
240
241	gpio@22 {
242		compatible = "nxp,pca9555";
243		reg = <0x22>;
244		gpio-controller;
245		#gpio-cells = <2>;
246		interrupt-parent = <&sgpiom0>;
247		interrupts = <116 IRQ_TYPE_LEVEL_LOW>;
248		gpio-line-names =
249			"FM_CBL_PRSNT_0A_N","FM_CBL_PRSNT_0B_N",
250			"FM_CBL_PRSNT_1A_N","FM_CBL_PRSNT_1B_N",
251			"FM_MODULE_PWRGD_0A","FM_MODULE_PWRGD_0B",
252			"CLKMUX_INPUT_LOSS_U88_R_N","FM_MODULE_PWRGD_1B",
253			"","",
254			"CLKMUX_INPUT_LOSS_U83_R_N","CLKMUX_INPUT_LOSS_U84_R_N",
255			"FM_P3V3_E1S_0_FAULT_R_N","FM_P3V3_E1S_1_FAULT_R_N",
256			"E1S_0_P12V_ADC_R_ALERT","E1S_1_P12V_ADC_R_ALERT";
257	};
258
259	gpio@24 {
260		compatible = "nxp,pca9555";
261		reg = <0x24>;
262		gpio-controller;
263		#gpio-cells = <2>;
264		interrupt-parent = <&sgpiom0>;
265		interrupts = <114 IRQ_TYPE_LEVEL_LOW>;
266		gpio-line-names =
267			"FM_CBL_PRSNT_2A_N","FM_CBL_PRSNT_2B_N",
268			"FM_CBL_PRSNT_3A_N","FM_CBL_PRSNT_3B_N",
269			"FM_CBL_PRSNT_4A_N","FM_CBL_PRSNT_4B_N",
270			"FM_P3V3_NIC_400G_FAULT_R_N","FM_MODULE_PWRGD_2B",
271			"OCP_SFF_P12V_ADC_R_ALERT","FM_MODULE_PWRGD_3B",
272			"FM_THERMAL_ALERT_R_N","FM_MODULE_PWRGD_4B",
273			"FM_CBL_PRSNT_OSFP_A_N","FM_CBL_PRSNT_OSFP_B_N",
274			"FM_JTAG_MCIO_MUX_S0","FM_JTAG_MCIO_MUX_S1";
275	};
276
277	gpio@26 {
278		compatible = "nxp,pca9555";
279		reg = <0x26>;
280		gpio-controller;
281		#gpio-cells = <2>;
282		interrupt-parent = <&sgpiom0>;
283		interrupts = <118 IRQ_TYPE_LEVEL_LOW>;
284		gpio-line-names =
285			"FAN_0_PRSNT_R1_N","FAN_1_PRSNT_R1_N",
286			"FAN_2_PRSNT_R1_N","FAN_3_PRSNT_R1_N",
287			"P12V_FAN_0_ADC_ALERT","P12V_FAN_1_ADC_ALERT",
288			"P12V_FAN_2_ADC_ALERT","P12V_FAN_3_ADC_ALERT",
289			"P12V_FAN0_PWRGD_R","P12V_FAN1_PWRGD_R",
290			"P12V_FAN2_PWRGD_R","P12V_FAN3_PWRGD_R",
291			"","","","";
292	};
293};
294
295&i2c4 {
296	status = "okay";
297
298	i2c-mux@70 {
299		compatible = "nxp,pca9548";
300		reg = <0x70>;
301		#address-cells = <1>;
302		#size-cells = <0>;
303		i2c-mux-idle-disconnect;
304
305		i2c4mux0ch0: i2c@0 {
306			reg = <0>;
307			#address-cells = <1>;
308			#size-cells = <0>;
309
310			// HPM Board ID EEPROM
311			eeprom@51 {
312				compatible = "atmel,24c128";
313				reg = <0x51>;
314			};
315
316			// SCM Board ID EEPROM
317			eeprom@53 {
318				compatible = "atmel,24c128";
319				reg = <0x53>;
320			};
321		};
322		i2c4mux0ch1: i2c@1 {
323			reg = <1>;
324			#address-cells = <1>;
325			#size-cells = <0>;
326		};
327		i2c4mux0ch2: i2c@2 {
328			reg = <2>;
329			#address-cells = <1>;
330			#size-cells = <0>;
331		};
332		i2c4mux0ch3: i2c@3 {
333			reg = <3>;
334			#address-cells = <1>;
335			#size-cells = <0>;
336
337			power-monitor@40 {
338				compatible = "ti,ina230";
339				reg = <0x40>;
340				shunt-resistor = <2000>;
341			};
342
343			power-monitor@42 {
344				compatible = "ti,ina230";
345				reg = <0x42>;
346				shunt-resistor = <2000>;
347			};
348
349			power-monitor@44 {
350				compatible = "ti,ina230";
351				reg = <0x44>;
352				shunt-resistor = <2000>;
353			};
354
355			power-monitor@46 {
356				compatible = "ti,ina230";
357				reg = <0x46>;
358				shunt-resistor = <2000>;
359			};
360
361			voltage-sensor@48 {
362				compatible = "ti,ads7830";
363				reg = <0x48>;
364				vref-supply = <&p3v3_bmc_aux>;
365			};
366
367			voltage-sensor@4a {
368				compatible = "ti,ads7830";
369				reg = <0x4a>;
370				vref-supply = <&p3v3_bmc_aux>;
371			};
372
373			temperature-sensor@4c {
374				compatible = "ti,tmp75";
375				reg = <0x4c>;
376			};
377
378			temperature-sensor@4e {
379				compatible = "ti,tmp75";
380				reg = <0x4e>;
381			};
382		};
383		i2c4mux0ch4: i2c@4 {
384			reg = <4>;
385			#address-cells = <1>;
386			#size-cells = <0>;
387		};
388		i2c4mux0ch5: i2c@5 {
389			reg = <5>;
390			#address-cells = <1>;
391			#size-cells = <0>;
392		};
393		i2c4mux0ch6: i2c@6 {
394			reg = <6>;
395			#address-cells = <1>;
396			#size-cells = <0>;
397
398			power-monitor@40 {
399				compatible = "ti,ina230";
400				reg = <0x40>;
401				shunt-resistor = <2000>;
402			};
403
404			power-monitor@42 {
405				compatible = "ti,ina230";
406				reg = <0x42>;
407				shunt-resistor = <2000>;
408			};
409
410			power-monitor@44 {
411				compatible = "ti,ina230";
412				reg = <0x44>;
413				shunt-resistor = <2000>;
414			};
415
416			power-monitor@46 {
417				compatible = "ti,ina230";
418				reg = <0x46>;
419				shunt-resistor = <2000>;
420			};
421
422			voltage-sensor@48 {
423				compatible = "ti,ads7830";
424				reg = <0x48>;
425			};
426		};
427		i2c4mux0ch7: i2c@7 {
428			reg = <7>;
429			#address-cells = <1>;
430			#size-cells = <0>;
431
432			temperature-sensor@4b {
433				compatible = "ti,tmp75";
434				reg = <0x4b>;
435			};
436
437			temperature-sensor@4f {
438				compatible = "ti,tmp75";
439				reg = <0x4f>;
440			};
441
442			// FIO FRU
443			eeprom@53 {
444				compatible = "atmel,24c512";
445				reg = <0x53>;
446			};
447		};
448	};
449};
450
451&i2c5 {
452	status = "okay";
453
454	// E1S BP FRU
455	eeprom@52 {
456		compatible = "atmel,24c64";
457		reg = <0x52>;
458	};
459
460	i2c-mux@71 {
461		compatible = "nxp,pca9546";
462		reg = <0x71>;
463		#address-cells = <1>;
464		#size-cells = <0>;
465		i2c-mux-idle-disconnect;
466
467		i2c5mux0ch0: i2c@0 {
468			reg = <0>;
469			#address-cells = <1>;
470			#size-cells = <0>;
471		};
472		i2c5mux0ch1: i2c@1 {
473			reg = <1>;
474			#address-cells = <1>;
475			#size-cells = <0>;
476		};
477		i2c5mux0ch2: i2c@2 {
478			reg = <2>;
479			#address-cells = <1>;
480			#size-cells = <0>;
481		};
482		i2c5mux0ch3: i2c@3 {
483			reg = <3>;
484			#address-cells = <1>;
485			#size-cells = <0>;
486		};
487	};
488
489	i2c-mux@72 {
490		compatible = "nxp,pca9546";
491		reg = <0x72>;
492		#address-cells = <1>;
493		#size-cells = <0>;
494		i2c-mux-idle-disconnect;
495
496		i2c5mux1ch0: i2c@0 {
497			reg = <0>;
498			#address-cells = <1>;
499			#size-cells = <0>;
500
501			voltage-sensor@48 {
502				compatible = "ti,ads7830";
503				reg = <0x48>;
504			};
505		};
506		i2c5mux1ch1: i2c@1 {
507			reg = <1>;
508			#address-cells = <1>;
509			#size-cells = <0>;
510
511			temperature-sensor@48 {
512				compatible = "ti,tmp75";
513				reg = <0x48>;
514			};
515		};
516		i2c5mux1ch2: i2c@2 {
517			reg = <2>;
518			#address-cells = <1>;
519			#size-cells = <0>;
520
521			power-monitor@40 {
522				compatible = "ti,ina230";
523				reg = <0x40>;
524				shunt-resistor = <2000>;
525			};
526
527			power-monitor@41 {
528				compatible = "ti,ina230";
529				reg = <0x41>;
530				shunt-resistor = <2000>;
531			};
532
533			power-monitor@44 {
534				compatible = "ti,ina230";
535				reg = <0x44>;
536				shunt-resistor = <2000>;
537			};
538
539			power-monitor@45 {
540				compatible = "ti,ina230";
541				reg = <0x45>;
542				shunt-resistor = <2000>;
543			};
544		};
545		i2c5mux1ch3: i2c@3 {
546			reg = <3>;
547			#address-cells = <1>;
548			#size-cells = <0>;
549
550			gpio@74 {
551				compatible = "nxp,pca9539";
552				reg = <0x74>;
553				gpio-controller;
554				#gpio-cells = <2>;
555				gpio-line-names =
556					"P12V_E1S_ADC_ALERT","BUFF0_100M_LOSB_PLD",
557					"E1S_BP_SKU_ID0","E1S_BP_SKU_ID1",
558					"E1S_BP_SKU_ID2","E1S_BP_REV_ID0",
559					"E1S_BP_REV_ID1","E1S_BP_REV_ID2",
560					"P3V3_E1S_1_FAULT_R_N","P3V3_E1S_2_FAULT_R_N",
561					"P3V3_E1S_3_FAULT_R_N","P3V3_E1S_4_FAULT_R_N",
562					"P12V_E1S_1_FAULT_R_N","P12V_E1S_2_FAULT_R_N",
563					"P12V_E1S_3_FAULT_R_N","P12V_E1S_4_FAULT_R_N";
564			};
565		};
566	};
567};
568
569&i2c6 {
570	status = "okay";
571
572	// Rainbow0 FRU
573	eeprom@52 {
574		compatible = "atmel,24c256";
575		reg = <0x52>;
576	};
577};
578
579&i2c7 {
580	status = "okay";
581};
582
583&i2c8 {
584	status = "okay";
585
586	// Rainbow2 FRU
587	eeprom@52 {
588		compatible = "atmel,24c256";
589		reg = <0x52>;
590	};
591};
592
593&i2c9 {
594	status = "okay";
595
596	temperature-sensor@4b {
597		compatible = "ti,tmp75";
598		reg = <0x4b>;
599	};
600
601	// SCM FRU
602	eeprom@50 {
603		compatible = "atmel,24c128";
604		reg = <0x50>;
605	};
606
607	// BSM FRU
608	eeprom@56 {
609		compatible = "atmel,24c64";
610		reg = <0x56>;
611	};
612};
613
614&i2c10 {
615	status = "okay";
616
617	// Rainbow3 FRU
618	eeprom@52 {
619		compatible = "atmel,24c256";
620		reg = <0x52>;
621	};
622};
623
624&i2c11 {
625	status = "okay";
626
627	// OCP NIC TEMP
628	temperature-sensor@1f {
629		compatible = "ti,tmp421";
630		reg = <0x1f>;
631	};
632
633	// OCP NIC FRU
634	eeprom@50 {
635		compatible = "atmel,24c64";
636		reg = <0x50>;
637	};
638};
639
640&i2c12 {
641	status = "okay";
642
643	// SWB FRU
644	eeprom@52 {
645		compatible = "atmel,24c64";
646		reg = <0x52>;
647	};
648
649	i2c-mux@72 {
650		compatible = "nxp,pca9548";
651		reg = <0x72>;
652		#address-cells = <1>;
653		#size-cells = <0>;
654		i2c-mux-idle-disconnect;
655
656		i2c12mux0ch0: i2c@0 {
657			reg = <0>;
658			#address-cells = <1>;
659			#size-cells = <0>;
660
661			temperature-sensor@48 {
662				compatible = "ti,tmp75";
663				reg = <0x48>;
664			};
665		};
666		i2c12mux0ch1: i2c@1 {
667			reg = <1>;
668			#address-cells = <1>;
669			#size-cells = <0>;
670
671			power-monitor@42 {
672				compatible = "mps,mp2971";
673				reg = <0x42>;
674			};
675
676			power-monitor@43 {
677				compatible = "mps,mp2971";
678				reg = <0x43>;
679			};
680		};
681		i2c12mux0ch2: i2c@2 {
682			reg = <2>;
683			#address-cells = <1>;
684			#size-cells = <0>;
685
686			power-monitor@40 {
687				compatible = "ti,ina230";
688				reg = <0x40>;
689				shunt-resistor = <2000>;
690			};
691
692			power-monitor@41 {
693				compatible = "ti,ina230";
694				reg = <0x41>;
695				shunt-resistor = <2000>;
696			};
697		};
698		i2c12mux0ch3: i2c@3 {
699			reg = <3>;
700			#address-cells = <1>;
701			#size-cells = <0>;
702
703			power-monitor@44 {
704				compatible = "ti,ina230";
705				reg = <0x44>;
706				shunt-resistor = <2000>;
707			};
708
709			power-monitor@45 {
710				compatible = "ti,ina230";
711				reg = <0x45>;
712				shunt-resistor = <2000>;
713			};
714		};
715		i2c12mux0ch4: i2c@4 {
716			reg = <4>;
717			#address-cells = <1>;
718			#size-cells = <0>;
719
720			voltage-sensor@49 {
721				compatible = "ti,ads7830";
722				reg = <0x49>;
723			};
724		};
725		i2c12mux0ch5: i2c@5 {
726			reg = <5>;
727			#address-cells = <1>;
728			#size-cells = <0>;
729		};
730		i2c12mux0ch6: i2c@6 {
731			reg = <6>;
732			#address-cells = <1>;
733			#size-cells = <0>;
734		};
735		i2c12mux0ch7: i2c@7 {
736			reg = <7>;
737			#address-cells = <1>;
738			#size-cells = <0>;
739		};
740	};
741};
742
743&i2c13 {
744	status = "okay";
745
746	// Rainbow1 FRU
747	eeprom@52 {
748		compatible = "atmel,24c256";
749		reg = <0x52>;
750	};
751};
752
753&i2c14 {
754	status = "okay";
755};
756
757&i2c15 {
758	status = "okay";
759};
760
761&kcs2 {
762	aspeed,lpc-io-reg = <0xca8>;
763	status = "okay";
764};
765
766&kcs3 {
767	aspeed,lpc-io-reg = <0xca2>;
768	status = "okay";
769};
770
771&mac2 {
772	pinctrl-names = "default";
773	pinctrl-0 = <&pinctrl_rmii3_default>;
774	use-ncsi;
775	status = "okay";
776};
777
778&mac3 {
779	pinctrl-names = "default";
780	pinctrl-0 = <&pinctrl_rmii4_default>;
781	use-ncsi;
782	status = "okay";
783};
784
785&sgpiom0 {
786	ngpios = <128>;
787	bus-frequency = <2000000>;
788	gpio-line-names =
789	/*in - out - in - out */
790	/*A0-A3 line 0-7*/
791	"PDB1_HSC_PWR_OK","power-chassis-control",
792	"PDB2_HSC_PWR_OK","FM_MODULE_PWRGD_0A_OUT",
793	"PWRGD_P12V_MEM","FM_MODULE_PWRGD_0B_OUT",
794	"PWRGD_P12V_SCM","FM_MODULE_PWRGD_1B_OUT",
795	/*A4-A7 line 8-15*/
796	"PWRGD_P12V_FAN","FM_MODULE_PWRGD_2B_OUT",
797	"PWRGD_P5V_AUX","FM_MODULE_PWRGD_3B_OUT",
798	"power-chassis-good","FM_MODULE_PWRGD_4B_OUT",
799	"PWRGD_P1V8_LDO","FM_CBL_PRSNT_0A_N_OUT",
800	/*B0-B3 line 16-23*/
801	"PWRGD_P1V_LDO","FM_CBL_PRSNT_0B_N_OUT",
802	"PWRGD_PVDD33_S5","FM_CBL_PRSNT_1A_N_OUT",
803	"PWRGD_PVDD18_S5_P0","FM_CBL_PRSNT_1B_N_OUT",
804	"CPU0_SLP_S5_N","FM_CBL_PRSNT_2A_N_OUT",
805	/*B4-B7 line 24-31*/
806	"PWRGD_PVDDIO_MEM_S3_P0","FM_CBL_PRSNT_2B_N_OUT",
807	"CPU0_SLP_S3_N","FM_CBL_PRSNT_3A_N_OUT",
808	"FM_MODULE_PWRGD_1B","FM_CBL_PRSNT_3B_N_OUT",
809	"FM_MODULE_PWRGD_2B","FM_CBL_PRSNT_4A_N_OUT",
810	/*C0-C3 line 32-39*/
811	"FM_MODULE_PWRGD_3B","FM_CBL_PRSNT_4B_N_OUT",
812	"FM_MODULE_PWRGD_4B","P12V_FAN0_PWRGD_OUT",
813	"FM_MODULE_PWRGD_0B","P12V_FAN1_PWRGD_OUT",
814	"PWRGD_PVDDIO_P0","P12V_FAN2_PWRGD_OUT",
815	/*C4-C7 line 40-47*/
816	"PWRGD_PVDDCR_SOC_P0","P12V_FAN3_PWRGD_OUT",
817	"PWRGD_PVDDCR_CPU0_P0","P12V_FAN4_PWRGD_OUT",
818	"PWRGD_PVDDCR_CPU1_P0","P12V_FAN5_PWRGD_OUT",
819	"FM_CPU0_PWR_GOOD","P12V_FAN6_PWRGD_OUT",
820	/*D0-D3 line 48-55*/
821	"host0-ready","P12V_FAN7_PWRGD_OUT",
822	"FM_PWRGD_CPU0_PWROK","FAN_0_PRSNT_R1_N_OUT",
823	"FM_RST_CPU0_RESETL_N","FAN_1_PRSNT_R1_N_OUT",
824	"RST_CPU0_PERST0_R_N","FAN_2_PRSNT_R1_N_OUT",
825	/*D4-D7 line 56-63*/
826	"RST_CPU0_PERST1_R_N","FAN_3_PRSNT_R1_N_OUT",
827	"BIOS_POST_CMPLT","FAN_4_PRSNT_R1_N_OUT",
828	"","FAN_5_PRSNT_R1_N_OUT",
829	"","FAN_6_PRSNT_R1_N_OUT",
830	/*E0-E3 line 64-71*/
831	"FM_PWRGD_CHAD_CPU0","FAN_7_PRSNT_R1_N_OUT",
832	"FM_PWRGD_CHEH_CPU0","TRAY_SLOT_ID0_OUT",
833	"FM_PWRGD_CHIL_CPU0","TRAY_SLOT_ID1_OUT",
834	"FM_PWRGD_CHMP_CPU0","TRAY_SLOT_ID2_OUT",
835	/*E4-E7 line 72-79*/
836	"P12V_E1S_0_PWRGD","TRAY_SLOT_ID3_OUT",
837	"P12V_E1S_1_PWRGD","TRAY_SLOT_ID4_OUT",
838	"P3V3_E1S_0_PWRGD","SCM_JTAG_MUX_S0_R",
839	"P3V3_E1S_1_PWRGD","SCM_JTAG_MUX_S1_R",
840	/*F0-F3 line 80-87*/
841	"FM_MODULE_PWRGD_0A","BMC_SGPIO_READY",
842	"OCP_V3_1_P3V3_PLD_R_PWRGD","CPU0_SYS_RESET_N",
843	"P12V_OCP_V3_1_PLD_PWRGD","RST_CPU0_KBRST_N",
844	"PWRGD_OCP_SFF_PWR_GOOD","BIOS_DEBUG_MODE",
845	/*F4-F7 line 88-95*/
846	"","CLR_CMOS",
847	"","I3C_SPD_MUX_FORCE_SEL",
848	"","FM_JTAG_HOST_SEL",
849	"","TRAY_PRESENT_N",
850	/*G0-G3 line 96-103*/
851	"MB_REV_ID_0","UART_BMC_SEL0",
852	"MB_REV_ID_1","UART_BMC_SEL1",
853	"MB_REV_ID_2","SCM_USB_SEL",
854	"MB_SKU_ID_0","FORCE_ALL_PWRON",
855	/*G4-G7 line 104-111*/
856	"MB_SKU_ID_1","PASSWORD_CLEAR",
857	"MB_SKU_ID_2","",
858	"MB_SKU_ID_3","",
859	"","BIOS_DEBUG_MODE",
860	/*H0-H3 line 112-119*/
861	"FM_IOEXP_U538_INT_N","",
862	"FM_IOEXP_U539_INT_N","",
863	"FM_IOEXP_U540_INT_N","",
864	"FM_IOEXP_U541_INT_N","",
865	/*H4-H7 line 120-127*/
866	"FM_IOEXP_PDB2_U1003_INT_N","",
867	"","","","","","",
868	/*I0-I3 line 128-135*/
869	"","","","",
870	"PDB_IRQ_PMBUS_ALERT_ISO_R_N","",
871	"PDB_UV_ALERT_ISO_R_N","",
872	/*I4-I7 line 136-143*/
873	"P12V_SCM_ADC_ALERT","",
874	"CPU0_REGS_I2C_ALERT_N","",
875	"FM_RTC_ALERT_N","",
876	"APML_CPU0_ALERT_R_N","",
877	/*J0-J3 line 144-151*/
878	"SMB_RJ45_FIO_TMP_ALERT","",
879	"FM_SMB_ALERT_MCIO_0A_N","",
880	"I3C_MCIO_0B_ALERT_ISO_R_N","",
881	"FM_SMB_ALERT_MCIO_1A_N","",
882	/*J4-J7 line 152-159*/
883	"I3C_MCIO_1B_ALERT_ISO_R_N","",
884	"FM_SMB_ALERT_MCIO_2A_N","",
885	"I3C_MCIO_2B_ALERT_ISO_R_N","",
886	"FM_SMB_ALERT_MCIO_3A_N","",
887	/*K0-K3 line 160-167*/
888	"I3C_MCIO_3B_ALERT_ISO_R_N","",
889	"FM_SMB_ALERT_MCIO_4A_N","",
890	"I3C_MCIO_4B_ALERT_ISO_R_N","",
891	"","",
892	/*K4-K7 line 168-175*/
893	"","","","","","","","",
894	/*L0-L3 line 176-183*/
895	"FM_CPU0_THERMTRIP_N","",
896	"FM_CPU0_PROCHOT_N","",
897	"FM_CPU0_SMERR_N","",
898	"FM_PVDDCR_CPU0_P0_OCP_N","",
899	/*L4-L7 line 184-191*/
900	"FM_PVDDCR_CPU1_P0_OCP_N","",
901	"FM_PVDDCR_SOC_P0_OCP_N","",
902	"FM_OCP_PWRBRK_R_N","",
903	"PMIC_ERROR_N","",
904	/*M0-M3 line 192-199*/
905	"","","","","","","","",
906	/*M4-M7 line 200-207*/
907	"","","","","","","","",
908	/*N0-N3 line 208-215*/
909	"FM_PRSNT_CPU0_N","",
910	"OCP_SFF_PRSNT_N","",
911	"E1S_0_PRSNT_R_N","",
912	"E1S_BP_0_PRSNT_R_N","",
913	/*N4-N7 line 216-223*/
914	"E1S_BP_1_PRSNT_R_N","",
915	"E1S_BP_2_PRSNT_R_N","",
916	"E1S_BP_3_PRSNT_R_N","",
917	"PDB_PRSNT_J311_N","",
918	/*O0-O3 line 224-231*/
919	"PDB_PRSNT_J312_N","",
920	"PDB_PRSNT_J313_N","",
921	"PDB_PRSNT_J314_N","",
922	"PRSNT_RJ45_FIO_N_R","",
923	/*O4-O7 line 232-239*/
924	"PRSNT_LEAK_CABLE_1_R_N","",
925	"PRSNT_LEAK_CABLE_2_R_N","",
926	"PRSNT_HDT_N","",
927	"","",
928	/*P0-P3 line 240-247*/
929	"","","","","","","","",
930	/*P4-P7 line 248-255*/
931	"","","","","","","","";
932	status = "okay";
933};
934
935// BIOS Flash
936&spi2 {
937	pinctrl-names = "default";
938	pinctrl-0 = <&pinctrl_spi2_default>;
939	status = "okay";
940
941	flash@0 {
942		m25p,fast-read;
943		label = "pnor";
944		spi-max-frequency = <12000000>;
945		spi-tx-bus-width = <2>;
946		spi-rx-bus-width = <2>;
947		status = "okay";
948	};
949};
950
951// HOST BIOS Debug
952&uart1 {
953	status = "okay";
954};
955
956&uart3 {
957	status = "okay";
958};
959
960&uart4 {
961	status = "okay";
962};
963
964// BMC Debug Console
965&uart5 {
966	status = "okay";
967};
968
969&uart_routing {
970	status = "okay";
971};
972
973&wdt1 {
974	pinctrl-names = "default";
975	pinctrl-0 = <&pinctrl_wdtrst1_default>;
976	aspeed,reset-type = "soc";
977	aspeed,external-signal;
978	aspeed,ext-push-pull;
979	aspeed,ext-active-high;
980	aspeed,ext-pulse-duration = <256>;
981	status = "okay";
982};
983