blob: 24153868cc004023680028bc6db3c293767aca63 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: GPL-2.0+
2// Copyright (c) 2018 Facebook Inc.
3/dts-v1/;
4
5#include "ast2500-facebook-netbmc-common.dtsi"
6
7/ {
8 model = "Facebook Backpack CMM BMC";
9 compatible = "facebook,cmm-bmc", "aspeed,ast2500";
10
11 aliases {
12 /*
13 * Override the default uart aliases to avoid breaking
14 * the legacy applications.
15 */
16 serial0 = &uart5;
17 serial1 = &uart1;
18 serial2 = &uart3;
19 serial3 = &uart4;
20
21 /*
22 * PCA9548 (1-0077) provides 8 channels for connecting to
23 * 4 Line Cards and 4 Fabric Cards.
24 */
25 i2c16 = &imux16;
26 i2c17 = &imux17;
27 i2c18 = &imux18;
28 i2c19 = &imux19;
29 i2c20 = &imux20;
30 i2c21 = &imux21;
31 i2c22 = &imux22;
32 i2c23 = &imux23;
33
34 /*
35 * PCA9548 (2-0071) provides 8 channels for connecting to
36 * Power Distribution Board.
37 */
38 i2c24 = &imux24;
39 i2c25 = &imux25;
40 i2c26 = &imux26;
41 i2c27 = &imux27;
42 i2c28 = &imux28;
43 i2c29 = &imux29;
44 i2c30 = &imux30;
45 i2c31 = &imux31;
46
47 /*
48 * PCA9548 (8-0077) provides 8 channels and the first 4
49 * channels are connecting to 4 Fan Control Boards.
50 */
51 i2c32 = &imux32;
52 i2c33 = &imux33;
53 i2c34 = &imux34;
54 i2c35 = &imux35;
55 i2c36 = &imux36;
56 i2c37 = &imux37;
57 i2c38 = &imux38;
58 i2c39 = &imux39;
59
60 /*
61 * 2 PCA9548 (18-0070 & 18-0073), 16 channels connecting
62 * to Line Card #1.
63 */
64 i2c40 = &imux40;
65 i2c41 = &imux41;
66 i2c42 = &imux42;
67 i2c43 = &imux43;
68 i2c44 = &imux44;
69 i2c45 = &imux45;
70 i2c46 = &imux46;
71 i2c47 = &imux47;
72 i2c48 = &imux48;
73 i2c49 = &imux49;
74 i2c50 = &imux50;
75 i2c51 = &imux51;
76 i2c52 = &imux52;
77 i2c53 = &imux53;
78 i2c54 = &imux54;
79 i2c55 = &imux55;
80
81 /*
82 * 2 PCA9548 (19-0070 & 19-0073), 16 channels connecting
83 * to Line Card #2.
84 */
85 i2c56 = &imux56;
86 i2c57 = &imux57;
87 i2c58 = &imux58;
88 i2c59 = &imux59;
89 i2c60 = &imux60;
90 i2c61 = &imux61;
91 i2c62 = &imux62;
92 i2c63 = &imux63;
93 i2c64 = &imux64;
94 i2c65 = &imux65;
95 i2c66 = &imux66;
96 i2c67 = &imux67;
97 i2c68 = &imux68;
98 i2c69 = &imux69;
99 i2c70 = &imux70;
100 i2c71 = &imux71;
101
102 /*
103 * 2 PCA9548 (20-0070 & 20-0073), 16 channels connecting
104 * to Line Card #3.
105 */
106 i2c72 = &imux72;
107 i2c73 = &imux73;
108 i2c74 = &imux74;
109 i2c75 = &imux75;
110 i2c76 = &imux76;
111 i2c77 = &imux77;
112 i2c78 = &imux78;
113 i2c79 = &imux79;
114 i2c80 = &imux80;
115 i2c81 = &imux81;
116 i2c82 = &imux82;
117 i2c83 = &imux83;
118 i2c84 = &imux84;
119 i2c85 = &imux85;
120 i2c86 = &imux86;
121 i2c87 = &imux87;
122
123 /*
124 * 2 PCA9548 (21-0070 & 21-0073), 16 channels connecting
125 * to Line Card #4.
126 */
127 i2c88 = &imux88;
128 i2c89 = &imux89;
129 i2c90 = &imux90;
130 i2c91 = &imux91;
131 i2c92 = &imux92;
132 i2c93 = &imux93;
133 i2c94 = &imux94;
134 i2c95 = &imux95;
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 * 2 PCA9548 (16-0070 & 16-0073), 16 channels connecting
146 * to Fabric Card #1.
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 i2c112 = &imux112;
157 i2c113 = &imux113;
158 i2c114 = &imux114;
159 i2c115 = &imux115;
160 i2c116 = &imux116;
161 i2c117 = &imux117;
162 i2c118 = &imux118;
163 i2c119 = &imux119;
164
165 /*
166 * 2 PCA9548 (17-0070 & 17-0073), 16 channels connecting
167 * to Fabric Card #2.
168 */
169 i2c120 = &imux120;
170 i2c121 = &imux121;
171 i2c122 = &imux122;
172 i2c123 = &imux123;
173 i2c124 = &imux124;
174 i2c125 = &imux125;
175 i2c126 = &imux126;
176 i2c127 = &imux127;
177 i2c128 = &imux128;
178 i2c129 = &imux129;
179 i2c130 = &imux130;
180 i2c131 = &imux131;
181 i2c132 = &imux132;
182 i2c133 = &imux133;
183 i2c134 = &imux134;
184 i2c135 = &imux135;
185
186 /*
187 * 2 PCA9548 (22-0070 & 22-0073), 16 channels connecting
188 * to Fabric Card #3.
189 */
190 i2c136 = &imux136;
191 i2c137 = &imux137;
192 i2c138 = &imux138;
193 i2c139 = &imux139;
194 i2c140 = &imux140;
195 i2c141 = &imux141;
196 i2c142 = &imux142;
197 i2c143 = &imux143;
198 i2c144 = &imux144;
199 i2c145 = &imux145;
200 i2c146 = &imux146;
201 i2c147 = &imux147;
202 i2c148 = &imux148;
203 i2c149 = &imux149;
204 i2c150 = &imux150;
205 i2c151 = &imux151;
206
207 /*
208 * 2 PCA9548 (23-0070 & 23-0073), 16 channels connecting
209 * to Fabric Card #4.
210 */
211 i2c152 = &imux152;
212 i2c153 = &imux153;
213 i2c154 = &imux154;
214 i2c155 = &imux155;
215 i2c156 = &imux156;
216 i2c157 = &imux157;
217 i2c158 = &imux158;
218 i2c159 = &imux159;
219 i2c160 = &imux160;
220 i2c161 = &imux161;
221 i2c162 = &imux162;
222 i2c163 = &imux163;
223 i2c164 = &imux164;
224 i2c165 = &imux165;
225 i2c166 = &imux166;
226 i2c167 = &imux167;
227
228 /*
229 * PCA9548 (32-0070), 8 channels connecting to Fan Control
230 # Board #1.
231 */
232 i2c168 = &imux168;
233 i2c169 = &imux169;
234 i2c170 = &imux170;
235 i2c171 = &imux171;
236 i2c172 = &imux172;
237 i2c173 = &imux173;
238 i2c174 = &imux174;
239 i2c175 = &imux175;
240
241 /*
242 * PCA9548 (33-0070), 8 channels connecting to Fan Control
243 # Board #2.
244 */
245 i2c176 = &imux176;
246 i2c177 = &imux177;
247 i2c178 = &imux178;
248 i2c179 = &imux179;
249 i2c180 = &imux180;
250 i2c181 = &imux181;
251 i2c182 = &imux182;
252 i2c183 = &imux183;
253
254 /*
255 * PCA9548 (34-0070), 8 channels connecting to Fan Control
256 # Board #3.
257 */
258 i2c184 = &imux184;
259 i2c185 = &imux185;
260 i2c186 = &imux186;
261 i2c187 = &imux187;
262 i2c188 = &imux188;
263 i2c189 = &imux189;
264 i2c190 = &imux190;
265 i2c191 = &imux191;
266
267 /*
268 * PCA9548 (35-0070), 8 channels connecting to Fan Control
269 # Board #4.
270 */
271 i2c192 = &imux192;
272 i2c193 = &imux193;
273 i2c194 = &imux194;
274 i2c195 = &imux195;
275 i2c196 = &imux196;
276 i2c197 = &imux197;
277 i2c198 = &imux198;
278 i2c199 = &imux199;
279 };
280
281 chosen {
282 stdout-path = &uart1;
283 bootargs = "console=ttyS1,9600n8 root=/dev/ram rw earlycon";
284 };
285
286 ast-adc-hwmon {
287 compatible = "iio-hwmon";
288 io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>,
289 <&adc 4>, <&adc 5>, <&adc 6>, <&adc 7>;
290 };
291};
292
293&uart1 {
294 pinctrl-0 = <&pinctrl_txd1_default
295 &pinctrl_rxd1_default
296 &pinctrl_ncts1_default
297 &pinctrl_ndcd1_default
298 &pinctrl_ndsr1_default
299 &pinctrl_ndtr1_default
300 &pinctrl_nrts1_default>;
301};
302
303&uart3 {
304 pinctrl-0 = <&pinctrl_txd3_default
305 &pinctrl_rxd3_default
306 &pinctrl_ncts3_default
307 &pinctrl_ndcd3_default
308 &pinctrl_nri3_default>;
309};
310
311&uart4 {
312 status = "okay";
313 pinctrl-names = "default";
314 pinctrl-0 = <&pinctrl_txd4_default
315 &pinctrl_rxd4_default>;
316};
317
318/*
319 * I2C bus reserved for communication with COM-E.
320 */
321&i2c0 {
322 status = "okay";
323};
324
325/*
326 * I2C bus to Line Cards and Fabric Cards.
327 */
328&i2c1 {
329 status = "okay";
330
331 i2c-mux@77 {
332 compatible = "nxp,pca9548";
333 #address-cells = <1>;
334 #size-cells = <0>;
335 reg = <0x77>;
336 i2c-mux-idle-disconnect;
337
338 /* To Fabric Card #1 */
339 imux16: i2c@0 {
340 #address-cells = <1>;
341 #size-cells = <0>;
342 reg = <0>;
343
344 i2c-mux@70 {
345 compatible = "nxp,pca9548";
346 #address-cells = <1>;
347 #size-cells = <0>;
348 reg = <0x70>;
349 i2c-mux-idle-disconnect;
350
351 imux104: i2c@0 {
352 #address-cells = <1>;
353 #size-cells = <0>;
354 reg = <0>;
355 };
356 imux105: i2c@1 {
357 #address-cells = <1>;
358 #size-cells = <0>;
359 reg = <1>;
360 };
361 imux106: i2c@2 {
362 #address-cells = <1>;
363 #size-cells = <0>;
364 reg = <2>;
365 };
366 imux107: i2c@3 {
367 #address-cells = <1>;
368 #size-cells = <0>;
369 reg = <3>;
370 };
371 imux108: i2c@4 {
372 #address-cells = <1>;
373 #size-cells = <0>;
374 reg = <4>;
375 };
376 imux109: i2c@5 {
377 #address-cells = <1>;
378 #size-cells = <0>;
379 reg = <5>;
380 };
381 imux110: i2c@6 {
382 #address-cells = <1>;
383 #size-cells = <0>;
384 reg = <6>;
385 };
386 imux111: i2c@7 {
387 #address-cells = <1>;
388 #size-cells = <0>;
389 reg = <7>;
390 };
391 };
392
393 i2c-mux@73 {
394 compatible = "nxp,pca9548";
395 #address-cells = <1>;
396 #size-cells = <0>;
397 reg = <0x73>;
398 i2c-mux-idle-disconnect;
399
400 imux112: i2c@0 {
401 #address-cells = <1>;
402 #size-cells = <0>;
403 reg = <0>;
404 };
405 imux113: i2c@1 {
406 #address-cells = <1>;
407 #size-cells = <0>;
408 reg = <1>;
409 };
410 imux114: i2c@2 {
411 #address-cells = <1>;
412 #size-cells = <0>;
413 reg = <2>;
414 };
415 imux115: i2c@3 {
416 #address-cells = <1>;
417 #size-cells = <0>;
418 reg = <3>;
419 };
420 imux116: i2c@4 {
421 #address-cells = <1>;
422 #size-cells = <0>;
423 reg = <4>;
424 };
425 imux117: i2c@5 {
426 #address-cells = <1>;
427 #size-cells = <0>;
428 reg = <5>;
429 };
430 imux118: i2c@6 {
431 #address-cells = <1>;
432 #size-cells = <0>;
433 reg = <6>;
434 };
435 imux119: i2c@7 {
436 #address-cells = <1>;
437 #size-cells = <0>;
438 reg = <7>;
439 };
440 };
441 };
442
443 /* To Fabric Card #2 */
444 imux17: i2c@1 {
445 #address-cells = <1>;
446 #size-cells = <0>;
447 reg = <1>;
448
449 i2c-mux@70 {
450 compatible = "nxp,pca9548";
451 #address-cells = <1>;
452 #size-cells = <0>;
453 reg = <0x70>;
454 i2c-mux-idle-disconnect;
455
456 imux120: i2c@0 {
457 #address-cells = <1>;
458 #size-cells = <0>;
459 reg = <0>;
460 };
461 imux121: i2c@1 {
462 #address-cells = <1>;
463 #size-cells = <0>;
464 reg = <1>;
465 };
466 imux122: i2c@2 {
467 #address-cells = <1>;
468 #size-cells = <0>;
469 reg = <2>;
470 };
471 imux123: i2c@3 {
472 #address-cells = <1>;
473 #size-cells = <0>;
474 reg = <3>;
475 };
476 imux124: i2c@4 {
477 #address-cells = <1>;
478 #size-cells = <0>;
479 reg = <4>;
480 };
481 imux125: i2c@5 {
482 #address-cells = <1>;
483 #size-cells = <0>;
484 reg = <5>;
485 };
486 imux126: i2c@6 {
487 #address-cells = <1>;
488 #size-cells = <0>;
489 reg = <6>;
490 };
491 imux127: i2c@7 {
492 #address-cells = <1>;
493 #size-cells = <0>;
494 reg = <7>;
495 };
496 };
497
498 i2c-mux@73 {
499 compatible = "nxp,pca9548";
500 #address-cells = <1>;
501 #size-cells = <0>;
502 reg = <0x73>;
503 i2c-mux-idle-disconnect;
504
505 imux128: i2c@0 {
506 #address-cells = <1>;
507 #size-cells = <0>;
508 reg = <0>;
509 };
510 imux129: i2c@1 {
511 #address-cells = <1>;
512 #size-cells = <0>;
513 reg = <1>;
514 };
515 imux130: i2c@2 {
516 #address-cells = <1>;
517 #size-cells = <0>;
518 reg = <2>;
519 };
520 imux131: i2c@3 {
521 #address-cells = <1>;
522 #size-cells = <0>;
523 reg = <3>;
524 };
525 imux132: i2c@4 {
526 #address-cells = <1>;
527 #size-cells = <0>;
528 reg = <4>;
529 };
530 imux133: i2c@5 {
531 #address-cells = <1>;
532 #size-cells = <0>;
533 reg = <5>;
534 };
535 imux134: i2c@6 {
536 #address-cells = <1>;
537 #size-cells = <0>;
538 reg = <6>;
539 };
540 imux135: i2c@7 {
541 #address-cells = <1>;
542 #size-cells = <0>;
543 reg = <7>;
544 };
545 };
546 };
547
548 /* To Line Card #1 */
549 imux18: i2c@2 {
550 #address-cells = <1>;
551 #size-cells = <0>;
552 reg = <2>;
553
554 i2c-mux@70 {
555 compatible = "nxp,pca9548";
556 #address-cells = <1>;
557 #size-cells = <0>;
558 reg = <0x70>;
559 i2c-mux-idle-disconnect;
560
561 imux40: i2c@0 {
562 #address-cells = <1>;
563 #size-cells = <0>;
564 reg = <0>;
565 };
566 imux41: i2c@1 {
567 #address-cells = <1>;
568 #size-cells = <0>;
569 reg = <1>;
570 };
571 imux42: i2c@2 {
572 #address-cells = <1>;
573 #size-cells = <0>;
574 reg = <2>;
575 };
576 imux43: i2c@3 {
577 #address-cells = <1>;
578 #size-cells = <0>;
579 reg = <3>;
580 };
581 imux44: i2c@4 {
582 #address-cells = <1>;
583 #size-cells = <0>;
584 reg = <4>;
585 };
586 imux45: i2c@5 {
587 #address-cells = <1>;
588 #size-cells = <0>;
589 reg = <5>;
590 };
591 imux46: i2c@6 {
592 #address-cells = <1>;
593 #size-cells = <0>;
594 reg = <6>;
595 };
596 imux47: i2c@7 {
597 #address-cells = <1>;
598 #size-cells = <0>;
599 reg = <7>;
600 };
601 };
602
603 i2c-mux@73 {
604 compatible = "nxp,pca9548";
605 #address-cells = <1>;
606 #size-cells = <0>;
607 reg = <0x73>;
608 i2c-mux-idle-disconnect;
609
610 imux48: i2c@0 {
611 #address-cells = <1>;
612 #size-cells = <0>;
613 reg = <0>;
614 };
615 imux49: i2c@1 {
616 #address-cells = <1>;
617 #size-cells = <0>;
618 reg = <1>;
619 };
620 imux50: i2c@2 {
621 #address-cells = <1>;
622 #size-cells = <0>;
623 reg = <2>;
624 };
625 imux51: i2c@3 {
626 #address-cells = <1>;
627 #size-cells = <0>;
628 reg = <3>;
629 };
630 imux52: i2c@4 {
631 #address-cells = <1>;
632 #size-cells = <0>;
633 reg = <4>;
634 };
635 imux53: i2c@5 {
636 #address-cells = <1>;
637 #size-cells = <0>;
638 reg = <5>;
639 };
640 imux54: i2c@6 {
641 #address-cells = <1>;
642 #size-cells = <0>;
643 reg = <6>;
644 };
645 imux55: i2c@7 {
646 #address-cells = <1>;
647 #size-cells = <0>;
648 reg = <7>;
649 };
650 };
651 };
652
653 /* To Line Card #2 */
654 imux19: i2c@3 {
655 #address-cells = <1>;
656 #size-cells = <0>;
657 reg = <3>;
658
659 i2c-mux@70 {
660 compatible = "nxp,pca9548";
661 #address-cells = <1>;
662 #size-cells = <0>;
663 reg = <0x70>;
664 i2c-mux-idle-disconnect;
665
666 imux56: i2c@0 {
667 #address-cells = <1>;
668 #size-cells = <0>;
669 reg = <0>;
670 };
671 imux57: i2c@1 {
672 #address-cells = <1>;
673 #size-cells = <0>;
674 reg = <1>;
675 };
676 imux58: i2c@2 {
677 #address-cells = <1>;
678 #size-cells = <0>;
679 reg = <2>;
680 };
681 imux59: i2c@3 {
682 #address-cells = <1>;
683 #size-cells = <0>;
684 reg = <3>;
685 };
686 imux60: i2c@4 {
687 #address-cells = <1>;
688 #size-cells = <0>;
689 reg = <4>;
690 };
691 imux61: i2c@5 {
692 #address-cells = <1>;
693 #size-cells = <0>;
694 reg = <5>;
695 };
696 imux62: i2c@6 {
697 #address-cells = <1>;
698 #size-cells = <0>;
699 reg = <6>;
700 };
701 imux63: i2c@7 {
702 #address-cells = <1>;
703 #size-cells = <0>;
704 reg = <7>;
705 };
706 };
707
708 i2c-mux@73 {
709 compatible = "nxp,pca9548";
710 #address-cells = <1>;
711 #size-cells = <0>;
712 reg = <0x73>;
713 i2c-mux-idle-disconnect;
714
715 imux64: i2c@0 {
716 #address-cells = <1>;
717 #size-cells = <0>;
718 reg = <0>;
719 };
720 imux65: i2c@1 {
721 #address-cells = <1>;
722 #size-cells = <0>;
723 reg = <1>;
724 };
725 imux66: i2c@2 {
726 #address-cells = <1>;
727 #size-cells = <0>;
728 reg = <2>;
729 };
730 imux67: i2c@3 {
731 #address-cells = <1>;
732 #size-cells = <0>;
733 reg = <3>;
734 };
735 imux68: i2c@4 {
736 #address-cells = <1>;
737 #size-cells = <0>;
738 reg = <4>;
739 };
740 imux69: i2c@5 {
741 #address-cells = <1>;
742 #size-cells = <0>;
743 reg = <5>;
744 };
745 imux70: i2c@6 {
746 #address-cells = <1>;
747 #size-cells = <0>;
748 reg = <6>;
749 };
750 imux71: i2c@7 {
751 #address-cells = <1>;
752 #size-cells = <0>;
753 reg = <7>;
754 };
755 };
756 };
757
758 /* To LC3 SCM */
759 imux20: i2c@4 {
760 #address-cells = <1>;
761 #size-cells = <0>;
762 reg = <4>;
763
764 i2c-mux@70 {
765 compatible = "nxp,pca9548";
766 #address-cells = <1>;
767 #size-cells = <0>;
768 reg = <0x70>;
769 i2c-mux-idle-disconnect;
770
771 imux72: i2c@0 {
772 #address-cells = <1>;
773 #size-cells = <0>;
774 reg = <0>;
775 };
776 imux73: i2c@1 {
777 #address-cells = <1>;
778 #size-cells = <0>;
779 reg = <1>;
780 };
781 imux74: i2c@2 {
782 #address-cells = <1>;
783 #size-cells = <0>;
784 reg = <2>;
785 };
786 imux75: i2c@3 {
787 #address-cells = <1>;
788 #size-cells = <0>;
789 reg = <3>;
790 };
791 imux76: i2c@4 {
792 #address-cells = <1>;
793 #size-cells = <0>;
794 reg = <4>;
795 };
796 imux77: i2c@5 {
797 #address-cells = <1>;
798 #size-cells = <0>;
799 reg = <5>;
800 };
801 imux78: i2c@6 {
802 #address-cells = <1>;
803 #size-cells = <0>;
804 reg = <6>;
805 };
806 imux79: i2c@7 {
807 #address-cells = <1>;
808 #size-cells = <0>;
809 reg = <7>;
810 };
811 };
812
813 i2c-mux@73 {
814 compatible = "nxp,pca9548";
815 #address-cells = <1>;
816 #size-cells = <0>;
817 reg = <0x73>;
818 i2c-mux-idle-disconnect;
819
820 imux80: i2c@0 {
821 #address-cells = <1>;
822 #size-cells = <0>;
823 reg = <0>;
824 };
825 imux81: i2c@1 {
826 #address-cells = <1>;
827 #size-cells = <0>;
828 reg = <1>;
829 };
830 imux82: i2c@2 {
831 #address-cells = <1>;
832 #size-cells = <0>;
833 reg = <2>;
834 };
835 imux83: i2c@3 {
836 #address-cells = <1>;
837 #size-cells = <0>;
838 reg = <3>;
839 };
840 imux84: i2c@4 {
841 #address-cells = <1>;
842 #size-cells = <0>;
843 reg = <4>;
844 };
845 imux85: i2c@5 {
846 #address-cells = <1>;
847 #size-cells = <0>;
848 reg = <5>;
849 };
850 imux86: i2c@6 {
851 #address-cells = <1>;
852 #size-cells = <0>;
853 reg = <6>;
854 };
855 imux87: i2c@7 {
856 #address-cells = <1>;
857 #size-cells = <0>;
858 reg = <7>;
859 };
860 };
861 };
862
863 /* To Line Card #4 */
864 imux21: i2c@5 {
865 #address-cells = <1>;
866 #size-cells = <0>;
867 reg = <5>;
868
869 i2c-mux@70 {
870 compatible = "nxp,pca9548";
871 #address-cells = <1>;
872 #size-cells = <0>;
873 reg = <0x70>;
874 i2c-mux-idle-disconnect;
875
876 imux88: i2c@0 {
877 #address-cells = <1>;
878 #size-cells = <0>;
879 reg = <0>;
880 };
881 imux89: i2c@1 {
882 #address-cells = <1>;
883 #size-cells = <0>;
884 reg = <1>;
885 };
886 imux90: i2c@2 {
887 #address-cells = <1>;
888 #size-cells = <0>;
889 reg = <2>;
890 };
891 imux91: i2c@3 {
892 #address-cells = <1>;
893 #size-cells = <0>;
894 reg = <3>;
895 };
896 imux92: i2c@4 {
897 #address-cells = <1>;
898 #size-cells = <0>;
899 reg = <4>;
900 };
901 imux93: i2c@5 {
902 #address-cells = <1>;
903 #size-cells = <0>;
904 reg = <5>;
905 };
906 imux94: i2c@6 {
907 #address-cells = <1>;
908 #size-cells = <0>;
909 reg = <6>;
910 };
911 imux95: i2c@7 {
912 #address-cells = <1>;
913 #size-cells = <0>;
914 reg = <7>;
915 };
916 };
917
918 i2c-mux@73 {
919 compatible = "nxp,pca9548";
920 #address-cells = <1>;
921 #size-cells = <0>;
922 reg = <0x73>;
923 i2c-mux-idle-disconnect;
924
925 imux96: i2c@0 {
926 #address-cells = <1>;
927 #size-cells = <0>;
928 reg = <0>;
929 };
930 imux97: i2c@1 {
931 #address-cells = <1>;
932 #size-cells = <0>;
933 reg = <1>;
934 };
935 imux98: i2c@2 {
936 #address-cells = <1>;
937 #size-cells = <0>;
938 reg = <2>;
939 };
940 imux99: i2c@3 {
941 #address-cells = <1>;
942 #size-cells = <0>;
943 reg = <3>;
944 };
945 imux100: i2c@4 {
946 #address-cells = <1>;
947 #size-cells = <0>;
948 reg = <4>;
949 };
950 imux101: i2c@5 {
951 #address-cells = <1>;
952 #size-cells = <0>;
953 reg = <5>;
954 };
955 imux102: i2c@6 {
956 #address-cells = <1>;
957 #size-cells = <0>;
958 reg = <6>;
959 };
960 imux103: i2c@7 {
961 #address-cells = <1>;
962 #size-cells = <0>;
963 reg = <7>;
964 };
965 };
966 };
967
968 /* To Fabric Card #3 */
969 imux22: i2c@6 {
970 #address-cells = <1>;
971 #size-cells = <0>;
972 reg = <6>;
973
974 i2c-mux@70 {
975 compatible = "nxp,pca9548";
976 #address-cells = <1>;
977 #size-cells = <0>;
978 reg = <0x70>;
979 i2c-mux-idle-disconnect;
980
981 imux136: i2c@0 {
982 #address-cells = <1>;
983 #size-cells = <0>;
984 reg = <0>;
985 };
986 imux137: i2c@1 {
987 #address-cells = <1>;
988 #size-cells = <0>;
989 reg = <1>;
990 };
991 imux138: i2c@2 {
992 #address-cells = <1>;
993 #size-cells = <0>;
994 reg = <2>;
995 };
996 imux139: i2c@3 {
997 #address-cells = <1>;
998 #size-cells = <0>;
999 reg = <3>;
1000 };
1001 imux140: i2c@4 {
1002 #address-cells = <1>;
1003 #size-cells = <0>;
1004 reg = <4>;
1005 };
1006 imux141: i2c@5 {
1007 #address-cells = <1>;
1008 #size-cells = <0>;
1009 reg = <5>;
1010 };
1011 imux142: i2c@6 {
1012 #address-cells = <1>;
1013 #size-cells = <0>;
1014 reg = <6>;
1015 };
1016 imux143: i2c@7 {
1017 #address-cells = <1>;
1018 #size-cells = <0>;
1019 reg = <7>;
1020 };
1021 };
1022
1023 i2c-mux@73 {
1024 compatible = "nxp,pca9548";
1025 #address-cells = <1>;
1026 #size-cells = <0>;
1027 reg = <0x73>;
1028 i2c-mux-idle-disconnect;
1029
1030 imux144: i2c@0 {
1031 #address-cells = <1>;
1032 #size-cells = <0>;
1033 reg = <0>;
1034 };
1035 imux145: i2c@1 {
1036 #address-cells = <1>;
1037 #size-cells = <0>;
1038 reg = <1>;
1039 };
1040 imux146: i2c@2 {
1041 #address-cells = <1>;
1042 #size-cells = <0>;
1043 reg = <2>;
1044 };
1045 imux147: i2c@3 {
1046 #address-cells = <1>;
1047 #size-cells = <0>;
1048 reg = <3>;
1049 };
1050 imux148: i2c@4 {
1051 #address-cells = <1>;
1052 #size-cells = <0>;
1053 reg = <4>;
1054 };
1055 imux149: i2c@5 {
1056 #address-cells = <1>;
1057 #size-cells = <0>;
1058 reg = <5>;
1059 };
1060 imux150: i2c@6 {
1061 #address-cells = <1>;
1062 #size-cells = <0>;
1063 reg = <6>;
1064 };
1065 imux151: i2c@7 {
1066 #address-cells = <1>;
1067 #size-cells = <0>;
1068 reg = <7>;
1069 };
1070 };
1071 };
1072
1073 /* To Fabric Card #4 */
1074 imux23: i2c@7 {
1075 #address-cells = <1>;
1076 #size-cells = <0>;
1077 reg = <7>;
1078
1079 i2c-mux@70 {
1080 compatible = "nxp,pca9548";
1081 #address-cells = <1>;
1082 #size-cells = <0>;
1083 reg = <0x70>;
1084 i2c-mux-idle-disconnect;
1085
1086 imux152: i2c@0 {
1087 #address-cells = <1>;
1088 #size-cells = <0>;
1089 reg = <0>;
1090 };
1091 imux153: i2c@1 {
1092 #address-cells = <1>;
1093 #size-cells = <0>;
1094 reg = <1>;
1095 };
1096 imux154: i2c@2 {
1097 #address-cells = <1>;
1098 #size-cells = <0>;
1099 reg = <2>;
1100 };
1101 imux155: i2c@3 {
1102 #address-cells = <1>;
1103 #size-cells = <0>;
1104 reg = <3>;
1105 };
1106 imux156: i2c@4 {
1107 #address-cells = <1>;
1108 #size-cells = <0>;
1109 reg = <4>;
1110 };
1111 imux157: i2c@5 {
1112 #address-cells = <1>;
1113 #size-cells = <0>;
1114 reg = <5>;
1115 };
1116 imux158: i2c@6 {
1117 #address-cells = <1>;
1118 #size-cells = <0>;
1119 reg = <6>;
1120 };
1121 imux159: i2c@7 {
1122 #address-cells = <1>;
1123 #size-cells = <0>;
1124 reg = <7>;
1125 };
1126 };
1127
1128 i2c-mux@73 {
1129 compatible = "nxp,pca9548";
1130 #address-cells = <1>;
1131 #size-cells = <0>;
1132 reg = <0x73>;
1133 i2c-mux-idle-disconnect;
1134
1135 imux160: i2c@0 {
1136 #address-cells = <1>;
1137 #size-cells = <0>;
1138 reg = <0>;
1139 };
1140 imux161: i2c@1 {
1141 #address-cells = <1>;
1142 #size-cells = <0>;
1143 reg = <1>;
1144 };
1145 imux162: i2c@2 {
1146 #address-cells = <1>;
1147 #size-cells = <0>;
1148 reg = <2>;
1149 };
1150 imux163: i2c@3 {
1151 #address-cells = <1>;
1152 #size-cells = <0>;
1153 reg = <3>;
1154 };
1155 imux164: i2c@4 {
1156 #address-cells = <1>;
1157 #size-cells = <0>;
1158 reg = <4>;
1159 };
1160 imux165: i2c@5 {
1161 #address-cells = <1>;
1162 #size-cells = <0>;
1163 reg = <5>;
1164 };
1165 imux166: i2c@6 {
1166 #address-cells = <1>;
1167 #size-cells = <0>;
1168 reg = <6>;
1169 };
1170 imux167: i2c@7 {
1171 #address-cells = <1>;
1172 #size-cells = <0>;
1173 reg = <7>;
1174 };
1175 };
1176 };
1177 };
1178};
1179
1180/*
1181 * I2C bus to Power Distribution Board.
1182 */
1183&i2c2 {
1184 status = "okay";
1185
1186 i2c-mux@71 {
1187 compatible = "nxp,pca9548";
1188 #address-cells = <1>;
1189 #size-cells = <0>;
1190 reg = <0x71>;
1191 i2c-mux-idle-disconnect;
1192
1193 imux24: i2c@0 {
1194 #address-cells = <1>;
1195 #size-cells = <0>;
1196 reg = <0>;
1197 };
1198
1199 imux25: i2c@1 {
1200 #address-cells = <1>;
1201 #size-cells = <0>;
1202 reg = <1>;
1203 };
1204
1205 imux26: i2c@2 {
1206 #address-cells = <1>;
1207 #size-cells = <0>;
1208 reg = <2>;
1209 };
1210
1211 imux27: i2c@3 {
1212 #address-cells = <1>;
1213 #size-cells = <0>;
1214 reg = <3>;
1215 };
1216
1217 imux28: i2c@4 {
1218 #address-cells = <1>;
1219 #size-cells = <0>;
1220 reg = <4>;
1221 };
1222
1223 imux29: i2c@5 {
1224 #address-cells = <1>;
1225 #size-cells = <0>;
1226 reg = <5>;
1227 };
1228
1229 imux30: i2c@6 {
1230 #address-cells = <1>;
1231 #size-cells = <0>;
1232 reg = <6>;
1233 };
1234
1235 imux31: i2c@7 {
1236 #address-cells = <1>;
1237 #size-cells = <0>;
1238 reg = <7>;
1239 };
1240 };
1241};
1242
1243/*
1244 * I2c bus connected with temperature sensors on CMM.
1245 */
1246&i2c3 {
1247 status = "okay";
1248};
1249
1250/*
1251 * I2C bus reserved for communication with COM-E.
1252 */
1253&i2c4 {
1254 status = "okay";
1255};
1256
1257/*
1258 * I2c bus connected with ADM1278.
1259 */
1260&i2c5 {
1261 status = "okay";
1262};
1263
1264/*
1265 * I2c bus connected with I/O Expander.
1266 */
1267&i2c6 {
1268 status = "okay";
1269};
1270
1271/*
1272 * I2c bus connected with I/O Expander and EPROMs.
1273 */
1274&i2c7 {
1275 status = "okay";
1276};
1277
1278/*
1279 * I2C bus to Fan Control Boards.
1280 */
1281&i2c8 {
1282 status = "okay";
1283
1284 i2c-mux@77 {
1285 compatible = "nxp,pca9548";
1286 #address-cells = <1>;
1287 #size-cells = <0>;
1288 reg = <0x77>;
1289 i2c-mux-idle-disconnect;
1290
1291 /* To Fan Control Board #1 */
1292 imux32: i2c@0 {
1293 #address-cells = <1>;
1294 #size-cells = <0>;
1295 reg = <0>;
1296
1297 i2c-mux@70 {
1298 compatible = "nxp,pca9548";
1299 #address-cells = <1>;
1300 #size-cells = <0>;
1301 reg = <0x70>;
1302 i2c-mux-idle-disconnect;
1303
1304 imux168: i2c@0 {
1305 #address-cells = <1>;
1306 #size-cells = <0>;
1307 reg = <0>;
1308 };
1309 imux169: i2c@1 {
1310 #address-cells = <1>;
1311 #size-cells = <0>;
1312 reg = <1>;
1313 };
1314 imux170: i2c@2 {
1315 #address-cells = <1>;
1316 #size-cells = <0>;
1317 reg = <2>;
1318 };
1319 imux171: i2c@3 {
1320 #address-cells = <1>;
1321 #size-cells = <0>;
1322 reg = <3>;
1323 };
1324 imux172: i2c@4 {
1325 #address-cells = <1>;
1326 #size-cells = <0>;
1327 reg = <4>;
1328 };
1329 imux173: i2c@5 {
1330 #address-cells = <1>;
1331 #size-cells = <0>;
1332 reg = <5>;
1333 };
1334 imux174: i2c@6 {
1335 #address-cells = <1>;
1336 #size-cells = <0>;
1337 reg = <6>;
1338 };
1339 imux175: i2c@7 {
1340 #address-cells = <1>;
1341 #size-cells = <0>;
1342 reg = <7>;
1343 };
1344 };
1345 };
1346
1347 /* To Fan Control Board #2 */
1348 imux33: i2c@1 {
1349 #address-cells = <1>;
1350 #size-cells = <0>;
1351 reg = <1>;
1352
1353 i2c-mux@70 {
1354 compatible = "nxp,pca9548";
1355 #address-cells = <1>;
1356 #size-cells = <0>;
1357 reg = <0x70>;
1358 i2c-mux-idle-disconnect;
1359
1360 imux176: i2c@0 {
1361 #address-cells = <1>;
1362 #size-cells = <0>;
1363 reg = <0>;
1364 };
1365 imux177: i2c@1 {
1366 #address-cells = <1>;
1367 #size-cells = <0>;
1368 reg = <1>;
1369 };
1370 imux178: i2c@2 {
1371 #address-cells = <1>;
1372 #size-cells = <0>;
1373 reg = <2>;
1374 };
1375 imux179: i2c@3 {
1376 #address-cells = <1>;
1377 #size-cells = <0>;
1378 reg = <3>;
1379 };
1380 imux180: i2c@4 {
1381 #address-cells = <1>;
1382 #size-cells = <0>;
1383 reg = <4>;
1384 };
1385 imux181: i2c@5 {
1386 #address-cells = <1>;
1387 #size-cells = <0>;
1388 reg = <5>;
1389 };
1390 imux182: i2c@6 {
1391 #address-cells = <1>;
1392 #size-cells = <0>;
1393 reg = <6>;
1394 };
1395 imux183: i2c@7 {
1396 #address-cells = <1>;
1397 #size-cells = <0>;
1398 reg = <7>;
1399 };
1400 };
1401 };
1402
1403 /* To Fan Control Board #3 */
1404 imux34: i2c@2 {
1405 #address-cells = <1>;
1406 #size-cells = <0>;
1407 reg = <2>;
1408
1409 i2c-mux@70 {
1410 compatible = "nxp,pca9548";
1411 #address-cells = <1>;
1412 #size-cells = <0>;
1413 reg = <0x70>;
1414 i2c-mux-idle-disconnect;
1415
1416 imux184: i2c@0 {
1417 #address-cells = <1>;
1418 #size-cells = <0>;
1419 reg = <0>;
1420 };
1421 imux185: i2c@1 {
1422 #address-cells = <1>;
1423 #size-cells = <0>;
1424 reg = <1>;
1425 };
1426 imux186: i2c@2 {
1427 #address-cells = <1>;
1428 #size-cells = <0>;
1429 reg = <2>;
1430 };
1431 imux187: i2c@3 {
1432 #address-cells = <1>;
1433 #size-cells = <0>;
1434 reg = <3>;
1435 };
1436 imux188: i2c@4 {
1437 #address-cells = <1>;
1438 #size-cells = <0>;
1439 reg = <4>;
1440 };
1441 imux189: i2c@5 {
1442 #address-cells = <1>;
1443 #size-cells = <0>;
1444 reg = <5>;
1445 };
1446 imux190: i2c@6 {
1447 #address-cells = <1>;
1448 #size-cells = <0>;
1449 reg = <6>;
1450 };
1451 imux191: i2c@7 {
1452 #address-cells = <1>;
1453 #size-cells = <0>;
1454 reg = <7>;
1455 };
1456 };
1457 };
1458
1459 /* To Fan Control Board #4 */
1460 imux35: i2c@3 {
1461 #address-cells = <1>;
1462 #size-cells = <0>;
1463 reg = <3>;
1464
1465 i2c-mux@70 {
1466 compatible = "nxp,pca9548";
1467 #address-cells = <1>;
1468 #size-cells = <0>;
1469 reg = <0x70>;
1470 i2c-mux-idle-disconnect;
1471
1472 imux192: i2c@0 {
1473 #address-cells = <1>;
1474 #size-cells = <0>;
1475 reg = <0>;
1476 };
1477 imux193: i2c@1 {
1478 #address-cells = <1>;
1479 #size-cells = <0>;
1480 reg = <1>;
1481 };
1482 imux194: i2c@2 {
1483 #address-cells = <1>;
1484 #size-cells = <0>;
1485 reg = <2>;
1486 };
1487 imux195: i2c@3 {
1488 #address-cells = <1>;
1489 #size-cells = <0>;
1490 reg = <3>;
1491 };
1492 imux196: i2c@4 {
1493 #address-cells = <1>;
1494 #size-cells = <0>;
1495 reg = <4>;
1496 };
1497 imux197: i2c@5 {
1498 #address-cells = <1>;
1499 #size-cells = <0>;
1500 reg = <5>;
1501 };
1502 imux198: i2c@6 {
1503 #address-cells = <1>;
1504 #size-cells = <0>;
1505 reg = <6>;
1506 };
1507 imux199: i2c@7 {
1508 #address-cells = <1>;
1509 #size-cells = <0>;
1510 reg = <7>;
1511 };
1512 };
1513 };
1514
1515 imux36: i2c@4 {
1516 #address-cells = <1>;
1517 #size-cells = <0>;
1518 reg = <4>;
1519 };
1520
1521 imux37: i2c@5 {
1522 #address-cells = <1>;
1523 #size-cells = <0>;
1524 reg = <5>;
1525 };
1526
1527 imux38: i2c@6 {
1528 #address-cells = <1>;
1529 #size-cells = <0>;
1530 reg = <6>;
1531 };
1532
1533 imux39: i2c@7 {
1534 #address-cells = <1>;
1535 #size-cells = <0>;
1536 reg = <7>;
1537 };
1538 };
1539};
1540
1541/*
1542 * I2C bus to CMM CPLD.
1543 */
1544&i2c13 {
1545 status = "okay";
1546};
1547
1548&adc {
1549 status = "okay";
1550};
1551
1552&ehci0 {
1553 status = "okay";
1554};
1555
1556&ehci1 {
1557 status = "okay";
1558};
1559
1560&vhub {
1561 status = "disabled";
1562};
1563
1564&sdhci0 {
1565 status = "okay";
1566
1567 pinctrl-names = "default";
1568 pinctrl-0 = <&pinctrl_sd1_default>;
1569};
1570
1571&sdhci1 {
1572 status = "disabled";
1573};
1574
1575&fmc_flash0 {
1576#include "facebook-bmc-flash-layout.dtsi"
1577};
1578
1579&fmc_flash1 {
1580 partitions {
1581 compatible = "fixed-partitions";
1582 #address-cells = <1>;
1583 #size-cells = <1>;
1584
1585 flash1@0 {
1586 reg = <0x0 0x2000000>;
1587 label = "flash1";
1588 };
1589 };
1590};