diff mbox series

[u-boot,v2019.04-aspeed-openbmc] ARM: dts: aspeed: Add a Romulus board (AST2500)

Message ID 20220804035504.92900-1-joel@jms.id.au
State New
Headers show
Series [u-boot,v2019.04-aspeed-openbmc] ARM: dts: aspeed: Add a Romulus board (AST2500) | expand

Commit Message

Joel Stanley Aug. 4, 2022, 3:55 a.m. UTC
Romulus was the OpenPOWER reference platform for the IBM Power9,
containing an ASPEED AST2500.

It was designed by IBM and built by SuperMicro. This reference platform
was sold as the Raptor Computing Systems Tallos II.

The machine used one 32MB SPI NOR for the BMC, a second SPI NOR flash
for the host firmware, and the Broadcom BCM5719 attached via NC-SI.

Signed-off-by: Joel Stanley <joel@jms.id.au>
---
 arch/arm/dts/Makefile            |  1 +
 arch/arm/dts/ast2500-romulus.dts | 76 ++++++++++++++++++++++++++++++++
 2 files changed, 77 insertions(+)
 create mode 100644 arch/arm/dts/ast2500-romulus.dts

Comments

Cédric Le Goater Aug. 4, 2022, 6:16 a.m. UTC | #1
On 8/4/22 05:55, Joel Stanley wrote:
> Romulus was the OpenPOWER reference platform for the IBM Power9,
> containing an ASPEED AST2500.
> 
> It was designed by IBM and built by SuperMicro. This reference platform
> was sold as the Raptor Computing Systems Tallos II.
> 
> The machine used one 32MB SPI NOR for the BMC, a second SPI NOR flash
> for the host firmware, and the Broadcom BCM5719 attached via NC-SI.
> 
> Signed-off-by: Joel Stanley <joel@jms.id.au>

I have been using a similar patch for a while (QEMU purpose only)

Reviewed-by: Cédric Le Goater <clg@kaod.org>

Which defconfig are you using ?

Thanks,

C.

> ---
>   arch/arm/dts/Makefile            |  1 +
>   arch/arm/dts/ast2500-romulus.dts | 76 ++++++++++++++++++++++++++++++++
>   2 files changed, 77 insertions(+)
>   create mode 100644 arch/arm/dts/ast2500-romulus.dts
> 
> diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
> index c1f24a14a615..6c34b8333634 100755
> --- a/arch/arm/dts/Makefile
> +++ b/arch/arm/dts/Makefile
> @@ -679,6 +679,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \
>   	ast2400-ahe-50dc.dtb \
>   	ast2400-palmetto.dtb \
>   	ast2500-evb.dtb \
> +	ast2500-romulus.dtb \
>   	ast2600a0-evb.dtb \
>   	ast2600a1-evb.dtb \
>   	ast2600-bletchley.dtb \
> diff --git a/arch/arm/dts/ast2500-romulus.dts b/arch/arm/dts/ast2500-romulus.dts
> new file mode 100644
> index 000000000000..726d3f54ff24
> --- /dev/null
> +++ b/arch/arm/dts/ast2500-romulus.dts
> @@ -0,0 +1,76 @@
> +// SPDX-License-Identifier: GPL-2.0+
> +// Copyright 2022 IBM Corp.
> +/dts-v1/;
> +
> +#include "ast2500-u-boot.dtsi"
> +
> +/ {
> +	model = "Romulus BMC";
> +	compatible = "ibm,romulus-bmc", "aspeed,ast2500";
> +
> +	memory {
> +		device_type = "memory";
> +		reg = <0x80000000 0x20000000>;
> +	};
> +
> +	chosen {
> +		stdout-path = &uart5;
> +	};
> +
> +	aliases {
> +		spi0 = &fmc;
> +		spi1 = &spi1;
> +		ethernet0 = &mac0;
> +		ethernet1 = &mac1;
> +	};
> +};
> +
> +&uart5 {
> +	u-boot,dm-pre-reloc;
> +	status = "okay";
> +};
> +
> +&sdrammc {
> +	clock-frequency = <400000000>;
> +};
> +
> +&wdt1 {
> +	u-boot,dm-pre-reloc;
> +	status = "okay";
> +};
> +
> +&wdt2 {
> +	u-boot,dm-pre-reloc;
> +	status = "okay";
> +};
> +
> +&mac0 {
> +	status = "okay";
> +
> +	phy-mode = "NC-SI";
> +	use-ncsi;
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&pinctrl_rmii1_default>;
> +};
> +
> +&fmc {
> +	status = "okay";
> +	flash@0 {
> +		status = "okay";
> +		spi-max-frequency = <50000000>;
> +		spi-tx-bus-width = <2>;
> +		spi-rx-bus-width = <2>;
> +	};
> +};
> +
> +&spi1 {
> +	status = "okay";
> +	flash@0 {
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&pinctrl_spi1_default>;
> +		status = "okay";
> +		spi-max-frequency = <50000000>;
> +		spi-tx-bus-width = <2>;
> +		spi-rx-bus-width = <2>;
> +	};
> +};
Joel Stanley Aug. 4, 2022, 6:20 a.m. UTC | #2
On Thu, 4 Aug 2022 at 06:16, Cédric Le Goater <clg@kaod.org> wrote:
>
> On 8/4/22 05:55, Joel Stanley wrote:
> > Romulus was the OpenPOWER reference platform for the IBM Power9,
> > containing an ASPEED AST2500.
> >
> > It was designed by IBM and built by SuperMicro. This reference platform
> > was sold as the Raptor Computing Systems Tallos II.
> >
> > The machine used one 32MB SPI NOR for the BMC, a second SPI NOR flash
> > for the host firmware, and the Broadcom BCM5719 attached via NC-SI.
> >
> > Signed-off-by: Joel Stanley <joel@jms.id.au>
>
> I have been using a similar patch for a while (QEMU purpose only)
>
> Reviewed-by: Cédric Le Goater <clg@kaod.org>

Thanks!

>
> Which defconfig are you using ?

the evb-ast2500_defconfig in the openbmc tree worked for me. I tested
an openbmc build using this patch:

https://gerrit.openbmc.org/c/openbmc/openbmc/+/56133

I haven't double checked the environment yet. It appeared to work at
runtime, but I'm not sure if it's at the correct location

OpenBMC doesn't seem to correctly program an environment into the
flash image for the 2500 like we do for the p10bmc eMMC image.
diff mbox series

Patch

diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index c1f24a14a615..6c34b8333634 100755
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
@@ -679,6 +679,7 @@  dtb-$(CONFIG_ARCH_ASPEED) += \
 	ast2400-ahe-50dc.dtb \
 	ast2400-palmetto.dtb \
 	ast2500-evb.dtb \
+	ast2500-romulus.dtb \
 	ast2600a0-evb.dtb \
 	ast2600a1-evb.dtb \
 	ast2600-bletchley.dtb \
diff --git a/arch/arm/dts/ast2500-romulus.dts b/arch/arm/dts/ast2500-romulus.dts
new file mode 100644
index 000000000000..726d3f54ff24
--- /dev/null
+++ b/arch/arm/dts/ast2500-romulus.dts
@@ -0,0 +1,76 @@ 
+// SPDX-License-Identifier: GPL-2.0+
+// Copyright 2022 IBM Corp.
+/dts-v1/;
+
+#include "ast2500-u-boot.dtsi"
+
+/ {
+	model = "Romulus BMC";
+	compatible = "ibm,romulus-bmc", "aspeed,ast2500";
+
+	memory {
+		device_type = "memory";
+		reg = <0x80000000 0x20000000>;
+	};
+
+	chosen {
+		stdout-path = &uart5;
+	};
+
+	aliases {
+		spi0 = &fmc;
+		spi1 = &spi1;
+		ethernet0 = &mac0;
+		ethernet1 = &mac1;
+	};
+};
+
+&uart5 {
+	u-boot,dm-pre-reloc;
+	status = "okay";
+};
+
+&sdrammc {
+	clock-frequency = <400000000>;
+};
+
+&wdt1 {
+	u-boot,dm-pre-reloc;
+	status = "okay";
+};
+
+&wdt2 {
+	u-boot,dm-pre-reloc;
+	status = "okay";
+};
+
+&mac0 {
+	status = "okay";
+
+	phy-mode = "NC-SI";
+	use-ncsi;
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_rmii1_default>;
+};
+
+&fmc {
+	status = "okay";
+	flash@0 {
+		status = "okay";
+		spi-max-frequency = <50000000>;
+		spi-tx-bus-width = <2>;
+		spi-rx-bus-width = <2>;
+	};
+};
+
+&spi1 {
+	status = "okay";
+	flash@0 {
+		pinctrl-names = "default";
+		pinctrl-0 = <&pinctrl_spi1_default>;
+		status = "okay";
+		spi-max-frequency = <50000000>;
+		spi-tx-bus-width = <2>;
+		spi-rx-bus-width = <2>;
+	};
+};