1// SPDX-License-Identifier: GPL-2.0+
2// Copyright (c) 2020 Facebook Inc.
3
4/dts-v1/;
5
6#include <dt-bindings/leds/common.h>
7#include "ast2600-facebook-netbmc-common.dtsi"
8
9/ {
10	model = "Facebook Fuji BMC";
11	compatible = "facebook,fuji-bmc", "aspeed,ast2600";
12
13	aliases {
14		/*
15		 * PCA9548 (2-0070) provides 8 channels connecting to
16		 * SCM (System Controller Module).
17		 */
18		i2c16 = &imux16;
19		i2c17 = &imux17;
20		i2c18 = &imux18;
21		i2c19 = &imux19;
22		i2c20 = &imux20;
23		i2c21 = &imux21;
24		i2c22 = &imux22;
25		i2c23 = &imux23;
26
27		/*
28		 * PCA9548 (8-0070) provides 8 channels connecting to
29		 * SMB (Switch Main Board).
30		 */
31		i2c24 = &imux24;
32		i2c25 = &imux25;
33		i2c26 = &imux26;
34		i2c27 = &imux27;
35		i2c28 = &imux28;
36		i2c29 = &imux29;
37		i2c30 = &imux30;
38		i2c31 = &imux31;
39
40		/*
41		 * PCA9548 (11-0077) provides 8 channels connecting to
42		 * SMB (Switch Main Board).
43		 */
44		i2c40 = &imux40;
45		i2c41 = &imux41;
46		i2c42 = &imux42;
47		i2c43 = &imux43;
48		i2c44 = &imux44;
49		i2c45 = &imux45;
50		i2c46 = &imux46;
51		i2c47 = &imux47;
52
53		/*
54		 * PCA9548 (24-0071) provides 8 channels connecting to
55		 * PDB-Left.
56		 */
57		i2c48 = &imux48;
58		i2c49 = &imux49;
59		i2c50 = &imux50;
60		i2c51 = &imux51;
61		i2c52 = &imux52;
62		i2c53 = &imux53;
63		i2c54 = &imux54;
64		i2c55 = &imux55;
65
66		/*
67		 * PCA9548 (25-0072) provides 8 channels connecting to
68		 * PDB-Right.
69		 */
70		i2c56 = &imux56;
71		i2c57 = &imux57;
72		i2c58 = &imux58;
73		i2c59 = &imux59;
74		i2c60 = &imux60;
75		i2c61 = &imux61;
76		i2c62 = &imux62;
77		i2c63 = &imux63;
78
79		/*
80		 * PCA9548 (26-0076) provides 8 channels connecting to
81		 * FCM1.
82		 */
83		i2c64 = &imux64;
84		i2c65 = &imux65;
85		i2c66 = &imux66;
86		i2c67 = &imux67;
87		i2c68 = &imux68;
88		i2c69 = &imux69;
89		i2c70 = &imux70;
90		i2c71 = &imux71;
91
92		/*
93		 * PCA9548 (27-0076) provides 8 channels connecting to
94		 * FCM2.
95		 */
96		i2c72 = &imux72;
97		i2c73 = &imux73;
98		i2c74 = &imux74;
99		i2c75 = &imux75;
100		i2c76 = &imux76;
101		i2c77 = &imux77;
102		i2c78 = &imux78;
103		i2c79 = &imux79;
104
105		/*
106		 * PCA9548 (40-0076) provides 8 channels connecting to
107		 * PIM1.
108		 */
109		i2c80 = &imux80;
110		i2c81 = &imux81;
111		i2c82 = &imux82;
112		i2c83 = &imux83;
113		i2c84 = &imux84;
114		i2c85 = &imux85;
115		i2c86 = &imux86;
116		i2c87 = &imux87;
117
118		/*
119		 * PCA9548 (41-0076) provides 8 channels connecting to
120		 * PIM2.
121		 */
122		i2c88 = &imux88;
123		i2c89 = &imux89;
124		i2c90 = &imux90;
125		i2c91 = &imux91;
126		i2c92 = &imux92;
127		i2c93 = &imux93;
128		i2c94 = &imux94;
129		i2c95 = &imux95;
130
131		/*
132		 * PCA9548 (42-0076) provides 8 channels connecting to
133		 * PIM3.
134		 */
135		i2c96 = &imux96;
136		i2c97 = &imux97;
137		i2c98 = &imux98;
138		i2c99 = &imux99;
139		i2c100 = &imux100;
140		i2c101 = &imux101;
141		i2c102 = &imux102;
142		i2c103 = &imux103;
143
144		/*
145		 * PCA9548 (43-0076) provides 8 channels connecting to
146		 * PIM4.
147		 */
148		i2c104 = &imux104;
149		i2c105 = &imux105;
150		i2c106 = &imux106;
151		i2c107 = &imux107;
152		i2c108 = &imux108;
153		i2c109 = &imux109;
154		i2c110 = &imux110;
155		i2c111 = &imux111;
156
157		/*
158		 * PCA9548 (44-0076) provides 8 channels connecting to
159		 * PIM5.
160		 */
161		i2c112 = &imux112;
162		i2c113 = &imux113;
163		i2c114 = &imux114;
164		i2c115 = &imux115;
165		i2c116 = &imux116;
166		i2c117 = &imux117;
167		i2c118 = &imux118;
168		i2c119 = &imux119;
169
170		/*
171		 * PCA9548 (45-0076) provides 8 channels connecting to
172		 * PIM6.
173		 */
174		i2c120 = &imux120;
175		i2c121 = &imux121;
176		i2c122 = &imux122;
177		i2c123 = &imux123;
178		i2c124 = &imux124;
179		i2c125 = &imux125;
180		i2c126 = &imux126;
181		i2c127 = &imux127;
182
183		/*
184		 * PCA9548 (46-0076) provides 8 channels connecting to
185		 * PIM7.
186		 */
187		i2c128 = &imux128;
188		i2c129 = &imux129;
189		i2c130 = &imux130;
190		i2c131 = &imux131;
191		i2c132 = &imux132;
192		i2c133 = &imux133;
193		i2c134 = &imux134;
194		i2c135 = &imux135;
195
196		/*
197		 * PCA9548 (47-0076) provides 8 channels connecting to
198		 * PIM8.
199		 */
200		i2c136 = &imux136;
201		i2c137 = &imux137;
202		i2c138 = &imux138;
203		i2c139 = &imux139;
204		i2c140 = &imux140;
205		i2c141 = &imux141;
206		i2c142 = &imux142;
207		i2c143 = &imux143;
208	};
209
210	spi_gpio: spi {
211		num-chipselects = <3>;
212		cs-gpios = <&gpio0 ASPEED_GPIO(X, 0) GPIO_ACTIVE_LOW>,
213			   <0>,	/* device reg=<1> does not exist */
214			   <&gpio0 ASPEED_GPIO(X, 2) GPIO_ACTIVE_HIGH>;
215
216		eeprom@2 {
217			compatible = "atmel,at93c46d";
218			spi-max-frequency = <250000>;
219			data-size = <16>;
220			spi-cs-high;
221			reg = <2>;
222		};
223	};
224};
225
226&i2c0 {
227	multi-master;
228	bus-frequency = <1000000>;
229};
230
231&i2c2 {
232	/*
233	 * PCA9548 (2-0070) provides 8 channels connecting to SCM (System
234	 * Controller Module).
235	 */
236	i2c-switch@70 {
237		compatible = "nxp,pca9548";
238		#address-cells = <1>;
239		#size-cells = <0>;
240		reg = <0x70>;
241		i2c-mux-idle-disconnect;
242
243		imux16: i2c@0 {
244			#address-cells = <1>;
245			#size-cells = <0>;
246			reg = <0>;
247
248			adm1278@10 {
249				compatible = "adi,adm1278";
250				reg = <0x10>;
251				#address-cells = <1>;
252				#size-cells = <0>;
253				shunt-resistor-micro-ohms = <1500>;
254			};
255		};
256
257		imux17: i2c@1 {
258			#address-cells = <1>;
259			#size-cells = <0>;
260			reg = <1>;
261		};
262
263		imux18: i2c@2 {
264			#address-cells = <1>;
265			#size-cells = <0>;
266			reg = <2>;
267		};
268
269		imux19: i2c@3 {
270			#address-cells = <1>;
271			#size-cells = <0>;
272			reg = <3>;
273		};
274
275		imux20: i2c@4 {
276			#address-cells = <1>;
277			#size-cells = <0>;
278			reg = <4>;
279		};
280
281		imux21: i2c@5 {
282			#address-cells = <1>;
283			#size-cells = <0>;
284			reg = <5>;
285		};
286
287		imux22: i2c@6 {
288			#address-cells = <1>;
289			#size-cells = <0>;
290			reg = <6>;
291		};
292
293		imux23: i2c@7 {
294			#address-cells = <1>;
295			#size-cells = <0>;
296			reg = <7>;
297		};
298	};
299};
300
301&i2c8 {
302	/*
303	 * PCA9548 (8-0070) provides 8 channels connecting to SMB (Switch
304	 * Main Board).
305	 */
306	i2c-switch@70 {
307		compatible = "nxp,pca9548";
308		#address-cells = <1>;
309		#size-cells = <0>;
310		reg = <0x70>;
311		i2c-mux-idle-disconnect;
312
313		imux24: i2c@0 {
314			#address-cells = <1>;
315			#size-cells = <0>;
316			reg = <0>;
317
318			i2c-switch@71 {
319				compatible = "nxp,pca9548";
320				#address-cells = <1>;
321				#size-cells = <0>;
322				reg = <0x71>;
323				i2c-mux-idle-disconnect;
324
325				imux48: i2c@0 {
326					#address-cells = <1>;
327					#size-cells = <0>;
328					reg = <0>;
329				};
330
331				imux49: i2c@1 {
332					#address-cells = <1>;
333					#size-cells = <0>;
334					reg = <1>;
335				};
336
337				imux50: i2c@2 {
338					#address-cells = <1>;
339					#size-cells = <0>;
340					reg = <2>;
341
342					lp5012@14 {
343						compatible = "ti,lp5012";
344						reg = <0x14>;
345						#address-cells = <1>;
346						#size-cells = <0>;
347
348						multi-led@0 {
349							#address-cells = <1>;
350							#size-cells = <0>;
351							reg = <0>;
352							color = <LED_COLOR_ID_MULTI>;
353							function = LED_FUNCTION_ACTIVITY;
354							label = "sys";
355
356							led@0 {
357								reg = <0>;
358								color = <LED_COLOR_ID_RED>;
359							};
360
361							led@1 {
362								reg = <1>;
363								color = <LED_COLOR_ID_BLUE>;
364							};
365
366							led@2 {
367								reg = <2>;
368								color = <LED_COLOR_ID_GREEN>;
369							};
370						};
371
372						multi-led@1 {
373							#address-cells = <1>;
374							#size-cells = <0>;
375							reg = <1>;
376							color = <LED_COLOR_ID_MULTI>;
377							function = LED_FUNCTION_ACTIVITY;
378							label = "fan";
379
380							led@0 {
381								reg = <0>;
382								color = <LED_COLOR_ID_RED>;
383							};
384
385							led@1 {
386								reg = <1>;
387								color = <LED_COLOR_ID_BLUE>;
388							};
389
390							led@2 {
391								reg = <2>;
392								color = <LED_COLOR_ID_GREEN>;
393							};
394						};
395
396						multi-led@2 {
397							#address-cells = <1>;
398							#size-cells = <0>;
399							reg = <2>;
400							color = <LED_COLOR_ID_MULTI>;
401							function = LED_FUNCTION_ACTIVITY;
402							label = "psu";
403
404							led@0 {
405								reg = <0>;
406								color = <LED_COLOR_ID_RED>;
407							};
408
409							led@1 {
410								reg = <1>;
411								color = <LED_COLOR_ID_BLUE>;
412							};
413
414							led@2 {
415								reg = <2>;
416								color = <LED_COLOR_ID_GREEN>;
417							};
418						};
419
420						multi-led@3 {
421							#address-cells = <1>;
422							#size-cells = <0>;
423							reg = <3>;
424							color = <LED_COLOR_ID_MULTI>;
425							function = LED_FUNCTION_ACTIVITY;
426							label = "smb";
427
428							led@0 {
429								reg = <0>;
430								color = <LED_COLOR_ID_RED>;
431							};
432
433							led@1 {
434								reg = <1>;
435								color = <LED_COLOR_ID_BLUE>;
436							};
437
438							led@2 {
439								reg = <2>;
440								color = <LED_COLOR_ID_GREEN>;
441							};
442						};
443					};
444				};
445
446				imux51: i2c@3 {
447					#address-cells = <1>;
448					#size-cells = <0>;
449					reg = <3>;
450				};
451
452				imux52: i2c@4 {
453					#address-cells = <1>;
454					#size-cells = <0>;
455					reg = <4>;
456				};
457
458				imux53: i2c@5 {
459					#address-cells = <1>;
460					#size-cells = <0>;
461					reg = <5>;
462				};
463
464				imux54: i2c@6 {
465					#address-cells = <1>;
466					#size-cells = <0>;
467					reg = <6>;
468				};
469
470				imux55: i2c@7 {
471					#address-cells = <1>;
472					#size-cells = <0>;
473					reg = <7>;
474				};
475			};
476
477		};
478
479		imux25: i2c@1 {
480			#address-cells = <1>;
481			#size-cells = <0>;
482			reg = <1>;
483
484			i2c-switch@72 {
485				compatible = "nxp,pca9548";
486				#address-cells = <1>;
487				#size-cells = <0>;
488				reg = <0x72>;
489				i2c-mux-idle-disconnect;
490
491				imux56: i2c@0 {
492					#address-cells = <1>;
493					#size-cells = <0>;
494					reg = <0>;
495				};
496
497				imux57: i2c@1 {
498					#address-cells = <1>;
499					#size-cells = <0>;
500					reg = <1>;
501				};
502
503				imux58: i2c@2 {
504					#address-cells = <1>;
505					#size-cells = <0>;
506					reg = <2>;
507				};
508
509				imux59: i2c@3 {
510					#address-cells = <1>;
511					#size-cells = <0>;
512					reg = <3>;
513				};
514
515				imux60: i2c@4 {
516					#address-cells = <1>;
517					#size-cells = <0>;
518					reg = <4>;
519				};
520
521				imux61: i2c@5 {
522					#address-cells = <1>;
523					#size-cells = <0>;
524					reg = <5>;
525				};
526
527				imux62: i2c@6 {
528					#address-cells = <1>;
529					#size-cells = <0>;
530					reg = <6>;
531				};
532
533				imux63: i2c@7 {
534					#address-cells = <1>;
535					#size-cells = <0>;
536					reg = <7>;
537				};
538			};
539
540		};
541
542		imux26: i2c@2 {
543			#address-cells = <1>;
544			#size-cells = <0>;
545			reg = <2>;
546
547			i2c-switch@76 {
548				compatible = "nxp,pca9548";
549				#address-cells = <1>;
550				#size-cells = <0>;
551				reg = <0x76>;
552				i2c-mux-idle-disconnect;
553
554				imux64: i2c@0 {
555					#address-cells = <1>;
556					#size-cells = <0>;
557					reg = <0>;
558				};
559
560				imux65: i2c@1 {
561					#address-cells = <1>;
562					#size-cells = <0>;
563					reg = <1>;
564				};
565
566				imux66: i2c@2 {
567					#address-cells = <1>;
568					#size-cells = <0>;
569					reg = <2>;
570				};
571
572				imux67: i2c@3 {
573					#address-cells = <1>;
574					#size-cells = <0>;
575					reg = <3>;
576
577					adm1278@10 {
578						compatible = "adi,adm1278";
579						reg = <0x10>;
580						#address-cells = <1>;
581						#size-cells = <0>;
582						shunt-resistor-micro-ohms = <250>;
583					};
584				};
585
586				imux68: i2c@4 {
587					#address-cells = <1>;
588					#size-cells = <0>;
589					reg = <4>;
590				};
591
592				imux69: i2c@5 {
593					#address-cells = <1>;
594					#size-cells = <0>;
595					reg = <5>;
596				};
597
598				imux70: i2c@6 {
599					#address-cells = <1>;
600					#size-cells = <0>;
601					reg = <6>;
602				};
603
604				imux71: i2c@7 {
605					#address-cells = <1>;
606					#size-cells = <0>;
607					reg = <7>;
608				};
609			};
610
611		};
612
613		imux27: i2c@3 {
614			#address-cells = <1>;
615			#size-cells = <0>;
616			reg = <3>;
617
618			i2c-switch@76 {
619				compatible = "nxp,pca9548";
620				#address-cells = <1>;
621				#size-cells = <0>;
622				reg = <0x76>;
623				i2c-mux-idle-disconnect;
624
625				imux72: i2c@0 {
626					#address-cells = <1>;
627					#size-cells = <0>;
628					reg = <0>;
629				};
630
631				imux73: i2c@1 {
632					#address-cells = <1>;
633					#size-cells = <0>;
634					reg = <1>;
635				};
636
637				imux74: i2c@2 {
638					#address-cells = <1>;
639					#size-cells = <0>;
640					reg = <2>;
641				};
642
643				imux75: i2c@3 {
644					#address-cells = <1>;
645					#size-cells = <0>;
646					reg = <3>;
647
648					adm1278@10 {
649						compatible = "adi,adm1278";
650						reg = <0x10>;
651						#address-cells = <1>;
652						#size-cells = <0>;
653						shunt-resistor-micro-ohms = <250>;
654					};
655				};
656
657				imux76: i2c@4 {
658					#address-cells = <1>;
659					#size-cells = <0>;
660					reg = <4>;
661				};
662
663				imux77: i2c@5 {
664					#address-cells = <1>;
665					#size-cells = <0>;
666					reg = <5>;
667				};
668
669				imux78: i2c@6 {
670					#address-cells = <1>;
671					#size-cells = <0>;
672					reg = <6>;
673				};
674
675				imux79: i2c@7 {
676					#address-cells = <1>;
677					#size-cells = <0>;
678					reg = <7>;
679				};
680			};
681
682		};
683
684		imux28: i2c@4 {
685			#address-cells = <1>;
686			#size-cells = <0>;
687			reg = <4>;
688		};
689
690		imux29: i2c@5 {
691			#address-cells = <1>;
692			#size-cells = <0>;
693			reg = <5>;
694		};
695
696		imux30: i2c@6 {
697			#address-cells = <1>;
698			#size-cells = <0>;
699			reg = <6>;
700		};
701
702		imux31: i2c@7 {
703			#address-cells = <1>;
704			#size-cells = <0>;
705			reg = <7>;
706		};
707
708	};
709};
710
711&i2c11 {
712	status = "okay";
713
714	/*
715	 * PCA9548 (11-0077) provides 8 channels connecting to SMB (Switch
716	 * Main Board).
717	 */
718	i2c-switch@77 {
719		compatible = "nxp,pca9548";
720		#address-cells = <1>;
721		#size-cells = <0>;
722		reg = <0x77>;
723		i2c-mux-idle-disconnect;
724
725		imux40: i2c@0 {
726			#address-cells = <1>;
727			#size-cells = <0>;
728			reg = <0>;
729
730			i2c-switch@76 {
731				compatible = "nxp,pca9548";
732				#address-cells = <1>;
733				#size-cells = <0>;
734				reg = <0x76>;
735				i2c-mux-idle-disconnect;
736
737				imux80: i2c@0 {
738					#address-cells = <1>;
739					#size-cells = <0>;
740					reg = <0>;
741				};
742
743				imux81: i2c@1 {
744					#address-cells = <1>;
745					#size-cells = <0>;
746					reg = <1>;
747				};
748
749				imux82: i2c@2 {
750					#address-cells = <1>;
751					#size-cells = <0>;
752					reg = <2>;
753				};
754
755				imux83: i2c@3 {
756					#address-cells = <1>;
757					#size-cells = <0>;
758					reg = <3>;
759				};
760
761				imux84: i2c@4 {
762					#address-cells = <1>;
763					#size-cells = <0>;
764					reg = <4>;
765				};
766
767				imux85: i2c@5 {
768					#address-cells = <1>;
769					#size-cells = <0>;
770					reg = <5>;
771				};
772
773				imux86: i2c@6 {
774					#address-cells = <1>;
775					#size-cells = <0>;
776					reg = <6>;
777				};
778
779				imux87: i2c@7 {
780					#address-cells = <1>;
781					#size-cells = <0>;
782					reg = <7>;
783				};
784			};
785
786		};
787
788		imux41: i2c@1 {
789			#address-cells = <1>;
790			#size-cells = <0>;
791			reg = <1>;
792
793			i2c-switch@76 {
794				compatible = "nxp,pca9548";
795				#address-cells = <1>;
796				#size-cells = <0>;
797				reg = <0x76>;
798				i2c-mux-idle-disconnect;
799
800				imux88: i2c@0 {
801					#address-cells = <1>;
802					#size-cells = <0>;
803					reg = <0>;
804				};
805
806				imux89: i2c@1 {
807					#address-cells = <1>;
808					#size-cells = <0>;
809					reg = <1>;
810				};
811
812				imux90: i2c@2 {
813					#address-cells = <1>;
814					#size-cells = <0>;
815					reg = <2>;
816				};
817
818				imux91: i2c@3 {
819					#address-cells = <1>;
820					#size-cells = <0>;
821					reg = <3>;
822				};
823
824				imux92: i2c@4 {
825					#address-cells = <1>;
826					#size-cells = <0>;
827					reg = <4>;
828				};
829
830				imux93: i2c@5 {
831					#address-cells = <1>;
832					#size-cells = <0>;
833					reg = <5>;
834				};
835
836				imux94: i2c@6 {
837					#address-cells = <1>;
838					#size-cells = <0>;
839					reg = <6>;
840				};
841
842				imux95: i2c@7 {
843					#address-cells = <1>;
844					#size-cells = <0>;
845					reg = <7>;
846				};
847			};
848
849		};
850
851		imux42: i2c@2 {
852			#address-cells = <1>;
853			#size-cells = <0>;
854			reg = <2>;
855
856			i2c-switch@76 {
857				compatible = "nxp,pca9548";
858				#address-cells = <1>;
859				#size-cells = <0>;
860				reg = <0x76>;
861				i2c-mux-idle-disconnect;
862
863				imux96: i2c@0 {
864					#address-cells = <1>;
865					#size-cells = <0>;
866					reg = <0>;
867				};
868
869				imux97: i2c@1 {
870					#address-cells = <1>;
871					#size-cells = <0>;
872					reg = <1>;
873				};
874
875				imux98: i2c@2 {
876					#address-cells = <1>;
877					#size-cells = <0>;
878					reg = <2>;
879				};
880
881				imux99: i2c@3 {
882					#address-cells = <1>;
883					#size-cells = <0>;
884					reg = <3>;
885				};
886
887				imux100: i2c@4 {
888					#address-cells = <1>;
889					#size-cells = <0>;
890					reg = <4>;
891				};
892
893				imux101: i2c@5 {
894					#address-cells = <1>;
895					#size-cells = <0>;
896					reg = <5>;
897				};
898
899				imux102: i2c@6 {
900					#address-cells = <1>;
901					#size-cells = <0>;
902					reg = <6>;
903				};
904
905				imux103: i2c@7 {
906					#address-cells = <1>;
907					#size-cells = <0>;
908					reg = <7>;
909				};
910			};
911
912		};
913
914		imux43: i2c@3 {
915			#address-cells = <1>;
916			#size-cells = <0>;
917			reg = <3>;
918
919			i2c-switch@76 {
920				compatible = "nxp,pca9548";
921				#address-cells = <1>;
922				#size-cells = <0>;
923				reg = <0x76>;
924				i2c-mux-idle-disconnect;
925
926				imux104: i2c@0 {
927					#address-cells = <1>;
928					#size-cells = <0>;
929					reg = <0>;
930				};
931
932				imux105: i2c@1 {
933					#address-cells = <1>;
934					#size-cells = <0>;
935					reg = <1>;
936				};
937
938				imux106: i2c@2 {
939					#address-cells = <1>;
940					#size-cells = <0>;
941					reg = <2>;
942				};
943
944				imux107: i2c@3 {
945					#address-cells = <1>;
946					#size-cells = <0>;
947					reg = <3>;
948				};
949
950				imux108: i2c@4 {
951					#address-cells = <1>;
952					#size-cells = <0>;
953					reg = <4>;
954				};
955
956				imux109: i2c@5 {
957					#address-cells = <1>;
958					#size-cells = <0>;
959					reg = <5>;
960				};
961
962				imux110: i2c@6 {
963					#address-cells = <1>;
964					#size-cells = <0>;
965					reg = <6>;
966				};
967
968				imux111: i2c@7 {
969					#address-cells = <1>;
970					#size-cells = <0>;
971					reg = <7>;
972				};
973			};
974
975		};
976
977		imux44: i2c@4 {
978			#address-cells = <1>;
979			#size-cells = <0>;
980			reg = <4>;
981
982			i2c-switch@76 {
983				compatible = "nxp,pca9548";
984				#address-cells = <1>;
985				#size-cells = <0>;
986				reg = <0x76>;
987				i2c-mux-idle-disconnect;
988
989				imux112: i2c@0 {
990					#address-cells = <1>;
991					#size-cells = <0>;
992					reg = <0>;
993				};
994
995				imux113: i2c@1 {
996					#address-cells = <1>;
997					#size-cells = <0>;
998					reg = <1>;
999				};
1000
1001				imux114: i2c@2 {
1002					#address-cells = <1>;
1003					#size-cells = <0>;
1004					reg = <2>;
1005				};
1006
1007				imux115: i2c@3 {
1008					#address-cells = <1>;
1009					#size-cells = <0>;
1010					reg = <3>;
1011				};
1012
1013				imux116: i2c@4 {
1014					#address-cells = <1>;
1015					#size-cells = <0>;
1016					reg = <4>;
1017				};
1018
1019				imux117: i2c@5 {
1020					#address-cells = <1>;
1021					#size-cells = <0>;
1022					reg = <5>;
1023				};
1024
1025				imux118: i2c@6 {
1026					#address-cells = <1>;
1027					#size-cells = <0>;
1028					reg = <6>;
1029				};
1030
1031				imux119: i2c@7 {
1032					#address-cells = <1>;
1033					#size-cells = <0>;
1034					reg = <7>;
1035				};
1036			};
1037
1038		};
1039
1040		imux45: i2c@5 {
1041			#address-cells = <1>;
1042			#size-cells = <0>;
1043			reg = <5>;
1044
1045			i2c-switch@76 {
1046				compatible = "nxp,pca9548";
1047				#address-cells = <1>;
1048				#size-cells = <0>;
1049				reg = <0x76>;
1050				i2c-mux-idle-disconnect;
1051
1052				imux120: i2c@0 {
1053					#address-cells = <1>;
1054					#size-cells = <0>;
1055					reg = <0>;
1056				};
1057
1058				imux121: i2c@1 {
1059					#address-cells = <1>;
1060					#size-cells = <0>;
1061					reg = <1>;
1062				};
1063
1064				imux122: i2c@2 {
1065					#address-cells = <1>;
1066					#size-cells = <0>;
1067					reg = <2>;
1068				};
1069
1070				imux123: i2c@3 {
1071					#address-cells = <1>;
1072					#size-cells = <0>;
1073					reg = <3>;
1074				};
1075
1076				imux124: i2c@4 {
1077					#address-cells = <1>;
1078					#size-cells = <0>;
1079					reg = <4>;
1080				};
1081
1082				imux125: i2c@5 {
1083					#address-cells = <1>;
1084					#size-cells = <0>;
1085					reg = <5>;
1086				};
1087
1088				imux126: i2c@6 {
1089					#address-cells = <1>;
1090					#size-cells = <0>;
1091					reg = <6>;
1092				};
1093
1094				imux127: i2c@7 {
1095					#address-cells = <1>;
1096					#size-cells = <0>;
1097					reg = <7>;
1098				};
1099			};
1100
1101		};
1102
1103		imux46: i2c@6 {
1104			#address-cells = <1>;
1105			#size-cells = <0>;
1106			reg = <6>;
1107
1108			i2c-switch@76 {
1109				compatible = "nxp,pca9548";
1110				#address-cells = <1>;
1111				#size-cells = <0>;
1112				reg = <0x76>;
1113				i2c-mux-idle-disconnect;
1114
1115				imux128: i2c@0 {
1116					#address-cells = <1>;
1117					#size-cells = <0>;
1118					reg = <0>;
1119				};
1120
1121				imux129: i2c@1 {
1122					#address-cells = <1>;
1123					#size-cells = <0>;
1124					reg = <1>;
1125				};
1126
1127				imux130: i2c@2 {
1128					#address-cells = <1>;
1129					#size-cells = <0>;
1130					reg = <2>;
1131				};
1132
1133				imux131: i2c@3 {
1134					#address-cells = <1>;
1135					#size-cells = <0>;
1136					reg = <3>;
1137				};
1138
1139				imux132: i2c@4 {
1140					#address-cells = <1>;
1141					#size-cells = <0>;
1142					reg = <4>;
1143				};
1144
1145				imux133: i2c@5 {
1146					#address-cells = <1>;
1147					#size-cells = <0>;
1148					reg = <5>;
1149				};
1150
1151				imux134: i2c@6 {
1152					#address-cells = <1>;
1153					#size-cells = <0>;
1154					reg = <6>;
1155				};
1156
1157				imux135: i2c@7 {
1158					#address-cells = <1>;
1159					#size-cells = <0>;
1160					reg = <7>;
1161				};
1162			};
1163
1164		};
1165
1166		imux47: i2c@7 {
1167			#address-cells = <1>;
1168			#size-cells = <0>;
1169			reg = <7>;
1170
1171			i2c-switch@76 {
1172				compatible = "nxp,pca9548";
1173				#address-cells = <1>;
1174				#size-cells = <0>;
1175				reg = <0x76>;
1176				i2c-mux-idle-disconnect;
1177
1178				imux136: i2c@0 {
1179					#address-cells = <1>;
1180					#size-cells = <0>;
1181					reg = <0>;
1182				};
1183
1184				imux137: i2c@1 {
1185					#address-cells = <1>;
1186					#size-cells = <0>;
1187					reg = <1>;
1188				};
1189
1190				imux138: i2c@2 {
1191					#address-cells = <1>;
1192					#size-cells = <0>;
1193					reg = <2>;
1194				};
1195
1196				imux139: i2c@3 {
1197					#address-cells = <1>;
1198					#size-cells = <0>;
1199					reg = <3>;
1200				};
1201
1202				imux140: i2c@4 {
1203					#address-cells = <1>;
1204					#size-cells = <0>;
1205					reg = <4>;
1206				};
1207
1208				imux141: i2c@5 {
1209					#address-cells = <1>;
1210					#size-cells = <0>;
1211					reg = <5>;
1212				};
1213
1214				imux142: i2c@6 {
1215					#address-cells = <1>;
1216					#size-cells = <0>;
1217					reg = <6>;
1218				};
1219
1220				imux143: i2c@7 {
1221					#address-cells = <1>;
1222					#size-cells = <0>;
1223					reg = <7>;
1224				};
1225			};
1226
1227		};
1228
1229	};
1230};
1231
1232&ehci1 {
1233	status = "okay";
1234};
1235
1236&mdio1 {
1237	status = "okay";
1238
1239	ethphy3: ethernet-phy@13 {
1240		compatible = "ethernet-phy-ieee802.3-c22";
1241		reg = <0x0d>;
1242	};
1243};
1244
1245&mac3 {
1246	status = "okay";
1247	phy-mode = "rgmii";
1248	phy-handle = <&ethphy3>;
1249	pinctrl-names = "default";
1250	pinctrl-0 = <&pinctrl_rgmii4_default>;
1251};
1252