[PATCH u-boot v2019.04-aspeed-openbmc 1/4] arm/dts: Add Genesis3 board

Patrick Rudolph patrick.rudolph at 9elements.com
Wed Apr 20 20:24:59 AEST 2022


Add IBM Genesis3 board and devicetree source file.

Signed-off-by: Patrick Rudolph <patrick.rudolph at 9elements.com>
---
 arch/arm/dts/Makefile                |  1 +
 arch/arm/dts/ibm-genesis3.dts        | 83 ++++++++++++++++++++++++++++
 arch/arm/mach-aspeed/ast2500/Kconfig | 11 ++++
 board/ibm/genesis3/Kconfig           | 13 +++++
 board/ibm/genesis3/Makefile          |  1 +
 board/ibm/genesis3/ibm_genesis3.c    |  5 ++
 include/configs/ibm_genesis3.h       | 19 +++++++
 7 files changed, 133 insertions(+)
 create mode 100644 arch/arm/dts/ibm-genesis3.dts
 create mode 100644 board/ibm/genesis3/Kconfig
 create mode 100644 board/ibm/genesis3/Makefile
 create mode 100644 board/ibm/genesis3/ibm_genesis3.c
 create mode 100644 include/configs/ibm_genesis3.h

diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index a79f885f54..fae23e6bc1 100755
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
@@ -677,6 +677,7 @@ dtb-$(CONFIG_ARCH_BCM6858) += \
 dtb-$(CONFIG_ARCH_ASPEED) += \
 	ast2400-evb.dtb \
 	ast2500-evb.dtb \
+	ibm-genesis3.dtb \
 	ast2600a0-evb.dtb \
 	ast2600a1-evb.dtb \
 	ast2600-bletchley.dtb \
diff --git a/arch/arm/dts/ibm-genesis3.dts b/arch/arm/dts/ibm-genesis3.dts
new file mode 100644
index 0000000000..ba610c9032
--- /dev/null
+++ b/arch/arm/dts/ibm-genesis3.dts
@@ -0,0 +1,83 @@
+/dts-v1/;
+
+#include "ast2500-u-boot.dtsi"
+
+/ {
+        model = "IBM Genesis3";
+        compatible = "ibm,genesis3", "aspeed,ast2500";
+
+	memory {
+		device_type = "memory";
+		reg = <0x80000000 0x20000000>;
+	};
+
+	chosen {
+		stdout-path = &uart5;
+	};
+
+	aliases {
+		spi0 = &fmc;
+		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";
+};
+
+&wdt3 {
+	u-boot,dm-pre-reloc;
+	status = "okay";
+};
+
+&mac0 {
+	status = "okay";
+	phy-mode = "rgmii";
+
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_mac1link_default &pinctrl_mdio1_default>;
+};
+
+&mac1 {
+	status = "okay";
+	phy-mode = "rgmii";
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_mac2link_default &pinctrl_mdio2_default>;
+};
+
+&fmc {
+	status = "okay";
+	timing-calibration-disabled;
+	flash at 0 {
+		compatible = "spi-flash", "spansion,s25fl256l";
+		status = "okay";
+		spi-max-frequency = <50000000>;
+		spi-tx-bus-width = <2>;
+		spi-rx-bus-width = <2>;
+	};
+
+	flash at 1 {
+                compatible = "spi-flash", "spansion,s25fl256l";
+                status = "okay";
+                spi-max-frequency = <50000000>;
+                spi-tx-bus-width = <2>;
+                spi-rx-bus-width = <2>;
+        };
+};
+
diff --git a/arch/arm/mach-aspeed/ast2500/Kconfig b/arch/arm/mach-aspeed/ast2500/Kconfig
index 4f992f442d..81c4fd0c2f 100644
--- a/arch/arm/mach-aspeed/ast2500/Kconfig
+++ b/arch/arm/mach-aspeed/ast2500/Kconfig
@@ -15,8 +15,19 @@ config TARGET_EVB_AST2500
 	  It has 512M of RAM, 32M of SPI flash, two Ethernet ports,
 	  4 Serial ports, 4 USB ports, VGA port, PCIe, SD card slot,
 	  20 pin JTAG, pinouts for 14 I2Cs, 3 SPIs and eSPI, 8 PWMs.
+
+config TARGET_IBM_GENESIS3
+	bool "IBM-Genesis3"
+	help
+	  IBM Genesis3 is an IBM evaluation board for Intel Xeon
+	  and AST2500 BMC. It has 512M of RAM, 32M of SPI flash,
+	  two Ethernet ports, 1 debug uart, 1 USB ports and 1 PCIe
+	  port connected to the PCH.
+	  It has support for JTAG, pinouts for 9 I2Cs and eSPI.
+
 endchoice
 
 source "board/aspeed/evb_ast2500/Kconfig"
+source "board/ibm/genesis3/Kconfig"
 
 endif
diff --git a/board/ibm/genesis3/Kconfig b/board/ibm/genesis3/Kconfig
new file mode 100644
index 0000000000..09fe60262b
--- /dev/null
+++ b/board/ibm/genesis3/Kconfig
@@ -0,0 +1,13 @@
+if TARGET_IBM_GENESIS3
+
+config SYS_BOARD
+	default "genesis3"
+
+config SYS_VENDOR
+	default "ibm"
+
+config SYS_CONFIG_NAME
+	string "board configuration name"
+	default "ibm_genesis3"
+
+endif
diff --git a/board/ibm/genesis3/Makefile b/board/ibm/genesis3/Makefile
new file mode 100644
index 0000000000..2bb8917fab
--- /dev/null
+++ b/board/ibm/genesis3/Makefile
@@ -0,0 +1 @@
+obj-y += ibm_genesis3.o
diff --git a/board/ibm/genesis3/ibm_genesis3.c b/board/ibm/genesis3/ibm_genesis3.c
new file mode 100644
index 0000000000..9de8531806
--- /dev/null
+++ b/board/ibm/genesis3/ibm_genesis3.c
@@ -0,0 +1,5 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Copyright (c) 2022 9elements GmbH
+ */
+#include <common.h>
diff --git a/include/configs/ibm_genesis3.h b/include/configs/ibm_genesis3.h
new file mode 100644
index 0000000000..f40aeed8a9
--- /dev/null
+++ b/include/configs/ibm_genesis3.h
@@ -0,0 +1,19 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * Copyright 2022 9elements GmbH.
+ */
+
+#ifndef __CONFIG_H
+#define __CONFIG_H
+
+#include <configs/aspeed-common.h>
+
+#define CONFIG_SYS_MEMTEST_START	(CONFIG_SYS_SDRAM_BASE + 0x300000)
+#define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MEMTEST_START + 0x5000000)
+
+#define CONFIG_SYS_UBOOT_BASE		CONFIG_SYS_TEXT_BASE
+
+/* Memory Info */
+#define CONFIG_SYS_LOAD_ADDR		0x83000000
+
+#endif	/* __CONFIG_H */
-- 
2.35.1



More information about the openbmc mailing list