mirror of https://github.com/torvalds/linux.git
1291 lines
24 KiB
Plaintext
1291 lines
24 KiB
Plaintext
// SPDX-License-Identifier: GPL-2.0+
|
|
// Copyright (c) 2021 Facebook Inc.
|
|
/dts-v1/;
|
|
|
|
#include "aspeed-g6.dtsi"
|
|
#include <dt-bindings/gpio/aspeed-gpio.h>
|
|
#include <dt-bindings/usb/pd.h>
|
|
#include <dt-bindings/leds/leds-pca955x.h>
|
|
#include <dt-bindings/interrupt-controller/irq.h>
|
|
#include <dt-bindings/i2c/i2c.h>
|
|
|
|
/ {
|
|
model = "Facebook Clemente BMC";
|
|
compatible = "facebook,clemente-bmc", "aspeed,ast2600";
|
|
|
|
aliases {
|
|
serial0 = &uart1;
|
|
serial2 = &uart3;
|
|
serial3 = &uart4;
|
|
serial4 = &uart5;
|
|
i2c16 = &i2c1mux0ch0;
|
|
i2c17 = &i2c1mux0ch1;
|
|
i2c18 = &i2c1mux0ch2;
|
|
i2c19 = &i2c1mux0ch3;
|
|
i2c20 = &i2c1mux0ch4;
|
|
i2c21 = &i2c1mux0ch5;
|
|
i2c22 = &i2c1mux0ch6;
|
|
i2c23 = &i2c1mux0ch7;
|
|
i2c24 = &i2c0mux0ch0;
|
|
i2c25 = &i2c0mux0ch1;
|
|
i2c26 = &i2c0mux0ch2;
|
|
i2c27 = &i2c0mux0ch3;
|
|
i2c28 = &i2c0mux1ch0;
|
|
i2c29 = &i2c0mux1ch1;
|
|
i2c30 = &i2c0mux1ch2;
|
|
i2c31 = &i2c0mux1ch3;
|
|
i2c32 = &i2c0mux2ch0;
|
|
i2c33 = &i2c0mux2ch1;
|
|
i2c34 = &i2c0mux2ch2;
|
|
i2c35 = &i2c0mux2ch3;
|
|
i2c36 = &i2c0mux3ch0;
|
|
i2c37 = &i2c0mux3ch1;
|
|
i2c38 = &i2c0mux3ch2;
|
|
i2c39 = &i2c0mux3ch3;
|
|
i2c40 = &i2c0mux4ch0;
|
|
i2c41 = &i2c0mux4ch1;
|
|
i2c42 = &i2c0mux4ch2;
|
|
i2c43 = &i2c0mux4ch3;
|
|
i2c44 = &i2c0mux5ch0;
|
|
i2c45 = &i2c0mux5ch1;
|
|
i2c46 = &i2c0mux5ch2;
|
|
i2c47 = &i2c0mux5ch3;
|
|
i2c48 = &i2c0mux0ch1mux0ch0;
|
|
i2c49 = &i2c0mux0ch1mux0ch1;
|
|
i2c50 = &i2c0mux0ch1mux0ch2;
|
|
i2c51 = &i2c0mux0ch1mux0ch3;
|
|
i2c52 = &i2c0mux3ch1mux0ch0;
|
|
i2c53 = &i2c0mux3ch1mux0ch1;
|
|
i2c54 = &i2c0mux3ch1mux0ch2;
|
|
i2c55 = &i2c0mux3ch1mux0ch3;
|
|
};
|
|
|
|
chosen {
|
|
stdout-path = "serial4:57600n8";
|
|
};
|
|
|
|
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 = "bmc_ready_noled";
|
|
gpios = <&gpio0 ASPEED_GPIO(B, 3) (GPIO_ACTIVE_HIGH|GPIO_TRANSITORY)>;
|
|
};
|
|
|
|
led-3 {
|
|
label = "bmc_ready_cpld_noled";
|
|
gpios = <&gpio0 ASPEED_GPIO(P, 5) (GPIO_ACTIVE_HIGH|GPIO_TRANSITORY)>;
|
|
};
|
|
|
|
led-hdd {
|
|
label = "hdd_led";
|
|
gpios = <&io_expander13 1 GPIO_ACTIVE_LOW>;
|
|
};
|
|
};
|
|
|
|
memory@80000000 {
|
|
device_type = "memory";
|
|
reg = <0x80000000 0x80000000>;
|
|
};
|
|
|
|
p1v8_bmc_aux: regulator-p1v8-bmc-aux {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "p1v8_bmc_aux";
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1800000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
p2v5_bmc_aux: regulator-p2v5-bmc-aux {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "p2v5_bmc_aux";
|
|
regulator-min-microvolt = <2500000>;
|
|
regulator-max-microvolt = <2500000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
reserved-memory {
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
ranges;
|
|
|
|
ramoops@b3e00000 {
|
|
compatible = "ramoops";
|
|
reg = <0xbb000000 0x200000>; /* 16 * (4 * 0x8000) */
|
|
record-size = <0x8000>;
|
|
console-size = <0x8000>;
|
|
ftrace-size = <0x8000>;
|
|
pmsg-size = <0x8000>;
|
|
max-reason = <3>;
|
|
};
|
|
};
|
|
|
|
spi1_gpio: spi {
|
|
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>;
|
|
cs-gpios = <&gpio0 ASPEED_GPIO(Z, 0) GPIO_ACTIVE_LOW>;
|
|
num-chipselects = <1>;
|
|
|
|
tpm@0 {
|
|
compatible = "infineon,slb9670", "tcg,tpm_tis-spi";
|
|
spi-max-frequency = <33000000>;
|
|
reg = <0>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&adc0 {
|
|
vref-supply = <&p1v8_bmc_aux>;
|
|
status = "okay";
|
|
|
|
pinctrl-names = "default";
|
|
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 {
|
|
vref-supply = <&p2v5_bmc_aux>;
|
|
status = "okay";
|
|
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_adc10_default>;
|
|
};
|
|
|
|
&ehci0 {
|
|
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>;
|
|
};
|
|
};
|
|
|
|
&gpio0 {
|
|
gpio-line-names =
|
|
/*A0-A7*/ "","","","","","","","",
|
|
/*B0-B7*/ "BATTERY_DETECT","PRSNT1_HPM_SCM_N",
|
|
"BMC_I2C1_FPGA_ALERT_L","BMC_READY",
|
|
"IOEXP_INT_L","FM_ID_LED",
|
|
"","",
|
|
/*C0-C7*/ "BMC_GPIOC0","","","",
|
|
"PMBUS_REQ_N","PSU_FW_UPDATE_REQ_N",
|
|
"","BMC_I2C_SSIF_ALERT_L",
|
|
/*D0-D7*/ "","","","","BMC_GPIOD4","","","",
|
|
/*E0-E7*/ "BMC_GPIOE0","BMC_GPIOE1","","","","","","",
|
|
/*F0-F7*/ "","","","","","","","",
|
|
/*G0-G7*/ "","","","","","",
|
|
"FM_DEBUG_PORT_PRSNT_N","FM_BMC_DBP_PRESENT_N",
|
|
/*H0-H7*/ "PWR_BRAKE_L","RUN_POWER_EN",
|
|
"SHDN_FORCE_L","SHDN_REQ_L",
|
|
"","","","",
|
|
/*I0-I7*/ "","","","",
|
|
"","FLASH_WP_STATUS",
|
|
"FM_PDB_HEALTH_N","RUN_POWER_PG",
|
|
/*J0-J7*/ "","","","","","","","",
|
|
/*K0-K7*/ "","","","","","","","",
|
|
/*L0-L7*/ "","","","","","","","",
|
|
/*M0-M7*/ "PCIE_EP_RST_EN","BMC_FRU_WP",
|
|
"SCM_HPM_STBY_RST_N","SCM_HPM_STBY_EN",
|
|
"STBY_POWER_PG_3V3","TH500_SHDN_OK_L","","",
|
|
/*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*/ "HMC_I2C3_FPGA_ALERT_L","FPGA_READY_HMC",
|
|
"CHASSIS_AC_LOSS_L","BSM_PRSNT_R_N",
|
|
"PSU_SMB_ALERT_L","FM_TPM_PRSNT_0_N",
|
|
"","USBDBG_IPMI_EN_L",
|
|
/*P0-P7*/ "PWR_BTN_BMC_N","IPEX_CABLE_PRSNT_L",
|
|
"ID_RST_BTN_BMC_N","RST_BMC_RSTBTN_OUT_N",
|
|
"host0-ready","BMC_READY_CPLD","BMC_GPIOP6","BMC_HEARTBEAT_N",
|
|
/*Q0-Q7*/ "IRQ_PCH_TPM_SPI_N","USB_OC0_REAR_R_N",
|
|
"UART_MUX_SEL","I2C_MUX_RESET_L",
|
|
"RSVD_NV_PLT_DETECT","SPI_TPM_INT_L",
|
|
"CPU_JTAG_MUX_SELECT","THERM_BB_OVERT_L",
|
|
/*R0-R7*/ "THERM_BB_WARN_L","SPI_BMC_FPGA_INT_L",
|
|
"CPU_BOOT_DONE","PMBUS_GNT_L",
|
|
"CHASSIS_PWR_BRK_L","PCIE_WAKE_L",
|
|
"PDB_THERM_OVERT_L","HMC_I2C2_FPGA_ALERT_L",
|
|
/*S0-S7*/ "","","SYS_BMC_PWRBTN_R_N","FM_TPM_PRSNT_1_N",
|
|
"FM_BMC_DEBUG_SW_N","UID_LED_N",
|
|
"SYS_FAULT_LED_N","RUN_POWER_FAULT_L",
|
|
/*T0-T7*/ "","","","","","","","",
|
|
/*U0-U7*/ "","","","","","","","",
|
|
/*V0-V7*/ "L2_RST_REQ_OUT_L","L0L1_RST_REQ_OUT_L",
|
|
"BMC_ID_BEEP_SEL","BMC_I2C0_FPGA_ALERT_L",
|
|
"SMB_BMC_TMP_ALERT","PWR_LED_N",
|
|
"SYS_RST_OUT_L","IRQ_TPM_SPI_N",
|
|
/*W0-W7*/ "","","","","","","","",
|
|
/*X0-X7*/ "","","","","","","","",
|
|
/*Y0-Y7*/ "","RST_BMC_SELF_HW",
|
|
"FM_FLASH_LATCH_N","BMC_EMMC_RST_N",
|
|
"BMC_GPIOY4","BMC_GPIOY5","","",
|
|
/*Z0-Z7*/ "","","","","","","BMC_GPIOZ6","BMC_GPIOZ7";
|
|
};
|
|
|
|
&gpio1 {
|
|
gpio-line-names =
|
|
/*18A0-18A7*/ "","","","","","","","",
|
|
/*18B0-18B3*/ "","","","",
|
|
/*18B4-18B7*/ "FM_BOARD_BMC_REV_ID0","FM_BOARD_BMC_REV_ID1","FM_BOARD_BMC_REV_ID2","",
|
|
/*18C0-18C7*/ "","","PI_BMC_BIOS_ROM_IRQ0_N","","","","","",
|
|
/*18D0-18D7*/ "","","","","","","","",
|
|
/*18E0-18E3*/ "","","","AC_PWR_BMC_BTN_N","","","","";
|
|
};
|
|
|
|
&i2c0 {
|
|
status = "okay";
|
|
|
|
i2c-mux@71 {
|
|
compatible = "nxp,pca9546";
|
|
reg = <0x71>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
i2c-mux-idle-disconnect;
|
|
|
|
i2c0mux0ch0: i2c@0 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0>;
|
|
};
|
|
|
|
i2c0mux0ch1: i2c@1 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <1>;
|
|
|
|
// HDD FRU EEPROM
|
|
eeprom@56 {
|
|
compatible = "atmel,24c128";
|
|
reg = <0x56>;
|
|
};
|
|
|
|
// E1.S Backplane
|
|
i2c0mux0ch1mux0: i2c-mux@74 {
|
|
compatible = "nxp,pca9546";
|
|
reg = <0x74>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
i2c-mux-idle-disconnect;
|
|
|
|
i2c0mux0ch1mux0ch0: i2c@0 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0>;
|
|
};
|
|
|
|
i2c0mux0ch1mux0ch1: i2c@1 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <1>;
|
|
};
|
|
|
|
i2c0mux0ch1mux0ch2: i2c@2 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <2>;
|
|
};
|
|
|
|
i2c0mux0ch1mux0ch3: i2c@3 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <3>;
|
|
};
|
|
};
|
|
};
|
|
|
|
i2c0mux0ch2: i2c@2 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <2>;
|
|
};
|
|
|
|
i2c0mux0ch3: i2c@3 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <3>;
|
|
};
|
|
};
|
|
|
|
i2c-mux@72 {
|
|
compatible = "nxp,pca9546";
|
|
reg = <0x72>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
i2c-mux-idle-disconnect;
|
|
|
|
i2c0mux1ch0: i2c@0 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0>;
|
|
};
|
|
|
|
i2c0mux1ch1: i2c@1 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <1>;
|
|
|
|
// IO Mezz 0 IOEXP
|
|
io_expander7: gpio@20 {
|
|
compatible = "nxp,pca9535";
|
|
reg = <0x20>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
gpio-line-names =
|
|
"RST_CX7_0",
|
|
"RST_CX7_1",
|
|
"CX0_SSD0_PRSNT_L",
|
|
"CX1_SSD1_PRSNT_L",
|
|
"CX_BOOT_CMPLT_CX0",
|
|
"CX_BOOT_CMPLT_CX1",
|
|
"CX_TWARN_CX0_L",
|
|
"CX_TWARN_CX1_L",
|
|
"CX_OVT_SHDN_CX0",
|
|
"CX_OVT_SHDN_CX1",
|
|
"FNP_L_CX0",
|
|
"FNP_L_CX1",
|
|
"",
|
|
"MCU_GPIO",
|
|
"MCU_RST_N",
|
|
"MCU_RECOVERY_N";
|
|
};
|
|
|
|
// IO Mezz 0 FRU EEPROM
|
|
eeprom@50 {
|
|
compatible = "atmel,24c64";
|
|
reg = <0x50>;
|
|
};
|
|
|
|
// OSFP 0 FRU EEPROM
|
|
eeprom@52 {
|
|
compatible = "atmel,24c128";
|
|
reg = <0x52>;
|
|
};
|
|
};
|
|
|
|
i2c0mux1ch2: i2c@2 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <2>;
|
|
};
|
|
|
|
i2c0mux1ch3: i2c@3 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <3>;
|
|
};
|
|
};
|
|
|
|
i2c-mux@73 {
|
|
compatible = "nxp,pca9546";
|
|
reg = <0x73>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
i2c-mux-idle-disconnect;
|
|
|
|
i2c0mux2ch0: i2c@0 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0>;
|
|
// IOB0 NIC0 TEMP
|
|
temperature-sensor@1f {
|
|
compatible = "ti,tmp421";
|
|
reg = <0x1f>;
|
|
};
|
|
};
|
|
|
|
i2c0mux2ch1: i2c@1 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <1>;
|
|
};
|
|
|
|
i2c0mux2ch2: i2c@2 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <2>;
|
|
};
|
|
|
|
i2c0mux2ch3: i2c@3 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <3>;
|
|
// IOB0 NIC1 TEMP
|
|
temperature-sensor@1f {
|
|
compatible = "ti,tmp421";
|
|
reg = <0x1f>;
|
|
};
|
|
};
|
|
};
|
|
|
|
i2c-mux@75 {
|
|
compatible = "nxp,pca9546";
|
|
reg = <0x75>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
i2c-mux-idle-disconnect;
|
|
|
|
i2c0mux3ch0: i2c@0 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0>;
|
|
};
|
|
|
|
i2c0mux3ch1: i2c@1 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <1>;
|
|
|
|
// E1.S Backplane HDD FRU EEPROM
|
|
eeprom@56 {
|
|
compatible = "atmel,24c128";
|
|
reg = <0x56>;
|
|
};
|
|
|
|
// E1.S Backplane MUX
|
|
i2c0mux3ch1mux0: i2c-mux@74 {
|
|
compatible = "nxp,pca9546";
|
|
reg = <0x74>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
i2c-mux-idle-disconnect;
|
|
|
|
i2c0mux3ch1mux0ch0: i2c@0 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0>;
|
|
};
|
|
|
|
i2c0mux3ch1mux0ch1: i2c@1 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <1>;
|
|
};
|
|
|
|
i2c0mux3ch1mux0ch2: i2c@2 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <2>;
|
|
};
|
|
|
|
i2c0mux3ch1mux0ch3: i2c@3 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <3>;
|
|
};
|
|
};
|
|
};
|
|
|
|
i2c0mux3ch2: i2c@2 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <2>;
|
|
};
|
|
|
|
i2c0mux3ch3: i2c@3 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <3>;
|
|
};
|
|
};
|
|
|
|
i2c-mux@76 {
|
|
compatible = "nxp,pca9546";
|
|
reg = <0x76>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
i2c-mux-idle-disconnect;
|
|
|
|
i2c0mux4ch0: i2c@0 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0>;
|
|
};
|
|
|
|
i2c0mux4ch1: i2c@1 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <1>;
|
|
|
|
// IO Mezz 1 IOEXP
|
|
io_expander8: gpio@21 {
|
|
compatible = "nxp,pca9535";
|
|
reg = <0x21>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
gpio-line-names =
|
|
"SEC_RST_CX7_0",
|
|
"SEC_RST_CX7_1",
|
|
"SEC_CX0_SSD0_PRSNT_L",
|
|
"SEC_CX1_SSD1_PRSNT_L",
|
|
"SEC_CX_BOOT_CMPLT_CX0",
|
|
"SEC_CX_BOOT_CMPLT_CX1",
|
|
"SEC_CX_TWARN_CX0_L",
|
|
"SEC_CX_TWARN_CX1_L",
|
|
"SEC_CX_OVT_SHDN_CX0",
|
|
"SEC_CX_OVT_SHDN_CX1",
|
|
"SEC_FNP_L_CX0",
|
|
"SEC_FNP_L_CX1",
|
|
"",
|
|
"SEC_MCU_GPIO",
|
|
"SEC_MCU_RST_N",
|
|
"SEC_MCU_RECOVERY_N";
|
|
};
|
|
|
|
// IO Mezz 1 FRU EEPROM
|
|
eeprom@50 {
|
|
compatible = "atmel,24c64";
|
|
reg = <0x50>;
|
|
};
|
|
|
|
// OSFP 1 FRU EEPROM
|
|
eeprom@52 {
|
|
compatible = "atmel,24c128";
|
|
reg = <0x52>;
|
|
};
|
|
};
|
|
|
|
i2c0mux4ch2: i2c@2 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <2>;
|
|
};
|
|
|
|
i2c0mux4ch3: i2c@3 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <3>;
|
|
};
|
|
};
|
|
|
|
i2c-mux@77 {
|
|
compatible = "nxp,pca9546";
|
|
reg = <0x77>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
i2c-mux-idle-disconnect;
|
|
|
|
i2c0mux5ch0: i2c@0 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0>;
|
|
// IOB1 NIC0 TEMP
|
|
temperature-sensor@1f {
|
|
compatible = "ti,tmp421";
|
|
reg = <0x1f>;
|
|
};
|
|
};
|
|
|
|
i2c0mux5ch1: i2c@1 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <1>;
|
|
};
|
|
|
|
i2c0mux5ch2: i2c@2 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <2>;
|
|
};
|
|
|
|
i2c0mux5ch3: i2c@3 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <3>;
|
|
// IOB1 NIC1 TEMP
|
|
temperature-sensor@1f {
|
|
compatible = "ti,tmp421";
|
|
reg = <0x1f>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&i2c1 {
|
|
status = "okay";
|
|
|
|
// PDB
|
|
power-monitor@12 {
|
|
compatible = "ti,lm5066i";
|
|
reg = <0x12>;
|
|
shunt-resistor-micro-ohms = <183>;
|
|
};
|
|
|
|
// PDB
|
|
power-monitor@14 {
|
|
compatible = "ti,lm5066i";
|
|
reg = <0x14>;
|
|
shunt-resistor-micro-ohms = <183>;
|
|
};
|
|
|
|
// Module 0
|
|
fanctl0: fan-controller@20{
|
|
compatible = "maxim,max31790";
|
|
reg = <0x20>;
|
|
};
|
|
|
|
// Module 0
|
|
fanctl1: fan-controller@23{
|
|
compatible = "maxim,max31790";
|
|
reg = <0x23>;
|
|
};
|
|
|
|
// Module 1
|
|
fanctl2: fan-controller@2c{
|
|
compatible = "maxim,max31790";
|
|
reg = <0x2c>;
|
|
};
|
|
|
|
// Module 1
|
|
fanctl3: fan-controller@2f{
|
|
compatible = "maxim,max31790";
|
|
reg = <0x2f>;
|
|
};
|
|
|
|
// Module 0 Leak Sensor
|
|
adc@34 {
|
|
compatible = "maxim,max1363";
|
|
reg = <0x34>;
|
|
};
|
|
|
|
// Module 1 Leak Sensor
|
|
adc@35 {
|
|
compatible = "maxim,max1363";
|
|
reg = <0x35>;
|
|
};
|
|
|
|
// PDB TEMP SENSOR
|
|
temperature-sensor@4e {
|
|
compatible = "ti,tmp1075";
|
|
reg = <0x4e>;
|
|
};
|
|
|
|
// PDB FRU EEPROM
|
|
eeprom@50 {
|
|
compatible = "atmel,24c02";
|
|
reg = <0x50>;
|
|
};
|
|
|
|
// PDB
|
|
vrm@60 {
|
|
compatible = "renesas,raa228004";
|
|
reg = <0x60>;
|
|
};
|
|
|
|
// PDB
|
|
vrm@61 {
|
|
compatible = "renesas,raa228004";
|
|
reg = <0x61>;
|
|
};
|
|
|
|
// Interposer
|
|
i2c-mux@70 {
|
|
compatible = "nxp,pca9548";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x70>;
|
|
i2c-mux-idle-disconnect;
|
|
|
|
i2c1mux0ch0: i2c@0 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x0>;
|
|
};
|
|
|
|
i2c1mux0ch1: i2c@1 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x1>;
|
|
};
|
|
|
|
i2c1mux0ch2: i2c@2 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x2>;
|
|
};
|
|
|
|
i2c1mux0ch3: i2c@3 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x3>;
|
|
};
|
|
|
|
i2c1mux0ch4: i2c@4 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x4>;
|
|
};
|
|
|
|
i2c1mux0ch5: i2c@5 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x5>;
|
|
|
|
// Interposer TEMP SENSOR
|
|
temperature-sensor@4f {
|
|
compatible = "ti,tmp75";
|
|
reg = <0x4f>;
|
|
};
|
|
|
|
// Interposer FRU EEPROM
|
|
eeprom@54 {
|
|
compatible = "atmel,24c64";
|
|
reg = <0x54>;
|
|
};
|
|
};
|
|
|
|
i2c1mux0ch6: i2c@6 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x6>;
|
|
|
|
// Interposer IOEXP
|
|
io_expander5: gpio@27 {
|
|
compatible = "nxp,pca9554";
|
|
reg = <0x27>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
gpio-line-names =
|
|
"JTAG_MUX_SEL",
|
|
"IOX_BMC_RESET",
|
|
"RTC_CLR_L",
|
|
"RTC_U77_ALRT_N",
|
|
"",
|
|
"PSU_ALERT_N",
|
|
"",
|
|
"RST_P12V_STBY_N";
|
|
};
|
|
};
|
|
|
|
i2c1mux0ch7: i2c@7 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x7>;
|
|
|
|
// FIO TEMP SENSOR
|
|
temperature-sensor@4b {
|
|
compatible = "ti,tmp75";
|
|
reg = <0x4b>;
|
|
};
|
|
|
|
// FIO FRU EEPROM
|
|
eeprom@51 {
|
|
compatible = "atmel,24c64";
|
|
reg = <0x51>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&i2c2 {
|
|
status = "okay";
|
|
// Module 0, Expander @0x20
|
|
io_expander0: gpio@20 {
|
|
compatible = "nxp,pca9555";
|
|
reg = <0x20>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
gpio-line-names =
|
|
"FPGA_THERM_OVERT_L-I",
|
|
"FPGA_READY_BMC-I",
|
|
"HMC_BMC_DETECT-O",
|
|
"HMC_PGOOD-O",
|
|
"",
|
|
"BMC_STBY_CYCLE-O",
|
|
"FPGA_EROT_FATAL_ERROR_L-I",
|
|
"WP_HW_EXT_CTRL_L-O",
|
|
"EROT_FPGA_RST_L-O",
|
|
"FPGA_EROT_RECOVERY_L-O",
|
|
"BMC_EROT_FPGA_SPI_MUX_SEL-O",
|
|
"USB2_HUB_RST_L-O",
|
|
"",
|
|
"SGPIO_EN_L-O",
|
|
"B2B_IOEXP_INT_L-I",
|
|
"I2C_BUS_MUX_RESET_L-O";
|
|
};
|
|
|
|
// Module 1, Expander @0x21
|
|
io_expander1: gpio@21 {
|
|
compatible = "nxp,pca9555";
|
|
reg = <0x21>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
gpio-line-names =
|
|
"SEC_FPGA_THERM_OVERT_L",
|
|
"SEC_FPGA_READY_BMC",
|
|
"SEC_HMC_BMC_DETECT",
|
|
"SEC_HMC_PGOOD",
|
|
"",
|
|
"SEC_BMC_SELF_POWER_CYCLE",
|
|
"SEC_SEC_FPGA_EROT_FATAL_ERROR_L",
|
|
"SEC_WP_HW_EXT_CTRL_L",
|
|
"SEC_EROT_FPGA_RST_L",
|
|
"SEC_FPGA_EROT_RECOVERY_L",
|
|
"SEC_BMC_EROT_FPGA_SPI_MUX_SEL",
|
|
"SEC_USB2_HUB_RST_L",
|
|
"",
|
|
"SEC_SGPIO_EN_L",
|
|
"SEC_IOB_IOEXP_INT_L",
|
|
"SEC_I2C_BUS_MUX_RESET_L";
|
|
};
|
|
|
|
// HMC Expander @0x27
|
|
io_expander2: gpio@27 {
|
|
compatible = "nxp,pca9555";
|
|
reg = <0x27>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
gpio-line-names =
|
|
"HMC_PRSNT_L-I",
|
|
"HMC_READY-I",
|
|
"HMC_EROT_FATAL_ERROR_L-I",
|
|
"I2C_MUX_SEL-O",
|
|
"HMC_EROT_SPI_MUX_SEL-O",
|
|
"HMC_EROT_RECOVERY_L-O",
|
|
"HMC_EROT_RST_L-O",
|
|
"GLOBAL_WP_HMC-O",
|
|
"FPGA_RST_L-O",
|
|
"USB2_HUB_RST-O",
|
|
"CPU_UART_MUX_SEL-O",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"";
|
|
};
|
|
|
|
// Module 0 Aux EEPROM
|
|
eeprom@50 {
|
|
compatible = "atmel,24c64";
|
|
reg = <0x50>;
|
|
};
|
|
|
|
// Module 1 Aux EEPROM
|
|
eeprom@51 {
|
|
compatible = "atmel,24c64";
|
|
reg = <0x51>;
|
|
};
|
|
};
|
|
|
|
&i2c3 {
|
|
status = "okay";
|
|
};
|
|
|
|
&i2c4 {
|
|
status = "okay";
|
|
};
|
|
|
|
&i2c5 {
|
|
status = "okay";
|
|
};
|
|
|
|
&i2c6 {
|
|
status = "okay";
|
|
io_expander3: gpio@21 {
|
|
compatible = "nxp,pca9555";
|
|
reg = <0x21>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
gpio-line-names =
|
|
"RTC_MUX_SEL",
|
|
"PCI_MUX_SEL",
|
|
"TPM_MUX_SEL",
|
|
"FAN_MUX-SEL",
|
|
"SGMII_MUX_SEL",
|
|
"DP_MUX_SEL",
|
|
"UPHY3_USB_SEL",
|
|
"NCSI_MUX_SEL",
|
|
"BMC_PHY_RST",
|
|
"RTC_CLR_L",
|
|
"BMC_12V_CTRL",
|
|
"PS_RUN_IO0_PG",
|
|
"",
|
|
"",
|
|
"",
|
|
"";
|
|
};
|
|
|
|
rtc@6f {
|
|
compatible = "nuvoton,nct3018y";
|
|
reg = <0x6f>;
|
|
};
|
|
};
|
|
|
|
&i2c7 {
|
|
status = "okay";
|
|
};
|
|
|
|
&i2c8 {
|
|
status = "okay";
|
|
};
|
|
|
|
&i2c9 {
|
|
status = "okay";
|
|
// SCM TEMP SENSOR BOARD
|
|
temperature-sensor@4b {
|
|
compatible = "national,lm75b";
|
|
reg = <0x4b>;
|
|
};
|
|
|
|
// SCM CPLD IOEXP
|
|
io_expander4: gpio@4f {
|
|
compatible = "nxp,pca9555";
|
|
reg = <0x4f>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
gpio-line-names =
|
|
"stby_power_en_cpld",
|
|
"stby_power_gd_cpld",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"";
|
|
};
|
|
|
|
// SCM FRU EEPROM
|
|
eeprom@50 {
|
|
compatible = "atmel,24c64";
|
|
reg = <0x50>;
|
|
};
|
|
|
|
// BSM FRU EEPROM
|
|
eeprom@56 {
|
|
compatible = "atmel,24c64";
|
|
reg = <0x56>;
|
|
};
|
|
};
|
|
|
|
&i2c10 {
|
|
status = "okay";
|
|
multi-master;
|
|
mctp-controller;
|
|
mctp@10 {
|
|
compatible = "mctp-i2c-controller";
|
|
reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
|
|
};
|
|
|
|
// OCP NIC0 TEMP
|
|
temperature-sensor@1f {
|
|
compatible = "ti,tmp421";
|
|
reg = <0x1f>;
|
|
};
|
|
|
|
// OCP NIC0 FRU EEPROM
|
|
eeprom@50 {
|
|
compatible = "atmel,24c64";
|
|
reg = <0x50>;
|
|
};
|
|
};
|
|
|
|
&i2c11 {
|
|
status = "okay";
|
|
|
|
ssif-bmc@10 {
|
|
compatible = "ssif-bmc";
|
|
reg = <0x10>;
|
|
};
|
|
};
|
|
|
|
&i2c12 {
|
|
status = "okay";
|
|
multi-master;
|
|
|
|
// HPM 1 FRU EEPROM
|
|
eeprom@50 {
|
|
compatible = "atmel,24c64";
|
|
reg = <0x50>;
|
|
};
|
|
// CBC 2 FRU
|
|
eeprom@54 {
|
|
compatible = "atmel,24c02";
|
|
reg = <0x54>;
|
|
};
|
|
// CBC 3 FRU
|
|
eeprom@55 {
|
|
compatible = "atmel,24c02";
|
|
reg = <0x55>;
|
|
};
|
|
};
|
|
|
|
&i2c13 {
|
|
status = "okay";
|
|
multi-master;
|
|
|
|
// HPM FRU EEPROM
|
|
eeprom@50 {
|
|
compatible = "atmel,24c64";
|
|
reg = <0x50>;
|
|
};
|
|
|
|
// CBC 0 FRU
|
|
eeprom@54 {
|
|
compatible = "atmel,24c02";
|
|
reg = <0x54>;
|
|
};
|
|
|
|
// CBC 1 FRU
|
|
eeprom@55 {
|
|
compatible = "atmel,24c02";
|
|
reg = <0x55>;
|
|
};
|
|
|
|
// HMC FRU EEPROM
|
|
eeprom@57 {
|
|
compatible = "atmel,24c02";
|
|
reg = <0x57>;
|
|
};
|
|
};
|
|
|
|
&i2c14 {
|
|
status = "okay";
|
|
|
|
// PDB CPLD IOEXP 0x10
|
|
io_expander9: gpio@10 {
|
|
compatible = "nxp,pca9555";
|
|
interrupt-parent = <&gpio0>;
|
|
interrupts = <ASPEED_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>;
|
|
reg = <0x10>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
gpio-line-names =
|
|
"wSequence_Latch_State_N",
|
|
"wP12V_N1N2_RUNTIME_FLT_N",
|
|
"wP12V_FAN_RUNTIME_FLT_N",
|
|
"wP12V_AUX_RUNTIME_FLT_N",
|
|
"wHost_PERST_SEQPWR_FLT_N",
|
|
"wP12V_N1N2_SEQPWR_FLT_N",
|
|
"wP12V_FAN_SEQPWR_FLT_N",
|
|
"wP12V_AUX_SEQPWR_FLT_N",
|
|
"wP12V_RUNTIME_FLT_NIC1_N",
|
|
"wAUX_RUNTIME_FLT_NIC1_N",
|
|
"wP12V_SEQPWR_FLT_NIC1_N",
|
|
"wAUX_SEQPWR_FLT_NIC1_N",
|
|
"wP12V_RUNTIME_FLT_NIC0_N",
|
|
"wAUX_RUNTIME_FLT_NIC0_N",
|
|
"wP12V_SEQPWR_FLT_NIC0_N",
|
|
"wAUX_SEQPWR_FLT_NIC0_N";
|
|
};
|
|
|
|
// PDB CPLD IOEXP 0x11
|
|
io_expander10: gpio@11 {
|
|
compatible = "nxp,pca9555";
|
|
interrupt-parent = <&gpio0>;
|
|
interrupts = <ASPEED_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>;
|
|
reg = <0x11>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
gpio-line-names =
|
|
"FM_P12V_NIC1_FLTB_R_N",
|
|
"FM_P3V3_NIC1_FAULT_R_N",
|
|
"FM_P12V_NIC0_FLTB_R_N",
|
|
"FM_P3V3_NIC0_FAULT_R_N",
|
|
"P48V_HS2_FAULT_N_PLD",
|
|
"P48V_HS1_FAULT_N_PLD",
|
|
"P12V_AUX_FAN_OC_PLD_N",
|
|
"P12V_AUX_FAN_FAULT_PLD_N",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"FM_SYS_THROTTLE_N",
|
|
"OCP_V3_2_PWRBRK_FROM_HOST_ISO_PLD_N",
|
|
"OCP_SFF_PWRBRK_FROM_HOST_ISO_PLD_N";
|
|
};
|
|
|
|
// PDB CPLD IOEXP 0x12
|
|
io_expander11: gpio@12 {
|
|
compatible = "nxp,pca9555";
|
|
interrupt-parent = <&gpio0>;
|
|
interrupts = <ASPEED_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>;
|
|
reg = <0x12>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
gpio-line-names =
|
|
"P12V_AUX_PSU_SMB_ALERT_R_L",
|
|
"P12V_SCM_SENSE_ALERT_R_N",
|
|
"P12V_AUX_NIC1_SENSE_ALERT_R_N",
|
|
"P12V_AUX_NIC0_SENSE_ALERT_R_N",
|
|
"NODEB_PSU_SMB_ALERT_R_L",
|
|
"NODEA_PSU_SMB_ALERT_R_L",
|
|
"P12V_AUX_FAN_ALERT_PLD_N",
|
|
"P52V_SENSE_ALERT_PLD_N",
|
|
"PRSNT_RJ45_FIO_N_R",
|
|
"FM_MAIN_PWREN_RMC_EN_ISO_R",
|
|
"CHASSIS3_LEAK_Q_N_PLD",
|
|
"CHASSIS2_LEAK_Q_N_PLD",
|
|
"CHASSIS1_LEAK_Q_N_PLD",
|
|
"CHASSIS0_LEAK_Q_N_PLD",
|
|
"",
|
|
"SMB_RJ45_FIO_TMP_ALERT";
|
|
};
|
|
|
|
// PDB CPLD IOEXP 0x13
|
|
io_expander12: gpio@13 {
|
|
compatible = "nxp,pca9555";
|
|
interrupt-parent = <&gpio0>;
|
|
interrupts = <ASPEED_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>;
|
|
reg = <0x13>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
gpio-line-names =
|
|
"FAN_7_PRESENT_N",
|
|
"FAN_6_PRESENT_N",
|
|
"FAN_5_PRESENT_N",
|
|
"FAN_4_PRESENT_N",
|
|
"FAN_3_PRESENT_N",
|
|
"FAN_2_PRESENT_N",
|
|
"FAN_1_PRESENT_N",
|
|
"FAN_0_PRESENT_N",
|
|
"HP_LVC3_OCP_V3_2_PRSNT2_PLD_N",
|
|
"HP_LVC3_OCP_V3_1_PRSNT2_PLD_N",
|
|
"PRSNT_HDDBD_POWER_CABLE_N",
|
|
"PRSNT_OSFP0_POWER_CABLE_N",
|
|
"PRSNT_CHASSIS3_LEAK_CABLE_R_N",
|
|
"PRSNT_CHASSIS2_LEAK_CABLE_R_N",
|
|
"PRSNT_CHASSIS1_LEAK_CABLE_R_N",
|
|
"PRSNT_CHASSIS0_LEAK_CABLE_R_N";
|
|
};
|
|
|
|
// PDB CPLD IOEXP 0x14
|
|
io_expander13: gpio@14 {
|
|
compatible = "nxp,pca9555";
|
|
reg = <0x14>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
gpio-line-names =
|
|
"rmc_en_dc_pwr_on",
|
|
"HDD_LED_N",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"leak_config_0",
|
|
"leak_config_1",
|
|
"leak_config_2",
|
|
"leak_config_3",
|
|
"mfg_led_test_mode_l",
|
|
"small_leak_err_inj",
|
|
"large_leak_err_inj",
|
|
"";
|
|
};
|
|
};
|
|
|
|
&i2c15 {
|
|
status = "okay";
|
|
multi-master;
|
|
mctp-controller;
|
|
mctp@10 {
|
|
compatible = "mctp-i2c-controller";
|
|
reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
|
|
};
|
|
|
|
// OCP NIC1 TEMP
|
|
temperature-sensor@1f {
|
|
compatible = "ti,tmp421";
|
|
reg = <0x1f>;
|
|
};
|
|
|
|
// OCP NIC1 FRU EEPROM
|
|
eeprom@52 {
|
|
compatible = "atmel,24c64";
|
|
reg = <0x52>;
|
|
};
|
|
};
|
|
|
|
&mac2 {
|
|
status = "okay";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_ncsi3_default>;
|
|
use-ncsi;
|
|
};
|
|
|
|
&mac3 {
|
|
status = "okay";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_ncsi4_default>;
|
|
use-ncsi;
|
|
};
|
|
|
|
&udma {
|
|
status = "okay";
|
|
};
|
|
|
|
&uart1 {
|
|
status = "okay";
|
|
};
|
|
|
|
&uart3 {
|
|
status = "okay";
|
|
};
|
|
|
|
&uart4 {
|
|
status = "okay";
|
|
};
|
|
|
|
&uart5 {
|
|
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>;
|
|
};
|