579 lines
10 KiB
Plaintext
579 lines
10 KiB
Plaintext
|
// SPDX-License-Identifier: GPL-2.0
|
||
|
/dts-v1/;
|
||
|
#include "aspeed-g5.dtsi"
|
||
|
#include <dt-bindings/gpio/aspeed-gpio.h>
|
||
|
|
||
|
/ {
|
||
|
model = "Zaius BMC";
|
||
|
compatible = "ingrasys,zaius-bmc", "aspeed,ast2500";
|
||
|
|
||
|
aliases {
|
||
|
i2c15 = &i2cpcie0;
|
||
|
i2c16 = &i2cpcie1;
|
||
|
i2c17 = &i2cpcie2;
|
||
|
i2c19 = &i2cpcie3;
|
||
|
i2c20 = &i2cpcie4;
|
||
|
};
|
||
|
|
||
|
chosen {
|
||
|
stdout-path = &uart5;
|
||
|
bootargs = "console=ttyS4,115200 earlycon";
|
||
|
};
|
||
|
|
||
|
memory@80000000 {
|
||
|
reg = <0x80000000 0x40000000>;
|
||
|
};
|
||
|
|
||
|
reserved-memory {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <1>;
|
||
|
ranges;
|
||
|
|
||
|
flash_memory: region@98000000 {
|
||
|
no-map;
|
||
|
reg = <0x98000000 0x04000000>; /* 64M */
|
||
|
};
|
||
|
};
|
||
|
|
||
|
onewire0 {
|
||
|
compatible = "w1-gpio";
|
||
|
gpios = <&gpio ASPEED_GPIO(H, 0) GPIO_ACTIVE_HIGH>;
|
||
|
};
|
||
|
|
||
|
onewire1 {
|
||
|
compatible = "w1-gpio";
|
||
|
gpios = <&gpio ASPEED_GPIO(H, 1) GPIO_ACTIVE_HIGH>;
|
||
|
};
|
||
|
|
||
|
onewire2 {
|
||
|
compatible = "w1-gpio";
|
||
|
gpios = <&gpio ASPEED_GPIO(H, 2) GPIO_ACTIVE_HIGH>;
|
||
|
};
|
||
|
|
||
|
onewire3 {
|
||
|
compatible = "w1-gpio";
|
||
|
gpios = <&gpio ASPEED_GPIO(H, 3) GPIO_ACTIVE_HIGH>;
|
||
|
};
|
||
|
|
||
|
gpio-keys {
|
||
|
compatible = "gpio-keys";
|
||
|
|
||
|
event-checkstop {
|
||
|
label = "checkstop";
|
||
|
gpios = <&gpio ASPEED_GPIO(F, 7) GPIO_ACTIVE_LOW>;
|
||
|
linux,code = <ASPEED_GPIO(F, 7)>;
|
||
|
};
|
||
|
|
||
|
event-pcie-e2b-present{
|
||
|
label = "pcie-e2b-present";
|
||
|
gpios = <&gpio ASPEED_GPIO(E, 7) GPIO_ACTIVE_LOW>;
|
||
|
linux,code = <ASPEED_GPIO(E, 7)>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
leds {
|
||
|
compatible = "gpio-leds";
|
||
|
|
||
|
sys_boot_status {
|
||
|
label = "System boot status";
|
||
|
gpios = <&gpio ASPEED_GPIO(D, 5) GPIO_ACTIVE_LOW>;
|
||
|
};
|
||
|
|
||
|
attention {
|
||
|
label = "Attention";
|
||
|
gpios = <&gpio ASPEED_GPIO(D, 6) GPIO_ACTIVE_LOW>;
|
||
|
};
|
||
|
|
||
|
plt_fault {
|
||
|
label = "Platform fault";
|
||
|
gpios = <&gpio ASPEED_GPIO(D, 7) GPIO_ACTIVE_LOW>;
|
||
|
};
|
||
|
|
||
|
hdd_fault {
|
||
|
label = "Onboard drive fault";
|
||
|
gpios = <&gpio ASPEED_GPIO(AA, 2) GPIO_ACTIVE_LOW>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
fsi: gpio-fsi {
|
||
|
compatible = "fsi-master-gpio", "fsi-master";
|
||
|
#address-cells = <2>;
|
||
|
#size-cells = <0>;
|
||
|
no-gpio-delays;
|
||
|
|
||
|
trans-gpios = <&gpio ASPEED_GPIO(O, 6) GPIO_ACTIVE_HIGH>;
|
||
|
enable-gpios = <&gpio ASPEED_GPIO(D, 0) GPIO_ACTIVE_HIGH>;
|
||
|
clock-gpios = <&gpio ASPEED_GPIO(G, 0) GPIO_ACTIVE_HIGH>;
|
||
|
data-gpios = <&gpio ASPEED_GPIO(G, 1) GPIO_ACTIVE_HIGH>;
|
||
|
mux-gpios = <&gpio ASPEED_GPIO(P, 6) GPIO_ACTIVE_HIGH>;
|
||
|
};
|
||
|
|
||
|
iio-hwmon {
|
||
|
compatible = "iio-hwmon";
|
||
|
io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>,
|
||
|
<&adc 4>, <&adc 5>, <&adc 6>, <&adc 7>,
|
||
|
<&adc 8>, <&adc 9>, <&adc 10>, <&adc 11>,
|
||
|
<&adc 13>, <&adc 14>, <&adc 15>;
|
||
|
};
|
||
|
|
||
|
iio-hwmon-battery {
|
||
|
compatible = "iio-hwmon";
|
||
|
io-channels = <&adc 12>;
|
||
|
};
|
||
|
|
||
|
};
|
||
|
|
||
|
&fmc {
|
||
|
status = "okay";
|
||
|
|
||
|
flash@0 {
|
||
|
status = "okay";
|
||
|
label = "bmc";
|
||
|
m25p,fast-read;
|
||
|
spi-max-frequency = <50000000>;
|
||
|
#include "openbmc-flash-layout.dtsi"
|
||
|
};
|
||
|
};
|
||
|
|
||
|
&spi1 {
|
||
|
status = "okay";
|
||
|
pinctrl-names = "default";
|
||
|
pinctrl-0 = <&pinctrl_spi1_default>;
|
||
|
|
||
|
flash@0 {
|
||
|
status = "okay";
|
||
|
label = "pnor";
|
||
|
m25p,fast-read;
|
||
|
spi-max-frequency = <100000000>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
&spi2 {
|
||
|
status = "okay";
|
||
|
pinctrl-names = "default";
|
||
|
pinctrl-0 = <&pinctrl_spi2ck_default
|
||
|
&pinctrl_spi2cs0_default
|
||
|
&pinctrl_spi2cs1_default
|
||
|
&pinctrl_spi2miso_default
|
||
|
&pinctrl_spi2mosi_default>;
|
||
|
|
||
|
flash@0 {
|
||
|
status = "okay";
|
||
|
};
|
||
|
};
|
||
|
|
||
|
&uart1 {
|
||
|
status = "okay";
|
||
|
pinctrl-names = "default";
|
||
|
pinctrl-0 = <&pinctrl_txd1_default
|
||
|
&pinctrl_rxd1_default>;
|
||
|
};
|
||
|
|
||
|
&lpc_ctrl {
|
||
|
status = "okay";
|
||
|
memory-region = <&flash_memory>;
|
||
|
flash = <&spi1>;
|
||
|
};
|
||
|
|
||
|
&lpc_snoop {
|
||
|
status = "okay";
|
||
|
snoop-ports = <0x80>;
|
||
|
};
|
||
|
|
||
|
|
||
|
&uart5 {
|
||
|
status = "okay";
|
||
|
};
|
||
|
|
||
|
&mac0 {
|
||
|
status = "okay";
|
||
|
pinctrl-names = "default";
|
||
|
pinctrl-0 = <&pinctrl_rmii1_default>;
|
||
|
clocks = <&syscon ASPEED_CLK_GATE_MAC1CLK>,
|
||
|
<&syscon ASPEED_CLK_MAC1RCLK>;
|
||
|
clock-names = "MACCLK", "RCLK";
|
||
|
use-ncsi;
|
||
|
};
|
||
|
|
||
|
&mac1 {
|
||
|
status = "okay";
|
||
|
|
||
|
pinctrl-names = "default";
|
||
|
pinctrl-0 = <&pinctrl_rgmii2_default &pinctrl_mdio2_default>;
|
||
|
};
|
||
|
|
||
|
&i2c0 {
|
||
|
status = "okay";
|
||
|
|
||
|
eeprom@50 {
|
||
|
compatible = "atmel,24c64";
|
||
|
reg = <0x50>;
|
||
|
pagesize = <32>;
|
||
|
};
|
||
|
|
||
|
rtc@68 {
|
||
|
compatible = "nxp,pcf8523";
|
||
|
reg = <0x68>;
|
||
|
};
|
||
|
|
||
|
ucd90160@64 {
|
||
|
compatible = "ti,ucd90160";
|
||
|
reg = <0x64>;
|
||
|
};
|
||
|
|
||
|
/* Power sequencer UCD90160 PMBUS @64h
|
||
|
* FRU AT24C64D @50h
|
||
|
* RTC PCF8523 @68h
|
||
|
* Clock buffer 9DBL04 @6dh
|
||
|
*/
|
||
|
};
|
||
|
|
||
|
&i2c1 {
|
||
|
status = "okay";
|
||
|
|
||
|
i2c-switch@71 {
|
||
|
compatible = "nxp,pca9546";
|
||
|
reg = <0x71>;
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
|
||
|
i2cpcie0: i2c@0 {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
reg = <0>;
|
||
|
};
|
||
|
i2cpcie1: i2c@1 {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
reg = <1>;
|
||
|
};
|
||
|
i2cpcie2: i2c@2 {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
reg = <2>;
|
||
|
};
|
||
|
i2ctpm: i2c@3 {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
reg = <3>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
/* MUX1 PCA9546A @71h
|
||
|
* PCIe 0
|
||
|
* PCIe 1
|
||
|
* PCIe 2
|
||
|
* TPM header
|
||
|
*/
|
||
|
};
|
||
|
|
||
|
&i2c2 {
|
||
|
status = "disabled";
|
||
|
|
||
|
/* OCP Mezz Connector A (OOB SMBUS) */
|
||
|
};
|
||
|
|
||
|
&i2c3 {
|
||
|
status = "disabled";
|
||
|
|
||
|
/* OCP Mezz Connector A (PCIe slot SMBUS) */
|
||
|
};
|
||
|
|
||
|
&i2c4 {
|
||
|
status = "okay";
|
||
|
|
||
|
i2c-switch@71 {
|
||
|
compatible = "nxp,pca9546";
|
||
|
reg = <0x71>;
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
|
||
|
i2cpcie3: i2c@0 {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
reg = <0>;
|
||
|
};
|
||
|
i2cpcie4: i2c@1 {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
reg = <1>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
/* MUX1 PCA9546A @71h
|
||
|
* PCIe 3
|
||
|
* PCIe 4
|
||
|
*/
|
||
|
};
|
||
|
|
||
|
|
||
|
&i2c5 {
|
||
|
status = "disabled";
|
||
|
|
||
|
/* CPU0 PRM 0.7V */
|
||
|
/* CPU0 PRM 1.2V CH03 */
|
||
|
/* CPU0 PRM 0.8V */
|
||
|
/* CPU0 PRM 1.2V CH47 */
|
||
|
};
|
||
|
|
||
|
&i2c6 {
|
||
|
status = "disabled";
|
||
|
|
||
|
/* CPU1 PRM 0.7V */
|
||
|
/* CPU1 PRM 1.2V CH03 */
|
||
|
/* CPU1 PRM 0.8V */
|
||
|
/* CPU1 PRM 1.2V CH47 */
|
||
|
};
|
||
|
|
||
|
&i2c7 {
|
||
|
status = "okay";
|
||
|
|
||
|
pca9541a@70 {
|
||
|
compatible = "nxp,pca9541";
|
||
|
reg = <0x70>;
|
||
|
|
||
|
i2c-arb {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
|
||
|
hotswap@54 {
|
||
|
compatible = "ti,lm5066i";
|
||
|
reg = <0x54>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
};
|
||
|
|
||
|
vrm@64 {
|
||
|
compatible = "isil,isl68137";
|
||
|
reg = <0x64>;
|
||
|
};
|
||
|
|
||
|
vrm@40 {
|
||
|
compatible = "isil,isl68137";
|
||
|
reg = <0x40>;
|
||
|
};
|
||
|
|
||
|
vrm@60 {
|
||
|
compatible = "isil,isl68137";
|
||
|
reg = <0x60>;
|
||
|
};
|
||
|
|
||
|
vrm@43 {
|
||
|
compatible = "infineon,ir38064";
|
||
|
reg = <0x43>;
|
||
|
};
|
||
|
|
||
|
vrm@41 {
|
||
|
compatible = "isil,isl68137";
|
||
|
reg = <0x41>;
|
||
|
};
|
||
|
|
||
|
/* Master selector PCA9541A @70h (other master: CPU0)
|
||
|
* LM5066I PMBUS @10h
|
||
|
*/
|
||
|
|
||
|
/*
|
||
|
* Brick will be one of these types/addresses. Depending
|
||
|
* on the board SKU only one is actually present and will successfully
|
||
|
* instantiate while the others will fail the probe operation.
|
||
|
* These are the PVT (and presumably beyond) addresses:
|
||
|
* 12V Quarter Brick DC/DC Converter Q54SJ12050 @6Ah
|
||
|
* 12V Quarter Brick DC/DC Converter Q54SH12050 @30h
|
||
|
*/
|
||
|
power-brick@6a {
|
||
|
compatible = "delta,dps800";
|
||
|
reg = <0x6a>;
|
||
|
};
|
||
|
power-brick@30 {
|
||
|
compatible = "delta,dps800";
|
||
|
reg = <0x30>;
|
||
|
};
|
||
|
|
||
|
/* CPU0 VR ISL68137 0.7V, 0.96V PMBUS @64h */
|
||
|
/* CPU0 VR ISL68137 1.2V CH03 PMBUS @40h */
|
||
|
/* CPU0 VR ISL68137 0.8V PMBUS @60h */
|
||
|
/* CPU0 VR 1.0V IR38064 I2C @11h, PMBUS @43h */
|
||
|
/* CPU0 VR ISL68137 1.2V CH47 PMBUS @41h */
|
||
|
/* Master selector PCA9541A @70h (other master: CPU0)
|
||
|
* LM5066I PMBUS @10h
|
||
|
*/
|
||
|
};
|
||
|
|
||
|
&i2c8 {
|
||
|
status = "okay";
|
||
|
|
||
|
vrm@64 {
|
||
|
compatible = "isil,isl68137";
|
||
|
reg = <0x64>;
|
||
|
};
|
||
|
|
||
|
vrm@40 {
|
||
|
compatible = "isil,isl68137";
|
||
|
reg = <0x40>;
|
||
|
};
|
||
|
|
||
|
vrm@41 {
|
||
|
compatible = "isil,isl68137";
|
||
|
reg = <0x41>;
|
||
|
};
|
||
|
|
||
|
vrm@42 {
|
||
|
compatible = "infineon,ir38064";
|
||
|
reg = <0x42>;
|
||
|
};
|
||
|
|
||
|
vrm@60 {
|
||
|
compatible = "isil,isl68137";
|
||
|
reg = <0x60>;
|
||
|
};
|
||
|
|
||
|
/* CPU1 VR ISL68137 0.7V, 0.96V PMBUS @64h */
|
||
|
/* CPU1 VR ISL68137 1.2V CH03 PMBUS @40h */
|
||
|
/* CPU1 VR ISL68137 1.2V CH47 PMBUS @41h */
|
||
|
/* CPU1 VR 1.0V IR38064 I2C @12h, PMBUS @42h */
|
||
|
/* CPU1 VR ISL68137 0.8V PMBUS @60h */
|
||
|
};
|
||
|
|
||
|
|
||
|
&i2c9 {
|
||
|
status = "disabled";
|
||
|
|
||
|
/* Fan board */
|
||
|
};
|
||
|
|
||
|
&i2c10 {
|
||
|
status = "disabled";
|
||
|
};
|
||
|
|
||
|
&i2c11 {
|
||
|
status = "disabled";
|
||
|
|
||
|
/* GPU sideband */
|
||
|
};
|
||
|
|
||
|
&i2c12 {
|
||
|
status = "disabled";
|
||
|
};
|
||
|
|
||
|
&i2c13 {
|
||
|
status = "disabled";
|
||
|
|
||
|
/* MUX PI3USB102
|
||
|
* CPU0 debug
|
||
|
* CPU1 debug
|
||
|
*/
|
||
|
};
|
||
|
|
||
|
&pinctrl {
|
||
|
aspeed,external-nodes = <&gfx &lhc>;
|
||
|
|
||
|
pinctrl_gpioh_unbiased: gpioi_unbiased {
|
||
|
pins = "A8", "C7", "B7", "A7", "D7", "B6", "A6", "E7";
|
||
|
bias-disable;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
&gpio {
|
||
|
pinctrl-names = "default";
|
||
|
pinctrl-0 = <&pinctrl_gpioh_unbiased>;
|
||
|
|
||
|
gpio-line-names =
|
||
|
/*A0-A7*/ "","cfam-reset","","","","","","",
|
||
|
/*B0-B7*/ "","","","","","","","",
|
||
|
/*C0-C7*/ "","","","","","","","",
|
||
|
/*D0-D7*/ "fsi-enable","","","","","led-sys-boot-status","led-attention",
|
||
|
"led-fault",
|
||
|
/*E0-E7*/ "","","","","","","","presence-pcie-e2b",
|
||
|
/*F0-F7*/ "","","","","","","","checkstop",
|
||
|
/*G0-G7*/ "fsi-clock","fsi-data","","","","","","",
|
||
|
/*H0-H7*/ "onewire0","onewire1","onewire2","onewire3","","","","",
|
||
|
/*I0-I7*/ "","","","power-button","","","","",
|
||
|
/*J0-J7*/ "","","","","","","","",
|
||
|
/*K0-K7*/ "","","","","","","","",
|
||
|
/*L0-L7*/ "","","","","","","","",
|
||
|
/*M0-M7*/ "","","","","","","","",
|
||
|
/*N0-N7*/ "","","","","","","","",
|
||
|
/*O0-O7*/ "","","","","iso_u164_en","","fsi-trans","",
|
||
|
/*P0-P7*/ "ncsi_mux_en_n","bmc_i2c2_sw_rst_n","","bmc_i2c5_sw_rst_n","",
|
||
|
"","fsi-mux","",
|
||
|
/*Q0-Q7*/ "","","","","","","","",
|
||
|
/*R0-R7*/ "","","","","","","","",
|
||
|
/*S0-S7*/ "","","","","","","","",
|
||
|
/*T0-T7*/ "","","","","","","","",
|
||
|
/*U0-U7*/ "","","","","","","","",
|
||
|
/*V0-V7*/ "","","","","","","","",
|
||
|
/*W0-W7*/ "","","","","","","","",
|
||
|
/*X0-X7*/ "","","","","","","","",
|
||
|
/*Y0-Y7*/ "","","","","","","","",
|
||
|
/*Z0-Z7*/ "","","","","","","","",
|
||
|
/*AA0-AA7*/ "","","led-hdd-fault","","","","","",
|
||
|
/*AB0-AB7*/ "","","","","","","","",
|
||
|
/*AC0-AC7*/ "","","","","","","","";
|
||
|
|
||
|
line_iso_u146_en {
|
||
|
gpio-hog;
|
||
|
gpios = <ASPEED_GPIO(O, 4) GPIO_ACTIVE_HIGH>;
|
||
|
output-high;
|
||
|
};
|
||
|
|
||
|
ncsi_mux_en_n {
|
||
|
gpio-hog;
|
||
|
gpios = <ASPEED_GPIO(P, 0) GPIO_ACTIVE_HIGH>;
|
||
|
output-low;
|
||
|
};
|
||
|
|
||
|
line_bmc_i2c2_sw_rst_n {
|
||
|
gpio-hog;
|
||
|
gpios = <ASPEED_GPIO(P, 1) GPIO_ACTIVE_HIGH>;
|
||
|
output-high;
|
||
|
};
|
||
|
|
||
|
line_bmc_i2c5_sw_rst_n {
|
||
|
gpio-hog;
|
||
|
gpios = <ASPEED_GPIO(P, 3) GPIO_ACTIVE_HIGH>;
|
||
|
output-high;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
&vuart {
|
||
|
status = "okay";
|
||
|
};
|
||
|
|
||
|
&gfx {
|
||
|
status = "okay";
|
||
|
};
|
||
|
|
||
|
&pwm_tacho {
|
||
|
status = "okay";
|
||
|
pinctrl-names = "default";
|
||
|
pinctrl-0 = <&pinctrl_pwm0_default &pinctrl_pwm1_default
|
||
|
&pinctrl_pwm2_default &pinctrl_pwm3_default>;
|
||
|
|
||
|
fan@0 {
|
||
|
reg = <0x00>;
|
||
|
aspeed,fan-tach-ch = /bits/ 8 <0x00>;
|
||
|
};
|
||
|
|
||
|
fan@1 {
|
||
|
reg = <0x01>;
|
||
|
aspeed,fan-tach-ch = /bits/ 8 <0x01>;
|
||
|
};
|
||
|
|
||
|
fan@2 {
|
||
|
reg = <0x02>;
|
||
|
aspeed,fan-tach-ch = /bits/ 8 <0x02>;
|
||
|
};
|
||
|
|
||
|
fan@3 {
|
||
|
reg = <0x03>;
|
||
|
aspeed,fan-tach-ch = /bits/ 8 <0x03>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
&ibt {
|
||
|
status = "okay";
|
||
|
};
|
||
|
|
||
|
#include "ibm-power9-dual.dtsi"
|