Skip to contentSkip to conversation

arm: socfpga: Repair SoCrates board

PATCH Superseded Marek Vasut 1 participant 2 messages Nov 23, 2015 – Nov 24, 2015

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 arm: socfpga: Repair SoCrates board

This board was constantly parasiting on the CV SoCDK, so split it into it's own separate directory. Moreover, the board config was missing important bits, like simple-bus support in SPL, the DRAM configuration was incorrect and the DTS was also missing the pre reloc bits.

Cc Stefan Roese <[email protected]>
Cc Dinh Nguyen <[email protected]>
Cc Dinh Nguyen <[email protected]>
Cc Jan Viktorin <[email protected]>
---
 arch/arm/dts/socfpga_cyclone5_socrates.dts |   5 +
 arch/arm/mach-socfpga/Kconfig              |   7 +
 board/ebv/socrates/MAINTAINERS             |   6 +
 board/ebv/socrates/Makefile                |   9 +
 board/ebv/socrates/qts/iocsr_config.h      | 660 +++++++++++++++++++++++++++++
 board/ebv/socrates/qts/pinmux_config.h     | 219 ++++++++++
 board/ebv/socrates/qts/pll_config.h        |  85 ++++
 board/ebv/socrates/qts/sdram_config.h      | 341 +++++++++++++++
 board/ebv/socrates/socfpga.c               |  85 ++++
 configs/socfpga_socrates_defconfig         |   3 +-
 include/configs/socfpga_socrates.h         |  96 +++++
 11 files changed, 1515 insertions(+), 1 deletion(-)
 create mode 100644 board/ebv/socrates/MAINTAINERS
 create mode 100644 board/ebv/socrates/Makefile
 create mode 100644 board/ebv/socrates/qts/iocsr_config.h
 create mode 100644 board/ebv/socrates/qts/pinmux_config.h
 create mode 100644 board/ebv/socrates/qts/pll_config.h
 create mode 100644 board/ebv/socrates/qts/sdram_config.h
 create mode 100644 board/ebv/socrates/socfpga.c
 create mode 100644 include/configs/socfpga_socrates.h

V2: Drop CONFIG_CMD_GPIO from socfpga_socrates.h
Use the socfpga_socrates.h in arch/arm/mach-socfpga/Kconfig

arch/arm/dts/socfpga_cyclone5_socrates.dts +5 -0
index 6782691..05b935d 100644
@@ -19,6 +19,10 @@
 		device_type = "memory";
 		reg = <0x0 0x40000000>; /* 1GB */
 	};
+
+	soc {
+		u-boot,dm-pre-reloc;
+	};
 };
 
 &gmac1 {
@@ -37,6 +41,7 @@
 
 &mmc0 {
 	status = "okay";
+	u-boot,dm-pre-reloc;
 };
 
 &qspi {
arch/arm/mach-socfpga/Kconfig +7 -0
index a413ea4..e4cc468 100644
@@ -22,6 +22,10 @@ config TARGET_SOCFPGA_DENX_MCVEVK
 	bool "DENX MCVEVK (Cyclone V)"
 	select TARGET_SOCFPGA_CYCLONE5
 
+config TARGET_SOCFPGA_EBV_SOCRATES
+	bool "EBV SoCrates (Cyclone V)"
+	select TARGET_SOCFPGA_CYCLONE5
+
 config TARGET_SOCFPGA_TERASIC_DE0_NANO
 	bool "Terasic DE0-Nano-Atlas (Cyclone V)"
 	select TARGET_SOCFPGA_CYCLONE5
@@ -38,11 +42,13 @@ config SYS_BOARD
 	default "de0-nano-soc" if TARGET_SOCFPGA_TERASIC_DE0_NANO
 	default "mcvevk" if TARGET_SOCFPGA_DENX_MCVEVK
 	default "sockit" if TARGET_SOCFPGA_TERASIC_SOCKIT
+	default "socrates" if TARGET_SOCFPGA_EBV_SOCRATES
 
 config SYS_VENDOR
 	default "altera" if TARGET_SOCFPGA_ARRIA5_SOCDK
 	default "altera" if TARGET_SOCFPGA_CYCLONE5_SOCDK
 	default "denx" if TARGET_SOCFPGA_DENX_MCVEVK
+	default "ebv" if TARGET_SOCFPGA_EBV_SOCRATES
 	default "terasic" if TARGET_SOCFPGA_TERASIC_DE0_NANO
 	default "terasic" if TARGET_SOCFPGA_TERASIC_SOCKIT
 
@@ -55,5 +61,6 @@ config SYS_CONFIG_NAME
 	default "socfpga_de0_nano_soc" if TARGET_SOCFPGA_TERASIC_DE0_NANO
 	default "socfpga_mcvevk" if TARGET_SOCFPGA_DENX_MCVEVK
 	default "socfpga_sockit" if TARGET_SOCFPGA_TERASIC_SOCKIT
+	default "socfpga_socrates" if TARGET_SOCFPGA_EBV_SOCRATES
 
 endif
board/ebv/socrates/MAINTAINERS new file +6 -0
new file mode 100644
index 0000000..e48236f
@@ -0,0 +1,6 @@
+SOCRATES BOARD
+M:	Stefan Roese <[email protected]>
+S:	Maintained
+F:	board/ebv/socrates/
+F:	include/configs/socfpga_socrates.h
+F:	configs/socfpga_socrates_defconfig
board/ebv/socrates/Makefile new file +9 -0
new file mode 100644
index 0000000..86f9b78
@@ -0,0 +1,9 @@
+#
+# (C) Copyright 2001-2006
+# Wolfgang Denk, DENX Software Engineering, wd at denx.de.
+# (C) Copyright 2010, Thomas Chou <[email protected]>
+#
+# SPDX-License-Identifier:	GPL-2.0+
+#
+
+obj-y	:= socfpga.o
board/ebv/socrates/qts/iocsr_config.h new file +660 -0

660 lines not on this page · raw message

board/ebv/socrates/qts/pinmux_config.h new file +219 -0

219 lines not on this page · raw message

board/ebv/socrates/qts/pll_config.h new file +85 -0

85 lines not on this page · raw message

board/ebv/socrates/qts/sdram_config.h new file +341 -0

341 lines not on this page · raw message

board/ebv/socrates/socfpga.c new file +85 -0

85 lines not on this page · raw message

configs/socfpga_socrates_defconfig +2 -1
index 07b8447..90a8fb1 100644
@@ -3,7 +3,7 @@ CONFIG_ARCH_SOCFPGA=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_SPL_DM=y
 CONFIG_DM_GPIO=y
-CONFIG_TARGET_SOCFPGA_CYCLONE5_SOCDK=y
+CONFIG_TARGET_SOCFPGA_EBV_SOCRATES=y
 CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_socrates"
 CONFIG_SPL=y
@@ -11,6 +11,7 @@ CONFIG_SPL_STACK_R=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
+CONFIG_SPL_SIMPLE_BUS=y
 CONFIG_DWAPB_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_DM_ETH=y
include/configs/socfpga_socrates.h new file +96 -0

96 lines not on this page · raw message

Signature · 1 line
2.1.4
author Applied
#1 lore raw

PATCH v2 1/1 arm: socfpga: Repair SoCrates board

Quoted 11 lines · Marek Vasut

This board was constantly parasiting on the CV SoCDK, so split it into it's own separate directory. Moreover, the board config was missing important bits, like simple-bus support in SPL, the DRAM configuration was incorrect and the DTS was also missing the pre reloc bits.

Cc Stefan Roese <[email protected]>
Cc Dinh Nguyen <[email protected]>
Cc Dinh Nguyen <[email protected]>
Cc Jan Viktorin <[email protected]>

Applied, thanks.

Best regards,
Marek Vasut