Re: [PATCH v4 2/2] ARM: dts: aspeed: Add NVIDIA VR-NVL BMC
Rob Herring <[email protected]> Tue, 28 Jul 2026 09:39:52 -0500
| Newsgroups | org.ozlabs.lists.linux-aspeed,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel,org.ozlabs.lists.openbmc |
|---|---|
| Message-ID | <[email protected]> |
On Tue, Jul 28, 2026 at 05:55:10PM +0900, Jacky Huang wrote: > Add the device tree for the Aspeed AST2600 BMC for NVIDIA's Vera > Rubin NVL compute platform. > > MAC0 uses phy-mode = "rgmii-id" because the on-board PHY supplies > both RGMII internal delays. The matching U-Boot device tree does not > enable SoC-side MAC clock delays, leaving the MAC internal delay at > zero so the PHY-provided delay is not doubled by the MAC controller. > > The corresponding U-Boot change has been submitted to openbmc/u-boot: > Link: https://lore.kernel.org/all/[email protected]/ > > Reviewed-by: Andrew Lunn <[email protected]> > Signed-off-by: Jacky Huang <[email protected]> > --- > v4: address dt-check-style findings for property and child node ordering, > required blank lines, and line length. Retain 8 conventional multi-line > block comments with mixed-indent and 22 meaningful unused labels for > source readability and future references. They can be removed if > preferred. > > arch/arm/boot/dts/aspeed/Makefile | 1 + > .../aspeed/aspeed-bmc-nvidia-vr-nvl-bmc.dts | 923 ++++++++++++++++++ > 2 files changed, 924 insertions(+) > create mode 100644 arch/arm/boot/dts/aspeed/aspeed-bmc-nvidia-vr-nvl-bmc.dts > > diff --git a/arch/arm/boot/dts/aspeed/Makefile b/arch/arm/boot/dts/aspeed/Makefile > index 6b68671f9379..07e10083a8bd 100644 > --- a/arch/arm/boot/dts/aspeed/Makefile > +++ b/arch/arm/boot/dts/aspeed/Makefile > @@ -65,6 +65,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \ > aspeed-bmc-microsoft-olympus.dtb \ > aspeed-bmc-nvidia-gb200nvl-bmc.dtb \ > aspeed-bmc-nvidia-msx4-bmc.dtb \ > + aspeed-bmc-nvidia-vr-nvl-bmc.dtb \ > aspeed-bmc-opp-lanyang.dtb \ > aspeed-bmc-opp-mowgli.dtb \ > aspeed-bmc-opp-nicole.dtb \ > diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-nvidia-vr-nvl-bmc.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-nvidia-vr-nvl-bmc.dts > new file mode 100644 > index 000000000000..1c04fd3e627c > --- /dev/null > +++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-nvidia-vr-nvl-bmc.dts > @@ -0,0 +1,923 @@ > +// SPDX-License-Identifier: GPL-2.0 > +// Copyright (c) 2026 NVIDIA Corporation > +&ehci1 { > + #address-cells = <1>; > + #size-cells = <0>; > + > + status = "okay"; > + > + hub@1 { > + reg = <1>; > + #address-cells = <1>; > + #size-cells = <0>; > + > + hub@1 { > + reg = <1>; > + #address-cells = <1>; > + #size-cells = <0>; > + > + hub@4 { > + reg = <4>; > + #address-cells = <1>; > + #size-cells = <0>; > + > + /* port 1: BlueField-4 SMA mgmt */ > + device@1 { > + reg = <1>; > + #address-cells = <2>; > + #size-cells = <0>; > + > + interface@1 { > + reg = <1 1>; > + }; > + }; > + > + cp2112g: device@2 { This and other devices should have a compatible string and associated schema. The hub probably should too. > + reg = <2>; > + #gpio-cells = <2>; > + gpio-controller; > + gpio-line-names = > + "BF4_USB_MCU_RECOVERY_L", > + "BF4_USB_MCU_RST_L", > + "BF4_USB_FORCE_FNP_L", > + "BF4_GLOBAL_WP", > + "BF4_FORCE_POR_L", > + "BF4_BMC_EROT_RST_L", > + "BF4_BMC_EROT_RECOVERY_L", > + "BF4_THERM_SHUTDOWN"; > + #interrupt-cells = <2>; > + interrupt-controller; > + }; > + }; > + }; > + > +&fmc { > + status = "okay"; > + > + flash@0 { Needs a compatible. > + label = "bmc"; > + > + status = "okay"; okay is the default, so not needed. > + > + partitions { > + compatible = "fixed-partitions"; > + #address-cells = <1>; > + #size-cells = <1>; > + > + partition@0 { > + reg = <0x0 0xe0000>; /* 896 KiB */ > + label = "u-boot"; > + }; > + > + partition@100000 { > + reg = <0x100000 0x900000>; /* 9 MiB */ > + label = "kernel"; > + }; > + > + partition@a00000 { > + /* > + * extends to end of 64 MiB - 4 KiB; last > + * 4 KiB reserved for EROT image > + */ > + reg = <0xa00000 0x35ff000>; > + label = "rofs"; > + }; > + }; > + }; > +}; > +&spi2 { > + pinctrl-0 = <&pinctrl_spi2_default>; > + pinctrl-names = "default"; > + > + status = "okay"; > + > + flash@0 { > + label = "config"; Needs a compatible. > + > + status = "okay"; Drop > + > + partitions { > + compatible = "fixed-partitions"; > + #address-cells = <1>; > + #size-cells = <1>; > + > + partition@0 { > + reg = <0x0 0x40000>; /* 256 KiB */ > + label = "u-boot-env"; > + }; > + > + partition@40000 { > + reg = <0x40000 0x1000000>; /* 16 MiB */ > + label = "rwfs"; > + }; > + > + partition@1040000 { > + reg = <0x1040000 0x2800000>; /* 40 MiB */ > + label = "log"; > + }; > + }; > + }; > +};