[U-Boot] [PATCH 14/17] ARM: SPL: Move gpmc_init() to spl_board_init()

Tom Rini trini at ti.com
Wed Aug 15 23:30:51 CEST 2012


This is an OMAP/related-specific function, move calling it to
spl_board_init() and turn on CONFIG_SPL_BOARD_INIT on the boards that
enabled NAND and didn't enable this already.

Signed-off-by: Tom Rini <trini at ti.com>
---
 arch/arm/cpu/armv7/omap-common/boot-common.c |    7 +++++++
 arch/arm/cpu/armv7/omap3/board.c             |    3 +++
 arch/arm/lib/spl_nand.c                      |    1 -
 include/configs/am3517_crane.h               |    1 +
 include/configs/am3517_evm.h                 |    1 +
 include/configs/mcx.h                        |    1 +
 include/configs/tam3517-common.h             |    1 +
 7 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/arch/arm/cpu/armv7/omap-common/boot-common.c b/arch/arm/cpu/armv7/omap-common/boot-common.c
index 3406cfb..ed398fd 100644
--- a/arch/arm/cpu/armv7/omap-common/boot-common.c
+++ b/arch/arm/cpu/armv7/omap-common/boot-common.c
@@ -49,6 +49,13 @@ u32 spl_boot_mode(void)
 	return omap_bootmode;
 }
 
+void spl_board_init(void)
+{
+#ifdef CONFIG_SPL_NAND_SUPPORT
+	gpmc_init();
+#endif
+}
+
 int board_mmc_init(bd_t *bis)
 {
 	switch (spl_boot_device()) {
diff --git a/arch/arm/cpu/armv7/omap3/board.c b/arch/arm/cpu/armv7/omap3/board.c
index 3d74f09..52196c8 100644
--- a/arch/arm/cpu/armv7/omap3/board.c
+++ b/arch/arm/cpu/armv7/omap3/board.c
@@ -106,6 +106,9 @@ int board_mmc_init(bd_t *bis)
 
 void spl_board_init(void)
 {
+#ifdef CONFIG_SPL_NAND_SUPPORT
+	gpmc_init();
+#endif
 #ifdef CONFIG_SPL_I2C_SUPPORT
 	i2c_init(CONFIG_SYS_I2C_SPEED, CONFIG_SYS_I2C_SLAVE);
 #endif
diff --git a/arch/arm/lib/spl_nand.c b/arch/arm/lib/spl_nand.c
index 3e2f359..1e6b5f0 100644
--- a/arch/arm/lib/spl_nand.c
+++ b/arch/arm/lib/spl_nand.c
@@ -35,7 +35,6 @@ void spl_nand_load_image(void)
 	int *dst __attribute__((unused));
 
 	debug("spl: nand - using hw ecc\n");
-	gpmc_init();
 	nand_init();
 
 	/*use CONFIG_SYS_TEXT_BASE as temporary storage area */
diff --git a/include/configs/am3517_crane.h b/include/configs/am3517_crane.h
index a5799d9..9f4c386 100644
--- a/include/configs/am3517_crane.h
+++ b/include/configs/am3517_crane.h
@@ -323,6 +323,7 @@
 /* Defines for SPL */
 #define CONFIG_SPL
 #define CONFIG_SPL_FRAMEWORK
+#define CONFIG_SPL_BOARD_INIT
 #define CONFIG_SPL_NAND_SIMPLE
 #define CONFIG_SPL_TEXT_BASE		0x40200800
 #define CONFIG_SPL_MAX_SIZE		(54 * 1024)	/* 8 KB for stack */
diff --git a/include/configs/am3517_evm.h b/include/configs/am3517_evm.h
index 62da56e..8f2ac89 100644
--- a/include/configs/am3517_evm.h
+++ b/include/configs/am3517_evm.h
@@ -322,6 +322,7 @@
 /* Defines for SPL */
 #define CONFIG_SPL
 #define CONFIG_SPL_FRAMEWORK
+#define CONFIG_SPL_BOARD_INIT
 #define CONFIG_SPL_NAND_SIMPLE
 #define CONFIG_SPL_TEXT_BASE		0x40200800
 #define CONFIG_SPL_MAX_SIZE		(54 * 1024)	/* 8 KB for stack */
diff --git a/include/configs/mcx.h b/include/configs/mcx.h
index d91258a..4f29da6 100644
--- a/include/configs/mcx.h
+++ b/include/configs/mcx.h
@@ -310,6 +310,7 @@
 /* Defines for SPL */
 #define CONFIG_SPL
 #define CONFIG_SPL_FRAMEWORK
+#define CONFIG_SPL_BOARD_INIT
 #define CONFIG_SPL_NAND_SIMPLE
 #define CONFIG_SPL_NAND_SOFTECC
 
diff --git a/include/configs/tam3517-common.h b/include/configs/tam3517-common.h
index 8646d94..bb2cb7c 100644
--- a/include/configs/tam3517-common.h
+++ b/include/configs/tam3517-common.h
@@ -242,6 +242,7 @@
 /* Defines for SPL */
 #define CONFIG_SPL
 #define CONFIG_SPL_FRAMEWORK
+#define CONFIG_SPL_BOARD_INIT
 #define CONFIG_SPL_CONSOLE
 #define CONFIG_SPL_NAND_SIMPLE
 #define CONFIG_SPL_NAND_SOFTECC
-- 
1.7.9.5



More information about the U-Boot mailing list