[U-Boot] [PATCH v3 15/19] SPEAr : Supporting various configurations for spear3xx and spear6xx boards
Vipin KUMAR
vipin.kumar at st.com
Thu May 6 13:18:57 CEST 2010
spear3xx and 6xx boards can be compiled in following configurations
1. Environment placed in NAND
2. console on usb device
3. console on usb device with environment placed in NAND
Also, renaming the include/configs/spearxxx.h files to spear3xx_evb.h,
spear6xx_evb.h etc to depict evaluation board configuration.
Signed-off-by: Vipin Kumar <vipin.kumar at st.com>
---
Makefile | 22 +++++++++++++----
board/spear/spear300/config.mk | 11 --------
board/spear/spear310/config.mk | 11 --------
board/spear/spear320/config.mk | 11 --------
board/spear/spear600/config.mk | 11 --------
doc/README.spear | 31 +++++++++++++++++-------
include/configs/{spear3xx.h => spear3xx_evb.h} | 10 +++++++
include/configs/{spear6xx.h => spear6xx_evb.h} | 10 +++++++
8 files changed, 59 insertions(+), 58 deletions(-)
rename include/configs/{spear3xx.h => spear3xx_evb.h} (95%)
rename include/configs/{spear6xx.h => spear6xx_evb.h} (88%)
diff --git a/Makefile b/Makefile
index 7b4678e..e8b4ac9 100644
--- a/Makefile
+++ b/Makefile
@@ -3044,12 +3044,24 @@ smdk2410_config : unconfig
@$(MKCONFIG) $(@:_config=) arm arm920t smdk2410 samsung s3c24x0
spear300_config \
+spear300_nand_config \
+spear300_usbtty_config \
+spear300_usbtty_nand_config \
spear310_config \
-spear320_config : unconfig
- @$(MKCONFIG) -n $@ -t $(@:_config=) spear3xx arm arm926ejs $(@:_config=) spear spear
-
-spear600_config : unconfig
- @$(MKCONFIG) -n $@ -t $(@:_config=) spear6xx arm arm926ejs $(@:_config=) spear spear
+spear310_nand_config \
+spear310_usbtty_config \
+spear310_usbtty_nand_config \
+spear320_config \
+spear320_nand_config \
+spear320_usbtty_config \
+spear320_usbtty_nand_config : unconfig
+ @$(MKCONFIG) -n $@ -t $(@:_config=) spear3xx_evb arm arm926ejs $(@:_config=) spear spear
+
+spear600_config \
+spear600_nand_config \
+spear600_usbtty_config \
+spear600_usbtty_nand_config : unconfig
+ @$(MKCONFIG) -n $@ -t $(@:_config=) spear6xx_evb arm arm926ejs $(@:_config=) spear spear
suen3_config: unconfig
@$(MKCONFIG) $(@:_config=) arm arm926ejs km_arm keymile kirkwood
diff --git a/board/spear/spear300/config.mk b/board/spear/spear300/config.mk
index 35646f2..0bbb40f 100644
--- a/board/spear/spear300/config.mk
+++ b/board/spear/spear300/config.mk
@@ -26,14 +26,3 @@
TEXT_BASE = 0x00700000
ALL += $(obj)u-boot.img
-
-# Environment variables in NAND
-ifeq ($(ENV),NAND)
-PLATFORM_RELFLAGS += -DCONFIG_ENV_IS_IN_NAND
-else
-PLATFORM_RELFLAGS += -DCONFIG_ENV_IS_IN_FLASH
-endif
-
-ifeq ($(CONSOLE),USB)
-PLATFORM_RELFLAGS += -DCONFIG_SPEAR_USBTTY
-endif
diff --git a/board/spear/spear310/config.mk b/board/spear/spear310/config.mk
index cba8436..c8264c3 100644
--- a/board/spear/spear310/config.mk
+++ b/board/spear/spear310/config.mk
@@ -27,18 +27,7 @@ TEXT_BASE = 0x00700000
ALL += $(obj)u-boot.img
-# Environment variables in NAND
-ifeq ($(ENV),NAND)
-PLATFORM_RELFLAGS += -DCONFIG_ENV_IS_IN_NAND
-else
-PLATFORM_RELFLAGS += -DCONFIG_ENV_IS_IN_FLASH
-endif
-
# Support parallel flash
ifeq ($(FLASH),PNOR)
PLATFORM_RELFLAGS += -DCONFIG_FLASH_PNOR
endif
-
-ifeq ($(CONSOLE),USB)
-PLATFORM_RELFLAGS += -DCONFIG_SPEAR_USBTTY
-endif
diff --git a/board/spear/spear320/config.mk b/board/spear/spear320/config.mk
index cba8436..c8264c3 100644
--- a/board/spear/spear320/config.mk
+++ b/board/spear/spear320/config.mk
@@ -27,18 +27,7 @@ TEXT_BASE = 0x00700000
ALL += $(obj)u-boot.img
-# Environment variables in NAND
-ifeq ($(ENV),NAND)
-PLATFORM_RELFLAGS += -DCONFIG_ENV_IS_IN_NAND
-else
-PLATFORM_RELFLAGS += -DCONFIG_ENV_IS_IN_FLASH
-endif
-
# Support parallel flash
ifeq ($(FLASH),PNOR)
PLATFORM_RELFLAGS += -DCONFIG_FLASH_PNOR
endif
-
-ifeq ($(CONSOLE),USB)
-PLATFORM_RELFLAGS += -DCONFIG_SPEAR_USBTTY
-endif
diff --git a/board/spear/spear600/config.mk b/board/spear/spear600/config.mk
index 35646f2..0bbb40f 100644
--- a/board/spear/spear600/config.mk
+++ b/board/spear/spear600/config.mk
@@ -26,14 +26,3 @@
TEXT_BASE = 0x00700000
ALL += $(obj)u-boot.img
-
-# Environment variables in NAND
-ifeq ($(ENV),NAND)
-PLATFORM_RELFLAGS += -DCONFIG_ENV_IS_IN_NAND
-else
-PLATFORM_RELFLAGS += -DCONFIG_ENV_IS_IN_FLASH
-endif
-
-ifeq ($(CONSOLE),USB)
-PLATFORM_RELFLAGS += -DCONFIG_SPEAR_USBTTY
-endif
diff --git a/doc/README.spear b/doc/README.spear
index a6ff7fd..3161e64 100644
--- a/doc/README.spear
+++ b/doc/README.spear
@@ -6,9 +6,9 @@ SPEAr600 is also known as SPEArPlus and SPEAr300 is also known as SPEArBasic
The SPEAr SoC family embeds a customizable logic that can be programmed
one-time by a customer at silicon mask level (i.e. not at runtime!).
-We are now adding the support in u-boot for two SoC: SPEAr600 and SPEAr3xx.
+U-Boot supports four SoCs: SPEAr600, SPEAr3xx
-All 4 SoCs share common peripherals.
+All 4 SoCs (SPEAr3xx and SPEAr600) share common peripherals.
1. ARM926ejs core based (sp600 has two cores, the 2nd handled only in Linux)
2. FastEthernet (sp600 has Gbit version, but same controller - GMAC)
@@ -22,7 +22,7 @@ All 4 SoCs share common peripherals.
10. others ..
Everything is supported in Linux.
-u-boot is not currently supporting all peripeharls (just a few as listed below).
+u-boot is currently not supporting all peripeharls (just a few as listed below).
1. USB Device
2. NAND controller (FSMC)
3. Serial Memory Interface
@@ -32,17 +32,30 @@ u-boot is not currently supporting all peripeharls (just a few as listed below).
Build options
make spear600_config
+ spear600 build with environment variables placed at default
+ location i.e. Serial NOR device
+ make spear600_nand_config
+ spear600 build with environment variables placed in NAND device
+ make spear600_usbtty_config
+ spear600 build with usbtty terminal as default and environment
+ placed at default location
+ make spear600_usbtty_nand_config
+ Build with usbtty terminal as default and environment placed in
+ NAND device
make spear300_config
+ make spear300_nand_config
+ make spear300_usbtty_config
+ make spear300_usbtty_nand_config
make spear310_config
+ make spear310_nand_config
+ make spear310_usbtty_config
+ make spear310_usbtty_nand_config
make spear320_config
+ make spear320_nand_config
+ make spear320_usbtty_config
+ make spear320_usbtty_nand_config
Further options
- make ENV=NAND (supported by all 4 SoCs)
- - This option generates a uboot image that saves environment inn NAND
-
- make CONSOLE=USB (supported by all 4 SoCs)
- - This option generates a uboot image for using usbdevice as a tty i/f
-
make FLASH=PNOR (supported by SPEAr310 and SPEAr320)
- This option generates a uboot image that supports emi controller for
CFI compliant parallel NOR flash
diff --git a/include/configs/spear3xx.h b/include/configs/spear3xx_evb.h
similarity index 95%
rename from include/configs/spear3xx.h
rename to include/configs/spear3xx_evb.h
index fde505c..f0c915e 100644
--- a/include/configs/spear3xx.h
+++ b/include/configs/spear3xx_evb.h
@@ -39,6 +39,16 @@
#define CONFIG_SPEAR320 1
#endif
+#if defined(CONFIG_MK_usbtty)
+#define CONFIG_SPEAR_USBTTY 1
+#endif
+
+#if defined(CONFIG_MK_nand)
+#define CONFIG_ENV_IS_IN_NAND 1
+#else
+#define CONFIG_ENV_IS_IN_FLASH 1
+#endif
+
#include <configs/spear-common.h>
/* Ethernet driver configuration */
diff --git a/include/configs/spear6xx.h b/include/configs/spear6xx_evb.h
similarity index 88%
rename from include/configs/spear6xx.h
rename to include/configs/spear6xx_evb.h
index 2532344..82d24df 100644
--- a/include/configs/spear6xx.h
+++ b/include/configs/spear6xx_evb.h
@@ -30,6 +30,16 @@
*/
#define CONFIG_SPEAR600 1
+#if defined(CONFIG_MK_usbtty)
+#define CONFIG_SPEAR_USBTTY 1
+#endif
+
+#if defined(CONFIG_MK_nand)
+#define CONFIG_ENV_IS_IN_NAND 1
+#else
+#define CONFIG_ENV_IS_IN_FLASH 1
+#endif
+
#include <configs/spear-common.h>
/* Serial Configuration (PL011) */
--
1.6.0.2
More information about the U-Boot
mailing list