// SPDX-License-Identifier: GPL-2.0-or-later
// Copyright 2023 Inventec Corp.
/dts-v1/;
#include "aspeed-g6.dtsi"
#include "aspeed-g6-pinctrl.dtsi"
#include <dt-bindings/i2c/i2c.h>
#include <dt-bindings/gpio/aspeed-gpio.h>
/ {
model = "STARSCREAM BMC";
compatible = "inventec,starscream-bmc", "aspeed,ast2600";
aliases {
serial4 = &uart5;
};
chosen {
stdout-path = &uart5;
};
memory@80000000 {
device_type = "memory";
reg = <0x80000000 0x80000000>;
};
reserved-memory {
#address-cells = <1>;
#size-cells = <1>;
ranges;
video_engine_memory: video {
size = <0x04000000>;
alignment = <0x01000000>;
compatible = "shared-dma-pool";
reusable;
};
};
leds {
compatible = "gpio-leds";
led-uid {
label = "UID_LED";
gpios = <&gpio0 186 GPIO_ACTIVE_LOW>;
};
led-heartbeat {
label = "HB_LED";
gpios = <&gpio0 127 GPIO_ACTIVE_LOW>;
};
};
};
&mdio0 {
status = "okay";
ethphy0: ethernet-phy@0 {
compatible = "ethernet-phy-ieee802.3-c22";
reg = <1>;
};
};
&mac2 {
status = "okay";
pinctrl-names = "default";
phy-mode = "rmii";
pinctrl-0 = <&pinctrl_rmii3_default>;
use-ncsi;
};
&mac3 {
status = "okay";
phy-mode = "rgmii";
phy-handle = <ðphy0>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_rgmii4_default>;
};
&fmc {
status = "okay";
flash@0 {
status = "okay";
m25p,fast-read;
label = "bmc";
spi-max-frequency = <50000000>;
spi-tx-bus-width = <4>;
spi-rx-bus-width = <4>;
#include "openbmc-flash-layout.dtsi"
};
flash@1 {
status = "okay";
m25p,fast-read;
label = "bmc2";
spi-max-frequency = <50000000>;
spi-tx-bus-width = <4>;
spi-rx-bus-width = <4>;
};
};
&spi1 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_spi1_default>;
flash@0 {
status = "okay";
m25p,fast-read;
label = "bios";
spi-max-frequency = <50000000>;
spi-tx-bus-width = <4>;
spi-rx-bus-width = <4>;
};
};
&vuart1 {
status = "okay";
};
&uart1 {
status = "okay";
};
&uart3 {
status = "okay";
};
&uart5 {
status = "okay";
};
&kcs3 {
aspeed,lpc-io-reg = <0xca2>;
status = "okay";
};
&uart_routing {
status = "okay";
};
&i2c0 {
status = "okay";
};
&i2c1 {
status = "okay";
};
&i2c2 {
status = "okay";
};
&i2c3 {
status = "okay";
};
&i2c4 {
status = "okay";
// I2C EXPANDER
i2c-mux@71 {
compatible = "nxp,pca9546";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x71>;
i2c@0 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0>;
// AMD SB-TSI CPU1
sbtsi@4c {
compatible = "amd,sbtsi";
reg = <0x4c>;
};
};
i2c@1 {
#address-cells = <1>;
#size-cells = <0>;
reg = <1>;
// AMD SB-TSI CPU2
sbtsi@48 {
compatible = "amd,sbtsi";
reg = <0x48>;
};
};
};
};
&i2c5 {
status = "okay";
// I2C EXPANDER U153
i2c-mux@70 {
compatible = "nxp,pca9546";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x70>;
usb_hub: i2c@0 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0>;
};
riser1: i2c@1 {
#address-cells = <1>;
#size-cells = <0>;
reg = <1>;
};
riser2: i2c@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
};
i2c@3 {
#address-cells = <1>;
#size-cells = <0>;
reg = <3>;
};
};
};
&i2c6 {
status = "okay";
// Motherboard Temp_U89
temperature-sensor@4e {
compatible = "ti,tmp421";
reg = <0x4e>;
};
// RunBMC Temp_U6
temperature-sensor@49 {
compatible = "ti,tmp75";
reg = <0x49>;
};
};
&i2c7 {
status = "okay";
// I2C EXPANDER U40
i2c-mux@70 {
compatible = "nxp,pca9545";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x70>;
i2c@0 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0>;
};
i2c@1 {
#address-cells = <1>;
#size-cells = <0>;
reg = <1>;
};
i2c@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
};
i2c@3 {
#address-cells = <1>;
#size-cells = <0>;
reg = <3>;
};
};
};
&i2c8 {
status = "okay";
// FRU RunBMC
eeprom@51 {
compatible = "atmel,24c512";
reg = <0x51>;
pagesize = <128>;
};
};
&i2c9 {
status = "okay";
};
&i2c10 {
status = "okay";
};
&i2c11 {
status = "okay";
};
&i2c12 {
status = "okay";
// FRU SCM
eeprom@51 {
compatible = "atmel,24c512";
reg = <0x51>;
pagesize = <128>;
};
// SCM Temp_U17
temperature-sensor@4f {
compatible = "ti,tmp75";
reg = <0x4f>;
};
};
&gpio0 {
status = "okay";
gpio-line-names =
/*A0-A7*/ "","","","","","","","",
/*B0-B7*/ "alert-psu0-smb-r-n","bmc-ready","","assert-cpu0-prochot-r-n",
"","","","",
/*C0-C7*/ "","","","","","","","",
/*D0-D7*/ "","","","","","","","",
/*E0-E7*/ "","","","","","","","",
/*F0-F7*/ "","","","","reset-sgpio-r-n","","","",
/*G0-G7*/ "","","scm-jtag-mux-select","","","","","",
/*H0-H7*/ "","","","","reset-out","power-out","","",
/*I0-I7*/ "","","","","","","irq-bmc-cpu0-buf-nmi-n","",
/*J0-J7*/ "","","","","","","","",
/*K0-K7*/ "","","","","","","","",
/*L0-L7*/ "","","","","","","","",
/*M0-M7*/ "","","","","","","","",
/*N0-N7*/ "","","ncsi-ocp-clk-en-n","","","","","",
/*O0-O7*/ "","","","","","","cpu1-thermal-trip-n","",
/*P0-P7*/ "","","","","","","","",
/*Q0-Q7*/ "cpu0-prochot-n","","cpu1-prochot-n","","cpu0-pe-rst0","","","",
/*R0-R7*/ "","","","","","","","",
/*S0-S7*/ "","","","",
"","PCH_SLP_S4_BMC_N","cpu0-thermtrip-n","alert-psu1-smb-r-n",
/*T0-T7*/ "","","","","","","","",
/*U0-U7*/ "","","","","","","","",
/*V0-V7*/ "bios-recovery-buf-n","","assert-cpu1-prochot-r-n","",
"power-chassis-good","","","",
/*W0-W7*/ "","","","","","","","",
/*X0-X7*/ "","","","","platform-type","","","",
/*Y0-Y7*/ "","","","","","","","",
/*Z0-Z7*/ "","cpld-power-break-n","","","","","","",
/*AA0-AA7*/ "","","","","","","","",
/*AB0-AB7*/ "","","","","","","","",
/*AC0-AC7*/ "","","","","","","","";
};
&sgpiom0 {
status = "okay";
ngpios = <64>;
bus-frequency = <1000000>;
};
&lpc_snoop {
status = "okay";
snoop-ports = <0x80>;
};
&emmc_controller {
status = "okay";
};
&emmc {
status = "okay";
non-removable;
max-frequency = <52000000>;
bus-width = <8>;
};
&video {
status = "okay";
memory-region = <&video_engine_memory>;
};
&vhub {
status = "okay";
aspeed,vhub-downstream-ports = <7>;
aspeed,vhub-generic-endpoints = <21>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_usb2ad_default>;
};
&rtc {
status = "okay";
};