Path: blob/master/arch/arm/boot/dts/aspeed/aspeed-bmc-ibm-balcones.dts
38302 views
// SPDX-License-Identifier: GPL-2.0-or-later
// Copyright 2025 IBM Corp.
/dts-v1/;
#include <dt-bindings/gpio/aspeed-gpio.h>
#include <dt-bindings/i2c/i2c.h>
#include <dt-bindings/leds/leds-pca955x.h>
#include "aspeed-g6.dtsi"
#include "ibm-power11-dual.dtsi"
/ {
model = "Balcones";
compatible = "ibm,balcones-bmc", "aspeed,ast2600";
aliases {
serial4 = &uart5;
i2c16 = &i2c11mux0chn0;
i2c17 = &i2c11mux0chn1;
i2c18 = &i2c11mux0chn2;
i2c19 = &i2c11mux0chn3;
};
chosen {
stdout-path = &uart5;
};
gpio-keys-polled {
compatible = "gpio-keys-polled";
poll-interval = <1000>;
event-fan0-presence {
gpios = <&gpio0 ASPEED_GPIO(F, 4) GPIO_ACTIVE_LOW>;
label = "fan0-presence";
linux,code = <6>;
};
event-fan1-presence {
gpios = <&gpio0 ASPEED_GPIO(F, 5) GPIO_ACTIVE_LOW>;
label = "fan1-presence";
linux,code = <7>;
};
};
iio-hwmon {
compatible = "iio-hwmon";
io-channels = <&adc1 7>;
};
leds {
compatible = "gpio-leds";
led-fan0 {
gpios = <&gpio0 ASPEED_GPIO(G, 0) GPIO_ACTIVE_LOW>;
};
led-fan1 {
gpios = <&gpio0 ASPEED_GPIO(G, 1) GPIO_ACTIVE_LOW>;
};
led-rear-enc-id0 {
gpios = <&gpio0 ASPEED_GPIO(H, 2) GPIO_ACTIVE_LOW>;
};
led-rear-enc-fault0 {
gpios = <&gpio0 ASPEED_GPIO(H, 3) GPIO_ACTIVE_LOW>;
};
};
memory@80000000 {
device_type = "memory";
reg = <0x80000000 0x40000000>;
};
reserved-memory {
#address-cells = <1>;
#size-cells = <1>;
ranges;
event_log: region@b3d00000 {
reg = <0xb3d00000 0x100000>;
no-map;
};
ramoops@b3e00000 {
compatible = "ramoops";
reg = <0xb3e00000 0x200000>; /* 16 * (4 * 0x8000) */
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x8000>;
pmsg-size = <0x8000>;
max-reason = <3>; /* KMSG_DUMP_EMERG */
};
/* LPC FW cycle bridge region requires natural alignment */
flash_memory: region@b4000000 {
reg = <0xb4000000 0x04000000>; /* 64M */
no-map;
};
/* VGA region is dictated by hardware strapping */
vga_memory: region@bf000000 {
compatible = "shared-dma-pool";
reg = <0xbf000000 0x01000000>; /* 16M */
no-map;
};
};
};
&adc1 {
aspeed,int-vref-microvolt = <2500000>;
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>;
status = "okay";
};
&ehci1 {
status = "okay";
};
&emmc {
clk-phase-mmc-hs200 = <180>, <180>;
status = "okay";
};
&emmc_controller {
status = "okay";
};
&gpio0 {
gpio-line-names =
/*A0-A7*/ "","","","","","","","",
/*B0-B7*/ "","","","","","","checkstop","",
/*C0-C7*/ "","","","","","","","",
/*D0-D7*/ "","","","","","","","",
/*E0-E7*/ "","","","","","","","",
/*F0-F7*/ "","fan-ctlr-reset","rtc-battery-voltage-read-enable",
"reset-cause-pinhole","","","","",
/*G0-G7*/ "fan0","fan1","","","","","","",
/*H0-H7*/ "","","rear-enc-id0","rear-enc-fault0","","","","",
/*I0-I7*/ "","","","","","","bmc-secure-boot","",
/*J0-J7*/ "","","","","","","","",
/*K0-K7*/ "","","","","","","","",
/*L0-L7*/ "","","","","","","","",
/*M0-M7*/ "","","","","","","","",
/*N0-N7*/ "","","","","","","","",
/*O0-O7*/ "","","","usb-power","","","","",
/*P0-P7*/ "","","","","","","","",
/*Q0-Q7*/ "cfam-reset","","regulator-standby-faulted","","","","","",
/*R0-R7*/ "bmc-tpm-reset","power-chassis-control","power-chassis-good","","",
"","","",
/*S0-S7*/ "presence-ps0","presence-ps1","","","power-ffs-sync-history","","",
"",
/*T0-T7*/ "","","","","","","","",
/*U0-U7*/ "","","","","","","","",
/*V0-V7*/ "","","","","","","","",
/*W0-W7*/ "","","","","","","","",
/*X0-X7*/ "","","","","","","","",
/*Y0-Y7*/ "","","","","","","","",
/*Z0-Z7*/ "","","","","","","","";
usb-power-hog {
gpio-hog;
gpios = <ASPEED_GPIO(O, 3) GPIO_ACTIVE_LOW>;
output-high;
};
};
&i2c0 {
status = "okay";
gpio@20 {
compatible = "ti,tca9554";
reg = <0x20>;
gpio-controller;
#gpio-cells = <2>;
gpio-line-names =
"",
"RUSSEL_FW_I2C_ENABLE_N",
"RUSSEL_OPPANEL_PRESENCE_N",
"BLYTH_OPPANEL_PRESENCE_N",
"CPU_TPM_CARD_PRESENT_N",
"",
"",
"DASD_BP_PRESENT_N";
};
eeprom@51 {
compatible = "atmel,24c64";
reg = <0x51>;
};
};
&i2c1 {
status = "okay";
};
&i2c2 {
status = "okay";
pmic@64 {
compatible = "ti,ucd90160";
reg = <0x64>;
};
};
&i2c3 {
status = "okay";
power-supply@5a {
compatible = "acbel,fsg032";
reg = <0x5a>;
};
power-supply@5b {
compatible = "acbel,fsg032";
reg = <0x5b>;
};
};
&i2c4 {
status = "okay";
};
&i2c5 {
status = "okay";
eeprom@52 {
compatible = "atmel,24c64";
reg = <0x52>;
};
led-controller@62 {
compatible = "nxp,pca9551";
reg = <0x62>;
#address-cells = <1>;
#size-cells = <0>;
gpio-controller;
#gpio-cells = <2>;
led@0 {
reg = <0>;
default-state = "keep";
label = "cablecard2-cxp-top";
retain-state-shutdown;
type = <PCA955X_TYPE_LED>;
};
led@1 {
reg = <1>;
default-state = "keep";
label = "cablecard2-cxp-bot";
retain-state-shutdown;
type = <PCA955X_TYPE_LED>;
};
};
};
&i2c6 {
status = "okay";
};
&i2c7 {
multi-master;
status = "okay";
temperature-sensor@48 {
compatible = "ti,tmp275";
reg = <0x48>;
};
eeprom@50 {
compatible = "atmel,24c64";
reg = <0x50>;
};
eeprom@51 {
compatible = "atmel,24c64";
reg = <0x51>;
};
pwm@53 {
compatible = "maxim,max31785a";
reg = <0x53>;
};
led-controller@60 {
compatible = "nxp,pca9551";
reg = <0x60>;
#address-cells = <1>;
#size-cells = <0>;
gpio-controller;
#gpio-cells = <2>;
led@0 {
reg = <0>;
default-state = "keep";
label = "front-sys-id0";
retain-state-shutdown;
type = <PCA955X_TYPE_LED>;
};
led@1 {
reg = <1>;
default-state = "keep";
label = "front-check-log0";
retain-state-shutdown;
type = <PCA955X_TYPE_LED>;
};
led@2 {
reg = <2>;
default-state = "keep";
label = "front-enc-fault1";
retain-state-shutdown;
type = <PCA955X_TYPE_LED>;
};
led@3 {
reg = <3>;
default-state = "keep";
label = "front-sys-pwron0";
retain-state-shutdown;
type = <PCA955X_TYPE_LED>;
};
};
lcd-controller@62 {
compatible = "ibm,op-panel";
reg = <(0x62 | I2C_OWN_SLAVE_ADDRESS)>;
};
pressure-sensor@76 {
compatible = "infineon,dps310";
reg = <0x76>;
#io-channel-cells = <0>;
};
};
&i2c8 {
status = "okay";
rtc@32 {
compatible = "epson,rx8900";
reg = <0x32>;
};
eeprom@50 {
compatible = "atmel,24c128";
reg = <0x50>;
};
led-controller@60 {
compatible = "nxp,pca9551";
reg = <0x60>;
#address-cells = <1>;
#size-cells = <0>;
gpio-controller;
#gpio-cells = <2>;
gpio-line-names =
"",
"APSS_RESET_N",
"",
"N_MODE_CPU_N",
"",
"",
"P10_DCM_PRESENT",
"";
};
led-controller@61 {
compatible = "nxp,pca9552";
reg = <0x61>;
#address-cells = <1>;
#size-cells = <0>;
gpio-controller;
#gpio-cells = <2>;
gpio-line-names =
"",
"",
"SLOT2_PRSNT_EN_RSVD",
"",
"",
"",
"",
"SLOT2_EXPANDER_PRSNT_N",
"",
"",
"",
"",
"",
"",
"",
"";
};
};
&i2c9 {
status = "okay";
temperature-sensor@4c {
compatible = "ti,tmp423";
reg = <0x4c>;
};
};
&i2c10 {
status = "okay";
};
&i2c11 {
status = "okay";
gpio@20 {
compatible = "ti,tca9554";
reg = <0x20>;
gpio-controller;
#gpio-cells = <2>;
gpio-line-names =
"BOOT_RCVRY_TWI",
"BOOT_RCVRY_UART",
"",
"",
"",
"",
"",
"PE_SWITCH_RSTB_N";
};
temperature-sensor@4c {
compatible = "ti,tmp435";
reg = <0x4c>;
};
i2c-mux@75 {
compatible = "nxp,pca9849";
reg = <0x75>;
#address-cells = <1>;
#size-cells = <0>;
i2c-mux-idle-disconnect;
i2c11mux0chn0: i2c@0 {
reg = <0>;
#address-cells = <1>;
#size-cells = <0>;
};
i2c11mux0chn1: i2c@1 {
reg = <1>;
#address-cells = <1>;
#size-cells = <0>;
};
i2c11mux0chn2: i2c@2 {
reg = <2>;
#address-cells = <1>;
#size-cells = <0>;
};
i2c11mux0chn3: i2c@3 {
reg = <3>;
#address-cells = <1>;
#size-cells = <0>;
};
};
};
&i2c12 {
status = "okay";
tpm@2e {
compatible = "nuvoton,npct75x", "tcg,tpm-tis-i2c";
reg = <0x2e>;
memory-region = <&event_log>;
};
eeprom@50 {
compatible = "atmel,24c64";
reg = <0x50>;
};
};
&i2c13 {
status = "okay";
eeprom@50 {
compatible = "atmel,24c64";
reg = <0x50>;
};
led-controller@60 {
compatible = "nxp,pca9551";
reg = <0x60>;
#address-cells = <1>;
#size-cells = <0>;
gpio-controller;
#gpio-cells = <2>;
led@0 {
reg = <0>;
default-state = "keep";
label = "nvme3";
retain-state-shutdown;
type = <PCA955X_TYPE_LED>;
};
led@1 {
reg = <1>;
default-state = "keep";
label = "nvme2";
retain-state-shutdown;
type = <PCA955X_TYPE_LED>;
};
led@2 {
reg = <2>;
default-state = "keep";
label = "nvme1";
retain-state-shutdown;
type = <PCA955X_TYPE_LED>;
};
led@3 {
reg = <3>;
default-state = "keep";
label = "nvme0";
retain-state-shutdown;
type = <PCA955X_TYPE_LED>;
};
};
};
&i2c14 {
status = "okay";
};
&i2c15 {
status = "okay";
};
&ibt {
status = "okay";
};
&kcs2 {
aspeed,lpc-io-reg = <0xca8 0xcac>;
status = "okay";
};
&kcs3 {
aspeed,lpc-io-reg = <0xca2>;
aspeed,lpc-interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
status = "okay";
};
&lpc_ctrl {
memory-region = <&flash_memory>;
status = "okay";
};
&mac2 {
clocks = <&syscon ASPEED_CLK_GATE_MAC3CLK>,
<&syscon ASPEED_CLK_MAC3RCLK>;
clock-names = "MACCLK", "RCLK";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_rmii3_default>;
use-ncsi;
status = "okay";
};
&pinctrl_emmc_default {
bias-disable;
};
&uart2 {
status = "okay";
};
&uhci {
status = "okay";
};
&vuart1 {
status = "okay";
};
&vuart2 {
status = "okay";
};
&wdt1 {
aspeed,reset-type = "none";
aspeed,external-signal;
aspeed,ext-push-pull;
aspeed,ext-active-high;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_wdtrst1_default>;
};
&wdt2 {
status = "okay";
};