1e9557c8cSZev Weiss// SPDX-License-Identifier: GPL-2.0+ 2e9557c8cSZev Weiss/dts-v1/; 3e9557c8cSZev Weiss 4e9557c8cSZev Weiss#include "aspeed-g5.dtsi" 5e9557c8cSZev Weiss#include <dt-bindings/gpio/aspeed-gpio.h> 6e9557c8cSZev Weiss#include <dt-bindings/i2c/i2c.h> 7e9557c8cSZev Weiss#include <dt-bindings/interrupt-controller/irq.h> 8e9557c8cSZev Weiss#include <dt-bindings/watchdog/aspeed-wdt.h> 9e9557c8cSZev Weiss 10e9557c8cSZev Weiss/{ 11e9557c8cSZev Weiss model = "ASRock E3C256D4I BMC"; 12e9557c8cSZev Weiss compatible = "asrock,e3c256d4i-bmc", "aspeed,ast2500"; 13e9557c8cSZev Weiss 14e9557c8cSZev Weiss aliases { 15e9557c8cSZev Weiss serial4 = &uart5; 16e9557c8cSZev Weiss 17e9557c8cSZev Weiss i2c20 = &i2c2mux0ch0; 18e9557c8cSZev Weiss i2c21 = &i2c2mux0ch1; 19e9557c8cSZev Weiss i2c22 = &i2c2mux0ch2; 20e9557c8cSZev Weiss i2c23 = &i2c2mux0ch3; 21e9557c8cSZev Weiss }; 22e9557c8cSZev Weiss 23e9557c8cSZev Weiss chosen { 24e9557c8cSZev Weiss stdout-path = &uart5; 25e9557c8cSZev Weiss bootargs = "console=tty0 console=ttyS4,115200 earlycon"; 26e9557c8cSZev Weiss }; 27e9557c8cSZev Weiss 28e9557c8cSZev Weiss memory@80000000 { 29e9557c8cSZev Weiss reg = <0x80000000 0x20000000>; 30e9557c8cSZev Weiss }; 31e9557c8cSZev Weiss 32e9557c8cSZev Weiss leds { 33e9557c8cSZev Weiss compatible = "gpio-leds"; 34e9557c8cSZev Weiss 35e9557c8cSZev Weiss heartbeat { 36e9557c8cSZev Weiss gpios = <&gpio ASPEED_GPIO(H, 6) GPIO_ACTIVE_LOW>; 37e9557c8cSZev Weiss linux,default-trigger = "timer"; 38e9557c8cSZev Weiss }; 39e9557c8cSZev Weiss 40e9557c8cSZev Weiss system-fault { 41e9557c8cSZev Weiss gpios = <&gpio ASPEED_GPIO(Z, 2) GPIO_ACTIVE_LOW>; 42e9557c8cSZev Weiss panic-indicator; 43e9557c8cSZev Weiss }; 44e9557c8cSZev Weiss }; 45e9557c8cSZev Weiss 46e9557c8cSZev Weiss iio-hwmon { 47e9557c8cSZev Weiss compatible = "iio-hwmon"; 48e9557c8cSZev Weiss io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>, 49e9557c8cSZev Weiss <&adc 4>, <&adc 5>, <&adc 6>, <&adc 7>, 50e9557c8cSZev Weiss <&adc 8>, <&adc 9>, <&adc 10>, <&adc 11>, 51e9557c8cSZev Weiss <&adc 12>, <&adc 13>, <&adc 14>, <&adc 15>; 52e9557c8cSZev Weiss }; 53e9557c8cSZev Weiss}; 54e9557c8cSZev Weiss 55e9557c8cSZev Weiss&fmc { 56e9557c8cSZev Weiss status = "okay"; 57e9557c8cSZev Weiss flash@0 { 58e9557c8cSZev Weiss status = "okay"; 59e9557c8cSZev Weiss m25p,fast-read; 60e9557c8cSZev Weiss label = "bmc"; 61e9557c8cSZev Weiss spi-max-frequency = <100000000>; /* 100 MHz */ 62e9557c8cSZev Weiss#include "openbmc-flash-layout-64.dtsi" 63e9557c8cSZev Weiss }; 64e9557c8cSZev Weiss}; 65e9557c8cSZev Weiss 66cdeefb40SZev Weiss&spi1 { 67cdeefb40SZev Weiss status = "okay"; 68cdeefb40SZev Weiss pinctrl-names = "default"; 69cdeefb40SZev Weiss pinctrl-0 = <&pinctrl_spi1_default>; 70cdeefb40SZev Weiss flash@0 { 71cdeefb40SZev Weiss status = "okay"; 72cdeefb40SZev Weiss label = "bios"; 73cdeefb40SZev Weiss m25p,fast-read; 74cdeefb40SZev Weiss spi-max-frequency = <25000000>; /* 25 MHz */ 75cdeefb40SZev Weiss }; 76cdeefb40SZev Weiss}; 77cdeefb40SZev Weiss 78e9557c8cSZev Weiss&uart1 { 79e9557c8cSZev Weiss status = "okay"; 80e9557c8cSZev Weiss}; 81e9557c8cSZev Weiss 82e9557c8cSZev Weiss&uart2 { 83e9557c8cSZev Weiss status = "okay"; 84e9557c8cSZev Weiss}; 85e9557c8cSZev Weiss 86e9557c8cSZev Weiss&uart3 { 87e9557c8cSZev Weiss status = "okay"; 88e9557c8cSZev Weiss}; 89e9557c8cSZev Weiss 90e9557c8cSZev Weiss&uart4 { 91e9557c8cSZev Weiss status = "okay"; 92e9557c8cSZev Weiss}; 93e9557c8cSZev Weiss 94e9557c8cSZev Weiss&uart5 { 95e9557c8cSZev Weiss status = "okay"; 96e9557c8cSZev Weiss}; 97e9557c8cSZev Weiss 98e9557c8cSZev Weiss&uart_routing { 99e9557c8cSZev Weiss status = "okay"; 100e9557c8cSZev Weiss}; 101e9557c8cSZev Weiss 102e9557c8cSZev Weiss&mac0 { 103e9557c8cSZev Weiss status = "okay"; 104e9557c8cSZev Weiss 105e9557c8cSZev Weiss pinctrl-names = "default"; 106e9557c8cSZev Weiss pinctrl-0 = <&pinctrl_rgmii1_default &pinctrl_mdio1_default>; 107e9557c8cSZev Weiss 108e9557c8cSZev Weiss nvmem-cells = <ð0_macaddress>; 109e9557c8cSZev Weiss nvmem-cell-names = "mac-address"; 110e9557c8cSZev Weiss}; 111e9557c8cSZev Weiss 112e9557c8cSZev Weiss&i2c0 { 113e9557c8cSZev Weiss status = "okay"; 114e9557c8cSZev Weiss}; 115e9557c8cSZev Weiss 116e9557c8cSZev Weiss&i2c1 { 117e9557c8cSZev Weiss status = "okay"; 118e9557c8cSZev Weiss}; 119e9557c8cSZev Weiss 120e9557c8cSZev Weiss&i2c2 { 121e9557c8cSZev Weiss status = "okay"; 122e9557c8cSZev Weiss 123e9557c8cSZev Weiss i2c-mux@70 { 124e9557c8cSZev Weiss compatible = "nxp,pca9545"; 125e9557c8cSZev Weiss reg = <0x70>; 126e9557c8cSZev Weiss #address-cells = <1>; 127e9557c8cSZev Weiss #size-cells = <0>; 128e9557c8cSZev Weiss 129e9557c8cSZev Weiss i2c2mux0ch0: i2c@0 { 130e9557c8cSZev Weiss #address-cells = <1>; 131e9557c8cSZev Weiss #size-cells = <0>; 132e9557c8cSZev Weiss reg = <0>; 133e9557c8cSZev Weiss }; 134e9557c8cSZev Weiss 135e9557c8cSZev Weiss i2c2mux0ch1: i2c@1 { 136e9557c8cSZev Weiss #address-cells = <1>; 137e9557c8cSZev Weiss #size-cells = <0>; 138e9557c8cSZev Weiss reg = <1>; 139e9557c8cSZev Weiss }; 140e9557c8cSZev Weiss 141e9557c8cSZev Weiss i2c2mux0ch2: i2c@2 { 142e9557c8cSZev Weiss #address-cells = <1>; 143e9557c8cSZev Weiss #size-cells = <0>; 144e9557c8cSZev Weiss reg = <2>; 145e9557c8cSZev Weiss }; 146e9557c8cSZev Weiss 147e9557c8cSZev Weiss i2c2mux0ch3: i2c@3 { 148e9557c8cSZev Weiss #address-cells = <1>; 149e9557c8cSZev Weiss #size-cells = <0>; 150e9557c8cSZev Weiss reg = <3>; 151e9557c8cSZev Weiss }; 152e9557c8cSZev Weiss }; 153e9557c8cSZev Weiss}; 154e9557c8cSZev Weiss 155e9557c8cSZev Weiss&i2c3 { 156e9557c8cSZev Weiss status = "okay"; 157e9557c8cSZev Weiss}; 158e9557c8cSZev Weiss 159e9557c8cSZev Weiss&i2c4 { 160e9557c8cSZev Weiss status = "okay"; 161e9557c8cSZev Weiss}; 162e9557c8cSZev Weiss 163e9557c8cSZev Weiss&i2c5 { 164e9557c8cSZev Weiss status = "okay"; 165e9557c8cSZev Weiss}; 166e9557c8cSZev Weiss 167e9557c8cSZev Weiss&i2c6 { 168e9557c8cSZev Weiss status = "okay"; 169e9557c8cSZev Weiss}; 170e9557c8cSZev Weiss 171e9557c8cSZev Weiss&i2c7 { 172e9557c8cSZev Weiss status = "okay"; 173e9557c8cSZev Weiss}; 174e9557c8cSZev Weiss 175e9557c8cSZev Weiss&i2c9 { 176e9557c8cSZev Weiss status = "okay"; 177e9557c8cSZev Weiss}; 178e9557c8cSZev Weiss 179e9557c8cSZev Weiss&i2c10 { 180e9557c8cSZev Weiss status = "okay"; 181e9557c8cSZev Weiss}; 182e9557c8cSZev Weiss 183e9557c8cSZev Weiss&i2c11 { 184e9557c8cSZev Weiss status = "okay"; 185e9557c8cSZev Weiss 186e9557c8cSZev Weiss vrm@60 { 187e9557c8cSZev Weiss compatible = "renesas,isl69269", "isl69269"; 188e9557c8cSZev Weiss reg = <0x60>; 189e9557c8cSZev Weiss }; 190e9557c8cSZev Weiss}; 191e9557c8cSZev Weiss 192e9557c8cSZev Weiss&i2c12 { 193e9557c8cSZev Weiss status = "okay"; 194e9557c8cSZev Weiss 195e9557c8cSZev Weiss /* FRU eeprom */ 196e9557c8cSZev Weiss eeprom@57 { 197e9557c8cSZev Weiss compatible = "st,24c128", "atmel,24c128"; 198e9557c8cSZev Weiss #address-cells = <1>; 199e9557c8cSZev Weiss #size-cells = <1>; 200e9557c8cSZev Weiss reg = <0x57>; 201e9557c8cSZev Weiss pagesize = <16>; 202e9557c8cSZev Weiss 203e9557c8cSZev Weiss eth0_macaddress: macaddress@3f80 { 204e9557c8cSZev Weiss reg = <0x3f80 6>; 205e9557c8cSZev Weiss }; 206e9557c8cSZev Weiss }; 207e9557c8cSZev Weiss}; 208e9557c8cSZev Weiss 209e9557c8cSZev Weiss&video { 210e9557c8cSZev Weiss status = "okay"; 211e9557c8cSZev Weiss}; 212e9557c8cSZev Weiss 213e9557c8cSZev Weiss&vhub { 214e9557c8cSZev Weiss status = "okay"; 215e9557c8cSZev Weiss}; 216e9557c8cSZev Weiss 217e9557c8cSZev Weiss&lpc_ctrl { 218e9557c8cSZev Weiss status = "okay"; 219e9557c8cSZev Weiss}; 220e9557c8cSZev Weiss 221e9557c8cSZev Weiss&lpc_snoop { 222e9557c8cSZev Weiss status = "okay"; 223e9557c8cSZev Weiss snoop-ports = <0x80>; 224e9557c8cSZev Weiss}; 225e9557c8cSZev Weiss 226e9557c8cSZev Weiss&kcs3 { 227e9557c8cSZev Weiss status = "okay"; 228e9557c8cSZev Weiss aspeed,lpc-io-reg = <0xca2>; 229e9557c8cSZev Weiss}; 230e9557c8cSZev Weiss 231e9557c8cSZev Weiss&peci0 { 232e9557c8cSZev Weiss status = "okay"; 233e9557c8cSZev Weiss}; 234e9557c8cSZev Weiss 235e9557c8cSZev Weiss&wdt1 { 236e9557c8cSZev Weiss aspeed,reset-mask = <(AST2500_WDT_RESET_DEFAULT & ~AST2500_WDT_RESET_LPC)>; 237e9557c8cSZev Weiss}; 238e9557c8cSZev Weiss 239e9557c8cSZev Weiss&wdt2 { 240e9557c8cSZev Weiss aspeed,reset-mask = <(AST2500_WDT_RESET_DEFAULT & ~AST2500_WDT_RESET_LPC)>; 241e9557c8cSZev Weiss}; 242e9557c8cSZev Weiss 243e9557c8cSZev Weiss&pwm_tacho { 244e9557c8cSZev Weiss status = "okay"; 245e9557c8cSZev Weiss pinctrl-names = "default"; 246e9557c8cSZev Weiss pinctrl-0 = <&pinctrl_pwm0_default /* CPU */ 247e9557c8cSZev Weiss &pinctrl_pwm2_default /* rear */ 248e9557c8cSZev Weiss &pinctrl_pwm4_default>; /* front */ 249e9557c8cSZev Weiss 250e9557c8cSZev Weiss /* CPU */ 251e9557c8cSZev Weiss fan@0 { 252e9557c8cSZev Weiss reg = <0x00>; 253e9557c8cSZev Weiss aspeed,fan-tach-ch = /bits/ 8 <0x00>; 254e9557c8cSZev Weiss }; 255e9557c8cSZev Weiss 256e9557c8cSZev Weiss /* rear */ 257e9557c8cSZev Weiss fan@2 { 258e9557c8cSZev Weiss reg = <0x02>; 259e9557c8cSZev Weiss aspeed,fan-tach-ch = /bits/ 8 <0x02>; 260e9557c8cSZev Weiss }; 261e9557c8cSZev Weiss 262e9557c8cSZev Weiss /* front */ 263e9557c8cSZev Weiss fan@4 { 264e9557c8cSZev Weiss reg = <0x04>; 265e9557c8cSZev Weiss aspeed,fan-tach-ch = /bits/ 8 <0x04>; 266e9557c8cSZev Weiss }; 267e9557c8cSZev Weiss}; 268e9557c8cSZev Weiss 269e9557c8cSZev Weiss&gpio { 270e9557c8cSZev Weiss status = "okay"; 271e9557c8cSZev Weiss gpio-line-names = 272e9557c8cSZev Weiss /* A */ "", "", "NMI_BTN_N", "BMC_NMI", "", "", "", "", 273e9557c8cSZev Weiss /* B */ "", "", "", "", "", "", "", "", 274e9557c8cSZev Weiss /* C */ "", "", "", "", "", "", "", "", 275e9557c8cSZev Weiss /* D */ "BMC_PSIN", "BMC_PSOUT", "BMC_RESETCON", "RESETCON", 276e9557c8cSZev Weiss "", "", "", "", 277e9557c8cSZev Weiss /* E */ "", "", "", "", "", "", "", "", 278e9557c8cSZev Weiss /* F */ "LOCATORLED_STATUS_N", "LOCATORBTN", "", "", 279e9557c8cSZev Weiss "", "", "BMC_PCH_SCI_LPC", "BMC_NCSI_MUX_CTL", 280e9557c8cSZev Weiss /* G */ "HWM_BAT_EN", "CHASSIS_ID0", "CHASSIS_ID1", "CHASSIS_ID2", 281e9557c8cSZev Weiss "", "", "", "", 282e9557c8cSZev Weiss /* H */ "FM_ME_RCVR_N", "O_PWROK", "", "D4_DIMM_EVENT_3V_N", 283e9557c8cSZev Weiss "MFG_MODE_N", "BMC_RTCRST", "BMC_HB_LED_N", "BMC_CASEOPEN", 284e9557c8cSZev Weiss /* I */ "", "", "", "", "", "", "", "", 285e9557c8cSZev Weiss /* J */ "BMC_READY", "BMC_PCH_BIOS_CS_N", "BMC_SMI", "", "", "", "", "", 286e9557c8cSZev Weiss /* K */ "", "", "", "", "", "", "", "", 287e9557c8cSZev Weiss /* L */ "", "", "", "", "", "", "", "", 288e9557c8cSZev Weiss /* M */ "", "", "", "", "", "", "", "", 289e9557c8cSZev Weiss /* N */ "", "", "", "", "", "", "", "", 290e9557c8cSZev Weiss /* O */ "", "", "", "", "", "", "", "", 291e9557c8cSZev Weiss /* P */ "", "", "", "", "", "", "", "", 292e9557c8cSZev Weiss /* Q */ "", "", "", "", "", "", "", "", 293e9557c8cSZev Weiss /* R */ "", "", "", "", "", "", "", "", 294e9557c8cSZev Weiss /* S */ "PCHHOT_BMC_N", "", "RSMRST", "", "", "", "", "", 295e9557c8cSZev Weiss /* T */ "", "", "", "", "", "", "", "", 296e9557c8cSZev Weiss /* U */ "", "", "", "", "", "", "", "", 297e9557c8cSZev Weiss /* V */ "", "", "", "", "", "", "", "", 298e9557c8cSZev Weiss /* W */ "", "", "", "", "", "", "", "", 299e9557c8cSZev Weiss /* X */ "", "", "", "", "", "", "", "", 300e9557c8cSZev Weiss /* Y */ "SLP_S3", "SLP_S5", "", "", "", "", "", "", 301e9557c8cSZev Weiss /* Z */ "CPU_CATERR_BMC_N", "", "SYSTEM_FAULT_LED_N", "BMC_THROTTLE_N", 302e9557c8cSZev Weiss "", "", "", "", 303e9557c8cSZev Weiss /* AA */ "CPU1_THERMTRIP_LATCH_N", "", "CPU1_PROCHOT_N", "", 304e9557c8cSZev Weiss "", "", "IRQ_SMI_ACTIVE_N", "FM_BIOS_POST_CMPLT_N", 305e9557c8cSZev Weiss /* AB */ "", "", "ME_OVERRIDE", "BMC_DMI_MODIFY", "", "", "", "", 306e9557c8cSZev Weiss /* AC */ "", "", "", "", "", "", "", ""; 307e9557c8cSZev Weiss}; 308e9557c8cSZev Weiss 309e9557c8cSZev Weiss&adc { 310e9557c8cSZev Weiss status = "okay"; 311e9557c8cSZev Weiss pinctrl-names = "default"; 312e9557c8cSZev Weiss pinctrl-0 = <&pinctrl_adc0_default /* 3VSB */ 313e9557c8cSZev Weiss &pinctrl_adc1_default /* 5VSB */ 314e9557c8cSZev Weiss &pinctrl_adc2_default /* CPU1 */ 315e9557c8cSZev Weiss &pinctrl_adc3_default /* VCCSA */ 316e9557c8cSZev Weiss &pinctrl_adc4_default /* VCCM */ 317e9557c8cSZev Weiss &pinctrl_adc5_default /* V10M */ 318e9557c8cSZev Weiss &pinctrl_adc6_default /* VCCIO */ 319e9557c8cSZev Weiss &pinctrl_adc7_default /* VCCGT */ 320e9557c8cSZev Weiss &pinctrl_adc8_default /* VPPM */ 321e9557c8cSZev Weiss &pinctrl_adc9_default /* BAT */ 322e9557c8cSZev Weiss &pinctrl_adc10_default /* 3V */ 323e9557c8cSZev Weiss &pinctrl_adc11_default /* 5V */ 324e9557c8cSZev Weiss &pinctrl_adc12_default /* 12V */ 325e9557c8cSZev Weiss &pinctrl_adc13_default /* GND */ 326e9557c8cSZev Weiss &pinctrl_adc14_default /* GND */ 327e9557c8cSZev Weiss &pinctrl_adc15_default>; /* GND */ 328e9557c8cSZev Weiss}; 329