• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// SPDX-License-Identifier: GPL-2.0+
2/dts-v1/;
3#include "aspeed-g5.dtsi"
4#include <dt-bindings/gpio/aspeed-gpio.h>
5#include <dt-bindings/leds/leds-pca955x.h>
6
7/ {
8	model = "FP5280G2 BMC";
9	compatible = "inspur,fp5280g2-bmc", "aspeed,ast2500";
10
11	chosen {
12		stdout-path = &uart5;
13		bootargs = "console=ttyS4,115200 earlyprintk";
14	};
15
16	memory@80000000 {
17		reg = <0x80000000 0x20000000>;
18	};
19
20	reserved-memory {
21		#address-cells = <1>;
22		#size-cells = <1>;
23		ranges;
24
25		vga_memory: framebuffer@9f000000 {
26			no-map;
27			reg = <0x9f000000 0x01000000>; /* 16M */
28		};
29
30		flash_memory: region@98000000 {
31			no-map;
32			reg = <0x98000000 0x04000000>; /* 64M */
33		};
34
35		coldfire_memory: codefire_memory@9ef00000 {
36			reg = <0x9ef00000 0x00100000>;
37			no-map;
38		};
39
40		gfx_memory: framebuffer {
41			size = <0x01000000>;
42			alignment = <0x01000000>;
43			compatible = "shared-dma-pool";
44			reusable;
45		};
46
47		video_engine_memory: jpegbuffer {
48			size = <0x02000000>;	/* 32M */
49			alignment = <0x01000000>;
50			compatible = "shared-dma-pool";
51			reusable;
52		};
53	};
54
55	fsi: gpio-fsi {
56		compatible = "aspeed,ast2500-cf-fsi-master", "fsi-master";
57		#address-cells = <2>;
58		#size-cells = <0>;
59		no-gpio-delays;
60
61		memory-region = <&coldfire_memory>;
62		aspeed,sram = <&sram>;
63		aspeed,cvic = <&cvic>;
64
65		clock-gpios = <&gpio ASPEED_GPIO(AA, 0) GPIO_ACTIVE_HIGH>;
66		data-gpios = <&gpio ASPEED_GPIO(AA, 2) GPIO_ACTIVE_HIGH>;
67		mux-gpios = <&gpio ASPEED_GPIO(I, 2) GPIO_ACTIVE_HIGH>;
68		enable-gpios = <&gpio ASPEED_GPIO(I, 3) GPIO_ACTIVE_HIGH>;
69		trans-gpios = <&gpio ASPEED_GPIO(R, 2) GPIO_ACTIVE_HIGH>;
70	};
71
72	gpio-keys {
73		compatible = "gpio-keys";
74
75		checkstop {
76			label = "checkstop";
77			gpios = <&gpio ASPEED_GPIO(B, 3) GPIO_ACTIVE_LOW>;
78			linux,code = <ASPEED_GPIO(B, 3)>;
79		};
80
81		ps0-presence {
82			label = "ps0-presence";
83			gpios = <&gpio ASPEED_GPIO(F, 0) GPIO_ACTIVE_LOW>;
84			linux,code = <ASPEED_GPIO(F, 0)>;
85		};
86
87		ps1-presence {
88			label = "ps1-presence";
89			gpios = <&gpio ASPEED_GPIO(F, 1) GPIO_ACTIVE_LOW>;
90			linux,code = <ASPEED_GPIO(F, 1)>;
91		};
92
93	};
94
95	gpio-keys-polled {
96		compatible = "gpio-keys-polled";
97		poll-interval = <1000>;
98
99		fan0-presence {
100			label = "fan0-presence";
101			gpios = <&pca1 0 GPIO_ACTIVE_LOW>;
102			linux,code = <1>;
103		};
104
105		fan1-presence {
106			label = "fan1-presence";
107			gpios = <&pca1 1 GPIO_ACTIVE_LOW>;
108			linux,code = <2>;
109		};
110
111		fan2-presence {
112			label = "fan2-presence";
113			gpios = <&pca1 2 GPIO_ACTIVE_LOW>;
114			linux,code = <3>;
115		};
116
117		fan3-presence {
118			label = "fan3-presence";
119			gpios = <&pca1 3 GPIO_ACTIVE_LOW>;
120			linux,code = <4>;
121		};
122
123		fan4-presence {
124			label = "fan4-presence";
125			gpios = <&pca1 4 GPIO_ACTIVE_LOW>;
126			linux,code = <5>;
127		};
128
129		fan5-presence {
130			label = "fan5-presence";
131			gpios = <&pca1 5 GPIO_ACTIVE_LOW>;
132			linux,code = <6>;
133		};
134
135		fan6-presence {
136			label = "fan6-presence";
137			gpios = <&pca1 6 GPIO_ACTIVE_LOW>;
138			linux,code = <7>;
139		};
140
141		fan7-presence {
142			label = "fan7-presence";
143			gpios = <&pca1 7 GPIO_ACTIVE_LOW>;
144			linux,code = <8>;
145		};
146	};
147
148	leds {
149		compatible = "gpio-leds";
150
151		power {
152			label = "power";
153			/* TODO: dummy gpio */
154			gpios = <&gpio ASPEED_GPIO(R, 1) GPIO_ACTIVE_LOW>;
155		};
156
157		init-ok {
158			label = "init-ok";
159			gpios = <&gpio ASPEED_GPIO(B, 7) GPIO_ACTIVE_LOW>;
160		};
161
162		front-memory {
163			label = "front-memory";
164			gpios = <&gpio ASPEED_GPIO(F, 4) GPIO_ACTIVE_LOW>;
165		};
166
167		front-syshot {
168			label = "front-syshot";
169			gpios = <&gpio ASPEED_GPIO(I, 1) GPIO_ACTIVE_LOW>;
170		};
171
172		front-syshealth {
173			label = "front-syshealth";
174			gpios = <&gpio ASPEED_GPIO(I, 0) GPIO_ACTIVE_LOW>;
175		};
176
177		front-fan {
178			label = "front-fan";
179			gpios = <&gpio ASPEED_GPIO(H, 4) GPIO_ACTIVE_LOW>;
180		};
181
182		front-psu {
183			label = "front-psu";
184			gpios = <&gpio ASPEED_GPIO(B, 2) GPIO_ACTIVE_LOW>;
185		};
186
187		identify {
188			label = "identify";
189			gpios = <&gpio ASPEED_GPIO(Z, 7) GPIO_ACTIVE_LOW>;
190		};
191	};
192
193	iio-hwmon-battery {
194		compatible = "iio-hwmon";
195		io-channels = <&adc 15>;
196	};
197
198	iio-hwmon {
199		compatible = "iio-hwmon";
200		io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>, <&adc 4>,
201			<&adc 5>, <&adc 6>, <&adc 7>, <&adc 8>, <&adc 9>,
202			<&adc 10>, <&adc 11>, <&adc 12>, <&adc 13>, <&adc 14>;
203	};
204
205};
206
207&fmc {
208	status = "okay";
209
210	flash@0 {
211		status = "okay";
212		label = "bmc";
213		m25p,fast-read;
214		spi-max-frequency = <50000000>;
215#include "openbmc-flash-layout.dtsi"
216	};
217};
218
219&spi1 {
220	status = "okay";
221	pinctrl-names = "default";
222	pinctrl-0 = <&pinctrl_spi1_default>;
223
224	flash@0 {
225		status = "okay";
226		label = "pnor";
227		m25p,fast-read;
228		spi-max-frequency = <100000000>;
229	};
230};
231
232&uart1 {
233	/* Rear RS-232 connector */
234	status = "okay";
235	pinctrl-names = "default";
236	pinctrl-0 = <&pinctrl_txd1_default
237			&pinctrl_rxd1_default
238			&pinctrl_nrts1_default
239			&pinctrl_ndtr1_default
240			&pinctrl_ndsr1_default
241			&pinctrl_ncts1_default
242			&pinctrl_ndcd1_default
243			&pinctrl_nri1_default>;
244};
245
246&uart2 {
247	/* Test Point */
248	status = "okay";
249	pinctrl-names = "default";
250	pinctrl-0 = <&pinctrl_txd2_default &pinctrl_rxd2_default>;
251};
252
253&uart3 {
254	/* APSS */
255	status = "okay";
256	pinctrl-names = "default";
257	pinctrl-0 = <&pinctrl_txd3_default &pinctrl_rxd3_default>;
258};
259
260&uart5 {
261	status = "okay";
262};
263
264&lpc_ctrl {
265	status = "okay";
266	memory-region = <&flash_memory>;
267	flash = <&spi1>;
268};
269
270&mac0 {
271	status = "okay";
272	pinctrl-names = "default";
273	pinctrl-0 = <&pinctrl_rmii1_default>;
274	clocks = <&syscon ASPEED_CLK_GATE_MAC1CLK>,
275		 <&syscon ASPEED_CLK_MAC1RCLK>;
276	clock-names = "MACCLK", "RCLK";
277	use-ncsi;
278};
279
280&mac1 {
281	status = "okay";
282	pinctrl-names = "default";
283	pinctrl-0 = <&pinctrl_rgmii2_default &pinctrl_mdio2_default>;
284};
285
286&i2c0 {
287	/* LCD */
288	status = "okay";
289};
290
291&i2c1 {
292	status = "okay";
293
294	eeprom@50 {
295		compatible = "atmel,24c256";
296		reg = <0x50>;
297		label = "fru";
298	};
299
300};
301
302&i2c2 {
303	status = "okay";
304
305	tmp112@48 {
306		compatible = "ti,tmp112";
307		reg = <0x48>;
308		label = "inlet";
309	};
310
311	tmp112@49 {
312		compatible = "ti,tmp112";
313		reg = <0x49>;
314		label = "outlet";
315	};
316
317	i2c-switch@70 {
318		compatible = "nxp,pca9546";
319		reg = <0x70>;
320		#address-cells = <1>;
321		#size-cells = <0>;
322
323		i2c@0 {
324			#address-cells = <1>;
325			#size-cells = <0>;
326			reg = <0>;
327
328			tmp112@4a {
329				compatible = "ti,tmp112";
330				reg = <0x4a>;
331				label = "psu_inlet";
332			};
333
334		};
335
336		i2c@1 {
337			#address-cells = <1>;
338			#size-cells = <0>;
339			reg = <1>;
340
341			tmp112@4a {
342				compatible = "ti,tmp112";
343				reg = <0x4a>;
344				label = "ocp_zone";
345			};
346		};
347
348		i2c@2 {
349			#address-cells = <1>;
350			#size-cells = <0>;
351			reg = <2>;
352
353			tmp112@4a {
354				compatible = "ti,tmp112";
355				reg = <0x4a>;
356				label = "bmc_zone";
357			};
358		};
359
360		i2c@3 {
361			#address-cells = <1>;
362			#size-cells = <0>;
363			reg = <3>;
364
365			tmp112@7c {
366				compatible = "microchip,emc1413";
367				reg = <0x7c>;
368			};
369		};
370
371	};
372};
373
374&i2c3 {
375	/* Riser Card */
376	status = "okay";
377};
378
379&i2c4 {
380	status = "okay";
381
382	rtc@68 {
383		compatible = "dallas,ds3232";
384		reg = <0x68>;
385	};
386};
387
388&i2c5 {
389	/* vr  */
390	status = "okay";
391};
392
393&i2c6 {
394	/* bp card */
395	status = "okay";
396};
397
398&i2c7 {
399	status = "okay";
400
401	i2c-switch@70 {
402		compatible = "nxp,pca9546";
403		reg = <0x70>;
404		#address-cells = <1>;
405		#size-cells = <0>;
406
407		i2c@0 {
408			#address-cells = <1>;
409			#size-cells = <0>;
410			reg = <0>;
411
412			adm1278@10 {
413				compatible = "adi,adm1278";
414				reg = <0x10>;
415			};
416
417			adm1278@13 {
418				compatible = "adi,adm1278";
419				reg = <0x13>;
420			};
421
422			adm1278@50 {
423				compatible = "adi,adm1278";
424				reg = <0x50>;
425			};
426
427			adm1278@53 {
428				compatible = "adi,adm1278";
429				reg = <0x53>;
430			};
431
432		};
433
434		/*pcie riser*/
435
436	};
437};
438
439&i2c8 {
440	status = "okay";
441
442	pca0: pca9555@20 {
443		compatible = "nxp,pca9555";
444		reg = <0x20>;
445		#address-cells = <1>;
446		#size-cells = <0>;
447
448		gpio-controller;
449		#gpio-cells = <2>;
450
451		gpio@0 {
452			reg = <0>;
453			type = <PCA955X_TYPE_GPIO>;
454		};
455
456		gpio@1 {
457			reg = <1>;
458			type = <PCA955X_TYPE_GPIO>;
459		};
460
461		gpio@2 {
462			reg = <2>;
463			type = <PCA955X_TYPE_GPIO>;
464		};
465
466		gpio@3 {
467			reg = <3>;
468			type = <PCA955X_TYPE_GPIO>;
469		};
470
471		gpio@4 {
472			reg = <4>;
473			type = <PCA955X_TYPE_GPIO>;
474		};
475
476		gpio@5 {
477			reg = <5>;
478			type = <PCA955X_TYPE_GPIO>;
479		};
480
481		gpio@6 {
482			reg = <6>;
483			type = <PCA955X_TYPE_GPIO>;
484		};
485
486		gpio@7 {
487			reg = <7>;
488			type = <PCA955X_TYPE_GPIO>;
489		};
490
491	};
492
493	pca1: pca9555@21 {
494		compatible = "nxp,pca9555";
495		reg = <0x21>;
496		#address-cells = <1>;
497		#size-cells = <0>;
498
499		gpio-controller;
500		#gpio-cells = <2>;
501
502		gpio@0 {
503			reg = <0>;
504			type = <PCA955X_TYPE_GPIO>;
505		};
506
507		gpio@1 {
508			reg = <1>;
509			type = <PCA955X_TYPE_GPIO>;
510		};
511
512		gpio@2 {
513			reg = <2>;
514			type = <PCA955X_TYPE_GPIO>;
515		};
516
517		gpio@3 {
518			reg = <3>;
519			type = <PCA955X_TYPE_GPIO>;
520		};
521
522		gpio@4 {
523			reg = <4>;
524			type = <PCA955X_TYPE_GPIO>;
525		};
526
527		gpio@5 {
528			reg = <5>;
529			type = <PCA955X_TYPE_GPIO>;
530		};
531
532		gpio@6 {
533			reg = <6>;
534			type = <PCA955X_TYPE_GPIO>;
535		};
536
537		gpio@7 {
538			reg = <7>;
539			type = <PCA955X_TYPE_GPIO>;
540		};
541	};
542
543	pca2: pca9555@22 {
544		compatible = "nxp,pca9555";
545		reg = <0x22>;
546		#address-cells = <1>;
547		#size-cells = <0>;
548
549		gpio-controller;
550		#gpio-cells = <2>;
551
552		gpio@0 {
553			reg = <0>;
554			type = <PCA955X_TYPE_GPIO>;
555		};
556
557		gpio@1 {
558			reg = <1>;
559			type = <PCA955X_TYPE_GPIO>;
560		};
561
562		gpio@2 {
563			reg = <2>;
564			type = <PCA955X_TYPE_GPIO>;
565		};
566
567		gpio@3 {
568			reg = <3>;
569			type = <PCA955X_TYPE_GPIO>;
570		};
571
572		gpio@4 {
573			reg = <4>;
574			type = <PCA955X_TYPE_GPIO>;
575		};
576
577		gpio@5 {
578			reg = <5>;
579			type = <PCA955X_TYPE_GPIO>;
580		};
581
582		gpio@6 {
583			reg = <6>;
584			type = <PCA955X_TYPE_GPIO>;
585		};
586
587		gpio@7 {
588			reg = <7>;
589			type = <PCA955X_TYPE_GPIO>;
590		};
591	};
592
593	pca3: pca9555@23 {
594		compatible = "nxp,pca9555";
595		reg = <0x23>;
596		#address-cells = <1>;
597		#size-cells = <0>;
598
599		gpio-controller;
600		#gpio-cells = <2>;
601
602		gpio@0 {
603			reg = <0>;
604			type = <PCA955X_TYPE_GPIO>;
605		};
606
607		gpio@1 {
608			reg = <1>;
609			type = <PCA955X_TYPE_GPIO>;
610		};
611
612		gpio@2 {
613			reg = <2>;
614			type = <PCA955X_TYPE_GPIO>;
615		};
616
617		gpio@3 {
618			reg = <3>;
619			type = <PCA955X_TYPE_GPIO>;
620		};
621
622		gpio@4 {
623			reg = <4>;
624			type = <PCA955X_TYPE_GPIO>;
625		};
626
627		gpio@5 {
628			reg = <5>;
629			type = <PCA955X_TYPE_GPIO>;
630		};
631
632		gpio@6 {
633			reg = <6>;
634			type = <PCA955X_TYPE_GPIO>;
635		};
636
637		gpio@7 {
638			reg = <7>;
639			type = <PCA955X_TYPE_GPIO>;
640		};
641	};
642
643	pca4: pca9555@24 {
644		compatible = "nxp,pca9555";
645		reg = <0x24>;
646		#address-cells = <1>;
647		#size-cells = <0>;
648
649		gpio-controller;
650		#gpio-cells = <2>;
651
652		gpio@0 {
653			reg = <0>;
654			type = <PCA955X_TYPE_GPIO>;
655		};
656
657		gpio@1 {
658			reg = <1>;
659			type = <PCA955X_TYPE_GPIO>;
660		};
661
662		gpio@2 {
663			reg = <2>;
664			type = <PCA955X_TYPE_GPIO>;
665		};
666
667		gpio@3 {
668			reg = <3>;
669			type = <PCA955X_TYPE_GPIO>;
670		};
671
672		gpio@4 {
673			reg = <4>;
674			type = <PCA955X_TYPE_GPIO>;
675		};
676
677		gpio@5 {
678			reg = <5>;
679			type = <PCA955X_TYPE_GPIO>;
680		};
681
682		gpio@6 {
683			reg = <6>;
684			type = <PCA955X_TYPE_GPIO>;
685		};
686
687		gpio@7 {
688			reg = <7>;
689			type = <PCA955X_TYPE_GPIO>;
690		};
691	};
692
693	pca5: pca9555@25 {
694		compatible = "nxp,pca9555";
695		reg = <0x25>;
696		#address-cells = <1>;
697		#size-cells = <0>;
698
699		gpio-controller;
700		#gpio-cells = <2>;
701
702		gpio@0 {
703			reg = <0>;
704			type = <PCA955X_TYPE_GPIO>;
705		};
706
707		gpio@1 {
708			reg = <1>;
709			type = <PCA955X_TYPE_GPIO>;
710		};
711
712		gpio@2 {
713			reg = <2>;
714			type = <PCA955X_TYPE_GPIO>;
715		};
716
717		gpio@3 {
718			reg = <3>;
719			type = <PCA955X_TYPE_GPIO>;
720		};
721
722		gpio@4 {
723			reg = <4>;
724			type = <PCA955X_TYPE_GPIO>;
725		};
726
727		gpio@5 {
728			reg = <5>;
729			type = <PCA955X_TYPE_GPIO>;
730		};
731
732		gpio@6 {
733			reg = <6>;
734			type = <PCA955X_TYPE_GPIO>;
735		};
736
737		gpio@7 {
738			reg = <7>;
739			type = <PCA955X_TYPE_GPIO>;
740		};
741	};
742
743};
744
745&i2c9 {
746	/* cpld */
747	status = "okay";
748};
749
750&i2c10 {
751	/* hdd bp */
752	status = "okay";
753};
754
755&i2c11 {
756	status = "okay";
757
758	power-supply@58 {
759		compatible = "pmbus";
760		reg = <0x58>;
761	};
762
763	power-supply@59 {
764		compatible = "pmbus";
765		reg = <0x59>;
766	};
767};
768
769&i2c12 {
770	/* odcc */
771	status = "okay";
772};
773
774&vuart {
775	status = "okay";
776};
777
778&gfx {
779	status = "okay";
780	memory-region = <&gfx_memory>;
781};
782
783&pinctrl {
784	aspeed,external-nodes = <&gfx &lhc>;
785};
786
787&wdt1 {
788	aspeed,reset-type = "none";
789	aspeed,external-signal;
790	aspeed,ext-push-pull;
791	aspeed,ext-active-high;
792
793	pinctrl-names = "default";
794	pinctrl-0 = <&pinctrl_wdtrst1_default>;
795};
796
797&ibt {
798	status = "okay";
799
800};
801
802&adc {
803	status = "okay";
804	pinctrl-names = "default";
805	pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default
806	 &pinctrl_adc2_default &pinctrl_adc3_default &pinctrl_adc4_default
807	 &pinctrl_adc5_default &pinctrl_adc6_default &pinctrl_adc7_default
808	 &pinctrl_adc8_default &pinctrl_adc9_default &pinctrl_adc10_default
809	 &pinctrl_adc11_default &pinctrl_adc12_default &pinctrl_adc13_default
810	 &pinctrl_adc14_default &pinctrl_adc15_default>;
811};
812
813&vhub {
814	status = "okay";
815};
816
817&video {
818	status = "okay";
819	memory-region = <&video_engine_memory>;
820};
821
822&pwm_tacho {
823	status = "okay";
824	pinctrl-names = "default";
825	pinctrl-0 = <&pinctrl_pwm0_default &pinctrl_pwm1_default
826		&pinctrl_pwm2_default &pinctrl_pwm3_default
827		&pinctrl_pwm4_default &pinctrl_pwm5_default
828		&pinctrl_pwm6_default &pinctrl_pwm7_default>;
829
830	fan@0 {
831		reg = <0x00>;
832		aspeed,fan-tach-ch = /bits/ 8 <0x00 0x01>;
833	};
834
835	fan@1 {
836		reg = <0x01>;
837		aspeed,fan-tach-ch = /bits/ 8 <0x02 0x03>;
838	};
839
840	fan@2 {
841		reg = <0x02>;
842		aspeed,fan-tach-ch = /bits/ 8 <0x04 0x05>;
843	};
844
845	fan@3 {
846		reg = <0x03>;
847		aspeed,fan-tach-ch = /bits/ 8 <0x06 0x07>;
848	};
849
850	fan@4 {
851		reg = <0x04>;
852		aspeed,fan-tach-ch = /bits/ 8 <0x08 0x09>;
853	};
854
855	fan@5 {
856		reg = <0x05>;
857		aspeed,fan-tach-ch = /bits/ 8 <0x0a 0x0b>;
858	};
859
860	fan@6 {
861		reg = <0x06>;
862		aspeed,fan-tach-ch = /bits/ 8 <0x0c 0x0d>;
863	};
864
865	fan@7 {
866		reg = <0x07>;
867		aspeed,fan-tach-ch = /bits/ 8 <0x0e 0x0f>;
868	};
869
870};
871
872#include "ibm-power9-dual.dtsi"
873