1// SPDX-License-Identifier: GPL-2.0+ 2/dts-v1/; 3 4#include "aspeed-g5.dtsi" 5#include <dt-bindings/gpio/aspeed-gpio.h> 6#include <dt-bindings/i2c/i2c.h> 7#include <dt-bindings/interrupt-controller/irq.h> 8 9/{ 10 model = "ASRock E3C246D4I BMC"; 11 compatible = "asrock,e3c246d4i-bmc", "aspeed,ast2500"; 12 13 aliases { 14 serial4 = &uart5; 15 }; 16 17 chosen { 18 stdout-path = &uart5; 19 bootargs = "console=tty0 console=ttyS4,115200 earlycon"; 20 }; 21 22 memory@80000000 { 23 reg = <0x80000000 0x20000000>; 24 }; 25 26 leds { 27 compatible = "gpio-leds"; 28 29 heartbeat { 30 /* BMC_HB_LED_N */ 31 gpios = <&gpio ASPEED_GPIO(H, 6) GPIO_ACTIVE_LOW>; 32 linux,default-trigger = "timer"; 33 }; 34 35 system-fault { 36 /* SYSTEM_FAULT_LED_N */ 37 gpios = <&gpio ASPEED_GPIO(Z, 2) GPIO_ACTIVE_LOW>; 38 panic-indicator; 39 }; 40 }; 41 42 gpio-keys { 43 compatible = "gpio-keys"; 44 45 uid-button { 46 label = "uid-button"; 47 gpios = <&gpio ASPEED_GPIO(F, 1) GPIO_ACTIVE_LOW>; 48 linux,code = <ASPEED_GPIO(F, 1)>; 49 }; 50 }; 51 52 iio-hwmon { 53 compatible = "iio-hwmon"; 54 io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>, <&adc 4>, 55 <&adc 5>, <&adc 6>, <&adc 7>, <&adc 8>, <&adc 9>, 56 <&adc 10>, <&adc 11>, <&adc 12>; 57 }; 58}; 59 60&fmc { 61 status = "okay"; 62 flash@0 { 63 status = "okay"; 64 m25p,fast-read; 65 label = "bmc"; 66 spi-max-frequency = <50000000>; /* 50 MHz */ 67#include "openbmc-flash-layout.dtsi" 68 }; 69}; 70 71&spi1 { 72 status = "okay"; 73 pinctrl-names = "default"; 74 pinctrl-0 = <&pinctrl_spi1_default>; 75 flash@0 { 76 status = "okay"; 77 label = "bios"; 78 m25p,fast-read; 79 spi-max-frequency = <25000000>; /* 25 MHz */ 80 }; 81}; 82 83&uart5 { 84 status = "okay"; 85}; 86 87&vuart { 88 status = "okay"; 89 aspeed,lpc-io-reg = <0x2f8>; 90 aspeed,lpc-interrupts = <3 IRQ_TYPE_LEVEL_HIGH>; 91}; 92 93&mac0 { 94 status = "okay"; 95 96 pinctrl-names = "default"; 97 pinctrl-0 = <&pinctrl_rgmii1_default &pinctrl_mdio1_default>; 98 99 nvmem-cells = <ð0_macaddress>; 100 nvmem-cell-names = "mac-address"; 101}; 102 103&i2c1 { 104 status = "okay"; 105 106 /* thermal sensor, one diode run to a disconnected header */ 107 w83773g@4c { 108 compatible = "nuvoton,w83773g"; 109 reg = <0x4c>; 110 }; 111}; 112 113&i2c3 { 114 status = "okay"; 115 116 /* FRU EEPROM */ 117 eeprom@57 { 118 compatible = "st,24c128", "atmel,24c128"; 119 reg = <0x57>; 120 pagesize = <16>; 121 #address-cells = <1>; 122 #size-cells = <1>; 123 124 eth0_macaddress: macaddress@3f80 { 125 reg = <0x3f80 6>; 126 }; 127 }; 128}; 129 130&video { 131 status = "okay"; 132}; 133 134&vhub { 135 status = "okay"; 136}; 137 138&lpc_ctrl { 139 status = "okay"; 140}; 141 142&lpc_snoop { 143 status = "okay"; 144 snoop-ports = <0x80>; 145}; 146 147&gpio { 148 status = "okay"; 149 gpio-line-names = 150 /* A */ "BMC_MAC1_INTB", "BMC_MAC2_INTB", "NMI_BTN_N", "BMC_NMI", 151 "", "", "", "", 152 /* B */ "", "", "", "", "", "IRQ_BMC_PCH_SMI_LPC_N", "", "", 153 /* C */ "", "", "", "", "", "", "", "", 154 /* D */ "BMC_PSIN", "BMC_PSOUT", "BMC_RESETCON", "RESETCON", 155 "", "", "", "", 156 /* E */ "", "", "", "", "", "", "", "", 157 /* F */ "LOCATORLED_STATUS_N", "LOCATORBTN", "", "", 158 "", "", "BMC_PCH_SCI_LPC", "BMC_NCSI_MUX_CTL", 159 /* G */ "HWM_BAT_EN", "CHASSIS_ID0", "CHASSIS_ID1", "CHASSIS_ID2", 160 "BMC_ALERT1_N_R", "BMC_ALERT2_N_R", "BMC_ALERT3_N", "SML0ALERT", 161 /* H */ "FM_ME_RCVR_N", "O_PWROK", "SKL_CNL_R", "D4_DIMM_EVENT_3V_N", 162 "MFG_MODE_N", "BMC_RTCRST", "BMC_HB_LED_N", "BMC_CASEOPEN", 163 /* I */ "", "", "", "", "", "", "", "", 164 /* J */ "BMC_READY", "BMC_PCH_BIOS_CS_N", "BMC_SMI", "", 165 "", "", "", "", 166 /* K */ "", "", "", "", "", "", "", "", 167 /* L */ "BMC_CTS1", "BMC_DCD1", "BMC_DSR1", "BMC_RI1", 168 "BMC_DTR1", "BMC_RTS1", "BMC_TXD1", "BMC_RXD1", 169 /* M */ "BMC_LAN0_DIS_N", "BMC_LAN1_DIS_N", "", "", 170 "", "", "", "", 171 /* N */ "", "", "", "", "", "", "", "", 172 /* O */ "", "", "", "", "", "", "", "", 173 /* P */ "", "", "", "", "", "", "", "", 174 /* Q */ "", "", "", "", 175 "BMC_SBM_PRESENT_1_N", "BMC_SBM_PRESENT_2_N", 176 "BMC_SBM_PRESENT_3_N", "BMC_PCIE_WAKE_N", 177 /* R */ "", "", "", "", "", "", "", "", 178 /* S */ "PCHHOT_BMC_N", "", "RSMRST", 179 "", "", "", "", "", 180 /* T */ "", "", "", "", "", "", "", "", 181 /* U */ "", "", "", "", "", "", "", "", 182 /* V */ "", "", "", "", "", "", "", "", 183 /* W */ "PS_PWROK", /* dummy always-high signal */ 184 "", "", "", "", "", "", "", 185 /* X */ "", "", "", "", "", "", "", "", 186 /* Y */ "SLP_S3", "SLP_S5", "", "", "", "", "", "", 187 /* Z */ "CPU_CATERR_BMC_PCH_N", "", "SYSTEM_FAULT_LED_N", "BMC_THROTTLE_N", 188 "", "", "", "", 189 /* AA */ "CPU1_THERMTRIP_LATCH_N", "", "CPU1_PROCHOT_N", "", 190 "", "", "IRQ_SMI_ACTIVE_N", "FM_BIOS_POST_CMPLT_N", 191 /* AB */ "", "", "ME_OVERRIDE", "BMC_DMI_MODIFY", 192 "", "", "", "", 193 /* AC */ "LAD0", "LAD1", "LAD2", "LAD3", 194 "CK_33M_BMC", "LFRAME", "SERIRQ", "S_PLTRST"; 195 196 /* Assert BMC_READY so BIOS doesn't sit around waiting for it */ 197 bmc-ready { 198 gpio-hog; 199 gpios = <ASPEED_GPIO(J, 0) GPIO_ACTIVE_LOW>; 200 output-high; 201 }; 202}; 203 204&adc { 205 status = "okay"; 206 pinctrl-names = "default"; 207 pinctrl-0 = <&pinctrl_adc0_default 208 &pinctrl_adc1_default 209 &pinctrl_adc2_default 210 &pinctrl_adc3_default 211 &pinctrl_adc4_default 212 &pinctrl_adc5_default 213 &pinctrl_adc6_default 214 &pinctrl_adc7_default 215 &pinctrl_adc8_default 216 &pinctrl_adc9_default 217 &pinctrl_adc10_default 218 &pinctrl_adc11_default 219 &pinctrl_adc12_default>; 220}; 221 222&kcs3 { 223 status = "okay"; 224 aspeed,lpc-io-reg = <0xca2>; 225}; 226 227&peci0 { 228 status = "okay"; 229}; 230