* [PATCH v6 0/2] ARM: dts: aspeed: Add Device Tree for Facebook Anacapa BMC
@ 2025-11-12 21:12 Peter Shen
2025-11-12 21:12 ` [PATCH v6 1/2] dt-bindings: arm: aspeed: Add compatible " Peter Shen
` (3 more replies)
0 siblings, 4 replies; 11+ messages in thread
From: Peter Shen @ 2025-11-12 21:12 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: Andrew Jeffery, Joel Stanley, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, devicetree, linux-arm-kernel, linux-aspeed,
linux-kernel, peter.shen
This patch series adds the device tree binding and the initial device tree
source file for the Facebook Anacapa BMC, which utilizes the Aspeed AST2600
SoC.
The patches configure the necessary platform peripherals and aliases for
OpenBMC usage.
---
Changes in v6:
- Rebased onto the latest upstream kernel (v6.18-rc5+) to minimize potential merge conflicts.
- Restarted the patch series submission as a **NEW THREAD** to fix the incorrect threading/In-Reply-To usage in v5, as advised by the maintainer.
- The email sender address (From:) is now corrected to fully match the Signed-off-by: and Author: address (sjg168@gmail.com), fixing the DCO mismatch issue reported against v3/v4.
- Corrected all previous style issues: fixed block comment styles, line length issues, and removed un-documented/unused device tree nodes (amd,helios_cpld and eeprom@53).
^ permalink raw reply [flat|nested] 11+ messages in thread* [PATCH v6 1/2] dt-bindings: arm: aspeed: Add compatible for Facebook Anacapa BMC 2025-11-12 21:12 [PATCH v6 0/2] ARM: dts: aspeed: Add Device Tree for Facebook Anacapa BMC Peter Shen @ 2025-11-12 21:12 ` Peter Shen 2025-11-13 7:14 ` Krzysztof Kozlowski 2025-11-12 21:12 ` [PATCH v6 2/2] ARM: dts: aspeed: Add Device Tree " Peter Shen ` (2 subsequent siblings) 3 siblings, 1 reply; 11+ messages in thread From: Peter Shen @ 2025-11-12 21:12 UTC (permalink / raw) To: Krzysztof Kozlowski Cc: Andrew Jeffery, Joel Stanley, Rob Herring, Krzysztof Kozlowski, Conor Dooley, devicetree, linux-arm-kernel, linux-aspeed, linux-kernel, peter.shen, Peter Shen This patch adds the compatible string for the Facebook Anacapa BMC which uses an Aspeed AST2600 SoC. This is required before adding the board's device tree source file. Signed-off-by: Peter Shen <sjg168@gmail.com> --- Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml b/Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml index aedefca7cf4a..bcb874ebd9d2 100644 --- a/Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml +++ b/Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml @@ -80,6 +80,7 @@ properties: - aspeed,ast2600-evb - aspeed,ast2600-evb-a1 - asus,x4tf-bmc + - facebook,anacapa-bmc - facebook,bletchley-bmc - facebook,catalina-bmc - facebook,clemente-bmc base-commit: 24172e0d79900908cf5ebf366600616d29c9b417 -- 2.34.1 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH v6 1/2] dt-bindings: arm: aspeed: Add compatible for Facebook Anacapa BMC 2025-11-12 21:12 ` [PATCH v6 1/2] dt-bindings: arm: aspeed: Add compatible " Peter Shen @ 2025-11-13 7:14 ` Krzysztof Kozlowski 0 siblings, 0 replies; 11+ messages in thread From: Krzysztof Kozlowski @ 2025-11-13 7:14 UTC (permalink / raw) To: Peter Shen Cc: Andrew Jeffery, Joel Stanley, Rob Herring, Krzysztof Kozlowski, Conor Dooley, devicetree, linux-arm-kernel, linux-aspeed, linux-kernel, peter.shen On 12/11/2025 22:12, Peter Shen wrote: > This patch adds the compatible string for the Facebook Anacapa BMC > which uses an Aspeed AST2600 SoC. This is required before adding > the board's device tree source file. > > Signed-off-by: Peter Shen <sjg168@gmail.com> > --- > Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml | 1 + > 1 file changed, 1 insertion(+) Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> <form letter> This is an automated instruction, just in case, because many review tags are being ignored. If you know the process, just skip it entirely (please do not feel offended by me posting it here - no bad intentions intended, no patronizing, I just want to avoid wasted efforts). If you do not know the process, here is a short explanation: Please add Acked-by/Reviewed-by/Tested-by tags when posting new versions of patchset, under or above your Signed-off-by tag, unless patch changed significantly (e.g. new properties added to the DT bindings). Tag is "received", when provided in a message replied to you on the mailing list. Tools like b4 can help here ('b4 trailers -u ...'). However, there's no need to repost patches *only* to add the tags. The upstream maintainer will do that for tags received on the version they apply. Full context and explanation: https://elixir.bootlin.com/linux/v6.15/source/Documentation/process/submitting-patches.rst#L591 </form letter> Best regards, Krzysztof ^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH v6 2/2] ARM: dts: aspeed: Add Device Tree for Facebook Anacapa BMC 2025-11-12 21:12 [PATCH v6 0/2] ARM: dts: aspeed: Add Device Tree for Facebook Anacapa BMC Peter Shen 2025-11-12 21:12 ` [PATCH v6 1/2] dt-bindings: arm: aspeed: Add compatible " Peter Shen @ 2025-11-12 21:12 ` Peter Shen 2025-11-14 4:28 ` Andrew Jeffery 2025-11-14 4:30 ` [PATCH v6 0/2] " Andrew Jeffery 2025-11-18 4:10 ` [PATCH v7 " Peter Shen 3 siblings, 1 reply; 11+ messages in thread From: Peter Shen @ 2025-11-12 21:12 UTC (permalink / raw) To: Krzysztof Kozlowski Cc: Andrew Jeffery, Joel Stanley, Rob Herring, Krzysztof Kozlowski, Conor Dooley, devicetree, linux-arm-kernel, linux-aspeed, linux-kernel, peter.shen, Peter Shen Add the initial device tree source file for the Facebook Anacapa BMC platform, based on the Aspeed AST2600 SoC. This device tree configures the platform-specific peripherals and aliases for OpenBMC usage. Signed-off-by: Peter Shen <sjg168@gmail.com> --- arch/arm/boot/dts/aspeed/Makefile | 1 + .../aspeed/aspeed-bmc-facebook-anacapa.dts | 1223 +++++++++++++++++ 2 files changed, 1224 insertions(+) create mode 100644 arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-anacapa.dts diff --git a/arch/arm/boot/dts/aspeed/Makefile b/arch/arm/boot/dts/aspeed/Makefile index 0f0b5b707654..e1b2fc7b8c08 100644 --- a/arch/arm/boot/dts/aspeed/Makefile +++ b/arch/arm/boot/dts/aspeed/Makefile @@ -17,6 +17,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \ aspeed-bmc-asus-x4tf.dtb \ aspeed-bmc-bytedance-g220a.dtb \ aspeed-bmc-delta-ahe50dc.dtb \ + aspeed-bmc-facebook-anacapa.dtb \ aspeed-bmc-facebook-bletchley.dtb \ aspeed-bmc-facebook-catalina.dtb \ aspeed-bmc-facebook-clemente.dtb \ diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-anacapa.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-anacapa.dts new file mode 100644 index 000000000000..e55069a199c8 --- /dev/null +++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-anacapa.dts @@ -0,0 +1,1223 @@ +// SPDX-License-Identifier: GPL-2.0-or-later + +/dts-v1/; +#include "aspeed-g6.dtsi" +#include <dt-bindings/gpio/aspeed-gpio.h> +#include <dt-bindings/i2c/i2c.h> + +/ { + model = "Facebook Anacapa BMC"; + compatible = "facebook,anacapa-bmc", "aspeed,ast2600"; + + aliases { + serial0 = &uart1; + serial2 = &uart3; + serial3 = &uart4; + serial4 = &uart5; + i2c16 = &i2c0mux0ch0; + i2c17 = &i2c0mux0ch1; + i2c18 = &i2c0mux0ch2; + i2c19 = &i2c0mux0ch3; + i2c20 = &i2c1mux0ch0; + i2c21 = &i2c1mux0ch1; + i2c22 = &i2c1mux0ch2; + i2c23 = &i2c1mux0ch3; + i2c24 = &i2c4mux0ch0; + i2c25 = &i2c4mux0ch1; + i2c26 = &i2c4mux0ch2; + i2c27 = &i2c4mux0ch3; + i2c28 = &i2c4mux0ch4; + i2c29 = &i2c4mux0ch5; + i2c30 = &i2c4mux0ch6; + i2c31 = &i2c4mux0ch7; + i2c32 = &i2c8mux0ch0; + i2c33 = &i2c8mux0ch1; + i2c34 = &i2c8mux0ch2; + i2c35 = &i2c8mux0ch3; + i2c36 = &i2c10mux0ch0; + i2c37 = &i2c10mux0ch1; + i2c38 = &i2c10mux0ch2; + i2c39 = &i2c10mux0ch3; + i2c40 = &i2c10mux0ch4; + i2c41 = &i2c10mux0ch5; + i2c42 = &i2c10mux0ch6; + i2c43 = &i2c10mux0ch7; + i2c44 = &i2c11mux0ch0; + i2c45 = &i2c11mux0ch1; + i2c46 = &i2c11mux0ch2; + i2c47 = &i2c11mux0ch3; + i2c48 = &i2c11mux0ch4; + i2c49 = &i2c11mux0ch5; + i2c50 = &i2c11mux0ch6; + i2c51 = &i2c11mux0ch7; + i2c52 = &i2c13mux0ch0; + i2c53 = &i2c13mux0ch1; + i2c54 = &i2c13mux0ch2; + i2c55 = &i2c13mux0ch3; + i2c56 = &i2c13mux0ch4; + i2c57 = &i2c13mux0ch5; + i2c58 = &i2c13mux0ch6; + i2c59 = &i2c13mux0ch7; + }; + + chosen { + stdout-path = "serial4:57600n8"; + }; + + iio-hwmon { + compatible = "iio-hwmon"; + io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>, <&adc0 3>, + <&adc0 4>, <&adc0 5>, <&adc0 6>, <&adc0 7>, + <&adc1 2>; + }; + + leds { + compatible = "gpio-leds"; + + led-0 { + label = "bmc_heartbeat_amber"; + gpios = <&gpio0 ASPEED_GPIO(P, 7) GPIO_ACTIVE_LOW>; + linux,default-trigger = "heartbeat"; + }; + + led-1 { + label = "fp_id_amber"; + default-state = "off"; + gpios = <&gpio0 ASPEED_GPIO(B, 5) GPIO_ACTIVE_HIGH>; + }; + + led-2 { + label = "power_blue"; + default-state = "off"; + gpios = <&gpio0 ASPEED_GPIO(P, 4) GPIO_ACTIVE_HIGH>; + }; + }; + + memory@80000000 { + device_type = "memory"; + reg = <0x80000000 0x80000000>; + }; + + reserved-memory { + #address-cells = <1>; + #size-cells = <1>; + ranges; + + video_engine_memory: video { + size = <0x02c00000>; + alignment = <0x00100000>; + compatible = "shared-dma-pool"; + reusable; + }; + + gfx_memory: framebuffer { + size = <0x01000000>; + alignment = <0x01000000>; + compatible = "shared-dma-pool"; + reusable; + }; + + pcc_memory: pccbuffer { + no-map; + reg = <0xE0000000 0x00001000>; /* 4K */ + }; + }; + + p3v3_bmc_aux: regulator-p3v3-bmc-aux { + compatible = "regulator-fixed"; + regulator-name = "p3v3_bmc_aux"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-always-on; + }; + + spi_gpio: spi { + compatible = "spi-gpio"; + #address-cells = <1>; + #size-cells = <0>; + + sck-gpios = <&gpio0 ASPEED_GPIO(Z, 3) GPIO_ACTIVE_HIGH>; + mosi-gpios = <&gpio0 ASPEED_GPIO(Z, 4) GPIO_ACTIVE_HIGH>; + miso-gpios = <&gpio0 ASPEED_GPIO(Z, 5) GPIO_ACTIVE_HIGH>; + num-chipselects = <1>; + cs-gpios = <&gpio0 ASPEED_GPIO(Z, 0) GPIO_ACTIVE_LOW>; + status = "okay"; + + tpm@0 { + compatible = "infineon,slb9670", "tcg,tpm_tis-spi"; + spi-max-frequency = <33000000>; + reg = <0>; + }; + }; +}; + +&adc0 { + aspeed,int-vref-microvolt = <2500000>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default + &pinctrl_adc2_default &pinctrl_adc3_default + &pinctrl_adc4_default &pinctrl_adc5_default + &pinctrl_adc6_default &pinctrl_adc7_default>; + status = "okay"; +}; + +&adc1 { + aspeed,int-vref-microvolt = <2500000>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_adc10_default>; + status = "okay"; +}; + +&ehci1 { + status = "okay"; +}; + +&uhci { + status = "okay"; +}; + +&fmc { + status = "okay"; + + flash@0 { + status = "okay"; + m25p,fast-read; + label = "bmc"; + spi-max-frequency = <50000000>; +#include "openbmc-flash-layout-128.dtsi" + }; + + flash@1 { + status = "okay"; + m25p,fast-read; + label = "alt-bmc"; + spi-max-frequency = <50000000>; + }; +}; + +&gpio0 { + gpio-line-names = + + /* + * A0-A7: "", "", "", "", "", "", "", "" + */ + "SMB_BMC_MM11_SCL", "SMB_BMC_MM11_SDA", + "SMB_BMC_MM12_SCL", "SMB_BMC_MM12_SDA", + "SMB_BMC_MM13_SCL", "SMB_BMC_MM13_SDA", + "SMB_BMC_MM14_SCL", "SMB_BMC_MM14_SDA", + + /* + * B0-B7: "rtc-battery-voltage-read-enable", "", "", "BMC_READY", "", + * "led-identify", "", "" + */ + "BATTERY_DETECT","BMC_GPIOB1", + "BMC_I2C1_FPGA_ALERT","BMC_READY", + "IOEXP_INT_3V3","FM_ID_LED", + "UART_BMC_4_TXD","UART_BMC_4_RXD", + + + /* + * C0-C7: "", "", "", "", "", "", "", "" + */ + "BMC_GPIOC0", "NCSI0_SCM_HPM_TX_EN", + "NCSI0_SCM_HPM_D0", "NCSI0_SCM_HPM_D1", + "PMBUS_REQ_N", "PSU_FW_UPDATE_REQ_N", + "NCSI0_HPM_SCM_CLK", "BMC_I2C_SSIF_ALERT", + + /* + * D0-D7: "", "", "", "", "", "", "", "" + */ + "NCSI0_HPM_SCM_D0", "NCSI0_HPM_SCM_D1", + "NCSI0_HPM_SCM_CRS_DV", "NCSI0_RXER", + "BMC_GPIOD4", "BMC_GPIOD5", + "BMC_GPIOD6", "BMC_GPIOD7", + + /* + * E0-E7: "", "", "", "", "", "", "", "" + */ + "BMC_GPIOE0", "BMC_GPIOE1", + "BMC_GPIOE1", "PD_RGMII4_RXCTL", + "BMC_GPIOE1", "BMC_GPIOE1", + "BMC_GPIOE1", "NCSI1_RXER", + + /* + * F0-F7: "", "", "", "", "", "", "", "" + */ + "BMC_EMMC_CLK", "BMC_EMMC_CMD", + "BMC_EMMC_DT0", "BMC_EMMC_DT1", + "BMC_EMMC_DT2", "BMC_EMMC_DT3", + "BMC_EMMC_CD_N", "BMC_EMMC_WP_N", + + /* + * G0-G7: "FM_MUX1_SEL_R", "", "", "", "", "", "", "" + */ + "FM_MUX1_SEL", "BMC_GPIOG1", + "BMC_EMMC_DT4", "BMC_EMMC_DT5", + "BMC_EMMC_DT6", "BMC_EMMC_DT7", + "FM_DEBUG_PORT_PRSNT_N", "FM_BMC_DBP_PRESENT_N", + + /* + * H0-H7: "", "", "", "", "", "", "", "" + */ + "SGPIO_CLK_1", "SGPIO_LD_1", + "SGPIO_DO_1", "SGPIO_DI_1", + "SMB_BMC_MM15_SCL", "SMB_BMC_MM15_SDA", + "SMB_BMC_MM16_SCL", "SMB_BMC_MM16_SDA", + + /* + * I0-I7: "", "", "", "", "", "", "", "" + */ + "JTAG_1_BMC_TRST", "JTAG_1_BMC_TCK", + "JTAG_1_BMC_TMS", "JTAG_1_BMC_TDI", + "JTAG_1_BMC_TDO", "FLASH_WP_STATUS", + "BMC_JTAG_MUX_SEL", "BMC_GPIOI7", + + /* + * J0-J7: "", "", "", "", "", "", "", "" + */ + "SMB_BMC_MM1_SCL", "SMB_BMC_MM1_SDA", + "SMB_BMC_MM2_SCL", "SMB_BMC_MM2_SDA", + "I3C_5_HV18_SCL", "I3C_5_HV18_SDA", + "I3C_6_HV18_SCL", "I3C_6_HV18_SDA", + + /* + * K0-K7: "", "", "", "", "", "", "", "" + */ + "SMB_BMC_MM5_SCL", "SMB_BMC_MM5_SDA", + "SMB_BMC_MM6_SCL", "SMB_BMC_MM6_SDA", + "SMB_BMC_MM7_SCL", "SMB_BMC_MM7_SDA", + "SMB_BMC_MM8_SCL", "SMB_BMC_MM8_SDA", + + /* + * L0-L7: "", "", "", "", "", "", "", "" + */ + "SMB_BMC_MM9_SCL", "SMB_BMC_MM9_SDA", + "SMB_BMC_MM10_SCL", "SMB_BMC_MM10_SDA", + "UART_BMC_3_TXD", "UART_BMC_3_RXD", + "V_VGAHS", "V_VGAVS", + + /* + * M0-M7: "", "", "", "", "", "", "", "" + */ + "PCIE_EP_RST_EN", "BMC_FRU_WP", + "SCM_HPM_STBY_RST_N", "SCM_HPM_STBY_EN", + "STBY_POWER_PG_3V3", "TH500_SHDN_OK", + "UART_BMC_1_TXD", "UART_BMC_1_RXD", + + /* + * N0-N7: "led-postcode-0", "led-postcode-1", "led-postcode-2", "led-postcode-3", + * "led-postcode-4", "led-postcode-5", "led-postcode-6", "led-postcode-7" + */ + "LED_POSTCODE_0", "LED_POSTCODE_1", + "LED_POSTCODE_2", "LED_POSTCODE_3", + "LED_POSTCODE_4", "LED_POSTCODE_5", + "LED_POSTCODE_6", "LED_POSTCODE_7", + + /* + * O0-O7: "", "", "", "", "", "", "", "" + */ + "RUN_POWER_PG", "PWR_BRAKE", + "CHASSIS_AC_LOSS", "BSM_PRSNT_N", + "PSU_SMB_ALERT", "FM_TPM_PRSNT_0_N", + "PSU_FW_UPDATING_N", "BMC_GPIOO7", + + /* + * P0-P7: "power-button", "", "reset-button", "", "led-power", "", "", "" + */ + "PWR_BTN_BMC_BUF_N", "IPEX_CABLE_PRSNT", + "ID_RST_BTN_BMC_N", "RST_BMC_RSTBTN_OUT_N", + "PWR_LED", "RUN_POWER_EN", + "SHDN_FORCE", "BMC_HEARTBEAT_N", + + /* + * Q0-Q7: "", "", "", "", "", "", "", "" + */ + "IRQ_PCH_TPM_SPI_LV3_N", "USB_OC0_REAR_N", + "UART_MUX_SEL", "I2C_MUX_RESET", + "RSVD_NV_PLT_DETECT", "SPI_TPM_INT", + "CPU_JTAG_MUX_SELECT", "THERM_BB_OVERT", + + /* + * R0-R7: "", "", "", "", "", "", "", "" + */ + "THERM_BB_WARN", "SPI_BMC_FPGA_INT", + "CPU_BOOT_DONE", "PMBUS_GNT", + "CHASSIS_PWR_BRK", "PCIE_WAKE", + "PDB_THERM_OVERT", "SHDN_REQ", + + /* + * S0-S7: "", "", "power-host-control", "", "", "", "", "" + */ + "MDC1_BMC", "MDIO1_BMC", + "SYS_BMC_PWRBTN_N", "FM_TPM_PRSNT_1_N", + "FM_BMC_DEBUG_SW_N", "UID_LED_N", + "SYS_FAULT_LED_N", "RUN_POWER_FAULT", + + /* + * T0-T7: "", "", "", "", "", "", "", "" + */ + "", "", "", "", "", "", "", "", + + /* + * U0-U7: "", "", "", "", "", "", "", "" + */ + "", "", "", "", "", "", "", "", + + /* + * V0-V7: "", "", "", "", "", "", "", "" + */ + "L2_RST_REQ_OUT", "L0L1_RST_REQ_OUT", + "BMC_ID_BEEP_SEL", "BMC_I2C0_FPGA_ALERT", + "SMB_BMC_TMP_ALERT", "PWR_LED_N", + "SYS_RST_OUT", "IRQ_TPM_SPI_N", + + /* + * W0-W7: "", "", "", "", "", "", "", "" + */ + "ESPI_LPC_D0_IO0", "ESPI_LPC_D1_IO1", + "ESPI_LPC_D2_IO2", "ESPI_LPC_D3_IO3", + "ESPI_HOST_LPC_BMC_CLK", + "ESPI_HOST_LPC_BMC_LFRAME_N", + "IRQ_ESPI_LPC_SERIRQ_ALERT0_N", + "RST_ESPI_LPC_BMC_N", + + /* + * X0-X7: "", "", "", "", "", "", "", "" + */ + "BMC_GPIOX0", "BMC_GPIOX1", + "BMC_GPIOX2", "SPI_BMC_OOB_0_CLK", + "SPI_BMC_OOB_0_IO0", "SPI_BMC_OOB_0_IO1", + "SPI_BMC_OOB_0_IO2", "SPI_BMC_OOB_0_IO3", + + /* + * Y0-Y7: "", "", "", "", "", "", "", "" + */ + "RST_WDTRST_PLD_N", "RST_BMC_SELF_HW", + "FM_FLASH_LATCH_N", "BMC_EMMC_RST_N", + "BMC_GPIOY4", "BMC_GPIOY5", + "PU_BMC_FWSPIABR_N", "PU_FWSPIWP_N", + + /* + * Z0-Z7: "", "", "", "", "", "", "", "" + */ + "SPI_BMC_TPM_CS2_N", "PU_SPI1ABR", + "PU_SPI1WP_N", "SPI_BMC_TPM_CLK", + "SPI_BMC_TPM_MOSI", "SPI_BMC_TPM_MISO", + "BMC_GPIOZ6", "BMC_GPIOZ7", +}; + +&gpio1 { + gpio-line-names = + /* + * 18A0-18A7: "", "", "", "", "", "", "", "" + */ + "RGMII1TXCK", "RGMII1TXCTL", + "RGMII1TXD0", "RGMII1TXD1", + "RGMII1TXD2", "RGMII1TXD3", + "RGMII1RXCK", "RGMII1RXCTL", + + /* + * 18B0-18B7: "", "", "", "", "FM_BOARD_BMC_REV_ID0", "FM_BOARD_BMC_REV_ID1", + * "FM_BOARD_BMC_REV_ID2", "" + */ + "RGMII1RXD0", "RGMII1RXD1", + "RGMII1RXD2", "RGMII1RXD3", + "FM_BOARD_BMC_REV_ID0", "FM_BOARD_BMC_REV_ID1", + "FM_BOARD_BMC_REV_ID2", "BMC_GPIO18B7", + + /* + * 18C0-18C7: "SPI_BMC_BIOS_ROM_IRQ0_R_N", "", "", "", "", "", "", "" + */ + "BMC_GPIO18C0", "BMC_GPIO18C1", + "SPI_BMC_BIOS_ROM_IRQ0_N", "BMC_GPIO18C3", + "BMC_GPIO18C4", "BMC_GPIO18C5", + "BMC_GPIO18C6", "BMC_GPIO18C7", + + /* + * 18D0-18D7: "", "", "", "", "", "", "", "" + */ + "BMC_GPIO18D0", "BMC_GPIO18D1", + "BMC_GPIO18D2", "BMC_GPIO18D3", + "BMC_GPIO18D4", "BMC_GPIO18D5", + "BMC_GPIO18D6", "BMC_GPIO18D7", + + /* + * 18E0-18E3: "FM_BMC_PROT_LS_EN", "AC_PWR_BMC_BTN_R_N", "", "" + */ + "FM_BMC_PROT_LS_EN", "AC_PWR_BMC_BTN_N", + "BMC_GPIO18E2", "BMC_GPIO18E3" +}; + +// L Bridge Board +&i2c0 { + status = "okay"; + + i2c-mux@70 { + compatible = "nxp,pca9546"; + reg = <0x70>; + #address-cells = <1>; + #size-cells = <0>; + i2c-mux-idle-disconnect; + + i2c0mux0ch0: i2c@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c0mux0ch1: i2c@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c0mux0ch2: i2c@2 { + reg = <2>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c0mux0ch3: i2c@3 { + reg = <3>; + #address-cells = <1>; + #size-cells = <0>; + }; + }; +}; + +// R Bridge Board +&i2c1 { + status = "okay"; + + i2c-mux@70 { + compatible = "nxp,pca9546"; + reg = <0x70>; + #address-cells = <1>; + #size-cells = <0>; + i2c-mux-idle-disconnect; + + i2c1mux0ch0: i2c@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c1mux0ch1: i2c@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c1mux0ch2: i2c@2 { + reg = <2>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c1mux0ch3: i2c@3 { + reg = <3>; + #address-cells = <1>; + #size-cells = <0>; + }; + }; +}; + +// MB - E1.S +&i2c4 { + status = "okay"; + + i2c-mux@70 { + compatible = "nxp,pca9548"; + reg = <0x70>; + #address-cells = <1>; + #size-cells = <0>; + i2c-mux-idle-disconnect; + + i2c4mux0ch0: i2c@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c4mux0ch1: i2c@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c4mux0ch2: i2c@2 { + reg = <2>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c4mux0ch3: i2c@3 { + reg = <3>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c4mux0ch4: i2c@4 { + reg = <4>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c4mux0ch5: i2c@5 { + reg = <5>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c4mux0ch6: i2c@6 { + reg = <6>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c4mux0ch7: i2c@7 { + reg = <7>; + #address-cells = <1>; + #size-cells = <0>; + }; + }; +}; + +// AMC +&i2c5 { + status = "okay"; +}; + +// MB +&i2c6 { + status = "okay"; + + // HPM FRU + eeprom@50 { + compatible = "atmel,24c256"; + reg = <0x50>; + }; +}; + +// SCM +&i2c7 { + status = "okay"; + + +}; + +// MB - PDB +&i2c8 { + status = "okay"; + + i2c-mux@72 { + compatible = "nxp,pca9546"; + reg = <0x72>; + #address-cells = <1>; + #size-cells = <0>; + i2c-mux-idle-disconnect; + + i2c8mux0ch0: i2c@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + + gpio@22 { + compatible = "nxp,pca9555"; + reg = <0x22>; + gpio-controller; + #gpio-cells = <2>; + + gpio-line-names = + "RPDB_FAN_FULL_SPEED_R_N", "RPDB_I2C_TEMP75_U8_ALERT_R_N", + "RPDB_I2C_TMP432_U29_ALERT_R_N", "RPDB_GLOBAL_WP", + "RPDB_FAN_CT_FAN_FAIL_R_N", "", + "", "", + "RPDB_ALERT_P50V_HSC2_R_N", "RPDB_ALERT_P50V_HSC3_R_N", + "RPDB_ALERT_P50V_HSC4_R_N", "RPDB_ALERT_P50V_STBY_R_N", + "RPDB_I2C_P12V_MB_VRM_ALERT_R_N", + "RPDB_I2C_P12V_STBY_VRM_ALERT_R_N", + "RPDB_PGD_P3V3_STBY_PWRGD_R", + "RPDB_P12V_STBY_VRM_PWRGD_BUF_R"; + }; + + gpio@24 { + compatible = "nxp,pca9555"; + reg = <0x24>; + gpio-controller; + #gpio-cells = <2>; + + gpio-line-names = + "RPDB_EAM2_PRSNT_MOS_N_R", "RPDB_EAM3_PRSNT_MOS_N_R", + "RPDB_PWRGD_P50V_HSC4_SYS_R", + "RPDB_PWRGD_P50V_STBY_SYS_BUF_R", + "RPDB_P50V_FAN1_R2_PG", "RPDB_P50V_FAN2_R2_PG", + "RPDB_P50V_FAN3_R2_PG", "RPDB_P50V_FAN4_R2_PG", + "", "RPDB_FAN1_PRSNT_N_R", + "", "RPDB_FAN2_PRSNT_N_R", + "RPDB_FAN3_PRSNT_N_R", "RPDB_FAN4_PRSNT_N_R", + "", ""; + }; + + // R-PDB FRU + eeprom@50 { + compatible = "atmel,24c128"; + reg = <0x50>; + }; + }; + i2c8mux0ch1: i2c@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + + gpio@22 { + compatible = "nxp,pca9555"; + reg = <0x22>; + gpio-controller; + #gpio-cells = <2>; + + gpio-line-names = + "LPDB_FAN_FULL_SPEED_R_N","LPDB_I2C_TEMP75_U8_ALERT_R_N", + "LPDB_I2C_TMP432_U29_ALERT_R_N","LPDB_GLOBAL_WP", + "LPDB_FAN_CT_FAN_FAIL_R_N","", + "","", + "LPDB_ALERT_P50V_HSC0_R_N","LPDB_ALERT_P50V_HSC1_R_N", + "LPDB_ALERT_P50V_HSC5_R_N","LPDB_I2C_P12V_SW_VRM_ALERT_R_N", + "LPDB_EAM0_PRSNT_MOS_N_R","LPDB_EAM1_PRSNT_MOS_N_R", + "LPDB_PWRGD_P50V_HSC5_SYS_R",""; + }; + + gpio@24 { + compatible = "nxp,pca9555"; + reg = <0x24>; + gpio-controller; + #gpio-cells = <2>; + + gpio-line-names = + "LPDB_P50V_FAN1_R2_PG","LPDB_P50V_FAN2_R2_PG", + "LPDB_P50V_FAN3_R2_PG","LPDB_P50V_FAN4_R2_PG", + "LPDB_P50V_FAN5_R2_PG","LPDB_FAN1_PRSNT_N_R", + "LPDB_FAN2_PRSNT_N_R","LPDB_FAN3_PRSNT_N_R", + "LPDB_FAN4_PRSNT_N_R","LPDB_FAN5_PRSNT_N_R", + "","", + "","", + "",""; + }; + + // L-PDB FRU + eeprom@50 { + compatible = "atmel,24c128"; + reg = <0x50>; + }; + }; + i2c8mux0ch2: i2c@2 { + reg = <2>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c8mux0ch3: i2c@3 { + reg = <3>; + #address-cells = <1>; + #size-cells = <0>; + }; + }; +}; + +// SCM +&i2c9 { + status = "okay"; + + // SCM FRU + eeprom@50 { + compatible = "atmel,24c128"; + reg = <0x50>; + }; + + // BSM FRU + eeprom@56 { + compatible = "atmel,24c64"; + reg = <0x56>; + }; +}; + +// R Bridge Board +&i2c10 { + status = "okay"; + + i2c-mux@71 { + compatible = "nxp,pca9548"; + reg = <0x71>; + #address-cells = <1>; + #size-cells = <0>; + i2c-mux-idle-disconnect; + + i2c10mux0ch0: i2c@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c10mux0ch1: i2c@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c10mux0ch2: i2c@2 { + reg = <2>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c10mux0ch3: i2c@3 { + reg = <3>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c10mux0ch4: i2c@4 { + reg = <4>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c10mux0ch5: i2c@5 { + reg = <5>; + #address-cells = <1>; + #size-cells = <0>; + + gpio@22 { + compatible = "nxp,pca9555"; + reg = <0x22>; + gpio-controller; + #gpio-cells = <2>; + + gpio-line-names = + "","", + "","RBB_CPLD_REFRESH_IN_PRGRS_R_L", + "RBB_EAM0_NIC_CBL_PRSNT_R_L","RBB_EAM1_NIC_CBL_PRSNT_R_L", + "RBB_AINIC_JTAG_MUX_R2_SEL","RBB_SPI_MUX0_R2_SEL", + "RBB_AINIC_PRSNT_R_L","RBB_AINIC_OE_R_N", + "RBB_AINIC_BOARD_R2_ID","RBB_RST_USB2_HUB_R_N", + "RBB_RST_FT4222_R_N","RBB_RST_MCP2210_R_N", + "",""; + }; + + // R Bridge Board FRU + eeprom@52 { + compatible = "atmel,24c256"; + reg = <0x52>; + }; + }; + i2c10mux0ch6: i2c@6 { + reg = <6>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c10mux0ch7: i2c@7 { + reg = <7>; + #address-cells = <1>; + #size-cells = <0>; + }; + }; +}; + +// L Bridge Board +&i2c11 { + status = "okay"; + + i2c-mux@71 { + compatible = "nxp,pca9548"; + reg = <0x71>; + #address-cells = <1>; + #size-cells = <0>; + i2c-mux-idle-disconnect; + + i2c11mux0ch0: i2c@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c11mux0ch1: i2c@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c11mux0ch2: i2c@2 { + reg = <2>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c11mux0ch3: i2c@3 { + reg = <3>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c11mux0ch4: i2c@4 { + reg = <4>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c11mux0ch5: i2c@5 { + reg = <5>; + #address-cells = <1>; + #size-cells = <0>; + + gpio@22 { + compatible = "nxp,pca9555"; + reg = <0x22>; + gpio-controller; + #gpio-cells = <2>; + + gpio-line-names = + "","", + "","LBB_CPLD_REFRESH_IN_PRGRS_R_L", + "LBB_EAM0_NIC_CBL_PRSNT_R_L","LBB_EAM1_NIC_CBL_PRSNT_R_L", + "LBB_AINIC_JTAG_MUX_R2_SEL","LBB_SPI_MUX0_R2_SEL", + "LBB_AINIC_PRSNT_R_L","LBB_AINIC_OE_R_N", + "LBB_AINIC_BOARD_R2_ID","LBB_RST_USB2_HUB_R_N", + "LBB_RST_FT4222_R_N","LBB_RST_MCP2210_R_N", + "",""; + }; + + // L Bridge Board FRU + eeprom@52 { + compatible = "atmel,24c256"; + reg = <0x52>; + }; + }; + i2c11mux0ch6: i2c@6 { + reg = <6>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c11mux0ch7: i2c@7 { + reg = <7>; + #address-cells = <1>; + #size-cells = <0>; + }; + }; +}; + +// Debug Card +&i2c12 { + status = "okay"; +}; + +// MB +&i2c13 { + status = "okay"; + + i2c-mux@70 { + compatible = "nxp,pca9548"; + reg = <0x70>; + #address-cells = <1>; + #size-cells = <0>; + i2c-mux-idle-disconnect; + + i2c13mux0ch0: i2c@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c13mux0ch1: i2c@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c13mux0ch2: i2c@2 { + reg = <2>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c13mux0ch3: i2c@3 { + reg = <3>; + #address-cells = <1>; + #size-cells = <0>; + + adc@1f { + compatible = "ti,adc128d818"; + reg = <0x1f>; + ti,mode = /bits/ 8 <1>; + }; + }; + i2c13mux0ch4: i2c@4 { + reg = <4>; + #address-cells = <1>; + #size-cells = <0>; + + // HPM BRD ID FRU + eeprom@51 { + compatible = "atmel,24c256"; + reg = <0x51>; + }; + }; + i2c13mux0ch5: i2c@5 { + reg = <5>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c13mux0ch6: i2c@6 { + reg = <6>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c13mux0ch7: i2c@7 { + reg = <7>; + #address-cells = <1>; + #size-cells = <0>; + }; + }; +}; + +// SCM +&i2c14 { + status = "okay"; +}; + +&i2c15 { + status = "okay"; +}; + +&lpc_ctrl { + status = "okay"; +}; + +&kcs2 { + aspeed,lpc-io-reg = <0xca8>; + status = "okay"; +}; + +&kcs3 { + aspeed,lpc-io-reg = <0xca2>; + status = "okay"; +}; + +&pinctrl { + pinctrl_ncsi3_default: ncsi3_default { + function = "RMII3"; + groups = "NCSI3"; + }; +}; + +&mac2 { + status = "okay"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_ncsi3_default>; + use-ncsi; +}; + +&sgpiom0 { + ngpios = <128>; + bus-frequency = <2000000>; + gpio-line-names = + /*in - out - in - out */ + /*A0-A3 line 0-7*/ + "","FM_CPU0_SYS_RESET_N", + "","CPU0_KBRST_N", + "","FM_CPU0_PROCHOT_trigger_N", + "","FM_CLR_CMOS_R_P0", + /*A4-A7 line 8-15*/ + "","Force_I3C_SEL", + "","SYSTEM_Force_Run_AC_Cycle", + "","", + "","", + /*B0-B3 line 16-23*/ + "Channel0_leakage_EAM3","FM_CPU_FPGA_JTAG_MUX_SEL", + "Channel1_leakage_EAM0","FM_SCM_JTAG_MUX_SEL", + "Channel2_leakage_Manifold1","FM_BRIDGE_JTAG_MUX_SEL", + "Channel3_leakage","FM_CPU0_NMI_SYNC_FLOOD_N", + /*B4-B7 line 24-31*/ + "Channel4_leakage_Manifold2","", + "Channel5_leakage_EAM1","", + "Channel6_leakage_CPU_DIMM","", + "Channel7_leakage_EAM2","", + /*C0-C3 line 32-39*/ + "RSVD_RMC_GPIO3","", + "LEAK_DETECT_RMC_N","", + "","", + "","", + /*C4-C7 line 40-47*/ + "","", + "","", + "","", + "","", + /*D0-D3 line 48-55*/ + "PWRGD_PDB_EAMHSC0_CPLD_PG_R","", + "PWRGD_PDB_EAMHSC1_CPLD_PG_R","", + "PWRGD_PDB_EAMHSC2_CPLD_PG_R","", + "PWRGD_PDB_EAMHSC3_CPLD_PG_R","", + /*D4-D7 line 56-63*/ + "AMC_BRD_PRSNT_CPLD_L","", + "","", + "","", + "","", + /*E0-E3 line 64-71*/ + "AMC_PDB_EAMHSC0_CPLD_EN_R","", + "AMC_PDB_EAMHSC1_CPLD_EN_R","", + "AMC_PDB_EAMHSC2_CPLD_EN_R","", + "AMC_PDB_EAMHSC3_CPLD_EN_R","", + /*E4-E7 line 72-79*/ + "","", + "","", + "","", + "","", + /*F0-F3 line 80-87*/ + "PWRGD_PVDDCR_CPU1_P0","SGPIO_READY", + "PWRGD_PVDDCR_CPU0_P0","", + "","", + "","", + /*F4-F7 line 88-95*/ + "","", + "","", + "","", + "","", + /*G0-G3 line 96-103*/ + "PWRGD_PVDDCR_SOC_P0","", + "PWRGD_PVDDIO_P0","", + "PWRGD_PVDDIO_MEM_S3_P0","", + "PWRGD_CHMP_CPU0_FPGA","", + /*G4-G7 line 104-111*/ + "PWRGD_CHIL_CPU0_FPGA","", + "PWRGD_CHEH_CPU0_FPGA","", + "PWRGD_CHAD_CPU0_FPGA","FM_BMC_READY_PLD", + "","", + /*H0-H3 line 112-119*/ + "PWRGD_P3V3","", + "P12V_DDR_IP_PWRGD_R","", + "P12V_DDR_AH_PWRGD_R","", + "PWRGD_P12V_VRM1_CPLD_PG_R","", + /*H4-H7 line 120-127*/ + "PWRGD_P12V_VRM0_CPLD_PG_R","", + "PWRGD_PDB_HSC4_CPLD_PG_R","", + "PWRGD_PVDD18_S5_P0_PG","", + "PWRGD_PVDD33_S5_P0_PG","", + /*I0-I3 line 128-135*/ + "EAM0_BRD_PRSNT_R_L","", + "EAM1_BRD_PRSNT_R_L","", + "EAM2_BRD_PRSNT_R_L","", + "EAM3_BRD_PRSNT_R_L","", + /*I4-I7 line 136-143*/ + "EAM0_CPU_MOD_PWR_GD_R","", + "EAM1_CPU_MOD_PWR_GD_R","", + "EAM2_CPU_MOD_PWR_GD_R","", + "EAM3_CPU_MOD_PWR_GD_R","", + /*J0-J3 line 144-151*/ + "PRSNT_L_BIRDGE_R","", + "PRSNT_R_BIRDGE_R","", + "BRIDGE_L_MAIN_PG_R","", + "BRIDGE_R_MAIN_PG_R","", + /*J4-J7 line 152-159*/ + "BRIDGE_L_STBY_PG_R","", + "BRIDGE_R_STBY_PG_R","", + "","", + "","", + /*K0-K3 line 160-167*/ + "ADC_I2C_ALERT_N","", + "TEMP_I2C_ALERT_R_L","", + "CPU0_VR_SMB_ALERT_CPLD_N","", + "COVER_INTRUDER_R_N","", + /*K4-K7 line 168-175*/ + "HANDLE_INTRUDER_CPLD_N","", + "IRQ_MCIO_CPLD_WAKE_R_N","", + "APML_CPU0_ALERT_R_N","", + "PDB_ALERT_R_N","", + /*L0-L3 line 176-183*/ + "CPU0_SP7R1","", + "CPU0_SP7R2","", + "CPU0_SP7R3","", + "CPU0_SP7R4","", + /*L4-L7 line 184-191*/ + "CPU0_CORETYPE0","", + "CPU0_CORETYPE1","", + "CPU0_CORETYPE2","", + "FM_BIOS_POST_CMPLT_R_N","", + /*M0-M3 line 192-199*/ + "EAM0_SMERR_CPLD_R_L","", + "EAM1_SMERR_CPLD_R_L","", + "EAM2_SMERR_CPLD_R_L","", + "EAM3_SMERR_CPLD_R_L","", + /*M4-M7 line 200-207*/ + "CPU0_SMERR_N_R","", + "CPU0_NV_SAVE_N_R","", + "PDB_PWR_LOSS_CPLD_N","", + "IRQ_BMC_SMI_ACTIVE_R_N","", + /*N0-N3 line 208-215*/ + "AMCROT_BMC_S5_RDY_R","", + "AMC_RDY_R","", + "AMC_STBY_PGOOD_R","", + "CPU_AMC_SLP_S5_R_L","", + /*N4-N7 line 216-223*/ + "AMC_CPU_EAMPG_R","", + "","", + "","", + "","", + /*O0-O3 line 224-231*/ + "HPM_PWR_FAIL","Port80_b0", + "FM_DIMM_IP_FAIL","Port80_b1", + "FM_DIMM_AH_FAIL","Port80_b2", + "HPM_AMC_THERMTRIP_R_L","Port80_b3", + /*O4-O7 line 232-239*/ + "FM_CPU0_THERMTRIP_N","Port80_b4", + "PVDDCR_SOC_P0_OCP_L","Port80_b5", + "CPLD_SGPIO_RDY","Port80_b6", + "","Port80_b7", + /*P0-P3 line 240-247*/ + "CPU0_SLP_S5_N_R","NFC_VEN", + "CPU0_SLP_S3_N_R","", + "FM_CPU0_PWRGD","", + "PWRGD_RMC","", + /*P4-P7 line 248-255*/ + "FM_RST_CPU0_RESET_N","", + "FM_PWRGD_CPU0_PWROK","", + "wS5_PWR_Ready","", + "wS0_ON_N","PWRGD_P1V0_AUX"; + status = "okay"; +}; + +// BIOS Flash +&spi2 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_spi2_default>; + status = "okay"; + reg = <0x1e631000 0xc4>, <0x50000000 0x8000000>; + + flash@0 { + compatible = "jedec,spi-nor"; + label = "pnor"; + spi-max-frequency = <12000000>; + spi-tx-bus-width = <2>; + spi-rx-bus-width = <2>; + status = "okay"; + }; +}; + +// HOST BIOS Debug +&uart1 { + status = "okay"; +}; + +&uart3 { + status = "okay"; +}; + +&uart4 { + status = "okay"; +}; + +// BMC Debug Console +&uart5 { + status = "okay"; +}; + +&uart_routing { + status = "okay"; +}; + +&wdt1 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_wdtrst1_default>; + aspeed,reset-type = "soc"; + aspeed,external-signal; + aspeed,ext-push-pull; + aspeed,ext-active-high; + aspeed,ext-pulse-duration = <256>; + status = "okay"; +}; + +&vhub { + status = "okay"; + pinctrl-names = "default"; +}; + +&video { + status = "okay"; + memory-region = <&video_engine_memory>; +}; + +&gfx { + status = "okay"; + memory-region = <&gfx_memory>; +}; -- 2.34.1 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH v6 2/2] ARM: dts: aspeed: Add Device Tree for Facebook Anacapa BMC 2025-11-12 21:12 ` [PATCH v6 2/2] ARM: dts: aspeed: Add Device Tree " Peter Shen @ 2025-11-14 4:28 ` Andrew Jeffery 0 siblings, 0 replies; 11+ messages in thread From: Andrew Jeffery @ 2025-11-14 4:28 UTC (permalink / raw) To: Peter Shen Cc: Joel Stanley, Rob Herring, Krzysztof Kozlowski, Conor Dooley, devicetree, linux-arm-kernel, linux-aspeed, linux-kernel, peter.shen, Krzysztof Kozlowski On Thu, 2025-11-13 at 05:12 +0800, Peter Shen wrote: > Add the initial device tree source file for the Facebook Anacapa BMC > platform, based on the Aspeed AST2600 SoC. > > This device tree configures the platform-specific peripherals and > aliases for OpenBMC usage. > > Signed-off-by: Peter Shen <sjg168@gmail.com> > --- > arch/arm/boot/dts/aspeed/Makefile | 1 + > .../aspeed/aspeed-bmc-facebook-anacapa.dts | 1223 +++++++++++++++++ > 2 files changed, 1224 insertions(+) > create mode 100644 arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-anacapa.dts > > diff --git a/arch/arm/boot/dts/aspeed/Makefile b/arch/arm/boot/dts/aspeed/Makefile > index 0f0b5b707654..e1b2fc7b8c08 100644 > --- a/arch/arm/boot/dts/aspeed/Makefile > +++ b/arch/arm/boot/dts/aspeed/Makefile > @@ -17,6 +17,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \ > aspeed-bmc-asus-x4tf.dtb \ > aspeed-bmc-bytedance-g220a.dtb \ > aspeed-bmc-delta-ahe50dc.dtb \ > + aspeed-bmc-facebook-anacapa.dtb \ > aspeed-bmc-facebook-bletchley.dtb \ > aspeed-bmc-facebook-catalina.dtb \ > aspeed-bmc-facebook-clemente.dtb \ > diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-anacapa.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-anacapa.dts > new file mode 100644 > index 000000000000..e55069a199c8 > --- /dev/null > +++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-anacapa.dts > @@ -0,0 +1,1223 @@ > +// SPDX-License-Identifier: GPL-2.0-or-later > + > +/dts-v1/; > +#include "aspeed-g6.dtsi" > +#include <dt-bindings/gpio/aspeed-gpio.h> > +#include <dt-bindings/i2c/i2c.h> > + > +/ { > + model = "Facebook Anacapa BMC"; > + compatible = "facebook,anacapa-bmc", "aspeed,ast2600"; > + > + aliases { > + serial0 = &uart1; > + serial2 = &uart3; > + serial3 = &uart4; > + serial4 = &uart5; > + i2c16 = &i2c0mux0ch0; > + i2c17 = &i2c0mux0ch1; > + i2c18 = &i2c0mux0ch2; > + i2c19 = &i2c0mux0ch3; > + i2c20 = &i2c1mux0ch0; > + i2c21 = &i2c1mux0ch1; > + i2c22 = &i2c1mux0ch2; > + i2c23 = &i2c1mux0ch3; > + i2c24 = &i2c4mux0ch0; > + i2c25 = &i2c4mux0ch1; > + i2c26 = &i2c4mux0ch2; > + i2c27 = &i2c4mux0ch3; > + i2c28 = &i2c4mux0ch4; > + i2c29 = &i2c4mux0ch5; > + i2c30 = &i2c4mux0ch6; > + i2c31 = &i2c4mux0ch7; > + i2c32 = &i2c8mux0ch0; > + i2c33 = &i2c8mux0ch1; > + i2c34 = &i2c8mux0ch2; > + i2c35 = &i2c8mux0ch3; > + i2c36 = &i2c10mux0ch0; > + i2c37 = &i2c10mux0ch1; > + i2c38 = &i2c10mux0ch2; > + i2c39 = &i2c10mux0ch3; > + i2c40 = &i2c10mux0ch4; > + i2c41 = &i2c10mux0ch5; > + i2c42 = &i2c10mux0ch6; > + i2c43 = &i2c10mux0ch7; > + i2c44 = &i2c11mux0ch0; > + i2c45 = &i2c11mux0ch1; > + i2c46 = &i2c11mux0ch2; > + i2c47 = &i2c11mux0ch3; > + i2c48 = &i2c11mux0ch4; > + i2c49 = &i2c11mux0ch5; > + i2c50 = &i2c11mux0ch6; > + i2c51 = &i2c11mux0ch7; > + i2c52 = &i2c13mux0ch0; > + i2c53 = &i2c13mux0ch1; > + i2c54 = &i2c13mux0ch2; > + i2c55 = &i2c13mux0ch3; > + i2c56 = &i2c13mux0ch4; > + i2c57 = &i2c13mux0ch5; > + i2c58 = &i2c13mux0ch6; > + i2c59 = &i2c13mux0ch7; > + }; > + > + chosen { > + stdout-path = "serial4:57600n8"; > + }; > + > + iio-hwmon { > + compatible = "iio-hwmon"; > + io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>, <&adc0 3>, > + <&adc0 4>, <&adc0 5>, <&adc0 6>, <&adc0 7>, > + <&adc1 2>; > + }; > + > + leds { > + compatible = "gpio-leds"; > + > + led-0 { > + label = "bmc_heartbeat_amber"; > + gpios = <&gpio0 ASPEED_GPIO(P, 7) GPIO_ACTIVE_LOW>; > + linux,default-trigger = "heartbeat"; > + }; > + > + led-1 { > + label = "fp_id_amber"; > + default-state = "off"; > + gpios = <&gpio0 ASPEED_GPIO(B, 5) GPIO_ACTIVE_HIGH>; > + }; > + > + led-2 { > + label = "power_blue"; > + default-state = "off"; > + gpios = <&gpio0 ASPEED_GPIO(P, 4) GPIO_ACTIVE_HIGH>; > + }; > + }; > + > + memory@80000000 { > + device_type = "memory"; > + reg = <0x80000000 0x80000000>; > + }; > + > + reserved-memory { > + #address-cells = <1>; > + #size-cells = <1>; > + ranges; > + > + video_engine_memory: video { > + size = <0x02c00000>; > + alignment = <0x00100000>; > + compatible = "shared-dma-pool"; > + reusable; > + }; > + > + gfx_memory: framebuffer { > + size = <0x01000000>; > + alignment = <0x01000000>; > + compatible = "shared-dma-pool"; > + reusable; > + }; > + > + pcc_memory: pccbuffer { Drop this, it's unused? > + no-map; > + reg = <0xE0000000 0x00001000>; /* 4K */ > + }; > + }; > + > + p3v3_bmc_aux: regulator-p3v3-bmc-aux { > + compatible = "regulator-fixed"; > + regulator-name = "p3v3_bmc_aux"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + }; > + > + spi_gpio: spi { > + compatible = "spi-gpio"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + sck-gpios = <&gpio0 ASPEED_GPIO(Z, 3) GPIO_ACTIVE_HIGH>; > + mosi-gpios = <&gpio0 ASPEED_GPIO(Z, 4) GPIO_ACTIVE_HIGH>; > + miso-gpios = <&gpio0 ASPEED_GPIO(Z, 5) GPIO_ACTIVE_HIGH>; > + num-chipselects = <1>; Bit of a nitpick, but I'd prefer all the relevant -gpios properties be grouped together (i.e. put num-chipselects below cs-gpios). > + cs-gpios = <&gpio0 ASPEED_GPIO(Z, 0) GPIO_ACTIVE_LOW>; > + status = "okay"; > + > + tpm@0 { > + compatible = "infineon,slb9670", "tcg,tpm_tis-spi"; > + spi-max-frequency = <33000000>; > + reg = <0>; > + }; > + }; > +}; > + > +&adc0 { > + aspeed,int-vref-microvolt = <2500000>; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default > + &pinctrl_adc2_default &pinctrl_adc3_default > + &pinctrl_adc4_default &pinctrl_adc5_default > + &pinctrl_adc6_default &pinctrl_adc7_default>; > + status = "okay"; > +}; > + > +&adc1 { > + aspeed,int-vref-microvolt = <2500000>; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_adc10_default>; > + status = "okay"; > +}; > + > +&ehci1 { > + status = "okay"; > +}; > + > +&uhci { > + status = "okay"; > +}; > + > +&fmc { > + status = "okay"; > + > + flash@0 { > + status = "okay"; > + m25p,fast-read; > + label = "bmc"; > + spi-max-frequency = <50000000>; > +#include "openbmc-flash-layout-128.dtsi" > + }; > + > + flash@1 { > + status = "okay"; > + m25p,fast-read; > + label = "alt-bmc"; > + spi-max-frequency = <50000000>; > + }; > +}; > + > +&gpio0 { > + gpio-line-names = > + > + /* > + * A0-A7: "", "", "", "", "", "", "", "" > + */ > + "SMB_BMC_MM11_SCL", "SMB_BMC_MM11_SDA", > + "SMB_BMC_MM12_SCL", "SMB_BMC_MM12_SDA", > + "SMB_BMC_MM13_SCL", "SMB_BMC_MM13_SDA", > + "SMB_BMC_MM14_SCL", "SMB_BMC_MM14_SDA", > + > + /* > + * B0-B7: "rtc-battery-voltage-read-enable", "", "", "BMC_READY", "", > + * "led-identify", "", "" > + */ > + "BATTERY_DETECT","BMC_GPIOB1", > + "BMC_I2C1_FPGA_ALERT","BMC_READY", > + "IOEXP_INT_3V3","FM_ID_LED", > + "UART_BMC_4_TXD","UART_BMC_4_RXD", Why are you naming GPIOs after other pinctrl functions on the pin? That seems odd? There seems to be a fair bit of this going on (below) too. > + > + > + /* > + * C0-C7: "", "", "", "", "", "", "", "" > + */ > + "BMC_GPIOC0", "NCSI0_SCM_HPM_TX_EN", > + "NCSI0_SCM_HPM_D0", "NCSI0_SCM_HPM_D1", > + "PMBUS_REQ_N", "PSU_FW_UPDATE_REQ_N", > + "NCSI0_HPM_SCM_CLK", "BMC_I2C_SSIF_ALERT", > + > + /* > + * D0-D7: "", "", "", "", "", "", "", "" > + */ > + "NCSI0_HPM_SCM_D0", "NCSI0_HPM_SCM_D1", > + "NCSI0_HPM_SCM_CRS_DV", "NCSI0_RXER", > + "BMC_GPIOD4", "BMC_GPIOD5", > + "BMC_GPIOD6", "BMC_GPIOD7", > + > + /* > + * E0-E7: "", "", "", "", "", "", "", "" > + */ > + "BMC_GPIOE0", "BMC_GPIOE1", > + "BMC_GPIOE1", "PD_RGMII4_RXCTL", > + "BMC_GPIOE1", "BMC_GPIOE1", > + "BMC_GPIOE1", "NCSI1_RXER", > + > + /* > + * F0-F7: "", "", "", "", "", "", "", "" > + */ > + "BMC_EMMC_CLK", "BMC_EMMC_CMD", > + "BMC_EMMC_DT0", "BMC_EMMC_DT1", > + "BMC_EMMC_DT2", "BMC_EMMC_DT3", > + "BMC_EMMC_CD_N", "BMC_EMMC_WP_N", > + > + /* > + * G0-G7: "FM_MUX1_SEL_R", "", "", "", "", "", "", "" > + */ > + "FM_MUX1_SEL", "BMC_GPIOG1", > + "BMC_EMMC_DT4", "BMC_EMMC_DT5", > + "BMC_EMMC_DT6", "BMC_EMMC_DT7", > + "FM_DEBUG_PORT_PRSNT_N", "FM_BMC_DBP_PRESENT_N", > + > + /* > + * H0-H7: "", "", "", "", "", "", "", "" > + */ > + "SGPIO_CLK_1", "SGPIO_LD_1", > + "SGPIO_DO_1", "SGPIO_DI_1", > + "SMB_BMC_MM15_SCL", "SMB_BMC_MM15_SDA", > + "SMB_BMC_MM16_SCL", "SMB_BMC_MM16_SDA", > + > + /* > + * I0-I7: "", "", "", "", "", "", "", "" > + */ > + "JTAG_1_BMC_TRST", "JTAG_1_BMC_TCK", > + "JTAG_1_BMC_TMS", "JTAG_1_BMC_TDI", > + "JTAG_1_BMC_TDO", "FLASH_WP_STATUS", > + "BMC_JTAG_MUX_SEL", "BMC_GPIOI7", > + > + /* > + * J0-J7: "", "", "", "", "", "", "", "" > + */ > + "SMB_BMC_MM1_SCL", "SMB_BMC_MM1_SDA", > + "SMB_BMC_MM2_SCL", "SMB_BMC_MM2_SDA", > + "I3C_5_HV18_SCL", "I3C_5_HV18_SDA", > + "I3C_6_HV18_SCL", "I3C_6_HV18_SDA", > + > + /* > + * K0-K7: "", "", "", "", "", "", "", "" > + */ > + "SMB_BMC_MM5_SCL", "SMB_BMC_MM5_SDA", > + "SMB_BMC_MM6_SCL", "SMB_BMC_MM6_SDA", > + "SMB_BMC_MM7_SCL", "SMB_BMC_MM7_SDA", > + "SMB_BMC_MM8_SCL", "SMB_BMC_MM8_SDA", > + > + /* > + * L0-L7: "", "", "", "", "", "", "", "" > + */ > + "SMB_BMC_MM9_SCL", "SMB_BMC_MM9_SDA", > + "SMB_BMC_MM10_SCL", "SMB_BMC_MM10_SDA", > + "UART_BMC_3_TXD", "UART_BMC_3_RXD", > + "V_VGAHS", "V_VGAVS", > + > + /* > + * M0-M7: "", "", "", "", "", "", "", "" > + */ > + "PCIE_EP_RST_EN", "BMC_FRU_WP", > + "SCM_HPM_STBY_RST_N", "SCM_HPM_STBY_EN", > + "STBY_POWER_PG_3V3", "TH500_SHDN_OK", > + "UART_BMC_1_TXD", "UART_BMC_1_RXD", > + > + /* > + * N0-N7: "led-postcode-0", "led-postcode-1", "led-postcode-2", "led-postcode-3", > + * "led-postcode-4", "led-postcode-5", "led-postcode-6", "led-postcode-7" > + */ > + "LED_POSTCODE_0", "LED_POSTCODE_1", > + "LED_POSTCODE_2", "LED_POSTCODE_3", > + "LED_POSTCODE_4", "LED_POSTCODE_5", > + "LED_POSTCODE_6", "LED_POSTCODE_7", > + > + /* > + * O0-O7: "", "", "", "", "", "", "", "" > + */ > + "RUN_POWER_PG", "PWR_BRAKE", > + "CHASSIS_AC_LOSS", "BSM_PRSNT_N", > + "PSU_SMB_ALERT", "FM_TPM_PRSNT_0_N", > + "PSU_FW_UPDATING_N", "BMC_GPIOO7", > + > + /* > + * P0-P7: "power-button", "", "reset-button", "", "led-power", "", "", "" > + */ > + "PWR_BTN_BMC_BUF_N", "IPEX_CABLE_PRSNT", > + "ID_RST_BTN_BMC_N", "RST_BMC_RSTBTN_OUT_N", > + "PWR_LED", "RUN_POWER_EN", > + "SHDN_FORCE", "BMC_HEARTBEAT_N", > + > + /* > + * Q0-Q7: "", "", "", "", "", "", "", "" > + */ > + "IRQ_PCH_TPM_SPI_LV3_N", "USB_OC0_REAR_N", > + "UART_MUX_SEL", "I2C_MUX_RESET", > + "RSVD_NV_PLT_DETECT", "SPI_TPM_INT", > + "CPU_JTAG_MUX_SELECT", "THERM_BB_OVERT", > + > + /* > + * R0-R7: "", "", "", "", "", "", "", "" > + */ > + "THERM_BB_WARN", "SPI_BMC_FPGA_INT", > + "CPU_BOOT_DONE", "PMBUS_GNT", > + "CHASSIS_PWR_BRK", "PCIE_WAKE", > + "PDB_THERM_OVERT", "SHDN_REQ", > + > + /* > + * S0-S7: "", "", "power-host-control", "", "", "", "", "" > + */ > + "MDC1_BMC", "MDIO1_BMC", > + "SYS_BMC_PWRBTN_N", "FM_TPM_PRSNT_1_N", > + "FM_BMC_DEBUG_SW_N", "UID_LED_N", > + "SYS_FAULT_LED_N", "RUN_POWER_FAULT", > + > + /* > + * T0-T7: "", "", "", "", "", "", "", "" > + */ > + "", "", "", "", "", "", "", "", > + > + /* > + * U0-U7: "", "", "", "", "", "", "", "" > + */ > + "", "", "", "", "", "", "", "", > + > + /* > + * V0-V7: "", "", "", "", "", "", "", "" > + */ > + "L2_RST_REQ_OUT", "L0L1_RST_REQ_OUT", > + "BMC_ID_BEEP_SEL", "BMC_I2C0_FPGA_ALERT", > + "SMB_BMC_TMP_ALERT", "PWR_LED_N", > + "SYS_RST_OUT", "IRQ_TPM_SPI_N", > + > + /* > + * W0-W7: "", "", "", "", "", "", "", "" > + */ > + "ESPI_LPC_D0_IO0", "ESPI_LPC_D1_IO1", > + "ESPI_LPC_D2_IO2", "ESPI_LPC_D3_IO3", > + "ESPI_HOST_LPC_BMC_CLK", > + "ESPI_HOST_LPC_BMC_LFRAME_N", > + "IRQ_ESPI_LPC_SERIRQ_ALERT0_N", > + "RST_ESPI_LPC_BMC_N", > + > + /* > + * X0-X7: "", "", "", "", "", "", "", "" > + */ > + "BMC_GPIOX0", "BMC_GPIOX1", > + "BMC_GPIOX2", "SPI_BMC_OOB_0_CLK", > + "SPI_BMC_OOB_0_IO0", "SPI_BMC_OOB_0_IO1", > + "SPI_BMC_OOB_0_IO2", "SPI_BMC_OOB_0_IO3", > + > + /* > + * Y0-Y7: "", "", "", "", "", "", "", "" > + */ > + "RST_WDTRST_PLD_N", "RST_BMC_SELF_HW", > + "FM_FLASH_LATCH_N", "BMC_EMMC_RST_N", > + "BMC_GPIOY4", "BMC_GPIOY5", > + "PU_BMC_FWSPIABR_N", "PU_FWSPIWP_N", > + > + /* > + * Z0-Z7: "", "", "", "", "", "", "", "" > + */ > + "SPI_BMC_TPM_CS2_N", "PU_SPI1ABR", > + "PU_SPI1WP_N", "SPI_BMC_TPM_CLK", > + "SPI_BMC_TPM_MOSI", "SPI_BMC_TPM_MISO", > + "BMC_GPIOZ6", "BMC_GPIOZ7", > +}; > + > +&gpio1 { > + gpio-line-names = > + /* > + * 18A0-18A7: "", "", "", "", "", "", "", "" > + */ > + "RGMII1TXCK", "RGMII1TXCTL", > + "RGMII1TXD0", "RGMII1TXD1", > + "RGMII1TXD2", "RGMII1TXD3", > + "RGMII1RXCK", "RGMII1RXCTL", > + > + /* > + * 18B0-18B7: "", "", "", "", "FM_BOARD_BMC_REV_ID0", "FM_BOARD_BMC_REV_ID1", > + * "FM_BOARD_BMC_REV_ID2", "" > + */ > + "RGMII1RXD0", "RGMII1RXD1", > + "RGMII1RXD2", "RGMII1RXD3", > + "FM_BOARD_BMC_REV_ID0", "FM_BOARD_BMC_REV_ID1", > + "FM_BOARD_BMC_REV_ID2", "BMC_GPIO18B7", > + > + /* > + * 18C0-18C7: "SPI_BMC_BIOS_ROM_IRQ0_R_N", "", "", "", "", "", "", "" > + */ > + "BMC_GPIO18C0", "BMC_GPIO18C1", > + "SPI_BMC_BIOS_ROM_IRQ0_N", "BMC_GPIO18C3", > + "BMC_GPIO18C4", "BMC_GPIO18C5", > + "BMC_GPIO18C6", "BMC_GPIO18C7", > + > + /* > + * 18D0-18D7: "", "", "", "", "", "", "", "" > + */ > + "BMC_GPIO18D0", "BMC_GPIO18D1", > + "BMC_GPIO18D2", "BMC_GPIO18D3", > + "BMC_GPIO18D4", "BMC_GPIO18D5", > + "BMC_GPIO18D6", "BMC_GPIO18D7", > + > + /* > + * 18E0-18E3: "FM_BMC_PROT_LS_EN", "AC_PWR_BMC_BTN_R_N", "", "" > + */ > + "FM_BMC_PROT_LS_EN", "AC_PWR_BMC_BTN_N", > + "BMC_GPIO18E2", "BMC_GPIO18E3" > +}; > + > +// L Bridge Board > +&i2c0 { > + status = "okay"; > + > + i2c-mux@70 { > + compatible = "nxp,pca9546"; > + reg = <0x70>; > + #address-cells = <1>; > + #size-cells = <0>; > + i2c-mux-idle-disconnect; > + > + i2c0mux0ch0: i2c@0 { > + reg = <0>; > + #address-cells = <1>; > + #size-cells = <0>; > + }; > + i2c0mux0ch1: i2c@1 { > + reg = <1>; > + #address-cells = <1>; > + #size-cells = <0>; > + }; > + i2c0mux0ch2: i2c@2 { > + reg = <2>; > + #address-cells = <1>; > + #size-cells = <0>; > + }; > + i2c0mux0ch3: i2c@3 { > + reg = <3>; > + #address-cells = <1>; > + #size-cells = <0>; > + }; > + }; > +}; > + *snip* > + > +&pinctrl { > + pinctrl_ncsi3_default: ncsi3_default { > + function = "RMII3"; > + groups = "NCSI3"; > + }; Can you rather add this to the DTSI so other platforms can make use of it? > +}; > + > +&mac2 { > + status = "okay"; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_ncsi3_default>; > + use-ncsi; > +}; > + > +&sgpiom0 { > + ngpios = <128>; > + bus-frequency = <2000000>; > + gpio-line-names = > + /*in - out - in - out */ > + /*A0-A3 line 0-7*/ > + "","FM_CPU0_SYS_RESET_N", > + "","CPU0_KBRST_N", > + "","FM_CPU0_PROCHOT_trigger_N", What drives the choice of mixed case names throughout? Andrew > + "","FM_CLR_CMOS_R_P0", > + /*A4-A7 line 8-15*/ > + "","Force_I3C_SEL", > + "","SYSTEM_Force_Run_AC_Cycle", > + "","", > + "","", > + /*B0-B3 line 16-23*/ > + "Channel0_leakage_EAM3","FM_CPU_FPGA_JTAG_MUX_SEL", > + "Channel1_leakage_EAM0","FM_SCM_JTAG_MUX_SEL", > + "Channel2_leakage_Manifold1","FM_BRIDGE_JTAG_MUX_SEL", > + "Channel3_leakage","FM_CPU0_NMI_SYNC_FLOOD_N", > + /*B4-B7 line 24-31*/ > + "Channel4_leakage_Manifold2","", > + "Channel5_leakage_EAM1","", > + "Channel6_leakage_CPU_DIMM","", > + "Channel7_leakage_EAM2","", > + /*C0-C3 line 32-39*/ > + "RSVD_RMC_GPIO3","", > + "LEAK_DETECT_RMC_N","", > + "","", > + "","", > + /*C4-C7 line 40-47*/ > + "","", > + "","", > + "","", > + "","", > + /*D0-D3 line 48-55*/ > + "PWRGD_PDB_EAMHSC0_CPLD_PG_R","", > + "PWRGD_PDB_EAMHSC1_CPLD_PG_R","", > + "PWRGD_PDB_EAMHSC2_CPLD_PG_R","", > + "PWRGD_PDB_EAMHSC3_CPLD_PG_R","", > + /*D4-D7 line 56-63*/ > + "AMC_BRD_PRSNT_CPLD_L","", > + "","", > + "","", > + "","", > + /*E0-E3 line 64-71*/ > + "AMC_PDB_EAMHSC0_CPLD_EN_R","", > + "AMC_PDB_EAMHSC1_CPLD_EN_R","", > + "AMC_PDB_EAMHSC2_CPLD_EN_R","", > + "AMC_PDB_EAMHSC3_CPLD_EN_R","", > + /*E4-E7 line 72-79*/ > + "","", > + "","", > + "","", > + "","", > + /*F0-F3 line 80-87*/ > + "PWRGD_PVDDCR_CPU1_P0","SGPIO_READY", > + "PWRGD_PVDDCR_CPU0_P0","", > + "","", > + "","", > + /*F4-F7 line 88-95*/ > + "","", > + "","", > + "","", > + "","", > + /*G0-G3 line 96-103*/ > + "PWRGD_PVDDCR_SOC_P0","", > + "PWRGD_PVDDIO_P0","", > + "PWRGD_PVDDIO_MEM_S3_P0","", > + "PWRGD_CHMP_CPU0_FPGA","", > + /*G4-G7 line 104-111*/ > + "PWRGD_CHIL_CPU0_FPGA","", > + "PWRGD_CHEH_CPU0_FPGA","", > + "PWRGD_CHAD_CPU0_FPGA","FM_BMC_READY_PLD", > + "","", > + /*H0-H3 line 112-119*/ > + "PWRGD_P3V3","", > + "P12V_DDR_IP_PWRGD_R","", > + "P12V_DDR_AH_PWRGD_R","", > + "PWRGD_P12V_VRM1_CPLD_PG_R","", > + /*H4-H7 line 120-127*/ > + "PWRGD_P12V_VRM0_CPLD_PG_R","", > + "PWRGD_PDB_HSC4_CPLD_PG_R","", > + "PWRGD_PVDD18_S5_P0_PG","", > + "PWRGD_PVDD33_S5_P0_PG","", > + /*I0-I3 line 128-135*/ > + "EAM0_BRD_PRSNT_R_L","", > + "EAM1_BRD_PRSNT_R_L","", > + "EAM2_BRD_PRSNT_R_L","", > + "EAM3_BRD_PRSNT_R_L","", > + /*I4-I7 line 136-143*/ > + "EAM0_CPU_MOD_PWR_GD_R","", > + "EAM1_CPU_MOD_PWR_GD_R","", > + "EAM2_CPU_MOD_PWR_GD_R","", > + "EAM3_CPU_MOD_PWR_GD_R","", > + /*J0-J3 line 144-151*/ > + "PRSNT_L_BIRDGE_R","", > + "PRSNT_R_BIRDGE_R","", > + "BRIDGE_L_MAIN_PG_R","", > + "BRIDGE_R_MAIN_PG_R","", > + /*J4-J7 line 152-159*/ > + "BRIDGE_L_STBY_PG_R","", > + "BRIDGE_R_STBY_PG_R","", > + "","", > + "","", > + /*K0-K3 line 160-167*/ > + "ADC_I2C_ALERT_N","", > + "TEMP_I2C_ALERT_R_L","", > + "CPU0_VR_SMB_ALERT_CPLD_N","", > + "COVER_INTRUDER_R_N","", > + /*K4-K7 line 168-175*/ > + "HANDLE_INTRUDER_CPLD_N","", > + "IRQ_MCIO_CPLD_WAKE_R_N","", > + "APML_CPU0_ALERT_R_N","", > + "PDB_ALERT_R_N","", > + /*L0-L3 line 176-183*/ > + "CPU0_SP7R1","", > + "CPU0_SP7R2","", > + "CPU0_SP7R3","", > + "CPU0_SP7R4","", > + /*L4-L7 line 184-191*/ > + "CPU0_CORETYPE0","", > + "CPU0_CORETYPE1","", > + "CPU0_CORETYPE2","", > + "FM_BIOS_POST_CMPLT_R_N","", > + /*M0-M3 line 192-199*/ > + "EAM0_SMERR_CPLD_R_L","", > + "EAM1_SMERR_CPLD_R_L","", > + "EAM2_SMERR_CPLD_R_L","", > + "EAM3_SMERR_CPLD_R_L","", > + /*M4-M7 line 200-207*/ > + "CPU0_SMERR_N_R","", > + "CPU0_NV_SAVE_N_R","", > + "PDB_PWR_LOSS_CPLD_N","", > + "IRQ_BMC_SMI_ACTIVE_R_N","", > + /*N0-N3 line 208-215*/ > + "AMCROT_BMC_S5_RDY_R","", > + "AMC_RDY_R","", > + "AMC_STBY_PGOOD_R","", > + "CPU_AMC_SLP_S5_R_L","", > + /*N4-N7 line 216-223*/ > + "AMC_CPU_EAMPG_R","", > + "","", > + "","", > + "","", > + /*O0-O3 line 224-231*/ > + "HPM_PWR_FAIL","Port80_b0", > + "FM_DIMM_IP_FAIL","Port80_b1", > + "FM_DIMM_AH_FAIL","Port80_b2", > + "HPM_AMC_THERMTRIP_R_L","Port80_b3", > + /*O4-O7 line 232-239*/ > + "FM_CPU0_THERMTRIP_N","Port80_b4", > + "PVDDCR_SOC_P0_OCP_L","Port80_b5", > + "CPLD_SGPIO_RDY","Port80_b6", > + "","Port80_b7", > + /*P0-P3 line 240-247*/ > + "CPU0_SLP_S5_N_R","NFC_VEN", > + "CPU0_SLP_S3_N_R","", > + "FM_CPU0_PWRGD","", > + "PWRGD_RMC","", > + /*P4-P7 line 248-255*/ > + "FM_RST_CPU0_RESET_N","", > + "FM_PWRGD_CPU0_PWROK","", > + "wS5_PWR_Ready","", > + "wS0_ON_N","PWRGD_P1V0_AUX"; > + status = "okay"; > +}; > + ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v6 0/2] ARM: dts: aspeed: Add Device Tree for Facebook Anacapa BMC 2025-11-12 21:12 [PATCH v6 0/2] ARM: dts: aspeed: Add Device Tree for Facebook Anacapa BMC Peter Shen 2025-11-12 21:12 ` [PATCH v6 1/2] dt-bindings: arm: aspeed: Add compatible " Peter Shen 2025-11-12 21:12 ` [PATCH v6 2/2] ARM: dts: aspeed: Add Device Tree " Peter Shen @ 2025-11-14 4:30 ` Andrew Jeffery 2025-11-18 4:10 ` [PATCH v7 " Peter Shen 3 siblings, 0 replies; 11+ messages in thread From: Andrew Jeffery @ 2025-11-14 4:30 UTC (permalink / raw) To: Peter Shen Cc: Joel Stanley, Rob Herring, Krzysztof Kozlowski, Conor Dooley, devicetree, linux-arm-kernel, linux-aspeed, linux-kernel, peter.shen, Krzysztof Kozlowski On Thu, 2025-11-13 at 05:12 +0800, Peter Shen wrote: > This patch series adds the device tree binding and the initial device tree > source file for the Facebook Anacapa BMC, which utilizes the Aspeed AST2600 > SoC. > > The patches configure the necessary platform peripherals and aliases for > OpenBMC usage. > > --- > Changes in v6: > - Rebased onto the latest upstream kernel (v6.18-rc5+) to minimize potential merge conflicts. > - Restarted the patch series submission as a **NEW THREAD** to fix the incorrect threading/In-Reply-To usage in v5, as advised by the maintainer. > - The email sender address (From:) is now corrected to fully match the Signed-off-by: and Author: address (sjg168@gmail.com), fixing the DCO mismatch issue reported against v3/v4. > - Corrected all previous style issues: fixed block comment styles, line length issues, and removed un-documented/unused device tree nodes (amd,helios_cpld and eeprom@53). I recommend using b4 to manage your patch series. Using `b4 send` automatically tracks your series submission and adds links to prior versions to your cover letter. This makes it easier for us to track down feedback and changes. Andrew ^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH v7 0/2] ARM: dts: aspeed: Add Device Tree for Facebook Anacapa BMC 2025-11-12 21:12 [PATCH v6 0/2] ARM: dts: aspeed: Add Device Tree for Facebook Anacapa BMC Peter Shen ` (2 preceding siblings ...) 2025-11-14 4:30 ` [PATCH v6 0/2] " Andrew Jeffery @ 2025-11-18 4:10 ` Peter Shen 2025-11-18 4:10 ` [PATCH v7 1/2] dt-bindings: arm: aspeed: Add compatible " Peter Shen 2025-11-18 4:10 ` [PATCH v7 2/2] ARM: dts: aspeed: Add Device Tree " Peter Shen 3 siblings, 2 replies; 11+ messages in thread From: Peter Shen @ 2025-11-18 4:10 UTC (permalink / raw) To: devicetree Cc: linux-arm-kernel, linux-aspeed, linux-kernel, Andrew Jeffery, Joel Stanley, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Krzysztof Kozlowski, peter.shen, Peter Shen This patch series introduces the initial Device Tree support for the Facebook Anacapa BMC platform, which is based on the Aspeed AST2600 SoC. It configures the platform-specific peripherals and aliases for OpenBMC usage. The series is comprised of two patches: 1. Adds the compatible string for the board to the binding documentation. 2. Adds the main Device Tree Source file for the Anacapa BMC. **This patch series is a re-submission of v6 (series starting at:** **<https://lore.kernel.org/all/20251112211248.3711889-1-sjg168@gmail.com>)** Changes in v7: * Dropped the unused 'pcc_memory' reserved memory region as suggested by Andrew Jeffery. * Reordered the 'spi-gpio' properties to group all '-gpios' properties together for better readability (Andrew Jeffery). * Moved the 'pinctrl_ncsi3_default' pinctrl group from the board DTS file to 'arch/arm/boot/dts/aspeed-g6.dtsi' (assuming this dtsi change is applied separately or already in the base) to make it available for other platforms (Andrew Jeffery). * Revised the 'gpio-line-names' for better clarity and alignment with schematic signal names, avoiding confusion with pin-muxed functions (Andrew Jeffery). * Improved the formatting and readability of 'sgpio-line-names' list. * Removed the unused 'led-2' definition from the 'leds' node. * Added support for the ADC128D818 sensor to the I2C bus. * No functional changes in the binding patch (1/2). Peter Shen (2): dt-bindings: arm: aspeed: Add compatible for Facebook Anacapa BMC ARM: dts: aspeed: Add Device Tree for Facebook Anacapa BMC .../bindings/arm/aspeed/aspeed.yaml | 1 + arch/arm/boot/dts/aspeed/Makefile | 1 + .../aspeed/aspeed-bmc-facebook-anacapa.dts | 1044 +++++++++++++++++ 3 files changed, 1046 insertions(+) create mode 100644 arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-anacapa.dts -- 2.34.1 ^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH v7 1/2] dt-bindings: arm: aspeed: Add compatible for Facebook Anacapa BMC 2025-11-18 4:10 ` [PATCH v7 " Peter Shen @ 2025-11-18 4:10 ` Peter Shen 2025-11-18 7:21 ` Krzysztof Kozlowski 2025-11-18 4:10 ` [PATCH v7 2/2] ARM: dts: aspeed: Add Device Tree " Peter Shen 1 sibling, 1 reply; 11+ messages in thread From: Peter Shen @ 2025-11-18 4:10 UTC (permalink / raw) To: devicetree Cc: linux-arm-kernel, linux-aspeed, linux-kernel, Andrew Jeffery, Joel Stanley, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Krzysztof Kozlowski, peter.shen, Peter Shen This patch adds the compatible string for the Facebook Anacapa BMC which uses an Aspeed AST2600 SoC. This is required before adding the board's device tree source file. Signed-off-by: Peter Shen <sjg168@gmail.com> --- Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml b/Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml index aedefca7cf4a..bcb874ebd9d2 100644 --- a/Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml +++ b/Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml @@ -80,6 +80,7 @@ properties: - aspeed,ast2600-evb - aspeed,ast2600-evb-a1 - asus,x4tf-bmc + - facebook,anacapa-bmc - facebook,bletchley-bmc - facebook,catalina-bmc - facebook,clemente-bmc -- 2.34.1 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH v7 1/2] dt-bindings: arm: aspeed: Add compatible for Facebook Anacapa BMC 2025-11-18 4:10 ` [PATCH v7 1/2] dt-bindings: arm: aspeed: Add compatible " Peter Shen @ 2025-11-18 7:21 ` Krzysztof Kozlowski 2025-11-18 8:11 ` Peter Shen 0 siblings, 1 reply; 11+ messages in thread From: Krzysztof Kozlowski @ 2025-11-18 7:21 UTC (permalink / raw) To: Peter Shen, devicetree Cc: linux-arm-kernel, linux-aspeed, linux-kernel, Andrew Jeffery, Joel Stanley, Rob Herring, Krzysztof Kozlowski, Conor Dooley, peter.shen On 18/11/2025 05:10, Peter Shen wrote: > This patch adds the compatible string for the Facebook Anacapa BMC > which uses an Aspeed AST2600 SoC. This is required before adding > the board's device tree source file. > > Signed-off-by: Peter Shen <sjg168@gmail.com> > --- > Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml | 1 + > 1 file changed, 1 insertion(+) So you just ignored everything I wrote? Long explanation and you just don't care? If so, then: NAK, Also, do not attach (thread) your patchsets to some other threads (unrelated or older versions). This buries them deep in the mailbox and might interfere with applying entire sets. See also: https://elixir.bootlin.com/linux/v6.16-rc2/source/Documentation/process/submitting-patches.rst#L830 Best regards, Krzysztof ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v7 1/2] dt-bindings: arm: aspeed: Add compatible for Facebook Anacapa BMC 2025-11-18 7:21 ` Krzysztof Kozlowski @ 2025-11-18 8:11 ` Peter Shen 0 siblings, 0 replies; 11+ messages in thread From: Peter Shen @ 2025-11-18 8:11 UTC (permalink / raw) To: Krzysztof Kozlowski Cc: devicetree, linux-arm-kernel, linux-aspeed, linux-kernel, Andrew Jeffery, Joel Stanley, Rob Herring, Krzysztof Kozlowski, Conor Dooley, peter.shen Hi Krzysztof, Thanks for your detailed explanation. I apologize for ignoring it earlier. I now understand the importance of Acked-by/Reviewed-by/Tested-by tags, and of not attaching patchsets to unrelated threads. I will follow the proper process from now on, and also fix my local b4 environment so that generating the correct trailers works smoothly. Best regards, Peter Krzysztof Kozlowski <krzk@kernel.org> 於 2025年11月18日 週二 上午2:21寫道: > > On 18/11/2025 05:10, Peter Shen wrote: > > This patch adds the compatible string for the Facebook Anacapa BMC > > which uses an Aspeed AST2600 SoC. This is required before adding > > the board's device tree source file. > > > > Signed-off-by: Peter Shen <sjg168@gmail.com> > > --- > > Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml | 1 + > > 1 file changed, 1 insertion(+) > > > So you just ignored everything I wrote? Long explanation and you just > don't care? > > If so, then: > > NAK, > > Also, do not attach (thread) your patchsets to some other threads > (unrelated or older versions). This buries them deep in the mailbox and > might interfere with applying entire sets. See also: > https://elixir.bootlin.com/linux/v6.16-rc2/source/Documentation/process/submitting-patches.rst#L830 > > Best regards, > Krzysztof ^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH v7 2/2] ARM: dts: aspeed: Add Device Tree for Facebook Anacapa BMC 2025-11-18 4:10 ` [PATCH v7 " Peter Shen 2025-11-18 4:10 ` [PATCH v7 1/2] dt-bindings: arm: aspeed: Add compatible " Peter Shen @ 2025-11-18 4:10 ` Peter Shen 1 sibling, 0 replies; 11+ messages in thread From: Peter Shen @ 2025-11-18 4:10 UTC (permalink / raw) To: devicetree Cc: linux-arm-kernel, linux-aspeed, linux-kernel, Andrew Jeffery, Joel Stanley, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Krzysztof Kozlowski, peter.shen, Peter Shen Add the initial device tree source file for the Facebook Anacapa BMC platform, based on the Aspeed AST2600 SoC. This device tree configures the platform-specific peripherals and aliases for OpenBMC usage. Signed-off-by: Peter Shen <sjg168@gmail.com> --- arch/arm/boot/dts/aspeed/Makefile | 1 + .../aspeed/aspeed-bmc-facebook-anacapa.dts | 1044 +++++++++++++++++ 2 files changed, 1045 insertions(+) create mode 100644 arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-anacapa.dts diff --git a/arch/arm/boot/dts/aspeed/Makefile b/arch/arm/boot/dts/aspeed/Makefile index 0f0b5b707654..e1b2fc7b8c08 100644 --- a/arch/arm/boot/dts/aspeed/Makefile +++ b/arch/arm/boot/dts/aspeed/Makefile @@ -17,6 +17,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \ aspeed-bmc-asus-x4tf.dtb \ aspeed-bmc-bytedance-g220a.dtb \ aspeed-bmc-delta-ahe50dc.dtb \ + aspeed-bmc-facebook-anacapa.dtb \ aspeed-bmc-facebook-bletchley.dtb \ aspeed-bmc-facebook-catalina.dtb \ aspeed-bmc-facebook-clemente.dtb \ diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-anacapa.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-anacapa.dts new file mode 100644 index 000000000000..a9bed728339b --- /dev/null +++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-anacapa.dts @@ -0,0 +1,1044 @@ +// SPDX-License-Identifier: GPL-2.0-or-later + +/dts-v1/; +#include "aspeed-g6.dtsi" +#include <dt-bindings/gpio/aspeed-gpio.h> +#include <dt-bindings/i2c/i2c.h> + +/ { + model = "Facebook Anacapa BMC"; + compatible = "facebook,anacapa-bmc", "aspeed,ast2600"; + + aliases { + serial0 = &uart1; + serial2 = &uart3; + serial3 = &uart4; + serial4 = &uart5; + i2c16 = &i2c0mux0ch0; + i2c17 = &i2c0mux0ch1; + i2c18 = &i2c0mux0ch2; + i2c19 = &i2c0mux0ch3; + i2c20 = &i2c1mux0ch0; + i2c21 = &i2c1mux0ch1; + i2c22 = &i2c1mux0ch2; + i2c23 = &i2c1mux0ch3; + i2c24 = &i2c4mux0ch0; + i2c25 = &i2c4mux0ch1; + i2c26 = &i2c4mux0ch2; + i2c27 = &i2c4mux0ch3; + i2c28 = &i2c4mux0ch4; + i2c29 = &i2c4mux0ch5; + i2c30 = &i2c4mux0ch6; + i2c31 = &i2c4mux0ch7; + i2c32 = &i2c8mux0ch0; + i2c33 = &i2c8mux0ch1; + i2c34 = &i2c8mux0ch2; + i2c35 = &i2c8mux0ch3; + i2c36 = &i2c10mux0ch0; + i2c37 = &i2c10mux0ch1; + i2c38 = &i2c10mux0ch2; + i2c39 = &i2c10mux0ch3; + i2c40 = &i2c10mux0ch4; + i2c41 = &i2c10mux0ch5; + i2c42 = &i2c10mux0ch6; + i2c43 = &i2c10mux0ch7; + i2c44 = &i2c11mux0ch0; + i2c45 = &i2c11mux0ch1; + i2c46 = &i2c11mux0ch2; + i2c47 = &i2c11mux0ch3; + i2c48 = &i2c11mux0ch4; + i2c49 = &i2c11mux0ch5; + i2c50 = &i2c11mux0ch6; + i2c51 = &i2c11mux0ch7; + i2c52 = &i2c13mux0ch0; + i2c53 = &i2c13mux0ch1; + i2c54 = &i2c13mux0ch2; + i2c55 = &i2c13mux0ch3; + i2c56 = &i2c13mux0ch4; + i2c57 = &i2c13mux0ch5; + i2c58 = &i2c13mux0ch6; + i2c59 = &i2c13mux0ch7; + }; + + chosen { + stdout-path = "serial4:57600n8"; + }; + + iio-hwmon { + compatible = "iio-hwmon"; + io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>, <&adc0 3>, + <&adc0 4>, <&adc0 5>, <&adc0 6>, <&adc0 7>, + <&adc1 2>; + }; + + leds { + compatible = "gpio-leds"; + + led-0 { + label = "bmc_heartbeat_amber"; + gpios = <&gpio0 ASPEED_GPIO(P, 7) GPIO_ACTIVE_LOW>; + linux,default-trigger = "heartbeat"; + }; + + led-1 { + label = "fp_id_amber"; + default-state = "off"; + gpios = <&gpio0 ASPEED_GPIO(B, 5) GPIO_ACTIVE_HIGH>; + }; + }; + + memory@80000000 { + device_type = "memory"; + reg = <0x80000000 0x80000000>; + }; + + reserved-memory { + #address-cells = <1>; + #size-cells = <1>; + ranges; + + video_engine_memory: video { + size = <0x02c00000>; + alignment = <0x00100000>; + compatible = "shared-dma-pool"; + reusable; + }; + + gfx_memory: framebuffer { + size = <0x01000000>; + alignment = <0x01000000>; + compatible = "shared-dma-pool"; + reusable; + }; + }; + + p3v3_bmc_aux: regulator-p3v3-bmc-aux { + compatible = "regulator-fixed"; + regulator-name = "p3v3_bmc_aux"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-always-on; + }; + + spi_gpio: spi { + compatible = "spi-gpio"; + #address-cells = <1>; + #size-cells = <0>; + + sck-gpios = <&gpio0 ASPEED_GPIO(Z, 3) GPIO_ACTIVE_HIGH>; + mosi-gpios = <&gpio0 ASPEED_GPIO(Z, 4) GPIO_ACTIVE_HIGH>; + miso-gpios = <&gpio0 ASPEED_GPIO(Z, 5) GPIO_ACTIVE_HIGH>; + cs-gpios = <&gpio0 ASPEED_GPIO(Z, 0) GPIO_ACTIVE_LOW>; + num-chipselects = <1>; + status = "okay"; + + tpm@0 { + compatible = "infineon,slb9670", "tcg,tpm_tis-spi"; + spi-max-frequency = <33000000>; + reg = <0>; + }; + }; +}; + +&adc0 { + aspeed,int-vref-microvolt = <2500000>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default + &pinctrl_adc2_default &pinctrl_adc3_default + &pinctrl_adc4_default &pinctrl_adc5_default + &pinctrl_adc6_default &pinctrl_adc7_default>; + status = "okay"; +}; + +&adc1 { + aspeed,int-vref-microvolt = <2500000>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_adc10_default>; + status = "okay"; +}; + +&ehci1 { + status = "okay"; +}; + +&uhci { + status = "okay"; +}; + +&fmc { + status = "okay"; + + flash@0 { + status = "okay"; + m25p,fast-read; + label = "bmc"; + spi-max-frequency = <50000000>; +#include "openbmc-flash-layout-128.dtsi" + }; + + flash@1 { + status = "okay"; + m25p,fast-read; + label = "alt-bmc"; + spi-max-frequency = <50000000>; + }; +}; + +&gpio0 { + gpio-line-names = + + /*A0-A7*/ + "","","","","","","","", + + /*B0-B7*/ + "BATTERY_DETECT", "", "", "BMC_READY", + "", "FM_ID_LED", "", "", + + /*C0-C7*/ + "","","","","","","","", + + /*D0-D7*/ + "","","","","","","","", + + /*E0-E7*/ + "","","","","","","","", + + /*F0-F7*/ + "","","","","","","","", + + /*G0-G7*/ + "FM_MUX1_SEL", "", "", "", + "", "", "FM_DEBUG_PORT_PRSNT_N", "FM_BMC_DBP_PRESENT_N", + + /*H0-H7*/ + "","","","","","","","", + + /*I0-I7*/ + "", "", "", "", + "", "FLASH_WP_STATUS", "BMC_JTAG_MUX_SEL", "", + + /*J0-J7*/ + "","","","","","","","", + + /*K0-K7*/ + "","","","","","","","", + + /*L0-L7*/ + "","","","","","","","", + + /*M0-M7*/ + "", "BMC_FRU_WP", "", "", + "", "", "", "", + + /*N0-N7*/ + "LED_POSTCODE_0", "LED_POSTCODE_1", "LED_POSTCODE_2", "LED_POSTCODE_3", + "LED_POSTCODE_4", "LED_POSTCODE_5", "LED_POSTCODE_6", "LED_POSTCODE_7", + + /*O0-O7*/ + "","","","","","","","", + + /*P0-P7*/ + "PWR_BTN_BMC_BUF_N", "", "ID_RST_BTN_BMC_N", "", + "PWR_LED", "", "", "BMC_HEARTBEAT_N", + + /*Q0-Q7*/ + "","","","","","","","", + + /*R0-R7*/ + "","","","","","","","", + + /*S0-S7*/ + "", "", "SYS_BMC_PWRBTN_N", "", + "", "", "", "RUN_POWER_FAULT", + + /*T0-T7*/ + "","","","","","","","", + + /*U0-U7*/ + "","","","","","","","", + + /*V0-V7*/ + "","","","","","","","", + + /*W0-W7*/ + "","","","","","","","", + + /*X0-X7*/ + "","","","","","","","", + + /*Y0-Y7*/ + "","","","","","","","", + + /*Z0-Z7*/ + "SPI_BMC_TPM_CS2_N", "", "", "SPI_BMC_TPM_CLK", + "SPI_BMC_TPM_MOSI", "SPI_BMC_TPM_MISO", "", ""; +}; + +&gpio1 { + gpio-line-names = + /*18A0-18A7*/ + "","","","","","","","", + + /*18B0-18B7*/ + "","","","", + "FM_BOARD_BMC_REV_ID0", "FM_BOARD_BMC_REV_ID1", + "FM_BOARD_BMC_REV_ID2", "", + + /*18C0-18C7*/ + "","","","","","","","", + + /*18D0-18D7*/ + "","","","","","","","", + + /*18E0-18E3*/ + "FM_BMC_PROT_LS_EN", "AC_PWR_BMC_BTN_N", "", ""; +}; + +// L Bridge Board +&i2c0 { + status = "okay"; + + i2c-mux@70 { + compatible = "nxp,pca9546"; + reg = <0x70>; + #address-cells = <1>; + #size-cells = <0>; + i2c-mux-idle-disconnect; + + i2c0mux0ch0: i2c@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c0mux0ch1: i2c@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c0mux0ch2: i2c@2 { + reg = <2>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c0mux0ch3: i2c@3 { + reg = <3>; + #address-cells = <1>; + #size-cells = <0>; + }; + }; +}; + +// R Bridge Board +&i2c1 { + status = "okay"; + + i2c-mux@70 { + compatible = "nxp,pca9546"; + reg = <0x70>; + #address-cells = <1>; + #size-cells = <0>; + i2c-mux-idle-disconnect; + + i2c1mux0ch0: i2c@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c1mux0ch1: i2c@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c1mux0ch2: i2c@2 { + reg = <2>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c1mux0ch3: i2c@3 { + reg = <3>; + #address-cells = <1>; + #size-cells = <0>; + }; + }; +}; + +// MB - E1.S +&i2c4 { + status = "okay"; + + i2c-mux@70 { + compatible = "nxp,pca9548"; + reg = <0x70>; + #address-cells = <1>; + #size-cells = <0>; + i2c-mux-idle-disconnect; + + i2c4mux0ch0: i2c@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c4mux0ch1: i2c@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c4mux0ch2: i2c@2 { + reg = <2>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c4mux0ch3: i2c@3 { + reg = <3>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c4mux0ch4: i2c@4 { + reg = <4>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c4mux0ch5: i2c@5 { + reg = <5>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c4mux0ch6: i2c@6 { + reg = <6>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c4mux0ch7: i2c@7 { + reg = <7>; + #address-cells = <1>; + #size-cells = <0>; + }; + }; +}; + +// AMC +&i2c5 { + status = "okay"; +}; + +// MB +&i2c6 { + status = "okay"; + + // HPM FRU + eeprom@50 { + compatible = "atmel,24c256"; + reg = <0x50>; + }; +}; + +// SCM +&i2c7 { + status = "okay"; + + +}; + +// MB - PDB +&i2c8 { + status = "okay"; + + i2c-mux@72 { + compatible = "nxp,pca9546"; + reg = <0x72>; + #address-cells = <1>; + #size-cells = <0>; + i2c-mux-idle-disconnect; + + i2c8mux0ch0: i2c@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + + adc@1f { + compatible = "ti,adc128d818"; + reg = <0x1f>; + ti,mode = /bits/ 8 <1>; + }; + + gpio@22 { + compatible = "nxp,pca9555"; + reg = <0x22>; + gpio-controller; + #gpio-cells = <2>; + + gpio-line-names = + "RPDB_FAN_FULL_SPEED_R_N", "RPDB_I2C_TEMP75_U8_ALERT_R_N", + "RPDB_I2C_TMP432_U29_ALERT_R_N", "RPDB_GLOBAL_WP", + "RPDB_FAN_CT_FAN_FAIL_R_N", "", + "", "", + "RPDB_ALERT_P50V_HSC2_R_N", "RPDB_ALERT_P50V_HSC3_R_N", + "RPDB_ALERT_P50V_HSC4_R_N", "RPDB_ALERT_P50V_STBY_R_N", + "RPDB_I2C_P12V_MB_VRM_ALERT_R_N", + "RPDB_I2C_P12V_STBY_VRM_ALERT_R_N", + "RPDB_PGD_P3V3_STBY_PWRGD_R", + "RPDB_P12V_STBY_VRM_PWRGD_BUF_R"; + }; + + gpio@24 { + compatible = "nxp,pca9555"; + reg = <0x24>; + gpio-controller; + #gpio-cells = <2>; + + gpio-line-names = + "RPDB_EAM2_PRSNT_MOS_N_R", "RPDB_EAM3_PRSNT_MOS_N_R", + "RPDB_PWRGD_P50V_HSC4_SYS_R", + "RPDB_PWRGD_P50V_STBY_SYS_BUF_R", + "RPDB_P50V_FAN1_R2_PG", "RPDB_P50V_FAN2_R2_PG", + "RPDB_P50V_FAN3_R2_PG", "RPDB_P50V_FAN4_R2_PG", + "", "RPDB_FAN1_PRSNT_N_R", + "", "RPDB_FAN2_PRSNT_N_R", + "RPDB_FAN3_PRSNT_N_R", "RPDB_FAN4_PRSNT_N_R", + "", ""; + }; + + // R-PDB FRU + eeprom@50 { + compatible = "atmel,24c128"; + reg = <0x50>; + }; + }; + i2c8mux0ch1: i2c@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + + gpio@22 { + compatible = "nxp,pca9555"; + reg = <0x22>; + gpio-controller; + #gpio-cells = <2>; + + gpio-line-names = + "LPDB_FAN_FULL_SPEED_R_N","LPDB_I2C_TEMP75_U8_ALERT_R_N", + "LPDB_I2C_TMP432_U29_ALERT_R_N","LPDB_GLOBAL_WP", + "LPDB_FAN_CT_FAN_FAIL_R_N","", + "","", + "LPDB_ALERT_P50V_HSC0_R_N","LPDB_ALERT_P50V_HSC1_R_N", + "LPDB_ALERT_P50V_HSC5_R_N","LPDB_I2C_P12V_SW_VRM_ALERT_R_N", + "LPDB_EAM0_PRSNT_MOS_N_R","LPDB_EAM1_PRSNT_MOS_N_R", + "LPDB_PWRGD_P50V_HSC5_SYS_R",""; + }; + + gpio@24 { + compatible = "nxp,pca9555"; + reg = <0x24>; + gpio-controller; + #gpio-cells = <2>; + + gpio-line-names = + "LPDB_P50V_FAN1_R2_PG","LPDB_P50V_FAN2_R2_PG", + "LPDB_P50V_FAN3_R2_PG","LPDB_P50V_FAN4_R2_PG", + "LPDB_P50V_FAN5_R2_PG","LPDB_FAN1_PRSNT_N_R", + "LPDB_FAN2_PRSNT_N_R","LPDB_FAN3_PRSNT_N_R", + "LPDB_FAN4_PRSNT_N_R","LPDB_FAN5_PRSNT_N_R", + "","", + "","", + "",""; + }; + + // L-PDB FRU + eeprom@50 { + compatible = "atmel,24c128"; + reg = <0x50>; + }; + }; + i2c8mux0ch2: i2c@2 { + reg = <2>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c8mux0ch3: i2c@3 { + reg = <3>; + #address-cells = <1>; + #size-cells = <0>; + }; + }; +}; + +// SCM +&i2c9 { + status = "okay"; + + // SCM FRU + eeprom@50 { + compatible = "atmel,24c128"; + reg = <0x50>; + }; + + // BSM FRU + eeprom@56 { + compatible = "atmel,24c64"; + reg = <0x56>; + }; +}; + +// R Bridge Board +&i2c10 { + status = "okay"; + + i2c-mux@71 { + compatible = "nxp,pca9548"; + reg = <0x71>; + #address-cells = <1>; + #size-cells = <0>; + i2c-mux-idle-disconnect; + + i2c10mux0ch0: i2c@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c10mux0ch1: i2c@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c10mux0ch2: i2c@2 { + reg = <2>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c10mux0ch3: i2c@3 { + reg = <3>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c10mux0ch4: i2c@4 { + reg = <4>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c10mux0ch5: i2c@5 { + reg = <5>; + #address-cells = <1>; + #size-cells = <0>; + + gpio@22 { + compatible = "nxp,pca9555"; + reg = <0x22>; + gpio-controller; + #gpio-cells = <2>; + + gpio-line-names = + "","", + "","RBB_CPLD_REFRESH_IN_PRGRS_R_L", + "RBB_EAM0_NIC_CBL_PRSNT_R_L","RBB_EAM1_NIC_CBL_PRSNT_R_L", + "RBB_AINIC_JTAG_MUX_R2_SEL","RBB_SPI_MUX0_R2_SEL", + "RBB_AINIC_PRSNT_R_L","RBB_AINIC_OE_R_N", + "RBB_AINIC_BOARD_R2_ID","RBB_RST_USB2_HUB_R_N", + "RBB_RST_FT4222_R_N","RBB_RST_MCP2210_R_N", + "",""; + }; + + // R Bridge Board FRU + eeprom@52 { + compatible = "atmel,24c256"; + reg = <0x52>; + }; + }; + i2c10mux0ch6: i2c@6 { + reg = <6>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c10mux0ch7: i2c@7 { + reg = <7>; + #address-cells = <1>; + #size-cells = <0>; + }; + }; +}; + +// L Bridge Board +&i2c11 { + status = "okay"; + + i2c-mux@71 { + compatible = "nxp,pca9548"; + reg = <0x71>; + #address-cells = <1>; + #size-cells = <0>; + i2c-mux-idle-disconnect; + + i2c11mux0ch0: i2c@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c11mux0ch1: i2c@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c11mux0ch2: i2c@2 { + reg = <2>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c11mux0ch3: i2c@3 { + reg = <3>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c11mux0ch4: i2c@4 { + reg = <4>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c11mux0ch5: i2c@5 { + reg = <5>; + #address-cells = <1>; + #size-cells = <0>; + + gpio@22 { + compatible = "nxp,pca9555"; + reg = <0x22>; + gpio-controller; + #gpio-cells = <2>; + + gpio-line-names = + "","", + "","LBB_CPLD_REFRESH_IN_PRGRS_R_L", + "LBB_EAM0_NIC_CBL_PRSNT_R_L","LBB_EAM1_NIC_CBL_PRSNT_R_L", + "LBB_AINIC_JTAG_MUX_R2_SEL","LBB_SPI_MUX0_R2_SEL", + "LBB_AINIC_PRSNT_R_L","LBB_AINIC_OE_R_N", + "LBB_AINIC_BOARD_R2_ID","LBB_RST_USB2_HUB_R_N", + "LBB_RST_FT4222_R_N","LBB_RST_MCP2210_R_N", + "",""; + }; + + // L Bridge Board FRU + eeprom@52 { + compatible = "atmel,24c256"; + reg = <0x52>; + }; + }; + i2c11mux0ch6: i2c@6 { + reg = <6>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c11mux0ch7: i2c@7 { + reg = <7>; + #address-cells = <1>; + #size-cells = <0>; + }; + }; +}; + +// Debug Card +&i2c12 { + status = "okay"; +}; + +// MB +&i2c13 { + status = "okay"; + + i2c-mux@70 { + compatible = "nxp,pca9548"; + reg = <0x70>; + #address-cells = <1>; + #size-cells = <0>; + i2c-mux-idle-disconnect; + + i2c13mux0ch0: i2c@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c13mux0ch1: i2c@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c13mux0ch2: i2c@2 { + reg = <2>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c13mux0ch3: i2c@3 { + reg = <3>; + #address-cells = <1>; + #size-cells = <0>; + + adc@1f { + compatible = "ti,adc128d818"; + reg = <0x1f>; + ti,mode = /bits/ 8 <1>; + }; + }; + i2c13mux0ch4: i2c@4 { + reg = <4>; + #address-cells = <1>; + #size-cells = <0>; + + // HPM BRD ID FRU + eeprom@51 { + compatible = "atmel,24c256"; + reg = <0x51>; + }; + }; + i2c13mux0ch5: i2c@5 { + reg = <5>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c13mux0ch6: i2c@6 { + reg = <6>; + #address-cells = <1>; + #size-cells = <0>; + }; + i2c13mux0ch7: i2c@7 { + reg = <7>; + #address-cells = <1>; + #size-cells = <0>; + }; + }; +}; + +// SCM +&i2c14 { + status = "okay"; +}; + +&i2c15 { + status = "okay"; +}; + +&lpc_ctrl { + status = "okay"; +}; + +&kcs2 { + aspeed,lpc-io-reg = <0xca8>; + status = "okay"; +}; + +&kcs3 { + aspeed,lpc-io-reg = <0xca2>; + status = "okay"; +}; + +&mac2 { + status = "okay"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_ncsi3_default>; + use-ncsi; +}; + +&sgpiom0 { + ngpios = <128>; + bus-frequency = <2000000>; + gpio-line-names = + /*in - out - in - out */ + /* A0-A7 line 0-15 */ + "", "FM_CPU0_SYS_RESET_N", "", "CPU0_KBRST_N", + "", "FM_CPU0_PROCHOT_trigger_N", "", "FM_CLR_CMOS_R_P0", + "", "Force_I3C_SEL", "", "SYSTEM_Force_Run_AC_Cycle", + "", "", "", "", + + /* B0-B7 line 16-31 */ + "Channel0_leakage_EAM3", "FM_CPU_FPGA_JTAG_MUX_SEL", + "Channel1_leakage_EAM0", "FM_SCM_JTAG_MUX_SEL", + "Channel2_leakage_Manifold1", "FM_BRIDGE_JTAG_MUX_SEL", + "Channel3_leakage", "FM_CPU0_NMI_SYNC_FLOOD_N", + "Channel4_leakage_Manifold2", "", + "Channel5_leakage_EAM1", "", + "Channel6_leakage_CPU_DIMM", "", + "Channel7_leakage_EAM2", "", + + /* C0-C7 line 32-47 */ + "RSVD_RMC_GPIO3", "", "", "", + "", "", "", "", + "LEAK_DETECT_RMC_N", "", "", "", + "", "", "", "", + + /* D0-D7 line 48-63 */ + "PWRGD_PDB_EAMHSC0_CPLD_PG_R", "", + "PWRGD_PDB_EAMHSC1_CPLD_PG_R", "", + "PWRGD_PDB_EAMHSC2_CPLD_PG_R", "", + "PWRGD_PDB_EAMHSC3_CPLD_PG_R", "", + "AMC_BRD_PRSNT_CPLD_L", "", "", "", + "", "", "", "", + + /* E0-E7 line 64-79 */ + "AMC_PDB_EAMHSC0_CPLD_EN_R", "", + "AMC_PDB_EAMHSC1_CPLD_EN_R", "", + "AMC_PDB_EAMHSC2_CPLD_EN_R", "", + "AMC_PDB_EAMHSC3_CPLD_EN_R", "", + "", "", "", "", + "", "", "", "", + + /* F0-F7 line 80-95 */ + "PWRGD_PVDDCR_CPU1_P0", "SGPIO_READY", + "PWRGD_PVDDCR_CPU0_P0", "", + "", "", "", "", + "", "", "", "", + + /* G0-G7 line 96-111 */ + "PWRGD_PVDDCR_SOC_P0", "", + "PWRGD_PVDDIO_P0", "", + "PWRGD_PVDDIO_MEM_S3_P0", "", + "PWRGD_CHMP_CPU0_FPGA", "", + "PWRGD_CHIL_CPU0_FPGA", "", + "PWRGD_CHEH_CPU0_FPGA", "", + "PWRGD_CHAD_CPU0_FPGA", "FM_BMC_READY_PLD", + "", "", + + /* H0-H7 line 112-127 */ + "PWRGD_P3V3", "", + "P12V_DDR_IP_PWRGD_R", "", + "P12V_DDR_AH_PWRGD_R", "", + "PWRGD_P12V_VRM1_CPLD_PG_R", "", + "PWRGD_P12V_VRM0_CPLD_PG_R", "", + "PWRGD_PDB_HSC4_CPLD_PG_R", "", + "PWRGD_PVDD18_S5_P0_PG", "", + "PWRGD_PVDD33_S5_P0_PG", "", + + /* I0-I7 line 128-143 */ + "EAM0_BRD_PRSNT_R_L", "", + "EAM1_BRD_PRSNT_R_L", "", + "EAM2_BRD_PRSNT_R_L", "", + "EAM3_BRD_PRSNT_R_L", "", + "EAM0_CPU_MOD_PWR_GD_R", "", + "EAM1_CPU_MOD_PWR_GD_R", "", + "EAM2_CPU_MOD_PWR_GD_R", "", + "EAM3_CPU_MOD_PWR_GD_R", "", + + /* J0-J7 line 144-159 */ + "PRSNT_L_BIRDGE_R", "", + "PRSNT_R_BIRDGE_R", "", + "BRIDGE_L_MAIN_PG_R", "", + "BRIDGE_R_MAIN_PG_R", "", + "BRIDGE_L_STBY_PG_R", "", + "BRIDGE_R_STBY_PG_R", "", + "", "", "", "", + + /* K0-K7 line 160-175 */ + "ADC_I2C_ALERT_N", "", + "TEMP_I2C_ALERT_R_L", "", + "CPU0_VR_SMB_ALERT_CPLD_N", "", + "COVER_INTRUDER_R_N", "", + "HANDLE_INTRUDER_CPLD_N", "", + "IRQ_MCIO_CPLD_WAKE_R_N", "", + "APML_CPU0_ALERT_R_N", "", + "PDB_ALERT_R_N", "", + + /* L0-L7 line 176-191 */ + "CPU0_SP7R1", "", "CPU0_SP7R2", "", + "CPU0_SP7R3", "", "CPU0_SP7R4", "", + "CPU0_CORETYPE0", "", "CPU0_CORETYPE1", "", + "CPU0_CORETYPE2", "", "FM_BIOS_POST_CMPLT_R_N", "", + + /* M0-M7 line 192-207 */ + "EAM0_SMERR_CPLD_R_L", "", + "EAM1_SMERR_CPLD_R_L", "", + "EAM2_SMERR_CPLD_R_L", "", + "EAM3_SMERR_CPLD_R_L", "", + "CPU0_SMERR_N_R", "", + "CPU0_NV_SAVE_N_R", "", + "PDB_PWR_LOSS_CPLD_N", "", + "IRQ_BMC_SMI_ACTIVE_R_N", "", + + /* N0-N7 line 208-223 */ + "AMCROT_BMC_S5_RDY_R", "", + "AMC_RDY_R", "", + "AMC_STBY_PGOOD_R", "", + "CPU_AMC_SLP_S5_R_L", "", + "AMC_CPU_EAMPG_R", "", + "", "", "", "", + + /* O0-O7 line 224-239 */ + "HPM_PWR_FAIL", "Port80_b0", + "FM_DIMM_IP_FAIL", "Port80_b1", + "FM_DIMM_AH_FAIL", "Port80_b2", + "HPM_AMC_THERMTRIP_R_L", "Port80_b3", + "FM_CPU0_THERMTRIP_N", "Port80_b4", + "PVDDCR_SOC_P0_OCP_L", "Port80_b5", + "CPLD_SGPIO_RDY", "Port80_b6", + "", "Port80_b7", + + /* P0-P7 line 240-255 */ + "CPU0_SLP_S5_N_R", "NFC_VEN", + "CPU0_SLP_S3_N_R", "", + "FM_CPU0_PWRGD", "", + "PWRGD_RMC", "", + "FM_RST_CPU0_RESET_N", "", + "FM_PWRGD_CPU0_PWROK", "", + "wS5_PWR_Ready", "", + "wS0_ON_N", "PWRGD_P1V0_AUX"; + status = "okay"; +}; + +// BIOS Flash +&spi2 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_spi2_default>; + status = "okay"; + reg = <0x1e631000 0xc4>, <0x50000000 0x8000000>; + + flash@0 { + compatible = "jedec,spi-nor"; + label = "pnor"; + spi-max-frequency = <12000000>; + spi-tx-bus-width = <2>; + spi-rx-bus-width = <2>; + status = "okay"; + }; +}; + +// HOST BIOS Debug +&uart1 { + status = "okay"; +}; + +&uart3 { + status = "okay"; +}; + +&uart4 { + status = "okay"; +}; + +// BMC Debug Console +&uart5 { + status = "okay"; +}; + +&uart_routing { + status = "okay"; +}; + +&wdt1 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_wdtrst1_default>; + aspeed,reset-type = "soc"; + aspeed,external-signal; + aspeed,ext-push-pull; + aspeed,ext-active-high; + aspeed,ext-pulse-duration = <256>; + status = "okay"; +}; + +&vhub { + status = "okay"; + pinctrl-names = "default"; +}; + +&video { + status = "okay"; + memory-region = <&video_engine_memory>; +}; + +&gfx { + status = "okay"; + memory-region = <&gfx_memory>; +}; -- 2.34.1 ^ permalink raw reply related [flat|nested] 11+ messages in thread
end of thread, other threads:[~2025-11-18 8:11 UTC | newest] Thread overview: 11+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2025-11-12 21:12 [PATCH v6 0/2] ARM: dts: aspeed: Add Device Tree for Facebook Anacapa BMC Peter Shen 2025-11-12 21:12 ` [PATCH v6 1/2] dt-bindings: arm: aspeed: Add compatible " Peter Shen 2025-11-13 7:14 ` Krzysztof Kozlowski 2025-11-12 21:12 ` [PATCH v6 2/2] ARM: dts: aspeed: Add Device Tree " Peter Shen 2025-11-14 4:28 ` Andrew Jeffery 2025-11-14 4:30 ` [PATCH v6 0/2] " Andrew Jeffery 2025-11-18 4:10 ` [PATCH v7 " Peter Shen 2025-11-18 4:10 ` [PATCH v7 1/2] dt-bindings: arm: aspeed: Add compatible " Peter Shen 2025-11-18 7:21 ` Krzysztof Kozlowski 2025-11-18 8:11 ` Peter Shen 2025-11-18 4:10 ` [PATCH v7 2/2] ARM: dts: aspeed: Add Device Tree " Peter Shen
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).