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