| // SPDX-License-Identifier: GPL-2.0-or-later |
| // Copyright 2023 Facebook Inc. |
| |
| /dts-v1/; |
| #include "aspeed-g6.dtsi" |
| #include <dt-bindings/gpio/aspeed-gpio.h> |
| #include <dt-bindings/i2c/i2c.h> |
| |
| / { |
| model = "Facebook Harma"; |
| compatible = "facebook,harma-bmc", "aspeed,ast2600"; |
| |
| aliases { |
| serial0 = &uart1; |
| serial1 = &uart2; |
| serial2 = &uart4; |
| serial4 = &uart5; |
| |
| i2c20 = &imux20; |
| i2c21 = &imux21; |
| i2c22 = &imux22; |
| i2c23 = &imux23; |
| i2c24 = &imux24; |
| i2c25 = &imux25; |
| i2c26 = &imux26; |
| i2c27 = &imux27; |
| i2c28 = &imux28; |
| i2c29 = &imux29; |
| i2c30 = &imux30; |
| i2c31 = &imux31; |
| |
| spi1 = &spi_gpio; |
| }; |
| |
| chosen { |
| stdout-path = &uart5; |
| }; |
| |
| memory@80000000 { |
| device_type = "memory"; |
| reg = <0x80000000 0x80000000>; |
| }; |
| |
| iio-hwmon { |
| compatible = "iio-hwmon"; |
| io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>, <&adc0 3>, |
| <&adc0 4>, <&adc0 5>, <&adc0 6>, <&adc0 7>, |
| <&adc1 2>; |
| }; |
| |
| leds { |
| compatible = "gpio-leds"; |
| |
| led-0 { |
| label = "bmc_heartbeat_amber"; |
| gpios = <&gpio0 ASPEED_GPIO(P, 7) GPIO_ACTIVE_LOW>; |
| linux,default-trigger = "heartbeat"; |
| }; |
| |
| led-1 { |
| label = "fp_id_amber"; |
| default-state = "off"; |
| gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| led-2 { |
| label = "power_blue"; |
| default-state = "off"; |
| gpios = <&gpio0 124 GPIO_ACTIVE_HIGH>; |
| }; |
| }; |
| |
| spi_gpio: spi-gpio { |
| status = "okay"; |
| compatible = "spi-gpio"; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| gpio-sck = <&gpio0 ASPEED_GPIO(Z, 3) GPIO_ACTIVE_HIGH>; |
| gpio-mosi = <&gpio0 ASPEED_GPIO(Z, 4) GPIO_ACTIVE_HIGH>; |
| gpio-miso = <&gpio0 ASPEED_GPIO(Z, 5) GPIO_ACTIVE_HIGH>; |
| num-chipselects = <1>; |
| cs-gpios = <&gpio0 ASPEED_GPIO(Z, 0) GPIO_ACTIVE_LOW>; |
| |
| tpmdev@0 { |
| compatible = "infineon,slb9670", "tcg,tpm_tis-spi"; |
| spi-max-frequency = <33000000>; |
| reg = <0>; |
| }; |
| }; |
| }; |
| |
| // HOST BIOS Debug |
| &uart1 { |
| status = "okay"; |
| }; |
| |
| // SOL Host Console |
| &uart2 { |
| status = "okay"; |
| pinctrl-0 = <>; |
| }; |
| |
| // SOL BMC Console |
| &uart4 { |
| status = "okay"; |
| pinctrl-0 = <>; |
| }; |
| |
| // BMC Debug Console |
| &uart5 { |
| status = "okay"; |
| }; |
| |
| // MTIA |
| &uart6 { |
| status = "okay"; |
| }; |
| |
| &uart_routing { |
| status = "okay"; |
| }; |
| |
| &wdt1 { |
| status = "okay"; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pinctrl_wdtrst1_default>; |
| aspeed,reset-type = "soc"; |
| aspeed,external-signal; |
| aspeed,ext-push-pull; |
| aspeed,ext-active-high; |
| aspeed,ext-pulse-duration = <256>; |
| }; |
| |
| &mac3 { |
| status = "okay"; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pinctrl_rmii4_default>; |
| use-ncsi; |
| mellanox,multi-host; |
| }; |
| |
| &rtc { |
| status = "okay"; |
| }; |
| |
| &fmc { |
| status = "okay"; |
| |
| flash@0 { |
| status = "okay"; |
| m25p,fast-read; |
| label = "bmc"; |
| spi-max-frequency = <50000000>; |
| #include "openbmc-flash-layout-128.dtsi" |
| }; |
| |
| flash@1 { |
| status = "okay"; |
| m25p,fast-read; |
| label = "alt-bmc"; |
| spi-max-frequency = <50000000>; |
| }; |
| }; |
| |
| // BIOS Flash |
| &spi2 { |
| status = "okay"; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pinctrl_spi2_default>; |
| |
| flash@0 { |
| status = "okay"; |
| m25p,fast-read; |
| label = "pnor"; |
| spi-max-frequency = <12000000>; |
| spi-tx-bus-width = <2>; |
| spi-rx-bus-width = <2>; |
| }; |
| }; |
| |
| &kcs2 { |
| status = "okay"; |
| aspeed,lpc-io-reg = <0xca8>; |
| }; |
| |
| &kcs3 { |
| status = "okay"; |
| aspeed,lpc-io-reg = <0xca2>; |
| }; |
| |
| &i2c0 { |
| status = "okay"; |
| |
| pwm@5e{ |
| compatible = "max31790"; |
| reg = <0x5e>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| }; |
| }; |
| |
| &i2c1 { |
| status = "okay"; |
| |
| temperature-sensor@4b { |
| compatible = "ti,tmp75"; |
| reg = <0x4b>; |
| }; |
| |
| // MB NIC FRU |
| eeprom@50 { |
| compatible = "atmel,24c64"; |
| reg = <0x50>; |
| }; |
| }; |
| |
| &i2c2 { |
| status = "okay"; |
| |
| pwm@5e{ |
| compatible = "max31790"; |
| reg = <0x5e>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| }; |
| }; |
| |
| &i2c3 { |
| status = "okay"; |
| |
| i2c-mux@70 { |
| compatible = "nxp,pca9543"; |
| reg = <0x70>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| imux20: i2c@0 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <0>; |
| //Retimer Flash |
| eeprom@50 { |
| compatible = "atmel,24c2048"; |
| reg = <0x50>; |
| pagesize = <128>; |
| }; |
| }; |
| imux21: i2c@1 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <1>; |
| retimer@24 { |
| compatible = "asteralabs,pt5161l"; |
| reg = <0x24>; |
| }; |
| }; |
| }; |
| }; |
| |
| &i2c4 { |
| status = "okay"; |
| // PDB FRU |
| eeprom@52 { |
| compatible = "atmel,24c64"; |
| reg = <0x52>; |
| }; |
| |
| power-monitor@69 { |
| compatible = "pmbus"; |
| reg = <0x69>; |
| }; |
| |
| temperature-sensor@49 { |
| compatible = "ti,tmp75"; |
| reg = <0x49>; |
| }; |
| |
| power-monitor@22 { |
| compatible = "lltc,ltc4286"; |
| reg = <0x22>; |
| adi,vrange-low-enable; |
| shunt-resistor-micro-ohms = <500>; |
| }; |
| }; |
| |
| &i2c5 { |
| status = "okay"; |
| }; |
| |
| &i2c6 { |
| status = "okay"; |
| |
| i2c-mux@70 { |
| compatible = "nxp,pca9543"; |
| reg = <0x70>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| imux22: i2c@0 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <0>; |
| }; |
| imux23: i2c@1 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <1>; |
| }; |
| }; |
| }; |
| |
| &i2c7 { |
| status = "okay"; |
| }; |
| |
| &i2c8 { |
| status = "okay"; |
| }; |
| |
| &i2c9 { |
| status = "okay"; |
| |
| gpio@30 { |
| compatible = "nxp,pca9555"; |
| reg = <0x30>; |
| gpio-controller; |
| #gpio-cells = <2>; |
| }; |
| gpio@31 { |
| compatible = "nxp,pca9555"; |
| reg = <0x31>; |
| gpio-controller; |
| #gpio-cells = <2>; |
| |
| gpio-line-names = |
| "","","","", |
| "","","presence-cmm","", |
| "","","","", |
| "","","",""; |
| }; |
| |
| i2c-mux@71 { |
| compatible = "nxp,pca9546"; |
| reg = <0x71>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| imux24: i2c@0 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <0>; |
| }; |
| imux25: i2c@1 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <1>; |
| }; |
| imux26: i2c@2 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <2>; |
| }; |
| imux27: i2c@3 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <3>; |
| }; |
| }; |
| // PTTV FRU |
| eeprom@52 { |
| compatible = "atmel,24c64"; |
| reg = <0x52>; |
| }; |
| }; |
| |
| &i2c11 { |
| status = "okay"; |
| }; |
| |
| &i2c12 { |
| status = "okay"; |
| retimer@24 { |
| compatible = "asteralabs,pt5161l"; |
| reg = <0x24>; |
| }; |
| }; |
| |
| &i2c13 { |
| status = "okay"; |
| |
| i2c-mux@70 { |
| compatible = "nxp,pca9545"; |
| reg = <0x70>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| imux28: i2c@0 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <0>; |
| }; |
| imux29: i2c@1 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <1>; |
| //MB FRU |
| eeprom@54 { |
| compatible = "atmel,24c64"; |
| reg = <0x54>; |
| }; |
| }; |
| imux30: i2c@2 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <2>; |
| }; |
| imux31: i2c@3 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <3>; |
| }; |
| }; |
| }; |
| |
| // To Debug card |
| &i2c14 { |
| status = "okay"; |
| multi-master; |
| |
| ipmb@10 { |
| compatible = "ipmb-dev"; |
| reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>; |
| i2c-protocol; |
| }; |
| }; |
| |
| &i2c15 { |
| status = "okay"; |
| |
| // SCM FRU |
| eeprom@50 { |
| compatible = "atmel,24c64"; |
| reg = <0x50>; |
| }; |
| |
| // BSM FRU |
| eeprom@56 { |
| compatible = "atmel,24c64"; |
| reg = <0x56>; |
| }; |
| }; |
| |
| &adc0 { |
| aspeed,int-vref-microvolt = <2500000>; |
| status = "okay"; |
| pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default |
| &pinctrl_adc2_default &pinctrl_adc3_default |
| &pinctrl_adc4_default &pinctrl_adc5_default |
| &pinctrl_adc6_default &pinctrl_adc7_default>; |
| }; |
| |
| &adc1 { |
| aspeed,int-vref-microvolt = <2500000>; |
| status = "okay"; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pinctrl_adc10_default>; |
| }; |
| |
| &ehci0 { |
| status = "okay"; |
| }; |
| |
| &gpio0 { |
| pinctrl-names = "default"; |
| gpio-line-names = |
| /*A0-A7*/ "","","","","","","","", |
| /*B0-B7*/ "","","","", |
| "bmc-spi-mux-select-0","led-identify","","", |
| /*C0-C7*/ "reset-cause-platrst","","","","", |
| "cpu0-err-alert","","", |
| /*D0-D7*/ "","","sol-uart-select","","","","","", |
| /*E0-E7*/ "","","","","","","","", |
| /*F0-F7*/ "","","","","","","","", |
| /*G0-G7*/ "","","","","","","","", |
| /*H0-H7*/ "","","","","","","","", |
| /*I0-I7*/ "","","","","","","","", |
| /*J0-J7*/ "","","","","","","","", |
| /*K0-K7*/ "","","","","","","","", |
| /*L0-L7*/ "","","","", |
| "leakage-detect-alert","","","", |
| /*M0-M7*/ "","","","","","","","", |
| /*N0-N7*/ "led-postcode-0","led-postcode-1", |
| "led-postcode-2","led-postcode-3", |
| "led-postcode-4","led-postcode-5", |
| "led-postcode-6","led-postcode-7", |
| /*O0-O7*/ "","","","","","","","", |
| /*P0-P7*/ "power-button","power-host-control", |
| "reset-button","","led-power","","","", |
| /*Q0-Q7*/ "","","","","","","","", |
| /*R0-R7*/ "","","","","","","","", |
| /*S0-S7*/ "","","","","","","","", |
| /*T0-T7*/ "","","","","","","","", |
| /*U0-U7*/ "","","","","","","led-identify-gate","", |
| /*V0-V7*/ "","","","", |
| "rtc-battery-voltage-read-enable","","","", |
| /*W0-W7*/ "","","","","","","","", |
| /*X0-X7*/ "","","","","","","","", |
| /*Y0-Y7*/ "","","","","","","","", |
| /*Z0-Z7*/ "","","","","","","presence-post-card",""; |
| }; |
| |
| &gpio1 { |
| gpio-line-names = |
| /*18A0-18A7*/ "ac-power-button","","","","","","","", |
| /*18B0-18B7*/ "","","","","","","","", |
| /*18C0-18C7*/ "","","","","","","","", |
| /*18D0-18D7*/ "","","","","","","","", |
| /*18E0-18E3*/ "","","","","","","",""; |
| }; |
| |
| &sgpiom0 { |
| status = "okay"; |
| max-ngpios = <128>; |
| ngpios = <128>; |
| bus-frequency = <2000000>; |
| gpio-line-names = |
| /*in - out - in - out */ |
| /*A0-A3 line 0-7*/ |
| "presence-scm-cable","power-config-disable-e1s-0", |
| "","", |
| "","power-config-disable-e1s-1", |
| "","", |
| /*A4-A7 line 8-15*/ |
| "","power-config-asic-module-enable", |
| "","power-config-asic-power-good", |
| "","power-config-pdb-power-good", |
| "presence-cpu","smi-control-n", |
| /*B0-B3 line 16-23*/ |
| "","nmi-control-n", |
| "","nmi-control-sync-flood-n", |
| "","", |
| "","", |
| /*B4-B7 line 24-31*/ |
| "","FM_CPU_SP5R1", |
| "reset-cause-rsmrst","FM_CPU_SP5R2", |
| "","FM_CPU_SP5R3", |
| "","FM_CPU_SP5R4", |
| /*C0-C3 line 32-39*/ |
| "","FM_CPU0_SA0", |
| "","FM_CPU0_SA1", |
| "","rt-cpu0-p0-enable", |
| "","rt-cpu0-p1-enable", |
| /*C4-C7 line 40-47*/ |
| "","smb-rt-rom-p0-select", |
| "","smb-rt-rom-p1-select", |
| "","i3c-cpu-mux0-oe-n", |
| "","i3c-cpu-mux0-select", |
| /*D0-D3 line 48-55*/ |
| "","i3c-cpu-mux1-oe-n", |
| "","i3c-cpu-mux1-select", |
| "","reset-control-bmc", |
| "","reset-control-cpu0-p0-mux", |
| /*D4-D7 line 56-63*/ |
| "","reset-control-cpu0-p1-mux", |
| "","reset-control-e1s-mux", |
| "power-host-good","reset-control-mb-mux", |
| "host0-ready","reset-control-smb-e1s-0", |
| /*E0-E3 line 64-71*/ |
| "","reset-control-smb-e1s-1", |
| "post-end-n","reset-control-srst", |
| "presence-e1s-0","reset-control-usb-hub", |
| "","reset-control", |
| /*E4-E7 line 72-79*/ |
| "presence-e1s-1","reset-control-cpu-kbrst", |
| "","reset-control-platrst", |
| "","bmc-jtag-mux-select-0", |
| "","bmc-jtag-mux-select-1", |
| /*F0-F3 line 80-87*/ |
| "","bmc-jtag-select", |
| "","bmc-ready-n", |
| "","bmc-ready-sgpio", |
| "","rt-cpu0-p0-force-enable", |
| /*F4-F7 line 88-95*/ |
| "presence-asic-modules-0","rt-cpu0-p1-force-enable", |
| "presence-asic-modules-1","bios-debug-msg-disable", |
| "","uart-control-buffer-select", |
| "","ac-control-n", |
| /*G0-G3 line 96-103*/ |
| "FM_CPU_CORETYPE2","", |
| "FM_CPU_CORETYPE1","", |
| "FM_CPU_CORETYPE0","", |
| "FM_BOARD_REV_ID5","", |
| /*G4-G7 line 104-111*/ |
| "FM_BOARD_REV_ID4","", |
| "FM_BOARD_REV_ID3","", |
| "FM_BOARD_REV_ID2","", |
| "FM_BOARD_REV_ID1","", |
| /*H0-H3 line 112-119*/ |
| "FM_BOARD_REV_ID0","", |
| "","","","","","", |
| /*H4-H7 line 120-127*/ |
| "","", |
| "reset-control-pcie-expansion-3","", |
| "reset-control-pcie-expansion-2","", |
| "reset-control-pcie-expansion-1","", |
| /*I0-I3 line 128-135*/ |
| "reset-control-pcie-expansion-0","", |
| "FM_EXP_SLOT_ID1","", |
| "FM_EXP_SLOT_ID0","", |
| "","", |
| /*I4-I7 line 136-143*/ |
| "","","","","","","","", |
| /*J0-J3 line 144-151*/ |
| "","","","","","","","", |
| /*J4-J7 line 152-159*/ |
| "SLOT_ID_BCB_0","", |
| "SLOT_ID_BCB_1","", |
| "SLOT_ID_BCB_2","", |
| "SLOT_ID_BCB_3","", |
| /*K0-K3 line 160-167*/ |
| "","","","","","","P0_I3C_APML_ALERT_L","", |
| /*K4-K7 line 168-175*/ |
| "","","","","","","irq-uv-detect-alert","", |
| /*L0-L3 line 176-183*/ |
| "irq-hsc-alert","", |
| "cpu0-prochot-alert","", |
| "cpu0-thermtrip-alert","", |
| "reset-cause-pcie","", |
| /*L4-L7 line 184-191*/ |
| "pvdd11-ocp-alert","","","","","","","", |
| /*M0-M3 line 192-199*/ |
| "","","","","","","","", |
| /*M4-M7 line 200-207*/ |
| "","","","","","","","", |
| /*N0-N3 line 208-215*/ |
| "","","","","","","","", |
| /*N4-N7 line 216-223*/ |
| "","","","","","","","", |
| /*O0-O3 line 224-231*/ |
| "","","","","","","","", |
| /*O4-O7 line 232-239*/ |
| "","","","","","","","", |
| /*P0-P3 line 240-247*/ |
| "","","","","","","","", |
| /*P4-P7 line 248-255*/ |
| "","","","","","","",""; |
| }; |