1 // SPDX-License-Identifier: GPL-2.0+
2 // Copyright (C) 2020 Bytedance.
5 #include "aspeed-g5.dtsi"
6 #include <dt-bindings/gpio/aspeed-gpio.h>
7 #include <dt-bindings/i2c/i2c.h>
8 #include <dt-bindings/leds/leds-pca955x.h>
11 model = "Bytedance G220A BMC";
12 compatible = "bytedance,g220a-bmc", "aspeed,ast2500";
30 i2c28 = &channel_6_10;
31 i2c29 = &channel_6_11;
32 i2c30 = &channel_6_12;
33 i2c31 = &channel_6_13;
34 i2c32 = &channel_6_14;
35 i2c33 = &channel_6_15;
36 i2c34 = &channel_6_16;
37 i2c35 = &channel_6_17;
38 i2c36 = &channel_6_18;
39 i2c37 = &channel_6_19;
40 i2c38 = &channel_6_20;
41 i2c39 = &channel_6_21;
42 i2c40 = &channel_6_22;
43 i2c41 = &channel_6_23;
44 i2c42 = &channel_6_24;
45 i2c43 = &channel_6_25;
46 i2c44 = &channel_10_0;
47 i2c45 = &channel_10_1;
48 i2c46 = &channel_10_2;
49 i2c47 = &channel_10_3;
50 i2c48 = &channel_10_4;
51 i2c49 = &channel_10_5;
52 i2c50 = &channel_10_6;
53 i2c51 = &channel_10_7;
58 bootargs = "console=ttyS4,115200 earlyprintk";
62 reg = <0x80000000 0x40000000>;
70 vga_memory: framebuffer@bc000000 {
72 reg = <0xbc000000 0x04000000>; /* 64M */
75 video_engine_memory: jpegbuffer {
76 size = <0x02000000>; /* 32M */
77 alignment = <0x01000000>;
78 compatible = "shared-dma-pool";
84 compatible = "iio-hwmon";
85 io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>,
86 <&adc 4>, <&adc 5>, <&adc 6>, <&adc 7>,
87 <&adc 8>, <&adc 9>, <&adc 10>, <&adc 11>,
88 <&adc 12>, <&adc 13>, <&adc 14>, <&adc 15>;
92 compatible = "gpio-leds";
95 gpios = <&gpio ASPEED_GPIO(B, 0) GPIO_ACTIVE_LOW>;
96 linux,default-trigger = "timer";
97 led-pattern = <1000 1000>;
102 compatible = "gpio-keys";
105 gpios = <&gpio ASPEED_GPIO(R, 5) GPIO_ACTIVE_LOW>;
106 linux,code = <ASPEED_GPIO(R, 5)>;
111 compatible = "gpio-keys-polled";
112 poll-interval = <1000>;
114 rear-riser1-presence {
115 label = "rear-riser1-presence";
116 gpios = <&pca0 1 GPIO_ACTIVE_LOW>;
121 label = "alrt-pvddq-cpu0";
122 gpios = <&pca0 8 GPIO_ACTIVE_LOW>;
126 rear-riser0-presence {
127 label = "rear-riser0-presence";
128 gpios = <&pca0 9 GPIO_ACTIVE_LOW>;
133 label = "fault-pvddq-cpu0";
134 gpios = <&pca0 10 GPIO_ACTIVE_LOW>;
139 label = "alrt-pvddq-cpu1";
140 gpios = <&pca0 11 GPIO_ACTIVE_LOW>;
145 label = "alrt-pvddq-cpu1";
146 gpios = <&pca0 12 GPIO_ACTIVE_LOW>;
151 label = "fault-pvccin-cpuq";
152 gpios = <&pca0 13 GPIO_ACTIVE_LOW>;
157 label = "bmc-rom0-wp";
158 gpios = <&pca1 0 GPIO_ACTIVE_LOW>;
163 label = "bmc-rom1-wp";
164 gpios = <&pca1 1 GPIO_ACTIVE_LOW>;
169 label = "fan0-presence";
170 gpios = <&pca1 2 GPIO_ACTIVE_LOW>;
175 label = "fan1-presence";
176 gpios = <&pca1 3 GPIO_ACTIVE_LOW>;
181 label = "fan2-presence";
182 gpios = <&pca1 4 GPIO_ACTIVE_LOW>;
187 label = "fan3-presence";
188 gpios = <&pca1 5 GPIO_ACTIVE_LOW>;
193 label = "fan4-presence";
194 gpios = <&pca1 6 GPIO_ACTIVE_LOW>;
199 label = "fan5-presence";
200 gpios = <&pca1 7 GPIO_ACTIVE_LOW>;
205 label = "front-bp1-presence";
206 gpios = <&pca1 8 GPIO_ACTIVE_LOW>;
211 label = "rear-bp-presence";
212 gpios = <&pca1 9 GPIO_ACTIVE_LOW>;
217 label = "fault-pvccin-cpu0";
218 gpios = <&pca1 10 GPIO_ACTIVE_LOW>;
223 label = "alrt-p1v05-pvcc1";
224 gpios = <&pca1 11 GPIO_ACTIVE_LOW>;
229 label = "alrt-p1v05-pvcc1";
230 gpios = <&pca1 12 GPIO_ACTIVE_LOW>;
235 label = "alrt-p1v8-pvccio";
236 gpios = <&pca1 13 GPIO_ACTIVE_LOW>;
241 label = "fault-p1v8-pvccio";
242 gpios = <&pca1 14 GPIO_ACTIVE_LOW>;
247 label = "front-bp0-presence";
248 gpios = <&pca1 15 GPIO_ACTIVE_LOW>;
260 spi-max-frequency = <50000000>;
261 #include "openbmc-flash-layout-64.dtsi"
267 pinctrl-names = "default";
268 pinctrl-0 = <&pinctrl_spi1_default>;
273 spi-max-frequency = <100000000>;
284 /*A0-A7*/ "SMRST_OCP_N","MAC2_LINK","BMC_CPLD_SMB_RST_R_N","BMC_CPLD_GPIO0",
286 /*B0-B7*/ "BMC_INIT_R_OK","FM_BOARD_REV_ID2","FM_PROJECT_ID7","FAULT_P12V_STBY_N",
287 "","CPU0_PROCHOT_LVT3_N","","BIOS_LOAD_DEFAULT_R_N",
288 /*C0-C7*/ "","","","","","","","",
289 /*D0-D7*/ "","","","","","","","",
290 /*E0-E7*/ "FM_PROJECT_ID0","FM_PROJECT_ID1","FM_PROJECT_ID2","FM_PROJECT_ID3",
291 "FM_PROJECT_ID4","FM_PROJECT_ID5","","",
292 /*F0-F7*/ "PSU0_PRSNT_N","PSU1_PRSNT_N","","FAULT_P12V_NVME_N",
293 "BIOS_DEBUG_MODE_R_N","DISABLE_CPU_DDR_R_SPD","COOLING_STRATEGY",
295 /*G0-G7*/ "P12V_PMBUS_ALERT_N","CPLD_ALERT_N","BMC_RELOAD_N",
296 "P12V_PVDDQ_PMBUS_ALERT_N","BMC_JTAG_TCK_MUX_R_SEL","","NMI_OUT",
298 /*H0-H7*/ "BMC_CPLD_JTAG_TDI","BMC_CPLD_JTAG_TDO","BMC_CPLD_JTAG_TCK",
299 "BMC_CPLD_JTAG_TMS","FM_PROJECT_ID6","FM_BOARD_REV_ID0",
300 "PCA9546_U70_RST_N","IRQ_SML0_ALERT_N",
301 /*I0-I7*/ "FAULT_FRONT_RISER_P12V_N","FAULT_OCP_P12V_N","FM_BMC_PCH_SCI_R_N",
303 /*J0-J7*/ "FM_CPU0_SKTOCC_N","FM_CPU1_SKTOCC_N","FM_CPU1_DISABLE_COD_N",
305 /*K0-K7*/ "","","","","","","","",
306 /*L0-L7*/ "P12V_FAULT_N","PWRGD_P12V_PCIE_RISER","","LEAKAGE_DETECT_INPUT_N",
307 "","IRQ_SML1_PMBUS_ALERT_N","","",
308 /*M0-M7*/ "","","","","","","","",
309 /*N0-N7*/ "","","","","","","","",
310 /*O0-O7*/ "","","","","","","","",
311 /*P0-P7*/ "","","","","","","","",
312 /*Q0-Q7*/ "","","","","","","FM_PCH_THERMTRIP_N","CHASSIS_INTRUSION",
313 /*R0-R7*/ "","PVCCIN_CPU1_SMBALERT_N","BMC_PREQ_R_N","FAULT_P12V_PCIE_RISER_N",
314 "ALT_P12V_PCIE_RISER_N","BURN_BOARD_N","PVCCIN_CPU0_SMBALERT_N","",
315 /*S0-S7*/ "BMC_PRDY_N","SIO_POWER_GOOD","FM_BMC_PWR_DEBUG_R_N",
316 "FM_BMC_XDP_DEBUG_EN","","STRAP_BMC_BATTERY_GPIOS5","","",
317 /*T0-T7*/ "","","","","","","","",
318 /*U0-U7*/ "","","","","","","","",
319 /*V0-V7*/ "","","","","","","","",
320 /*W0-W7*/ "","","","","","","","",
321 /*X0-X7*/ "","","","","","","","",
322 /*Y0-Y7*/ "","PWRGD_PSU0_PWROK","CPU1_PROCHOT_LVT3_N","IRQ_BMC_PCH_SMI_LPC_N",
324 /*Z0-Z7*/ "XDP_PRSNT_N","BMC_XDP_SYS_PWROK","BMC_XDP_JTAG_SEL",
325 "PCH_BMC_SMI_ACTIVE_R_N","","","","",
326 /*AA0-AA7*/ "PWRGD_P12V_STBY_OCP","PS_PWROK","RST_PLTRST_BMC_R_N","HDA_SDO_R",
327 "FM_SLPS4_R_N","PWRGD_PSU1_PWROK","POWER_BUTTON","POWER_OUT",
328 /*AB0-AB7*/ "","RESET_OUT","SPI_BIOS_MODE_SELECT","POST_COMPLETE","","","","",
329 /*AC0-AC7*/ "","","","","","","","CPLD_PLTRST_B_N";
333 aspeed,lpc-io-reg = <0xCA2>;
338 aspeed,lpc-io-reg = <0xCA4>;
343 snoop-ports = <0x80>;
349 pinctrl-names = "default";
350 pinctrl-0 = <&pinctrl_txd1_default
351 &pinctrl_rxd1_default
352 &pinctrl_nrts1_default
353 &pinctrl_ndtr1_default
354 &pinctrl_ndsr1_default
355 &pinctrl_ncts1_default
356 &pinctrl_ndcd1_default
357 &pinctrl_nri1_default>;
362 pinctrl-names = "default";
363 pinctrl-0 = <&pinctrl_txd2_default
364 &pinctrl_rxd2_default
365 &pinctrl_nrts2_default
366 &pinctrl_ndtr2_default
367 &pinctrl_ndsr2_default
368 &pinctrl_ncts2_default
369 &pinctrl_ndcd2_default
370 &pinctrl_nri2_default>;
387 pinctrl-names = "default";
388 pinctrl-0 = <&pinctrl_rmii1_default>;
389 clocks = <&syscon ASPEED_CLK_GATE_MAC1CLK>,
390 <&syscon ASPEED_CLK_MAC1RCLK>;
391 clock-names = "MACCLK", "RCLK";
397 pinctrl-names = "default";
398 pinctrl-0 = <&pinctrl_rgmii2_default &pinctrl_mdio2_default>;
416 compatible = "nxp,pca9546";
418 #address-cells = <1>;
422 #address-cells = <1>;
428 #address-cells = <1>;
434 #address-cells = <1>;
440 #address-cells = <1>;
450 compatible = "ipmb-dev";
451 reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
463 compatible = "nxp,pca9548";
465 #address-cells = <1>;
468 #address-cells = <1>;
474 #address-cells = <1>;
480 #address-cells = <1>;
486 #address-cells = <1>;
491 #address-cells = <1>;
497 #address-cells = <1>;
503 #address-cells = <1>;
509 #address-cells = <1>;
516 compatible = "nxp,pca9546";
518 #address-cells = <1>;
521 #address-cells = <1>;
525 compatible = "nxp,pca9546";
527 #address-cells = <1>;
529 channel_6_12: i2c@0 {
530 #address-cells = <1>;
536 channel_6_13: i2c@1 {
537 #address-cells = <1>;
542 channel_6_14: i2c@2 {
543 #address-cells = <1>;
548 channel_6_15: i2c@3 {
549 #address-cells = <1>;
557 #address-cells = <1>;
561 compatible = "nxp,pca9546";
563 #address-cells = <1>;
565 channel_6_16: i2c@0 {
566 #address-cells = <1>;
572 channel_6_17: i2c@1 {
573 #address-cells = <1>;
578 channel_6_18: i2c@2 {
579 #address-cells = <1>;
584 channel_6_19: i2c@3 {
585 #address-cells = <1>;
592 channel_6_10: i2c@2 {
593 #address-cells = <1>;
597 compatible = "nxp,pca9546";
599 #address-cells = <1>;
601 channel_6_20: i2c@0 {
602 #address-cells = <1>;
607 channel_6_21: i2c@1 {
608 #address-cells = <1>;
613 channel_6_22: i2c@2 {
614 #address-cells = <1>;
619 channel_6_23: i2c@3 {
620 #address-cells = <1>;
627 channel_6_11: i2c@3 {
628 #address-cells = <1>;
632 compatible = "nxp,pca9546";
634 #address-cells = <1>;
636 channel_6_24: i2c@0 {
637 #address-cells = <1>;
642 channel_6_25: i2c@1 {
643 #address-cells = <1>;
659 compatible = "nxp,pca9555";
661 #address-cells = <1>;
668 type = <PCA955X_TYPE_GPIO>;
673 type = <PCA955X_TYPE_GPIO>;
678 type = <PCA955X_TYPE_GPIO>;
683 type = <PCA955X_TYPE_GPIO>;
688 type = <PCA955X_TYPE_GPIO>;
693 type = <PCA955X_TYPE_GPIO>;
698 type = <PCA955X_TYPE_GPIO>;
703 compatible = "nxp,pca9555";
706 #address-cells = <1>;
714 type = <PCA955X_TYPE_GPIO>;
719 type = <PCA955X_TYPE_GPIO>;
724 type = <PCA955X_TYPE_GPIO>;
729 type = <PCA955X_TYPE_GPIO>;
734 type = <PCA955X_TYPE_GPIO>;
739 type = <PCA955X_TYPE_GPIO>;
744 type = <PCA955X_TYPE_GPIO>;
749 type = <PCA955X_TYPE_GPIO>;
753 type = <PCA955X_TYPE_GPIO>;
758 type = <PCA955X_TYPE_GPIO>;
763 type = <PCA955X_TYPE_GPIO>;
768 type = <PCA955X_TYPE_GPIO>;
773 type = <PCA955X_TYPE_GPIO>;
778 type = <PCA955X_TYPE_GPIO>;
783 type = <PCA955X_TYPE_GPIO>;
788 type = <PCA955X_TYPE_GPIO>;
800 compatible = "nxp,pca9546";
802 #address-cells = <1>;
804 channel_10_0: i2c@0 {
805 #address-cells = <1>;
810 channel_10_1: i2c@1 {
811 #address-cells = <1>;
816 channel_10_2: i2c@2 {
817 #address-cells = <1>;
822 channel_10_3: i2c@3 {
823 #address-cells = <1>;
830 compatible = "nxp,pca9546";
832 #address-cells = <1>;
834 channel_10_4: i2c@0 {
835 #address-cells = <1>;
840 channel_10_5: i2c@1 {
841 #address-cells = <1>;
846 channel_10_6: i2c@2 {
847 #address-cells = <1>;
852 channel_10_7: i2c@3 {
853 #address-cells = <1>;
874 pinctrl-names = "default";
875 pinctrl-0 = <&pinctrl_pwm0_default &pinctrl_pwm1_default
876 &pinctrl_pwm2_default &pinctrl_pwm3_default
877 &pinctrl_pwm4_default &pinctrl_pwm5_default>;
881 aspeed,fan-tach-ch = /bits/ 8 <0x00 0x01>;
885 aspeed,fan-tach-ch = /bits/ 8 <0x02 0x03>;
889 aspeed,fan-tach-ch = /bits/ 8 <0x04 0x05>;
893 aspeed,fan-tach-ch = /bits/ 8 <0x06 0x07>;
897 aspeed,fan-tach-ch = /bits/ 8 <0x08 0x09>;
901 aspeed,fan-tach-ch = /bits/ 8 <0x0a 0x0b>;
908 gpios = <ASPEED_GPIO(I, 3) GPIO_ACTIVE_HIGH>;
910 line-name = "NCSI_BMC_R_SEL";
915 gpios = <ASPEED_GPIO(B, 6) GPIO_ACTIVE_HIGH>;
917 line-name = "EN_NCSI_SWITCH_N";
923 memory-region = <&video_engine_memory>;