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