Re: [PATCH v3 2/2] ARM: dts: aspeed: add asrock x470d4u bmc

From: Zev Weiss

Date: Sun Aug 16 2026 - 00:56:57 EST


Hi Tan,

Looks good overall to me, just a couple small notes below...

On Wed, Aug 12, 2026 at 01:28:27PM PDT, Tan Siewert wrote:
The ASRock Rack X470D4U X470D4U is a single-socket X470-based microATX
motherboard for Ryzen processors with an AST2500 BMC and either 32MB or
64MB SPI flash.

This mainboard exists in three known "flavors" which only differ in the
used host NIC, the BMC SPI size and some parts that may be un-populated.

To allow the use of the full SPI flash, add two trees, one of which has
the 32M layout with the base config, and a 64M tree that includes the
base tree.

Signed-off-by: Tan Siewert <tan@xxxxxxxxxx>
---
arch/arm/boot/dts/aspeed/Makefile | 2 +
.../aspeed/aspeed-bmc-asrock-x470d4u-data64.dts | 15 +
.../boot/dts/aspeed/aspeed-bmc-asrock-x470d4u.dts | 381 +++++++++++++++++++++
3 files changed, 398 insertions(+)

diff --git a/arch/arm/boot/dts/aspeed/Makefile b/arch/arm/boot/dts/aspeed/Makefile
index 6b68671f9379..e27d33e85fb2 100644
--- a/arch/arm/boot/dts/aspeed/Makefile
+++ b/arch/arm/boot/dts/aspeed/Makefile
@@ -15,6 +15,8 @@ dtb-$(CONFIG_ARCH_ASPEED) += \
aspeed-bmc-asrock-paul-ipmi-card.dtb \
aspeed-bmc-asrock-romed8hm3.dtb \
aspeed-bmc-asrock-spc621d8hm3.dtb \
+ aspeed-bmc-asrock-x470d4u.dtb \
+ aspeed-bmc-asrock-x470d4u-data64.dtb \
aspeed-bmc-asrock-x570d4u.dtb \
aspeed-bmc-asus-kommando-ipmi-card.dtb \
aspeed-bmc-asus-x4tf.dtb \
diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-asrock-x470d4u-data64.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-asrock-x470d4u-data64.dts
new file mode 100644
index 000000000000..6f11aeab087c
--- /dev/null
+++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-asrock-x470d4u-data64.dts
@@ -0,0 +1,15 @@
+// SPDX-License-Identifier: GPL-2.0+
+
+#include "aspeed-bmc-asrock-x470d4u.dts"
+
+/ {
+ compatible = "asrock,x470d4u-data64-bmc", "aspeed,ast2500";
+ model = "Asrock Rack X470D4U-series BMC (64MB store)";

Nit: for consistency with how they spell it, and (at least *most* of) the other aspeed-bmc-asrock-*.dts files, I'd suggest "ASRock" instead of "Asrock". (And IMO s/store/flash/ would be a touch clearer.)

Also, looks like the other nearby DTS files pretty consistently have compatible & model in the opposite order, so matching that might be nice too.

+};
+
+&fmc {
+ flash@0 {
+ /delete-node/partitions;
+#include "openbmc-flash-layout-64.dtsi"
+ };
+};
diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-asrock-x470d4u.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-asrock-x470d4u.dts
new file mode 100644
index 000000000000..80fb2b7c1e0c
--- /dev/null
+++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-asrock-x470d4u.dts

<snip>

+
+ fan@3 {
+ /* FAN4 (6-pin) */
+ reg = <0x03>;
+ aspeed,fan-tach-ch = /bits/ 8 <0x03 0x0b>;
+ };
+
+ fan@4 {
+ /* FAN5 (6-pin) */
+ reg = <0x04>;
+ aspeed,fan-tach-ch = /bits/ 8 <0x04 0x0d>;
+ };
+
+ fan@5 {
+ /* FAN6 (6-pin) */
+ reg = <0x05>;
+ aspeed,fan-tach-ch = /bits/ 8 <0x05 0x0e>;
+ };
+};

Just to confirm, skipping channel 0xc here is intentional I assume? (Most other related platforms have them contiguously numbered, but not all, so another slight oddity wouldn't be too shocking.)


Thanks,
Zev