1// SPDX-License-Identifier: GPL-2.0-or-later 2// Copyright 2023 Facebook Inc. 3 4/dts-v1/; 5#include "aspeed-g6.dtsi" 6#include <dt-bindings/gpio/aspeed-gpio.h> 7#include <dt-bindings/i2c/i2c.h> 8 9/ { 10 model = "Facebook Harma"; 11 compatible = "facebook,harma-bmc", "aspeed,ast2600"; 12 13 aliases { 14 serial0 = &uart1; 15 serial1 = &uart2; 16 serial2 = &uart4; 17 serial4 = &uart5; 18 19 i2c20 = &imux20; 20 i2c21 = &imux21; 21 i2c22 = &imux22; 22 i2c23 = &imux23; 23 i2c28 = &imux28; 24 i2c29 = &imux29; 25 i2c30 = &imux30; 26 i2c31 = &imux31; 27 28 spi1 = &spi_gpio; 29 }; 30 31 chosen { 32 stdout-path = &uart5; 33 }; 34 35 memory@80000000 { 36 device_type = "memory"; 37 reg = <0x80000000 0x80000000>; 38 }; 39 40 iio-hwmon { 41 compatible = "iio-hwmon"; 42 io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>, <&adc0 3>, 43 <&adc0 4>, <&adc0 5>, <&adc0 6>, <&adc0 7>, 44 <&adc1 2>; 45 }; 46 47 leds { 48 compatible = "gpio-leds"; 49 50 led-0 { 51 label = "bmc_heartbeat_amber"; 52 gpios = <&gpio0 ASPEED_GPIO(P, 7) GPIO_ACTIVE_LOW>; 53 linux,default-trigger = "heartbeat"; 54 }; 55 56 led-1 { 57 label = "fp_id_amber"; 58 default-state = "off"; 59 gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>; 60 }; 61 62 led-2 { 63 label = "power_blue"; 64 default-state = "off"; 65 gpios = <&gpio0 124 GPIO_ACTIVE_HIGH>; 66 }; 67 }; 68 69 spi_gpio: spi { 70 status = "okay"; 71 compatible = "spi-gpio"; 72 #address-cells = <1>; 73 #size-cells = <0>; 74 75 sck-gpios = <&gpio0 ASPEED_GPIO(Z, 3) GPIO_ACTIVE_HIGH>; 76 mosi-gpios = <&gpio0 ASPEED_GPIO(Z, 4) GPIO_ACTIVE_HIGH>; 77 miso-gpios = <&gpio0 ASPEED_GPIO(Z, 5) GPIO_ACTIVE_HIGH>; 78 num-chipselects = <1>; 79 cs-gpios = <&gpio0 ASPEED_GPIO(Z, 0) GPIO_ACTIVE_LOW>; 80 81 tpm@0 { 82 compatible = "infineon,slb9670", "tcg,tpm_tis-spi"; 83 spi-max-frequency = <33000000>; 84 reg = <0>; 85 }; 86 }; 87}; 88 89// HOST BIOS Debug 90&uart1 { 91 status = "okay"; 92}; 93 94// SOL Host Console 95&uart2 { 96 status = "okay"; 97 pinctrl-0 = <>; 98}; 99 100// SOL BMC Console 101&uart4 { 102 status = "okay"; 103 pinctrl-0 = <>; 104}; 105 106// BMC Debug Console 107&uart5 { 108 status = "okay"; 109}; 110 111// MTIA 112&uart6 { 113 status = "okay"; 114}; 115 116&uart_routing { 117 status = "okay"; 118}; 119 120&wdt1 { 121 status = "okay"; 122 pinctrl-names = "default"; 123 pinctrl-0 = <&pinctrl_wdtrst1_default>; 124 aspeed,reset-type = "soc"; 125 aspeed,external-signal; 126 aspeed,ext-push-pull; 127 aspeed,ext-active-high; 128 aspeed,ext-pulse-duration = <256>; 129}; 130 131&mac3 { 132 status = "okay"; 133 pinctrl-names = "default"; 134 pinctrl-0 = <&pinctrl_rmii4_default>; 135 use-ncsi; 136}; 137 138&fmc { 139 status = "okay"; 140 141 flash@0 { 142 status = "okay"; 143 m25p,fast-read; 144 label = "bmc"; 145 spi-max-frequency = <50000000>; 146#include "openbmc-flash-layout-128.dtsi" 147 }; 148 149 flash@1 { 150 status = "okay"; 151 m25p,fast-read; 152 label = "alt-bmc"; 153 spi-max-frequency = <50000000>; 154 }; 155}; 156 157// BIOS Flash 158&spi2 { 159 status = "okay"; 160 pinctrl-names = "default"; 161 pinctrl-0 = <&pinctrl_spi2_default>; 162 163 flash@0 { 164 status = "okay"; 165 m25p,fast-read; 166 label = "pnor"; 167 spi-max-frequency = <12000000>; 168 spi-tx-bus-width = <2>; 169 spi-rx-bus-width = <2>; 170 }; 171}; 172 173&kcs2 { 174 status = "okay"; 175 aspeed,lpc-io-reg = <0xca8>; 176}; 177 178&kcs3 { 179 status = "okay"; 180 aspeed,lpc-io-reg = <0xca2>; 181}; 182 183&i2c0 { 184 status = "okay"; 185 186 pwm@5e{ 187 compatible = "max31790"; 188 reg = <0x5e>; 189 #address-cells = <1>; 190 #size-cells = <0>; 191 }; 192 193 power-sensor@40 { 194 compatible = "ti,ina238"; 195 reg = <0x40>; 196 shunt-resistor = <1000>; 197 }; 198 199 power-sensor@41 { 200 compatible = "ti,ina238"; 201 reg = <0x41>; 202 shunt-resistor = <1000>; 203 }; 204 205 power-sensor@44 { 206 compatible = "ti,ina238"; 207 reg = <0x44>; 208 shunt-resistor = <1000>; 209 }; 210 211 power-sensor@45 { 212 compatible = "ti,ina238"; 213 reg = <0x45>; 214 shunt-resistor = <1000>; 215 }; 216 217 temperature-sensor@4b { 218 compatible = "ti,tmp75"; 219 reg = <0x4b>; 220 }; 221}; 222 223&i2c1 { 224 status = "okay"; 225 226 temperature-sensor@4b { 227 compatible = "ti,tmp75"; 228 reg = <0x4b>; 229 }; 230 231 // MB NIC FRU 232 eeprom@50 { 233 compatible = "atmel,24c64"; 234 reg = <0x50>; 235 }; 236}; 237 238&i2c2 { 239 status = "okay"; 240 241 pwm@5e{ 242 compatible = "max31790"; 243 reg = <0x5e>; 244 #address-cells = <1>; 245 #size-cells = <0>; 246 }; 247 248 power-sensor@40 { 249 compatible = "ti,ina238"; 250 reg = <0x40>; 251 shunt-resistor = <1000>; 252 }; 253 254 power-sensor@41 { 255 compatible = "ti,ina238"; 256 reg = <0x41>; 257 shunt-resistor = <1000>; 258 }; 259 260 power-sensor@44 { 261 compatible = "ti,ina238"; 262 reg = <0x44>; 263 shunt-resistor = <1000>; 264 }; 265 266 power-sensor@45 { 267 compatible = "ti,ina238"; 268 reg = <0x45>; 269 shunt-resistor = <1000>; 270 }; 271 272 temperature-sensor@4b { 273 compatible = "ti,tmp75"; 274 reg = <0x4b>; 275 }; 276}; 277 278&i2c3 { 279 status = "okay"; 280 281 i2c-mux@70 { 282 compatible = "nxp,pca9543"; 283 reg = <0x70>; 284 #address-cells = <1>; 285 #size-cells = <0>; 286 287 imux20: i2c@0 { 288 #address-cells = <1>; 289 #size-cells = <0>; 290 reg = <0>; 291 //Retimer Flash 292 eeprom@50 { 293 compatible = "atmel,24c2048"; 294 reg = <0x50>; 295 pagesize = <128>; 296 }; 297 }; 298 imux21: i2c@1 { 299 #address-cells = <1>; 300 #size-cells = <0>; 301 reg = <1>; 302 retimer@24 { 303 compatible = "asteralabs,pt5161l"; 304 reg = <0x24>; 305 }; 306 }; 307 }; 308}; 309 310&i2c4 { 311 status = "okay"; 312 // PDB FRU 313 eeprom@52 { 314 compatible = "atmel,24c64"; 315 reg = <0x52>; 316 }; 317 318 power-monitor@69 { 319 compatible = "pmbus"; 320 reg = <0x69>; 321 }; 322 323 temperature-sensor@49 { 324 compatible = "ti,tmp75"; 325 reg = <0x49>; 326 }; 327 328 power-monitor@44 { 329 compatible = "lltc,ltc4287"; 330 reg = <0x44>; 331 shunt-resistor-micro-ohms = <250>; 332 }; 333 334 power-monitor@40 { 335 compatible = "infineon,xdp710"; 336 reg = <0x40>; 337 }; 338}; 339 340&i2c5 { 341 status = "okay"; 342}; 343 344&i2c6 { 345 status = "okay"; 346 347 i2c-mux@70 { 348 compatible = "nxp,pca9543"; 349 reg = <0x70>; 350 #address-cells = <1>; 351 #size-cells = <0>; 352 353 imux22: i2c@0 { 354 #address-cells = <1>; 355 #size-cells = <0>; 356 reg = <0>; 357 }; 358 imux23: i2c@1 { 359 #address-cells = <1>; 360 #size-cells = <0>; 361 reg = <1>; 362 }; 363 }; 364}; 365 366&i2c7 { 367 status = "okay"; 368}; 369 370&i2c8 { 371 status = "okay"; 372}; 373 374&i2c9 { 375 status = "okay"; 376 377 mctp-controller; 378 multi-master; 379 380 mctp@10 { 381 compatible = "mctp-i2c-controller"; 382 reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>; 383 }; 384 385 gpio@30 { 386 compatible = "nxp,pca9555"; 387 reg = <0x30>; 388 gpio-controller; 389 #gpio-cells = <2>; 390 }; 391 gpio@31 { 392 compatible = "nxp,pca9555"; 393 reg = <0x31>; 394 gpio-controller; 395 #gpio-cells = <2>; 396 }; 397 398 // PTTV FRU 399 eeprom@52 { 400 compatible = "atmel,24c64"; 401 reg = <0x52>; 402 }; 403}; 404 405&i2c11 { 406 status = "okay"; 407 408 gpio@30 { 409 compatible = "nxp,pca9555"; 410 reg = <0x30>; 411 gpio-controller; 412 #gpio-cells = <2>; 413 }; 414 gpio@31 { 415 compatible = "nxp,pca9555"; 416 reg = <0x31>; 417 gpio-controller; 418 #gpio-cells = <2>; 419 }; 420 421 // Aegis FRU 422 eeprom@52 { 423 compatible = "atmel,24c64"; 424 reg = <0x52>; 425 }; 426}; 427 428&i2c12 { 429 status = "okay"; 430 retimer@24 { 431 compatible = "asteralabs,pt5161l"; 432 reg = <0x24>; 433 }; 434}; 435 436&i2c13 { 437 status = "okay"; 438 439 i2c-mux@70 { 440 compatible = "nxp,pca9545"; 441 reg = <0x70>; 442 #address-cells = <1>; 443 #size-cells = <0>; 444 445 imux28: i2c@0 { 446 #address-cells = <1>; 447 #size-cells = <0>; 448 reg = <0>; 449 power-monitor@61 { 450 compatible = "isil,isl69260"; 451 reg = <0x61>; 452 }; 453 power-monitor@62 { 454 compatible = "isil,isl69260"; 455 reg = <0x62>; 456 }; 457 power-monitor@63 { 458 compatible = "isil,isl69260"; 459 reg = <0x63>; 460 }; 461 power-monitor@64 { 462 compatible = "infineon,xdpe152c4"; 463 reg = <0x64>; 464 }; 465 power-monitor@66 { 466 compatible = "infineon,xdpe152c4"; 467 reg = <0x66>; 468 }; 469 power-monitor@68 { 470 compatible = "infineon,xdpe152c4"; 471 reg = <0x68>; 472 }; 473 }; 474 imux29: i2c@1 { 475 #address-cells = <1>; 476 #size-cells = <0>; 477 reg = <1>; 478 //MB FRU 479 eeprom@54 { 480 compatible = "atmel,24c64"; 481 reg = <0x54>; 482 }; 483 }; 484 imux30: i2c@2 { 485 #address-cells = <1>; 486 #size-cells = <0>; 487 reg = <2>; 488 }; 489 imux31: i2c@3 { 490 #address-cells = <1>; 491 #size-cells = <0>; 492 reg = <3>; 493 494 rtc@51 { 495 compatible = "nxp,pcf8563"; 496 reg = <0x51>; 497 }; 498 }; 499 }; 500}; 501 502// To Debug card 503&i2c14 { 504 status = "okay"; 505 multi-master; 506 507 ipmb@10 { 508 compatible = "ipmb-dev"; 509 reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>; 510 i2c-protocol; 511 }; 512}; 513 514&i2c15 { 515 status = "okay"; 516 517 // SCM FRU 518 eeprom@50 { 519 compatible = "atmel,24c64"; 520 reg = <0x50>; 521 }; 522 523 // BSM FRU 524 eeprom@56 { 525 compatible = "atmel,24c64"; 526 reg = <0x56>; 527 }; 528}; 529 530&adc0 { 531 aspeed,int-vref-microvolt = <2500000>; 532 status = "okay"; 533 pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default 534 &pinctrl_adc2_default &pinctrl_adc3_default 535 &pinctrl_adc4_default &pinctrl_adc5_default 536 &pinctrl_adc6_default &pinctrl_adc7_default>; 537}; 538 539&adc1 { 540 aspeed,int-vref-microvolt = <2500000>; 541 status = "okay"; 542 pinctrl-names = "default"; 543 pinctrl-0 = <&pinctrl_adc10_default>; 544}; 545 546&ehci0 { 547 status = "okay"; 548}; 549 550&gpio0 { 551 pinctrl-names = "default"; 552 gpio-line-names = 553 /*A0-A7*/ "","","","","","","","", 554 /*B0-B7*/ "","","","", 555 "bmc-spi-mux-select-0","led-identify","","", 556 /*C0-C7*/ "reset-cause-platrst","","","","", 557 "power-hsc-good","power-chassis-good","", 558 /*D0-D7*/ "","","sol-uart-select","","","","","", 559 /*E0-E7*/ "","","","","","","","", 560 /*F0-F7*/ "","","","","","","","", 561 /*G0-G7*/ "","","","","","","","", 562 /*H0-H7*/ "","","","","","","","", 563 /*I0-I7*/ "","","","","","","","", 564 /*J0-J7*/ "","","","","","","","", 565 /*K0-K7*/ "","","","","","","","", 566 /*L0-L7*/ "","","","", 567 "leakage-detect-alert","","","", 568 /*M0-M7*/ "","","","","","","","", 569 /*N0-N7*/ "led-postcode-0","led-postcode-1", 570 "led-postcode-2","led-postcode-3", 571 "led-postcode-4","led-postcode-5", 572 "led-postcode-6","led-postcode-7", 573 /*O0-O7*/ "","","","","","","","", 574 /*P0-P7*/ "power-button","power-host-control", 575 "reset-button","","led-power","","","", 576 /*Q0-Q7*/ 577 "","","","", 578 "","power-chassis-control","","uart-switch-button", 579 /*R0-R7*/ "","","","","","","","", 580 /*S0-S7*/ "","","","","","","","", 581 /*T0-T7*/ "","","","","","","","", 582 /*U0-U7*/ "","","","","","","led-identify-gate","", 583 /*V0-V7*/ "","","","", 584 "rtc-battery-voltage-read-enable","", 585 "","", 586 /*W0-W7*/ "","","","","","","","", 587 /*X0-X7*/ "","","","","","","","", 588 /*Y0-Y7*/ "","","","","","","","", 589 /*Z0-Z7*/ "","","","","","","presence-post-card",""; 590}; 591 592&gpio1 { 593 gpio-line-names = 594 /*18A0-18A7*/ "ac-power-button","","","","","","","", 595 /*18B0-18B7*/ "","","","","","","","", 596 /*18C0-18C7*/ "","","","","","","","", 597 /*18D0-18D7*/ "","","","","","","","", 598 /*18E0-18E3*/ "","","","","","","",""; 599}; 600 601&sgpiom0 { 602 status = "okay"; 603 ngpios = <128>; 604 bus-frequency = <2000000>; 605 gpio-line-names = 606 /*in - out - in - out */ 607 /*A0-A3 line 0-7*/ 608 "presence-scm-cable","power-config-disable-e1s-0", 609 "","", 610 "","power-config-disable-e1s-1", 611 "","", 612 /*A4-A7 line 8-15*/ 613 "","power-config-asic-module-enable", 614 "","power-config-asic-power-good", 615 "","power-config-pdb-power-good", 616 "presence-cpu","smi-control-n", 617 /*B0-B3 line 16-23*/ 618 "","nmi-control-n", 619 "","nmi-control-sync-flood-n", 620 "","", 621 "","", 622 /*B4-B7 line 24-31*/ 623 "","FM_CPU_SP5R1", 624 "reset-cause-rsmrst","FM_CPU_SP5R2", 625 "","FM_CPU_SP5R3", 626 "","FM_CPU_SP5R4", 627 /*C0-C3 line 32-39*/ 628 "","FM_CPU0_SA0", 629 "","FM_CPU0_SA1", 630 "","rt-cpu0-p0-enable", 631 "","rt-cpu0-p1-enable", 632 /*C4-C7 line 40-47*/ 633 "","smb-rt-rom-p0-select", 634 "","smb-rt-rom-p1-select", 635 "","i3c-cpu-mux0-oe-n", 636 "","i3c-cpu-mux0-select", 637 /*D0-D3 line 48-55*/ 638 "","i3c-cpu-mux1-oe-n", 639 "","i3c-cpu-mux1-select", 640 "","reset-control-bmc", 641 "","reset-control-cpu0-p0-mux", 642 /*D4-D7 line 56-63*/ 643 "","reset-control-cpu0-p1-mux", 644 "","reset-control-e1s-mux", 645 "power-host-good","reset-control-mb-mux", 646 "host0-ready","reset-control-smb-e1s-0", 647 /*E0-E3 line 64-71*/ 648 "","reset-control-smb-e1s-1", 649 "post-end-n","reset-control-srst", 650 "presence-e1s-0","reset-control-usb-hub", 651 "","reset-control", 652 /*E4-E7 line 72-79*/ 653 "presence-e1s-1","reset-control-cpu-kbrst", 654 "","reset-control-platrst", 655 "","bmc-jtag-mux-select-0", 656 "","bmc-jtag-mux-select-1", 657 /*F0-F3 line 80-87*/ 658 "","bmc-jtag-select", 659 "","bmc-ready-n", 660 "","bmc-ready-sgpio", 661 "","rt-cpu0-p0-force-enable", 662 /*F4-F7 line 88-95*/ 663 "presence-asic-modules-0","rt-cpu0-p1-force-enable", 664 "presence-asic-modules-1","bios-debug-msg-disable", 665 "","uart-control-buffer-select", 666 "presence-cmm","ac-control-n", 667 /*G0-G3 line 96-103*/ 668 "FM_CPU_CORETYPE2","", 669 "FM_CPU_CORETYPE1","", 670 "FM_CPU_CORETYPE0","", 671 "FM_BOARD_REV_ID5","", 672 /*G4-G7 line 104-111*/ 673 "FM_BOARD_REV_ID4","", 674 "FM_BOARD_REV_ID3","", 675 "FM_BOARD_REV_ID2","", 676 "FM_BOARD_REV_ID1","", 677 /*H0-H3 line 112-119*/ 678 "FM_BOARD_REV_ID0","reset-control-cmos-clear", 679 "","","","","","", 680 /*H4-H7 line 120-127*/ 681 "","", 682 "reset-control-pcie-expansion-3","", 683 "reset-control-pcie-expansion-2","", 684 "reset-control-pcie-expansion-1","", 685 /*I0-I3 line 128-135*/ 686 "reset-control-pcie-expansion-0","", 687 "FM_EXP_SLOT_ID1","", 688 "FM_EXP_SLOT_ID0","", 689 "","", 690 /*I4-I7 line 136-143*/ 691 "","","","","","","","", 692 /*J0-J3 line 144-151*/ 693 "","","power-card-enable","","","","","", 694 /*J4-J7 line 152-159*/ 695 "SLOT_ID_BCB_0","", 696 "SLOT_ID_BCB_1","", 697 "SLOT_ID_BCB_2","", 698 "SLOT_ID_BCB_3","", 699 /*K0-K3 line 160-167*/ 700 "","","","","","","P0_I3C_APML_ALERT_L","", 701 /*K4-K7 line 168-175*/ 702 "","","","","","","irq-uv-detect-alert","", 703 /*L0-L3 line 176-183*/ 704 "irq-hsc-alert","", 705 "cpu0-prochot-alert","", 706 "cpu0-thermtrip-alert","", 707 "reset-cause-pcie","", 708 /*L4-L7 line 184-191*/ 709 "pvdd11-ocp-alert","", 710 "power-fault-n","", 711 "asic0-card-type-detection0-n","", 712 "asic0-card-type-detection1-n","", 713 /*M0-M3 line 192-199*/ 714 "asic0-card-type-detection2-n","", 715 "uart-switch-lsb","", 716 "uart-switch-msb","", 717 "","", 718 /*M4-M7 line 200-207*/ 719 "","","","","","","","", 720 /*N0-N3 line 208-215*/ 721 "","","","","","","","", 722 /*N4-N7 line 216-223*/ 723 "","","","","","","","", 724 /*O0-O3 line 224-231*/ 725 "","","","","","","","", 726 /*O4-O7 line 232-239*/ 727 "","","","","","","","", 728 /*P0-P3 line 240-247*/ 729 "","","","","","","","", 730 /*P4-P7 line 248-255*/ 731 "","","","","","","",""; 732}; 733