1// SPDX-License-Identifier: GPL-2.0+ 2/* 3 * Device Tree file for Lenovo Hr630 platform 4 * 5 * Copyright (C) 2019-present Lenovo 6 */ 7 8/dts-v1/; 9 10#include "aspeed-g5.dtsi" 11#include <dt-bindings/gpio/aspeed-gpio.h> 12 13/ { 14 model = "HR630 BMC"; 15 compatible = "lenovo,hr630-bmc", "aspeed,ast2500"; 16 17 aliases { 18 i2c14 = &i2c_rbp; 19 i2c15 = &i2c_fbp1; 20 i2c16 = &i2c_fbp2; 21 i2c17 = &i2c_fbp3; 22 i2c18 = &i2c_riser2; 23 i2c19 = &i2c_pcie4; 24 i2c20 = &i2c_riser1; 25 i2c21 = &i2c_ocp; 26 }; 27 28 chosen { 29 stdout-path = &uart5; 30 bootargs = "console=tty0 console=ttyS4,115200 earlycon"; 31 }; 32 33 memory@80000000 { 34 device_type = "memory"; 35 reg = <0x80000000 0x20000000>; 36 }; 37 38 reserved-memory { 39 #address-cells = <1>; 40 #size-cells = <1>; 41 ranges; 42 43 flash_memory: region@98000000 { 44 no-map; 45 reg = <0x98000000 0x00100000>; /* 1M */ 46 }; 47 48 gfx_memory: framebuffer { 49 size = <0x01000000>; 50 alignment = <0x01000000>; 51 compatible = "shared-dma-pool"; 52 reusable; 53 }; 54 }; 55 56 leds { 57 compatible = "gpio-leds"; 58 59 heartbeat { 60 gpios = <&gpio ASPEED_GPIO(J, 1) GPIO_ACTIVE_LOW>; 61 }; 62 63 fault { 64 gpios = <&gpio ASPEED_GPIO(J, 0) GPIO_ACTIVE_LOW>; 65 }; 66 }; 67 68 iio-hwmon { 69 compatible = "iio-hwmon"; 70 io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>, 71 <&adc 4>, <&adc 5>, <&adc 6>, <&adc 7>, 72 <&adc 8>, <&adc 9>, <&adc 10>, 73 <&adc 12>, <&adc 13>, <&adc 14>; 74 }; 75 76}; 77 78&fmc { 79 status = "okay"; 80 flash@0 { 81 status = "okay"; 82 m25p,fast-read; 83 label = "bmc"; 84 spi-max-frequency = <50000000>; 85#include "openbmc-flash-layout.dtsi" 86 }; 87}; 88 89&lpc_ctrl { 90 status = "okay"; 91 memory-region = <&flash_memory>; 92 flash = <&spi1>; 93}; 94 95&uart1 { 96 status = "okay"; 97 pinctrl-names = "default"; 98 pinctrl-0 = <&pinctrl_txd1_default 99 &pinctrl_rxd1_default>; 100}; 101 102&uart2 { 103 /* Rear RS-232 connector */ 104 status = "okay"; 105 pinctrl-names = "default"; 106 pinctrl-0 = <&pinctrl_txd2_default 107 &pinctrl_rxd2_default 108 &pinctrl_nrts2_default 109 &pinctrl_ndtr2_default 110 &pinctrl_ndsr2_default 111 &pinctrl_ncts2_default 112 &pinctrl_ndcd2_default 113 &pinctrl_nri2_default>; 114}; 115 116&uart3 { 117 status = "okay"; 118 pinctrl-names = "default"; 119 pinctrl-0 = <&pinctrl_txd3_default 120 &pinctrl_rxd3_default>; 121}; 122 123&uart5 { 124 status = "okay"; 125}; 126 127&ibt { 128 status = "okay"; 129}; 130 131&mac0 { 132 status = "okay"; 133 134 pinctrl-names = "default"; 135 pinctrl-0 = <&pinctrl_rmii1_default>; 136 clocks = <&syscon ASPEED_CLK_GATE_MAC1CLK>, 137 <&syscon ASPEED_CLK_MAC1RCLK>; 138 clock-names = "MACCLK", "RCLK"; 139 use-ncsi; 140}; 141 142&mac1 { 143 status = "okay"; 144 145 pinctrl-names = "default"; 146 pinctrl-0 = <&pinctrl_rgmii2_default &pinctrl_mdio2_default>; 147}; 148 149&adc { 150 status = "okay"; 151 152 pinctrl-names = "default"; 153 pinctrl-0 = <&pinctrl_adc0_default 154 &pinctrl_adc1_default 155 &pinctrl_adc2_default 156 &pinctrl_adc3_default 157 &pinctrl_adc4_default 158 &pinctrl_adc5_default 159 &pinctrl_adc6_default 160 &pinctrl_adc7_default 161 &pinctrl_adc8_default 162 &pinctrl_adc9_default 163 &pinctrl_adc10_default 164 &pinctrl_adc12_default 165 &pinctrl_adc13_default 166 &pinctrl_adc14_default>; 167}; 168 169&i2c0 { 170 status = "okay"; 171 /* temp1 inlet */ 172 tmp75@4e { 173 compatible = "national,lm75"; 174 reg = <0x4e>; 175 }; 176}; 177 178&i2c1 { 179 status = "okay"; 180 /* temp2 outlet */ 181 tmp75@4d { 182 compatible = "national,lm75"; 183 reg = <0x4d>; 184 }; 185}; 186 187&i2c2 { 188 status = "okay"; 189}; 190 191&i2c3 { 192 status = "okay"; 193}; 194 195&i2c4 { 196 status = "okay"; 197}; 198 199&i2c5 { 200 status = "okay"; 201}; 202 203&i2c6 { 204 status = "okay"; 205 /* Slot 0, 206 * Slot 1, 207 * Slot 2, 208 * Slot 3 209 */ 210 211 i2c-switch@70 { 212 compatible = "nxp,pca9545"; 213 reg = <0x70>; 214 #address-cells = <1>; 215 #size-cells = <0>; 216 i2c-mux-idle-disconnect; /* may use mux@70 next. */ 217 218 i2c_rbp: i2c@0 { 219 #address-cells = <1>; 220 #size-cells = <0>; 221 reg = <0>; 222 }; 223 224 i2c_fbp1: i2c@1 { 225 #address-cells = <1>; 226 #size-cells = <0>; 227 reg = <1>; 228 }; 229 230 i2c_fbp2: i2c@2 { 231 #address-cells = <1>; 232 #size-cells = <0>; 233 reg = <2>; 234 }; 235 236 i2c_fbp3: i2c@3 { 237 #address-cells = <1>; 238 #size-cells = <0>; 239 reg = <3>; 240 }; 241 }; 242}; 243 244&i2c7 { 245 status = "okay"; 246 247 /* Slot 0, 248 * Slot 1, 249 * Slot 2, 250 * Slot 3 251 */ 252 i2c-switch@76 { 253 compatible = "nxp,pca9546"; 254 reg = <0x76>; 255 #address-cells = <1>; 256 #size-cells = <0>; 257 i2c-mux-idle-disconnect; /* may use mux@76 next. */ 258 259 i2c_riser2: i2c@0 { 260 #address-cells = <1>; 261 #size-cells = <0>; 262 reg = <0>; 263 }; 264 265 i2c_pcie4: i2c@1 { 266 #address-cells = <1>; 267 #size-cells = <0>; 268 reg = <1>; 269 }; 270 271 i2c_riser1: i2c@2 { 272 #address-cells = <1>; 273 #size-cells = <0>; 274 reg = <2>; 275 }; 276 277 i2c_ocp: i2c@3 { 278 #address-cells = <1>; 279 #size-cells = <0>; 280 reg = <3>; 281 }; 282 }; 283}; 284 285&i2c8 { 286 status = "okay"; 287 288 eeprom@57 { 289 compatible = "atmel,24c256"; 290 reg = <0x57>; 291 pagesize = <16>; 292 }; 293}; 294 295&i2c9 { 296 status = "okay"; 297}; 298 299&i2c10 { 300 status = "okay"; 301}; 302 303&i2c11 { 304 status = "okay"; 305}; 306 307&i2c12 { 308 status = "okay"; 309}; 310 311&ehci1 { 312 status = "okay"; 313}; 314 315&uhci { 316 status = "okay"; 317}; 318 319&gfx { 320 status = "okay"; 321 memory-region = <&gfx_memory>; 322}; 323 324&pwm_tacho { 325 status = "okay"; 326 pinctrl-names = "default"; 327 pinctrl-0 = <&pinctrl_pwm0_default 328 &pinctrl_pwm1_default 329 &pinctrl_pwm2_default 330 &pinctrl_pwm3_default 331 &pinctrl_pwm4_default 332 &pinctrl_pwm5_default 333 &pinctrl_pwm6_default>; 334 335 fan@0 { 336 reg = <0x00>; 337 aspeed,fan-tach-ch = /bits/ 8 <0x00>; 338 }; 339 340 fan@1 { 341 reg = <0x00>; 342 aspeed,fan-tach-ch = /bits/ 8 <0x01>; 343 }; 344 345 fan@2 { 346 reg = <0x01>; 347 aspeed,fan-tach-ch = /bits/ 8 <0x02>; 348 }; 349 350 fan@3 { 351 reg = <0x01>; 352 aspeed,fan-tach-ch = /bits/ 8 <0x03>; 353 }; 354 355 fan@4 { 356 reg = <0x02>; 357 aspeed,fan-tach-ch = /bits/ 8 <0x04>; 358 }; 359 360 fan@5 { 361 reg = <0x02>; 362 aspeed,fan-tach-ch = /bits/ 8 <0x05>; 363 }; 364 365 fan@6 { 366 reg = <0x03>; 367 aspeed,fan-tach-ch = /bits/ 8 <0x06>; 368 }; 369 370 fan@7 { 371 reg = <0x03>; 372 aspeed,fan-tach-ch = /bits/ 8 <0x07>; 373 }; 374 375 fan@8 { 376 reg = <0x04>; 377 aspeed,fan-tach-ch = /bits/ 8 <0x08>; 378 }; 379 380 fan@9 { 381 reg = <0x04>; 382 aspeed,fan-tach-ch = /bits/ 8 <0x09>; 383 }; 384 385 fan@10 { 386 reg = <0x05>; 387 aspeed,fan-tach-ch = /bits/ 8 <0x0a>; 388 }; 389 390 fan@11 { 391 reg = <0x05>; 392 aspeed,fan-tach-ch = /bits/ 8 <0x0b>; 393 }; 394 395 fan@12 { 396 reg = <0x06>; 397 aspeed,fan-tach-ch = /bits/ 8 <0x0c>; 398 }; 399 400 fan@13 { 401 reg = <0x06>; 402 aspeed,fan-tach-ch = /bits/ 8 <0x0d>; 403 }; 404}; 405 406&gpio { 407 408 pin_gpio_b5 { 409 gpio-hog; 410 gpios = <ASPEED_GPIO(B, 5) GPIO_ACTIVE_HIGH>; 411 output-high; 412 line-name = "IRQ_BMC_PCH_SMI_LPC_N"; 413 }; 414 415 pin_gpio_f0 { 416 gpio-hog; 417 gpios = <ASPEED_GPIO(F, 0) GPIO_ACTIVE_HIGH>; 418 output-low; 419 line-name = "IRQ_BMC_PCH_NMI_R"; 420 }; 421 422 pin_gpio_f3 { 423 gpio-hog; 424 gpios = <ASPEED_GPIO(F, 3) GPIO_ACTIVE_HIGH>; 425 output-high; 426 line-name = "I2C_BUS0_RST_OUT_N"; 427 }; 428 429 pin_gpio_f4 { 430 gpio-hog; 431 gpios = <ASPEED_GPIO(F, 4) GPIO_ACTIVE_HIGH>; 432 output-low; 433 line-name = "FM_SKT0_FAULT_LED"; 434 }; 435 436 pin_gpio_f5 { 437 gpio-hog; 438 gpios = <ASPEED_GPIO(F, 5) GPIO_ACTIVE_HIGH>; 439 output-low; 440 line-name = "FM_SKT1_FAULT_LED"; 441 }; 442 443 pin_gpio_g4 { 444 gpio-hog; 445 gpios = <ASPEED_GPIO(G, 4) GPIO_ACTIVE_HIGH>; 446 output-high; 447 line-name = "FAN_PWR_CTL_N"; 448 }; 449 450 pin_gpio_g7 { 451 gpio-hog; 452 gpios = <ASPEED_GPIO(G, 7) GPIO_ACTIVE_HIGH>; 453 output-high; 454 line-name = "RST_BMC_PCIE_I2CMUX_N"; 455 }; 456 457 pin_gpio_h2 { 458 gpio-hog; 459 gpios = <ASPEED_GPIO(H, 2) GPIO_ACTIVE_HIGH>; 460 output-high; 461 line-name = "PSU1_FFS_N_R"; 462 }; 463 464 pin_gpio_h3 { 465 gpio-hog; 466 gpios = <ASPEED_GPIO(H, 3) GPIO_ACTIVE_HIGH>; 467 output-high; 468 line-name = "PSU2_FFS_N_R"; 469 }; 470 471 pin_gpio_i3 { 472 gpio-hog; 473 gpios = <ASPEED_GPIO(I, 3) GPIO_ACTIVE_HIGH>; 474 output-high; 475 line-name = "BMC_INTRUDED_COVER"; 476 }; 477 478 pin_gpio_j2 { 479 gpio-hog; 480 gpios = <ASPEED_GPIO(J, 2) GPIO_ACTIVE_HIGH>; 481 output-high; 482 line-name = "BMC_BIOS_UPDATE_N"; 483 }; 484 485 pin_gpio_j3 { 486 gpio-hog; 487 gpios = <ASPEED_GPIO(J, 3) GPIO_ACTIVE_HIGH>; 488 output-high; 489 line-name = "RST_BMC_HDD_I2CMUX_N"; 490 }; 491 492 pin_gpio_s2 { 493 gpio-hog; 494 gpios = <ASPEED_GPIO(S, 2) GPIO_ACTIVE_HIGH>; 495 output-high; 496 line-name = "BMC_VGA_SW"; 497 }; 498 499 pin_gpio_s4 { 500 gpio-hog; 501 gpios = <ASPEED_GPIO(S, 4) GPIO_ACTIVE_HIGH>; 502 output; 503 line-name = "VBAT_EN_N"; 504 }; 505 506 pin_gpio_s6 { 507 gpio-hog; 508 gpios = <ASPEED_GPIO(S, 6) GPIO_ACTIVE_HIGH>; 509 output-high; 510 line-name = "PU_BMC_GPIOS6"; 511 }; 512 513 pin_gpio_y0 { 514 gpio-hog; 515 gpios = <ASPEED_GPIO(Y, 0) GPIO_ACTIVE_HIGH>; 516 output-low; 517 line-name = "BMC_NCSI_MUX_CTL_S0"; 518 }; 519 520 pin_gpio_y1 { 521 gpio-hog; 522 gpios = <ASPEED_GPIO(Y, 1) GPIO_ACTIVE_HIGH>; 523 output-low; 524 line-name = "BMC_NCSI_MUX_CTL_S1"; 525 }; 526 527 pin_gpio_z0 { 528 gpio-hog; 529 gpios = <ASPEED_GPIO(Z, 0) GPIO_ACTIVE_HIGH>; 530 output-high; 531 line-name = "I2C_RISER2_INT_N"; 532 }; 533 534 pin_gpio_z2 { 535 gpio-hog; 536 gpios = <ASPEED_GPIO(Z, 2) GPIO_ACTIVE_HIGH>; 537 output-high; 538 line-name = "I2C_RISER2_RESET_N"; 539 }; 540 541 pin_gpio_z3 { 542 gpio-hog; 543 gpios = <ASPEED_GPIO(Z, 3) GPIO_ACTIVE_HIGH>; 544 output-high; 545 line-name = "FM_BMC_PCH_SCI_LPC_N"; 546 }; 547 548 pin_gpio_z7 { 549 gpio-hog; 550 gpios = <ASPEED_GPIO(Z, 7) GPIO_ACTIVE_HIGH>; 551 output-low; 552 line-name = "BMC_POST_CMPLT_N"; 553 }; 554 555 pin_gpio_aa0 { 556 gpio-hog; 557 gpios = <ASPEED_GPIO(AA, 0) GPIO_ACTIVE_HIGH>; 558 output-low; 559 line-name = "HOST_BMC_USB_SEL"; 560 }; 561 562 pin_gpio_aa5 { 563 gpio-hog; 564 gpios = <ASPEED_GPIO(AA, 5) GPIO_ACTIVE_HIGH>; 565 output-high; 566 line-name = "I2C_BUS1_RST_OUT_N"; 567 }; 568 569}; 570