// SPDX-License-Identifier: GPL-2.0+ // Copyright (c) 2023 Facebook Inc. /dts-v1/; #include "aspeed-g6.dtsi" #include #include / { model = "Facebook Minerva CMM"; compatible = "facebook,minerva-cmc", "aspeed,ast2600"; aliases { serial4 = &uart5; serial5 = &uart6; /* * PCA9548 (2-0077) provides 8 channels connecting to * 6 pcs of FCB (Fan Controller Board). */ i2c16 = &imux16; i2c17 = &imux17; i2c18 = &imux18; i2c19 = &imux19; i2c20 = &imux20; i2c21 = &imux21; spi1 = &spi_gpio; }; chosen { stdout-path = "serial5:57600n8"; }; 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 ASPEED_GPIO(B, 5) GPIO_ACTIVE_HIGH>; }; led-2 { label = "power_blue"; default-state = "off"; gpios = <&gpio0 ASPEED_GPIO(P, 4) GPIO_ACTIVE_HIGH>; }; led-3 { label = "fan_status_led"; gpios = <&leds_gpio 9 GPIO_ACTIVE_HIGH>; default-state = "off"; }; led-4 { label = "fan_fault_led_n"; gpios = <&leds_gpio 10 GPIO_ACTIVE_LOW>; default-state = "off"; }; }; spi_gpio: spi { status = "okay"; compatible = "spi-gpio"; #address-cells = <1>; #size-cells = <0>; sck-gpios = <&gpio0 ASPEED_GPIO(Z, 3) GPIO_ACTIVE_HIGH>; mosi-gpios = <&gpio0 ASPEED_GPIO(Z, 4) GPIO_ACTIVE_HIGH>; miso-gpios = <&gpio0 ASPEED_GPIO(Z, 5) GPIO_ACTIVE_HIGH>; num-chipselects = <1>; cs-gpios = <&gpio0 ASPEED_GPIO(Z, 0) GPIO_ACTIVE_LOW>; tpm@0 { compatible = "infineon,slb9670", "tcg,tpm_tis-spi"; spi-max-frequency = <33000000>; reg = <0>; }; }; }; &uart6 { 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"; phy-mode = "rmii"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_rmii4_default>; fixed-link { speed = <100>; full-duplex; }; }; &mdio3 { 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>; }; }; &sgpiom0 { status = "okay"; ngpios = <128>; bus-frequency = <2000000>; }; &i2c0 { status = "okay"; power-monitor@40 { compatible = "ti,ina230"; reg = <0x40>; shunt-resistor = <1000>; }; power-monitor@41 { compatible = "ti,ina230"; reg = <0x41>; shunt-resistor = <1000>; }; power-monitor@44 { compatible = "lltc,ltc4287"; reg = <0x44>; shunt-resistor-micro-ohms = <2000>; }; power-monitor@43 { compatible = "infineon,xdp710"; reg = <0x43>; }; leds_gpio: gpio@19 { compatible = "nxp,pca9555"; reg = <0x19>; gpio-controller; #gpio-cells = <2>; }; }; &i2c1 { status = "okay"; temperature-sensor@4b { compatible = "ti,tmp75"; reg = <0x4b>; }; temperature-sensor@4f { compatible = "ti,tmp75"; reg = <0x4f>; }; eeprom@54 { compatible = "atmel,24c128"; reg = <0x54>; }; }; &i2c2 { status = "okay"; i2c-mux@77 { compatible = "nxp,pca9548"; reg = <0x77>; #address-cells = <1>; #size-cells = <0>; i2c-mux-idle-disconnect; imux16: i2c@0 { #address-cells = <1>; #size-cells = <0>; reg = <0>; eeprom@50 { compatible = "atmel,24c128"; reg = <0x50>; }; pwm@5e{ compatible = "max31790"; reg = <0x5e>; #address-cells = <1>; #size-cells = <0>; }; power-sensor@40 { compatible = "ti,ina238"; reg = <0x40>; shunt-resistor = <1000>; }; power-sensor@41 { compatible = "ti,ina238"; reg = <0x41>; shunt-resistor = <1000>; }; power-sensor@44 { compatible = "ti,ina238"; reg = <0x44>; shunt-resistor = <1000>; }; power-sensor@45 { compatible = "ti,ina238"; reg = <0x45>; shunt-resistor = <1000>; }; temperature-sensor@4b { compatible = "ti,tmp75"; reg = <0x4b>; }; }; imux17: i2c@1 { #address-cells = <1>; #size-cells = <0>; reg = <1>; eeprom@50 { compatible = "atmel,24c128"; reg = <0x50>; }; pwm@5e{ compatible = "max31790"; reg = <0x5e>; #address-cells = <1>; #size-cells = <0>; }; power-sensor@40 { compatible = "ti,ina238"; reg = <0x40>; shunt-resistor = <1000>; }; power-sensor@41 { compatible = "ti,ina238"; reg = <0x41>; shunt-resistor = <1000>; }; power-sensor@44 { compatible = "ti,ina238"; reg = <0x44>; shunt-resistor = <1000>; }; power-sensor@45 { compatible = "ti,ina238"; reg = <0x45>; shunt-resistor = <1000>; }; temperature-sensor@4b { compatible = "ti,tmp75"; reg = <0x4b>; }; }; imux18: i2c@2 { #address-cells = <1>; #size-cells = <0>; reg = <2>; eeprom@50 { compatible = "atmel,24c128"; reg = <0x50>; }; pwm@5e{ compatible = "max31790"; reg = <0x5e>; #address-cells = <1>; #size-cells = <0>; }; power-sensor@40 { compatible = "ti,ina238"; reg = <0x40>; shunt-resistor = <1000>; }; power-sensor@41 { compatible = "ti,ina238"; reg = <0x41>; shunt-resistor = <1000>; }; power-sensor@44 { compatible = "ti,ina238"; reg = <0x44>; shunt-resistor = <1000>; }; power-sensor@45 { compatible = "ti,ina238"; reg = <0x45>; shunt-resistor = <1000>; }; temperature-sensor@4b { compatible = "ti,tmp75"; reg = <0x4b>; }; }; imux19: i2c@3 { #address-cells = <1>; #size-cells = <0>; reg = <3>; eeprom@50 { compatible = "atmel,24c128"; reg = <0x50>; }; pwm@5e{ compatible = "max31790"; reg = <0x5e>; #address-cells = <1>; #size-cells = <0>; }; power-sensor@40 { compatible = "ti,ina238"; reg = <0x40>; shunt-resistor = <1000>; }; power-sensor@41 { compatible = "ti,ina238"; reg = <0x41>; shunt-resistor = <1000>; }; power-sensor@44 { compatible = "ti,ina238"; reg = <0x44>; shunt-resistor = <1000>; }; power-sensor@45 { compatible = "ti,ina238"; reg = <0x45>; shunt-resistor = <1000>; }; temperature-sensor@4b { compatible = "ti,tmp75"; reg = <0x4b>; }; }; imux20: i2c@5 { #address-cells = <1>; #size-cells = <0>; reg = <4>; eeprom@50 { compatible = "atmel,24c128"; reg = <0x50>; }; pwm@5e{ compatible = "max31790"; reg = <0x5e>; #address-cells = <1>; #size-cells = <0>; }; power-sensor@40 { compatible = "ti,ina238"; reg = <0x40>; shunt-resistor = <1000>; }; power-sensor@41 { compatible = "ti,ina238"; reg = <0x41>; shunt-resistor = <1000>; }; power-sensor@44 { compatible = "ti,ina238"; reg = <0x44>; shunt-resistor = <1000>; }; power-sensor@45 { compatible = "ti,ina238"; reg = <0x45>; shunt-resistor = <1000>; }; temperature-sensor@4b { compatible = "ti,tmp75"; reg = <0x4b>; }; }; imux21: i2c@4 { #address-cells = <1>; #size-cells = <0>; reg = <5>; eeprom@50 { compatible = "atmel,24c128"; reg = <0x50>; }; pwm@5e{ compatible = "max31790"; reg = <0x5e>; #address-cells = <1>; #size-cells = <0>; }; power-sensor@40 { compatible = "ti,ina238"; reg = <0x40>; shunt-resistor = <1000>; }; power-sensor@41 { compatible = "ti,ina238"; reg = <0x41>; shunt-resistor = <1000>; }; power-sensor@44 { compatible = "ti,ina238"; reg = <0x44>; shunt-resistor = <1000>; }; power-sensor@45 { compatible = "ti,ina238"; reg = <0x45>; shunt-resistor = <1000>; }; temperature-sensor@4b { compatible = "ti,tmp75"; reg = <0x4b>; }; }; }; }; &i2c3 { status = "okay"; }; &i2c4 { status = "okay"; }; &i2c5 { status = "okay"; }; &i2c6 { status = "okay"; }; &i2c7 { status = "okay"; }; &i2c8 { status = "okay"; }; &i2c9 { status = "okay"; eeprom@50 { compatible = "atmel,24c64"; reg = <0x50>; }; rtc@51 { compatible = "nxp,pcf8563"; reg = <0x51>; }; }; &i2c12 { status = "okay"; }; &i2c13 { status = "okay"; }; &i2c14 { status = "okay"; multi-master; ipmb@10 { compatible = "ipmb-dev"; reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>; i2c-protocol; }; }; &i2c15 { status = "okay"; eeprom@50 { compatible = "atmel,24c128"; reg = <0x50>; }; 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-0 = <&pinctrl_adc10_default>; }; &ehci0 { status = "okay"; }; &ehci1 { status = "okay"; }; &uhci { status = "okay"; }; &gpio0 { gpio-line-names = /*A0-A7*/ "","","","","","","","", /*B0-B7*/ "","","","","","","","", /*C0-C7*/ "","","","","BLADE_UART_SEL2","","","", /*D0-D7*/ "","","","","","","","", /*E0-E7*/ "","","","","","","","", /*F0-F7*/ "","","","","","","","", /*G0-G7*/ "","","","","","","","", /*H0-H7*/ "","","","","","","","", /*I0-I7*/ "","","","","","","","", /*J0-J7*/ "","","","","","","","", /*K0-K7*/ "","","","","","","","", /*L0-L7*/ "","","","","BLADE_UART_SEL0","","","", /*M0-M7*/ "","","","","","BLADE_UART_SEL1","","", /*N0-N7*/ "","","","","","","","", /*O0-O7*/ "","","","","","","","", /*P0-P7*/ "","","","","","","","", /*Q0-Q7*/ "","","","","","power-chassis-control","","", /*R0-R7*/ "","","","","","","","", /*S0-S7*/ "","","","","","","","host0-ready", /*T0-T7*/ "","","","","","","","", /*U0-U7*/ "","","","","","","","", /*V0-V7*/ "","","","","BAT_DETECT","","power-chassis-good","", /*W0-W7*/ "","","","","","","","", /*X0-X7*/ "","","BLADE_UART_SEL3","","","","","", /*Y0-Y7*/ "","","","","","","","", /*Z0-Z7*/ "","","","","","","",""; }; &sgpiom0 { gpio-line-names = /*"input pin","output pin"*/ /*A0 - A7*/ "PRSNT_MTIA_BLADE0_N","PWREN_MTIA_BLADE0_EN_N", "PRSNT_MTIA_BLADE1_N","PWREN_MTIA_BLADE1_EN_N", "PRSNT_MTIA_BLADE2_N","PWREN_MTIA_BLADE2_EN_N", "PRSNT_MTIA_BLADE3_N","PWREN_MTIA_BLADE3_EN_N", "PRSNT_MTIA_BLADE4_N","PWREN_MTIA_BLADE4_EN_N", "PRSNT_MTIA_BLADE5_N","PWREN_MTIA_BLADE5_EN_N", "PRSNT_MTIA_BLADE6_N","PWREN_MTIA_BLADE6_EN_N", "PRSNT_MTIA_BLADE7_N","PWREN_MTIA_BLADE7_EN_N", /*B0 - B7*/ "PRSNT_MTIA_BLADE8_N","PWREN_MTIA_BLADE8_EN_N", "PRSNT_MTIA_BLADE9_N","PWREN_MTIA_BLADE9_EN_N", "PRSNT_MTIA_BLADE10_N","PWREN_MTIA_BLADE10_EN_N", "PRSNT_MTIA_BLADE11_N","PWREN_MTIA_BLADE11_EN_N", "PRSNT_MTIA_BLADE12_N","PWREN_MTIA_BLADE12_EN_N", "PRSNT_MTIA_BLADE13_N","PWREN_MTIA_BLADE13_EN_N", "PRSNT_MTIA_BLADE14_N","PWREN_MTIA_BLADE14_EN_N", "PRSNT_MTIA_BLADE15_N","PWREN_MTIA_BLADE15_EN_N", /*C0 - C7*/ "PRSNT_NW_BLADE0_N","PWREN_NW_BLADE0_EN_N", "PRSNT_NW_BLADE1_N","PWREN_NW_BLADE1_EN_N", "PRSNT_NW_BLADE2_N","PWREN_NW_BLADE2_EN_N", "PRSNT_NW_BLADE3_N","PWREN_NW_BLADE3_EN_N", "PRSNT_NW_BLADE4_N","PWREN_NW_BLADE4_EN_N", "PRSNT_NW_BLADE5_N","PWREN_NW_BLADE5_EN_N", "PRSNT_FCB_TOP_0_N","PWREN_MTIA_BLADE0_HSC_EN_N", "PRSNT_FCB_TOP_1_N","PWREN_MTIA_BLADE1_HSC_EN_N", /*D0 - D7*/ "PRSNT_FCB_MIDDLE_0_N","PWREN_MTIA_BLADE2_HSC_EN_N", "PRSNT_FCB_MIDDLE_1_N","PWREN_MTIA_BLADE3_HSC_EN_N", "PRSNT_FCB_BOTTOM_1_N","PWREN_MTIA_BLADE4_HSC_EN_N", "PRSNT_FCB_BOTTOM_0_N","PWREN_MTIA_BLADE5_HSC_EN_N", "PWRGD_MTIA_BLADE0_PWROK_N","PWREN_MTIA_BLADE6_HSC_EN_N", "PWRGD_MTIA_BLADE1_PWROK_N","PWREN_MTIA_BLADE7_HSC_EN_N", "PWRGD_MTIA_BLADE2_PWROK_N","PWREN_MTIA_BLADE8_HSC_EN_N", "PWRGD_MTIA_BLADE3_PWROK_N","PWREN_MTIA_BLADE9_HSC_EN_N", /*E0 - E7*/ "PWRGD_MTIA_BLADE4_PWROK_N","PWREN_MTIA_BLADE10_HSC_EN_N", "PWRGD_MTIA_BLADE5_PWROK_N","PWREN_MTIA_BLADE11_HSC_EN_N", "PWRGD_MTIA_BLADE6_PWROK_N","PWREN_MTIA_BLADE12_HSC_EN_N", "PWRGD_MTIA_BLADE7_PWROK_N","PWREN_MTIA_BLADE13_HSC_EN_N", "PWRGD_MTIA_BLADE8_PWROK_N","PWREN_MTIA_BLADE14_HSC_EN_N", "PWRGD_MTIA_BLADE9_PWROK_N","PWREN_MTIA_BLADE15_HSC_EN_N", "PWRGD_MTIA_BLADE10_PWROK_N","PWREN_NW_BLADE0_HSC_EN_N", "PWRGD_MTIA_BLADE11_PWROK_N","PWREN_NW_BLADE1_HSC_EN_N", /*F0 - F7*/ "PWRGD_MTIA_BLADE12_PWROK_N","PWREN_NW_BLADE2_HSC_EN_N", "PWRGD_MTIA_BLADE13_PWROK_N","PWREN_NW_BLADE3_HSC_EN_N", "PWRGD_MTIA_BLADE14_PWROK_N","PWREN_NW_BLADE4_HSC_EN_N", "PWRGD_MTIA_BLADE15_PWROK_N","PWREN_NW_BLADE5_HSC_EN_N", "PWRGD_NW_BLADE0_PWROK_N","PWREN_FCB_TOP_0_EN_N", "PWRGD_NW_BLADE1_PWROK_N","PWREN_FCB_TOP_1_EN_N", "PWRGD_NW_BLADE2_PWROK_N","PWREN_FCB_MIDDLE_0_EN_N", "PWRGD_NW_BLADE3_PWROK_N","PWREN_FCB_MIDDLE_1_EN_N", /*G0 - G7*/ "PWRGD_NW_BLADE4_PWROK_N","PWREN_FCB_BOTTOM_1_EN_N", "PWRGD_NW_BLADE5_PWROK_N","PWREN_FCB_BOTTOM_0_EN_N", "PWRGD_FCB_TOP_0_PWROK_N","FM_CMM_AC_CYCLE_N", "PWRGD_FCB_TOP_1_PWROK_N","MGMT_SFP_TX_DIS", "PWRGD_FCB_MIDDLE_0_PWROK_N","FM_MDIO_SW_SEL", "PWRGD_FCB_MIDDLE_1_PWROK_N","FM_P24V_SMPWR_EN", "PWRGD_FCB_BOTTOM_1_PWROK_N","", "PWRGD_FCB_BOTTOM_0_PWROK_N","", /*H0 - H7*/ "LEAK_DETECT_MTIA_BLADE0_N","", "LEAK_DETECT_MTIA_BLADE1_N","", "LEAK_DETECT_MTIA_BLADE2_N","", "LEAK_DETECT_MTIA_BLADE3_N","", "LEAK_DETECT_MTIA_BLADE4_N","", "LEAK_DETECT_MTIA_BLADE5_N","", "LEAK_DETECT_MTIA_BLADE6_N","", "LEAK_DETECT_MTIA_BLADE7_N","", /*I0 - I7*/ "LEAK_DETECT_MTIA_BLADE8_N","RST_I2CRST_FCB_BOTTOM_1_N", "LEAK_DETECT_MTIA_BLADE9_N","RST_I2CRST_FCB_BOTTOM_0_N", "LEAK_DETECT_MTIA_BLADE10_N","RST_I2CRST_FCB_MIDDLE_0_N", "LEAK_DETECT_MTIA_BLADE11_N","RST_I2CRST_FCB_MIDDLE_1_N", "LEAK_DETECT_MTIA_BLADE12_N","RST_I2CRST_FCB_TOP_0_N", "LEAK_DETECT_MTIA_BLADE13_N","RST_I2CRST_FCB_TOP_1_N", "LEAK_DETECT_MTIA_BLADE14_N","BMC_READY", "LEAK_DETECT_MTIA_BLADE15_N","FM_88E6393X_BIN_UPDATE_EN_N", /*J0 - J7*/ "LEAK_DETECT_NW_BLADE0_N","WATER_VALVE_CLOSED_N", "LEAK_DETECT_NW_BLADE1_N","", "LEAK_DETECT_NW_BLADE2_N","", "LEAK_DETECT_NW_BLADE3_N","", "LEAK_DETECT_NW_BLADE4_N","", "LEAK_DETECT_NW_BLADE5_N","", "PWRGD_MTIA_BLADE0_HSC_PWROK_N","", "PWRGD_MTIA_BLADE1_HSC_PWROK_N","", /*K0 - K7*/ "PWRGD_MTIA_BLADE2_HSC_PWROK_N","", "PWRGD_MTIA_BLADE3_HSC_PWROK_N","", "PWRGD_MTIA_BLADE4_HSC_PWROK_N","", "PWRGD_MTIA_BLADE5_HSC_PWROK_N","", "PWRGD_MTIA_BLADE6_HSC_PWROK_N","", "PWRGD_MTIA_BLADE7_HSC_PWROK_N","", "PWRGD_MTIA_BLADE8_HSC_PWROK_N","", "PWRGD_MTIA_BLADE9_HSC_PWROK_N","", /*L0 - L7*/ "PWRGD_MTIA_BLADE10_HSC_PWROK_N","", "PWRGD_MTIA_BLADE11_HSC_PWROK_N","", "PWRGD_MTIA_BLADE12_HSC_PWROK_N","", "PWRGD_MTIA_BLADE13_HSC_PWROK_N","", "PWRGD_MTIA_BLADE14_HSC_PWROK_N","", "PWRGD_MTIA_BLADE15_HSC_PWROK_N","", "PWRGD_NW_BLADE0_HSC_PWROK_N","", "PWRGD_NW_BLADE1_HSC_PWROK_N","", /*M0 - M7*/ "PWRGD_NW_BLADE2_HSC_PWROK_N","", "PWRGD_NW_BLADE3_HSC_PWROK_N","", "PWRGD_NW_BLADE4_HSC_PWROK_N","", "PWRGD_NW_BLADE5_HSC_PWROK_N","", "RPU_READY","", "IT_GEAR_RPU_LINK_N","", "IT_GEAR_LEAK","", "WATER_VALVE_CLOSED_N","", /*N0 - N7*/ "VALVE_STS0","", "VALVE_STS1","", "PCA9555_IRQ0_N","", "PCA9555_IRQ1_N","", "CR_TOGGLE_BOOT_N","", "IRQ_FCB_TOP0_N","", "IRQ_FCB_TOP1_N","", "CMM_CABLE_CARTRIDGE_PRSNT_BOT_N","", /*O0 - O7*/ "CMM_CABLE_CARTRIDGE_PRSNT_TOP_N","", "BOT_BCB_CABLE_PRSNT_N","", "TOP_BCB_CABLE_PRSNT_N","", "IRQ_FCB_MID0_N","", "IRQ_FCB_MID1_N","", "CHASSIS_LEAK0_DETECT_N","", "CHASSIS_LEAK1_DETECT_N","", "VALVE_RMON_A_1","", /*P0 - P7*/ "VALVE_RMON_A_2","", "VALVE_RMON_B_1","", "VALVE_RMON_B_2","", "RPU_READY_SPARE","", "IT_GEAR_LEAK_SPARE","", "IT_GEAR_RPU_LINK_SPARE_N","", "IRQ_FCB_BOT0_N","", "IRQ_FCB_BOT0_N",""; };