1// 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}; 1591