1// SPDX-License-Identifier: GPL-2.0-or-later 2// Copyright 2024 ASUS Corp. 3 4/dts-v1/; 5 6#include "aspeed-g6.dtsi" 7#include <dt-bindings/i2c/i2c.h> 8#include <dt-bindings/gpio/aspeed-gpio.h> 9 10/ { 11 model = "ASUS-X4TF"; 12 compatible = "asus,x4tf-bmc", "aspeed,ast2600"; 13 14 aliases { 15 serial4 = &uart5; 16 }; 17 18 chosen { 19 stdout-path = "serial4:115200n8"; 20 }; 21 22 memory@80000000 { 23 device_type = "memory"; 24 reg = <0x80000000 0x40000000>; 25 }; 26 27 reserved-memory { 28 #address-cells = <1>; 29 #size-cells = <1>; 30 ranges; 31 32 video_engine_memory: video { 33 size = <0x04000000>; 34 alignment = <0x01000000>; 35 compatible = "shared-dma-pool"; 36 reusable; 37 }; 38 }; 39 40 iio-hwmon { 41 compatible = "iio-hwmon"; 42 io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>, <&adc0 3>, 43 <&adc0 4>, <&adc0 5>, <&adc0 6>, <&adc0 7>, 44 <&adc1 0>, <&adc1 1>, <&adc1 2>, <&adc1 3>, 45 <&adc1 4>, <&adc1 5>, <&adc1 6>, <&adc1 7>; 46 }; 47 48 leds { 49 compatible = "gpio-leds"; 50 51 led-heartbeat { 52 gpios = <&gpio0 ASPEED_GPIO(P, 7) GPIO_ACTIVE_LOW>; 53 linux,default-trigger = "heartbeat"; 54 }; 55 56 led-uid { 57 gpios = <&gpio0 ASPEED_GPIO(P, 1) (GPIO_ACTIVE_LOW | GPIO_OPEN_DRAIN)>; 58 default-state = "off"; 59 }; 60 61 led-status_Y { 62 gpios = <&gpio1 ASPEED_GPIO(B, 1) GPIO_ACTIVE_LOW>; 63 default-state = "off"; 64 }; 65 66 led-sys_boot_status { 67 gpios = <&gpio1 ASPEED_GPIO(B, 0) GPIO_ACTIVE_LOW>; 68 default-state = "off"; 69 }; 70 }; 71}; 72 73&adc0 { 74 vref = <2500>; 75 status = "okay"; 76 pinctrl-names = "default"; 77 pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default 78 &pinctrl_adc2_default &pinctrl_adc3_default 79 &pinctrl_adc4_default &pinctrl_adc5_default 80 &pinctrl_adc6_default &pinctrl_adc7_default>; 81}; 82 83&adc1 { 84 vref = <2500>; 85 status = "okay"; 86 pinctrl-names = "default"; 87 pinctrl-0 = <&pinctrl_adc8_default &pinctrl_adc9_default 88 &pinctrl_adc10_default &pinctrl_adc11_default 89 &pinctrl_adc12_default &pinctrl_adc13_default 90 &pinctrl_adc14_default &pinctrl_adc15_default>; 91}; 92 93&peci0 { 94 status = "okay"; 95}; 96 97&lpc_snoop { 98 snoop-ports = <0x80>; 99 status = "okay"; 100}; 101 102&mac2 { 103 status = "okay"; 104 phy-mode = "rmii"; 105 use-ncsi; 106 pinctrl-names = "default"; 107 pinctrl-0 = <&pinctrl_rmii3_default>; 108}; 109 110&mac3 { 111 status = "okay"; 112 phy-mode = "rmii"; 113 use-ncsi; 114 pinctrl-names = "default"; 115 pinctrl-0 = <&pinctrl_rmii4_default>; 116}; 117 118&fmc { 119 status = "okay"; 120 121 flash@0 { 122 status = "okay"; 123 m25p,fast-read; 124 label = "bmc"; 125 spi-max-frequency = <50000000>; 126#include "openbmc-flash-layout-64.dtsi" 127 }; 128}; 129 130&spi1 { 131 status = "okay"; 132 pinctrl-names = "default"; 133 pinctrl-0 = <&pinctrl_spi1_default>; 134 135 flash@0 { 136 status = "okay"; 137 label = "bios"; 138 spi-max-frequency = <50000000>; 139 }; 140}; 141 142&i2c0 { 143 status = "okay"; 144}; 145 146&i2c1 { 147 status = "okay"; 148}; 149 150&i2c2 { 151 status = "okay"; 152}; 153 154&i2c3 { 155 status = "okay"; 156}; 157 158&i2c4 { 159 status = "okay"; 160 161 temperature-sensor@48 { 162 compatible = "ti,tmp75"; 163 reg = <0x48>; 164 }; 165 166 temperature-sensor@49 { 167 compatible = "ti,tmp75"; 168 reg = <0x49>; 169 }; 170 171 pca9555_4_20: gpio@20 { 172 compatible = "nxp,pca9555"; 173 reg = <0x20>; 174 gpio-controller; 175 #gpio-cells = <2>; 176 }; 177 178 pca9555_4_22: gpio@22 { 179 compatible = "nxp,pca9555"; 180 reg = <0x22>; 181 gpio-controller; 182 #gpio-cells = <2>; 183 }; 184 185 pca9555_4_24: gpio@24 { 186 compatible = "nxp,pca9555"; 187 reg = <0x24>; 188 gpio-controller; 189 #gpio-cells = <2>; 190 gpio-line-names = 191 /*A0 - A3 0*/ "", "STRAP_BMC_BATTERY_GPIO1", "", "", 192 /*A4 - A7 4*/ "", "", "", "", 193 /*B0 - B7 8*/ "", "", "", "", "", "", "", ""; 194 }; 195 196 pca9555_4_26: gpio@26 { 197 compatible = "nxp,pca9555"; 198 reg = <0x26>; 199 gpio-controller; 200 #gpio-cells = <2>; 201 }; 202 203 i2c-mux@70 { 204 compatible = "nxp,pca9546"; 205 status = "okay"; 206 reg = <0x70>; 207 #address-cells = <1>; 208 #size-cells = <0>; 209 210 channel_1: i2c@0 { 211 #address-cells = <1>; 212 #size-cells = <0>; 213 reg = <0>; 214 }; 215 216 channel_2: i2c@1 { 217 #address-cells = <1>; 218 #size-cells = <0>; 219 reg = <1>; 220 }; 221 222 channel_3: i2c@2 { 223 #address-cells = <1>; 224 #size-cells = <0>; 225 reg = <2>; 226 }; 227 228 channel_4: i2c@3 { 229 #address-cells = <1>; 230 #size-cells = <0>; 231 reg = <3>; 232 }; 233 }; 234}; 235 236&i2c5 { 237 status = "okay"; 238 239 pca9555_5_24: gpio@24 { 240 compatible = "nxp,pca9555"; 241 reg = <0x24>; 242 gpio-controller; 243 #gpio-cells = <2>; 244 }; 245 246 i2c-mux@70 { 247 compatible = "nxp,pca9546"; 248 status = "okay"; 249 reg = <0x70 >; 250 #address-cells = <1>; 251 #size-cells = <0>; 252 253 channel_5: i2c@0 { 254 #address-cells = <1>; 255 #size-cells = <0>; 256 reg = <0>; 257 258 pca9555_5_5_20: gpio@20 { 259 compatible = "nxp,pca9555"; 260 reg = <0x20>; 261 gpio-controller; 262 #gpio-cells = <2>; 263 gpio-line-names = 264 "", "", "", "", "", "", "", "", 265 "", "", "SYS_FAN6", "SYS_FAN5", 266 "SYS_FAN4", "SYS_FAN3", 267 "SYS_FAN2", "SYS_FAN1"; 268 }; 269 270 pca9555_5_5_21: gpio@21 { 271 compatible = "nxp,pca9555"; 272 reg = <0x21>; 273 gpio-controller; 274 #gpio-cells = <2>; 275 }; 276 277 power-monitor@44 { 278 compatible = "ti,ina219"; 279 reg = <0x44>; 280 shunt-resistor = <2>; 281 }; 282 }; 283 284 channel_6: i2c@1 { 285 #address-cells = <1>; 286 #size-cells = <0>; 287 reg = <1>; 288 }; 289 290 channel_7: i2c@2 { 291 #address-cells = <1>; 292 #size-cells = <0>; 293 reg = <2>; 294 }; 295 296 channel_8: i2c@3 { 297 #address-cells = <1>; 298 #size-cells = <0>; 299 reg = <3>; 300 }; 301 }; 302}; 303 304&i2c6 { 305 status = "okay"; 306 307 pca9555_6_27: gpio@27 { 308 compatible = "nxp,pca9555"; 309 reg = <0x27>; 310 gpio-controller; 311 #gpio-cells = <2>; 312 }; 313 314 pca9555_6_20: gpio@20 { 315 compatible = "nxp,pca9555"; 316 reg = <0x20>; 317 gpio-controller; 318 #gpio-cells = <2>; 319 gpio-line-names = 320 /*A0 0*/ "", "", "", "", "", "", "", "", 321 /*B0 8*/ "Drive_NVMe1", "Drive_NVMe2", "", "", 322 /*B4 12*/ "", "", "", ""; 323 }; 324 325 pca9555_6_21: gpio@21 { 326 compatible = "nxp,pca9555"; 327 reg = <0x21>; 328 gpio-controller; 329 #gpio-cells = <2>; 330 }; 331}; 332 333&i2c7 { 334 status = "okay"; 335 336 i2c-mux@70 { 337 compatible = "nxp,pca9546"; 338 status = "okay"; 339 reg = <0x70>; 340 #address-cells = <1>; 341 #size-cells = <0>; 342 idle-state = <1>; 343 344 channel_9: i2c@0 { 345 #address-cells = <1>; 346 #size-cells = <0>; 347 reg = <0>; 348 349 temperature-sensor@48 { 350 compatible = "ti,tmp75"; 351 reg = <0x48>; 352 }; 353 354 temperature-sensor@49 { 355 compatible = "ti,tmp75"; 356 reg = <0x49>; 357 }; 358 359 power-monitor@40 { 360 compatible = "ti,ina219"; 361 reg = <0x40>; 362 shunt-resistor = <2>; 363 }; 364 365 power-monitor@41 { 366 compatible = "ti,ina219"; 367 reg = <0x41>; 368 shunt-resistor = <5>; 369 }; 370 }; 371 372 channel_10: i2c@1 { 373 #address-cells = <1>; 374 #size-cells = <0>; 375 reg = <1>; 376 }; 377 378 channel_11: i2c@2 { 379 #address-cells = <1>; 380 #size-cells = <0>; 381 reg = <2>; 382 }; 383 384 channel_12: i2c@3 { 385 #address-cells = <1>; 386 #size-cells = <0>; 387 reg = <3>; 388 }; 389 }; 390 391 i2c-mux@71 { 392 compatible = "nxp,pca9546"; 393 status = "okay"; 394 reg = <0x71>; 395 #address-cells = <1>; 396 #size-cells = <0>; 397 i2c-mux-idle-disconnect; 398 399 channel_13: i2c@0 { 400 #address-cells = <1>; 401 #size-cells = <0>; 402 reg = <0>; 403 }; 404 405 channel_14: i2c@1 { 406 #address-cells = <1>; 407 #size-cells = <0>; 408 reg = <1>; 409 }; 410 411 channel_15: i2c@2 { 412 #address-cells = <1>; 413 #size-cells = <0>; 414 reg = <2>; 415 }; 416 417 channel_16: i2c@3 { 418 #address-cells = <1>; 419 #size-cells = <0>; 420 reg = <3>; 421 }; 422 }; 423}; 424 425&i2c8 { 426 status = "okay"; 427 428 i2c-mux@70 { 429 compatible = "nxp,pca9546"; 430 status = "okay"; 431 reg = <0x70>; 432 #address-cells = <1>; 433 #size-cells = <0>; 434 i2c-mux-idle-disconnect; 435 436 channel_17: i2c@0 { 437 #address-cells = <1>; 438 #size-cells = <0>; 439 reg = <0>; 440 }; 441 442 channel_18: i2c@1 { 443 #address-cells = <1>; 444 #size-cells = <0>; 445 reg = <1>; 446 447 temperature-sensor@48 { 448 compatible = "ti,tmp75"; 449 reg = <0x48>; 450 }; 451 452 power-monitor@41 { 453 compatible = "ti,ina219"; 454 reg = <0x41>; 455 shunt-resistor = <5>; 456 }; 457 }; 458 459 channel_19: i2c@2 { 460 #address-cells = <1>; 461 #size-cells = <0>; 462 reg = <2>; 463 }; 464 465 channel_20: i2c@3 { 466 #address-cells = <1>; 467 #size-cells = <0>; 468 reg = <3>; 469 }; 470 }; 471}; 472 473&i2c9 { 474 status = "okay"; 475}; 476 477&i2c10 { 478 status = "okay"; 479}; 480 481&i2c11 { 482 status = "okay"; 483}; 484 485&i2c14 { 486 status = "okay"; 487 multi-master; 488 489 eeprom@50 { 490 compatible = "atmel,24c08"; 491 reg = <0x50>; 492 }; 493 494 eeprom@51 { 495 compatible = "atmel,24c08"; 496 reg = <0x51>; 497 }; 498}; 499 500&sgpiom0 { 501 status = "okay"; 502 ngpios = <128>; 503}; 504 505&video { 506 status = "okay"; 507 memory-region = <&video_engine_memory>; 508}; 509 510&sdc { 511 status = "okay"; 512}; 513 514&lpc_snoop { 515 status = "okay"; 516 snoop-ports = <0x80>; 517}; 518 519&kcs1 { 520 aspeed,lpc-io-reg = <0xca0>; 521 status = "okay"; 522}; 523 524&kcs2 { 525 aspeed,lpc-io-reg = <0xca8>; 526 status = "okay"; 527}; 528 529&kcs3 { 530 aspeed,lpc-io-reg = <0xca2>; 531 status = "okay"; 532}; 533 534&uart3 { 535 status = "okay"; 536}; 537 538&uart5 { 539 status = "okay"; 540}; 541 542&uart_routing { 543 status = "okay"; 544}; 545 546&vhub { 547 status = "okay"; 548}; 549 550&gpio0 { 551 gpio-line-names = 552 /*A0 0*/ "", "", "", "", "", "", "", "", 553 /*B0 8*/ "", "", "", "", "", "", "PS_PWROK", "", 554 /*C0 16*/ "", "", "", "", "", "", "", "", 555 /*D0 24*/ "", "", "", "", "", "", "", "", 556 /*E0 32*/ "", "", "", "", "", "", "", "", 557 /*F0 40*/ "", "", "", "", "", "", "", "", 558 /*G0 48*/ "", "", "", "", "", "", "", "", 559 /*H0 56*/ "", "", "", "", "", "", "", "", 560 /*I0 64*/ "", "", "", "", "", "", "", "", 561 /*J0 72*/ "", "", "", "", "", "", "", "", 562 /*K0 80*/ "", "", "", "", "", "", "", "", 563 /*L0 88*/ "", "", "", "", "", "", "", "", 564 /*M0 96*/ "", "", "", "", "", "", "", "", 565 /*N0 104*/ "", "", "", "", 566 /*N4 108*/ "POST_COMPLETE", "ESR1_GPIO_AST_SPISEL", "", "", 567 /*O0 112*/ "", "", "", "", "", "", "", "", 568 /*P0 120*/ "ID_BUTTON", "ID_OUT", "POWER_BUTTON", "POWER_OUT", 569 /*P4 124*/ "RESET_BUTTON", "RESET_OUT", "", "HEARTBEAT", 570 /*Q0 128*/ "", "", "", "", "", "", "", "", 571 /*R0 136*/ "", "", "", "", "", "", "", "", 572 /*S0 144*/ "", "", "", "", "", "", "", "", 573 /*T0 152*/ "", "", "", "", "", "", "", "", 574 /*U0 160*/ "", "", "", "", "", "", "", "", 575 /*V0 168*/ "", "", "", "", "", "", "", "", 576 /*W0 176*/ "", "", "", "", "", "", "", "", 577 /*X0 184*/ "", "", "", "", "", "", "", "", 578 /*Y0 192*/ "", "", "", "", "", "", "", "", 579 /*Z0 200*/ "", "", "", "", "", "", "", ""; 580}; 581