// SPDX-License-Identifier: GPL-2.0-or-later
// Copyright (c) 2022 Ufispace Co., Ltd.
/dts-v1/;
#include "aspeed-g6.dtsi"
#include <dt-bindings/i2c/i2c.h>
#include <dt-bindings/gpio/aspeed-gpio.h>
/ {
model = "Ufispace NCPLite BMC";
compatible = "ufispace,ncplite-bmc", "aspeed,ast2600";
aliases {
serial4 = &uart5;
};
chosen {
stdout-path = &uart5;
bootargs = "console=ttyS4,115200n8 earlycon";
};
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 0>, <&adc1 1>, <&adc1 2>, <&adc1 3>,
<&adc1 4>, <&adc1 5>, <&adc1 6>, <&adc1 7>;
};
gpio-keys {
compatible = "gpio-keys";
fan-status-int-l {
label = "fan-status-int-l";
gpios = <&gpio0 ASPEED_GPIO(M, 2) GPIO_ACTIVE_LOW>;
linux,code = <ASPEED_GPIO(M, 2)>;
};
allpwr-good {
label = "allpwr-good";
gpios = <&gpio0 ASPEED_GPIO(V, 4) GPIO_ACTIVE_HIGH>;
linux,code = <ASPEED_GPIO(V, 4)>;
};
psu0-alert-n {
label = "psu0-alert-n";
gpios = <&gpio0 ASPEED_GPIO(V, 1) GPIO_ACTIVE_LOW>;
linux,code = <ASPEED_GPIO(V, 1)>;
};
psu1-alert-n {
label = "psu1-alert-n";
gpios = <&gpio0 ASPEED_GPIO(V, 2) GPIO_ACTIVE_LOW>;
linux,code = <ASPEED_GPIO(V, 2)>;
};
int-thermal-alert {
label = "int-thermal-alert";
gpios = <&gpio0 ASPEED_GPIO(P, 2) GPIO_ACTIVE_LOW>;
linux,code = <ASPEED_GPIO(P, 2)>;
};
cpu-caterr-l {
label = "cpu-caterr-l";
gpios = <&gpio0 ASPEED_GPIO(N, 3) GPIO_ACTIVE_LOW>;
linux,code = <ASPEED_GPIO(N, 3)>;
};
cpu-thermtrip-l {
label = "cpu-thermtrip-l";
gpios = <&gpio0 ASPEED_GPIO(V, 5) GPIO_ACTIVE_LOW>;
linux,code = <ASPEED_GPIO(V, 5)>;
};
psu0-presence-l {
label = "psu0-presence-l";
gpios = <&gpio0 ASPEED_GPIO(F, 6) GPIO_ACTIVE_LOW>;
linux,code = <ASPEED_GPIO(F, 6)>;
};
psu1-presence-l {
label = "psu1-presence-l";
gpios = <&gpio0 ASPEED_GPIO(F, 7) GPIO_ACTIVE_LOW>;
linux,code = <ASPEED_GPIO(F, 7)>;
};
psu0-power-ok {
label = "psu0-power-ok";
gpios = <&gpio0 ASPEED_GPIO(M, 4) GPIO_ACTIVE_HIGH>;
linux,code = <ASPEED_GPIO(M, 4)>;
};
psu1-power-ok {
label = "psu1-power-ok";
gpios = <&gpio0 ASPEED_GPIO(M, 5) GPIO_ACTIVE_HIGH>;
linux,code = <ASPEED_GPIO(M, 5)>;
};
};
gpio-keys-polled {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
poll-interval = <1000>;
fan0-presence {
label = "fan0-presence";
gpios = <&fan_ioexp 2 GPIO_ACTIVE_LOW>;
linux,code = <2>;
};
fan1-presence {
label = "fan1-presence";
gpios = <&fan_ioexp 6 GPIO_ACTIVE_LOW>;
linux,code = <6>;
};
fan2-presence {
label = "fan2-presence";
gpios = <&fan_ioexp 10 GPIO_ACTIVE_LOW>;
linux,code = <10>;
};
fan3-presence {
label = "fan3-presence";
gpios = <&fan_ioexp 14 GPIO_ACTIVE_LOW>;
linux,code = <14>;
};
};
};
&mac2 {
status = "okay";
use-ncsi;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_rmii3_default>;
clocks = <&syscon ASPEED_CLK_GATE_MAC3CLK>,
<&syscon ASPEED_CLK_MAC3RCLK>;
clock-names = "MACCLK", "RCLK";
};
&fmc {
status = "okay";
flash@0 {
status = "okay";
m25p,fast-read;
label = "bmc";
spi-max-frequency = <50000000>;
#include "openbmc-flash-layout-64.dtsi"
};
flash@1 {
status = "okay";
m25p,fast-read;
label = "alt-bmc";
spi-max-frequency = <50000000>;
#include "openbmc-flash-layout-64-alt.dtsi"
};
};
&uart1 {
status = "okay";
};
&uart4 {
status = "okay";
};
&uart5 {
status = "okay";
};
&kcs3 {
status = "okay";
aspeed,lpc-io-reg = <0xca2>;
};
&lpc_reset {
status = "okay";
};
&lpc_ctrl {
status = "okay";
};
&uart_routing {
status = "okay";
};
&wdt1 {
status = "okay";
};
&wdt2 {
status = "okay";
};
&peci0 {
status = "okay";
};
&udc {
status = "okay";
};
&adc0 {
vref = <2500>;
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 = <2500>;
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_adc8_default &pinctrl_adc9_default
&pinctrl_adc10_default &pinctrl_adc11_default
&pinctrl_adc12_default &pinctrl_adc13_default
&pinctrl_adc14_default &pinctrl_adc15_default>;
};
&i2c0 {
status = "okay";
};
&i2c1 {
status = "okay";
lm75@48 {
compatible = "national,lm75";
reg = <0x48>;
};
lm75@49 {
compatible = "national,lm75";
reg = <0x49>;
};
lm86@4c {
compatible = "national,lm86";
reg = <0x4c>;
};
};
&i2c2 {
status = "okay";
lm75@4f {
cpmpatible = "national,lm75";
reg = <0x4f>;
};
fan_ioexp: pca9535@20 {
compatible = "nxp,pca9535";
reg = <0x20>;
#address-cells = <1>;
#size-cells = <0>;
gpio-controller;
#gpio-cells = <2>;
gpio-line-names =
"","","presence-fan0","",
"","","presence-fan1","",
"","","presence-fan2","",
"","","presence-fan3","";
};
};
&i2c3 {
status = "okay";
eeprom@50 {
compatible = "atmel,24c128";
reg = <0x50>;
pagesize = <64>;
};
};
&i2c4 {
status = "okay";
psu@58 {
compatible = "pmbus";
reg = <0x58>;
};
eeprom@50 {
compatible = "atmel,24c02";
reg = <0x50>;
pagesize = <1>;
};
};
&i2c5 {
status = "okay";
psu@58 {
compatible = "pmbus";
reg = <0x58>;
};
eeprom@50 {
compatible = "atmel,24c02";
reg = <0x50>;
pagesize = <1>;
};
};
&i2c8 {
status = "okay";
};
&i2c10 {
status = "okay";
lm75@4d {
compatible = "national,lm75";
reg = <0x4d>;
};
};
&gpio0 {
status = "okay";
gpio-line-names =
/*A0-A7*/ "","","","","","","","",
/*B0-B7*/ "","","","","","","","",
/*C0-C7*/ "","","","","","","","",
/*D0-D7*/ "","","","","","","","",
/*E0-E7*/ "","","","","","","","",
/*F0-F7*/ "CPU_PWRGD","","","power-button","host0-ready","","presence-ps0","presence-ps1",
/*G0-G7*/ "","","","","","","","",
/*H0-H7*/ "","","","","","","","",
/*I0-I7*/ "","","","","","reset-button","","",
/*J0-J7*/ "","","","","","","","",
/*K0-K7*/ "","","","","","","","",
/*L0-L7*/ "","","","","","","","",
/*M0-M7*/ "","","","","","","","",
/*N0-N7*/ "power-chassis-control0","power-chassis-control1","","","","","","",
/*O0-O7*/ "","","","","","","","",
/*P0-P7*/ "","","","","","","","",
/*Q0-Q7*/ "","","","","","","","",
/*R0-R7*/ "","","","","","","","",
/*S0-S7*/ "","","","","","","","",
/*T0-T7*/ "","","","","","","","",
/*U0-U7*/ "","","","","","","","",
/*V0-V7*/ "","","","","power-chassis-good","","","";
};