Skip to contentSkip to conversation

keystone2: config: customize uboot environment

PATCH New Ivan Khoronzhuk 2 participants 7 messages Nov 4, 2014 – Nov 5, 2014

lore
Share & tools
lore
#0 lore raw

cover keystone2: config: customize uboot environment

Customize default uboot environment in order to simplify it's support and to align with current MCSDK.

Based on "[U-boot] [Patch 0/2] keystone2: change default boot mode to ubi"
https://www.mail-archive.com/u-boot at lists.denx.de/msg152442.html

Ivan Khoronzhuk (1):
keystone2: config: align names of images with MCSDK

Murali Karicheri (1):
keystone2: config: restructure handling of default env settings

 include/configs/k2e_evm.h  | 17 +++++++++--------
 include/configs/k2hk_evm.h | 17 +++++++++--------
 include/configs/k2l_evm.h  | 17 +++++++++--------
 include/configs/ks2_evm.h  | 10 ++--------
 4 files changed, 29 insertions(+), 32 deletions(-)
Signature · 1 line
1.9.1
#1 lore raw

PATCH 1/2 keystone2: config: restructure handling of default env settings

From: Murali Karicheri <[email protected]>

Currently to customize env for various ks2 boards, individual variables such as NAME_FS etc are defined and included in the common config.h to define CONFIG_EXTRA_ENV_SETTINGS. This doesn't scale well if a variable is not applicable on a specific board. Using this scheme, we have to define variables with empty value and it's ugly. Instead, to allow board specific customization of default env variable, define a common CONFIG_EXTRA_ENV_KS2_SETTINGS for all common variables and define board specific variables in individual board specific config.h using CONFIG_EXTRA_ENV_KS2_BOARD_SETTINGS. Use the common and board specific variables to define CONFIG_EXTRA_ENV_SETTINGS. This way more variables can be added in future for individual boards without affecting the other config.h files.

---
 include/configs/k2e_evm.h  | 16 ++++++++--------
 include/configs/k2hk_evm.h | 16 ++++++++--------
 include/configs/k2l_evm.h  | 16 ++++++++--------
 include/configs/ks2_evm.h  |  7 +------
 4 files changed, 25 insertions(+), 30 deletions(-)
include/configs/k2e_evm.h +8 -8
index 8c3a0c0..6b87f6c 100644
@@ -17,14 +17,14 @@
 /* U-Boot general configuration */
 #define CONFIG_SYS_PROMPT               "K2E EVM # "
 
-#define KS2_ARGS_UBI   "args_ubi=setenv bootargs ${bootargs} rootfstype=ubifs "\
-		       "root=ubi0:rootfs rootflags=sync rw ubi.mtd=2,2048\0"
-
-#define KS2_FDT_NAME   "name_fdt=k2e-evm.dtb\0"
-#define KS2_ADDR_MON   "addr_mon=0x0c140000\0"
-#define KS2_NAME_MON   "name_mon=skern-k2e-evm.bin\0"
-#define NAME_UBOOT     "name_uboot=u-boot-spi-k2e-evm.gph\0"
-#define NAME_UBI       "name_ubi=k2e-evm-ubifs.ubi\0"
+#define CONFIG_EXTRA_ENV_KS2_BOARD_SETTINGS				\
+	"addr_mon=0x0c140000\0"						\
+	"args_ubi=setenv bootargs ${bootargs} rootfstype=ubifs "	\
+	"root=ubi0:rootfs rootflags=sync rw ubi.mtd=2,2048\0"		\
+	"name_fdt=k2e-evm.dtb\0"					\
+	"name_mon=skern-k2e-evm.bin\0"					\
+	"name_ubi=k2e-evm-ubifs.ubi\0"					\
+	"name_uboot=u-boot-spi-k2e-evm.gph\0"
 
 #include <configs/ks2_evm.h>
 
include/configs/k2hk_evm.h +8 -8
index ebf4630..33e43eb 100644
@@ -17,14 +17,14 @@
 /* U-Boot general configuration */
 #define CONFIG_SYS_PROMPT               "K2HK EVM # "
 
-#define KS2_ARGS_UBI   "args_ubi=setenv bootargs ${bootargs} rootfstype=ubifs "\
-		       "root=ubi0:rootfs rootflags=sync rw ubi.mtd=2,2048\0"
-
-#define KS2_FDT_NAME   "name_fdt=k2hk-evm.dtb\0"
-#define KS2_ADDR_MON   "addr_mon=0x0c5f0000\0"
-#define KS2_NAME_MON   "name_mon=skern-k2hk-evm.bin\0"
-#define NAME_UBOOT     "name_uboot=u-boot-spi-k2hk-evm.gph\0"
-#define NAME_UBI       "name_ubi=k2hk-evm-ubifs.ubi\0"
+#define CONFIG_EXTRA_ENV_KS2_BOARD_SETTINGS				\
+	"addr_mon=0x0c5f0000\0"						\
+	"args_ubi=setenv bootargs ${bootargs} rootfstype=ubifs "	\
+	"root=ubi0:rootfs rootflags=sync rw ubi.mtd=2,2048\0"		\
+	"name_fdt=k2hk-evm.dtb\0"					\
+	"name_mon=skern-k2hk-evm.bin\0"					\
+	"name_ubi=k2hk-evm-ubifs.ubi\0"					\
+	"name_uboot=u-boot-spi-k2hk-evm.gph\0"
 
 #include <configs/ks2_evm.h>
 
include/configs/k2l_evm.h +8 -8
index ec0d543..07326fc 100644
@@ -17,14 +17,14 @@
 /* U-Boot general configuration */
 #define CONFIG_SYS_PROMPT		"K2L EVM # "
 
-#define KS2_ARGS_UBI   "args_ubi=setenv bootargs ${bootargs} rootfstype=ubifs "\
-		       "root=ubi0:rootfs rootflags=sync rw ubi.mtd=2,4096\0"
-
-#define KS2_FDT_NAME	"name_fdt=k2l-evm.dtb\0"
-#define KS2_ADDR_MON	"addr_mon=0x0c140000\0"
-#define KS2_NAME_MON	"name_mon=skern-k2l-evm.bin\0"
-#define NAME_UBOOT	"name_uboot=u-boot-spi-k2l-evm.gph\0"
-#define NAME_UBI	"name_ubi=k2l-evm-ubifs.ubi\0"
+#define CONFIG_EXTRA_ENV_KS2_BOARD_SETTINGS				\
+	"addr_mon=0x0c140000\0"						\
+	"args_ubi=setenv bootargs ${bootargs} rootfstype=ubifs "	\
+	"root=ubi0:rootfs rootflags=sync rw ubi.mtd=2,4096\0"		\
+	"name_fdt=k2l-evm.dtb\0"					\
+	"name_mon=skern-k2l-evm.bin\0"					\
+	"name_ubi=k2l-evm-ubifs.ubi\0"					\
+	"name_uboot=u-boot-spi-k2l-evm.gph\0"
 
 #include <configs/ks2_evm.h>
 
include/configs/ks2_evm.h +1 -6
index f7585ba..19273d9 100644
@@ -247,6 +247,7 @@
 #define CONFIG_BOOTDELAY		3
 #define CONFIG_BOOTFILE			"uImage"
 #define CONFIG_EXTRA_ENV_SETTINGS					\
+	CONFIG_EXTRA_ENV_KS2_BOARD_SETTINGS				\
 	"boot=ubi\0"							\
 	"tftp_root=/\0"							\
 	"nfs_root=/export\0"						\
@@ -254,18 +255,13 @@
 	"mem_reserve=512M\0"						\
 	"addr_fdt=0x87000000\0"						\
 	"addr_kern=0x88000000\0"					\
-	KS2_ADDR_MON							\
 	"addr_uboot=0x87000000\0"					\
 	"addr_fs=0x82000000\0"						\
 	"addr_ubi=0x82000000\0"						\
 	"addr_secdb_key=0xc000000\0"					\
 	"fdt_high=0xffffffff\0"						\
-	KS2_FDT_NAME							\
 	"name_fs=arago-console-image.cpio.gz\0"				\
 	"name_kern=uImage\0"						\
-	KS2_NAME_MON							\
-	NAME_UBOOT							\
-	NAME_UBI							\
 	"run_mon=mon_install ${addr_mon}\0"				\
 	"run_kern=bootm ${addr_kern} - ${addr_fdt}\0"			\
 	"init_net=run args_all args_net\0"				\
@@ -284,7 +280,6 @@
 	"burn_uboot_nand=nand erase 0 0x100000; "			\
 		"nand write ${addr_uboot} 0 ${filesize}\0"		\
 	"args_all=setenv bootargs console=ttyS0,115200n8 rootwait=1\0"	\
-	KS2_ARGS_UBI							\
 	"args_net=setenv bootargs ${bootargs} rootfstype=nfs "		\
 		"root=/dev/nfs rw nfsroot=${serverip}:${nfs_root},"	\
 		"${nfs_options} ip=dhcp\0"				\
Signature · 1 line
1.9.1
#2 lore raw

PATCH 1/2 keystone2: config: restructure handling of default env settings

Quoted 16 lines · Ivan Khoronzhuk

From: Murali Karicheri <[email protected]>

Currently to customize env for various ks2 boards, individual variables such as NAME_FS etc are defined and included in the common config.h to define CONFIG_EXTRA_ENV_SETTINGS. This doesn't scale well if a variable is not applicable on a specific board. Using this scheme, we have to define variables with empty value and it's ugly. Instead, to allow board specific customization of default env variable, define a common CONFIG_EXTRA_ENV_KS2_SETTINGS for all common variables and define board specific variables in individual board specific config.h using CONFIG_EXTRA_ENV_KS2_BOARD_SETTINGS. Use the common and board specific variables to define CONFIG_EXTRA_ENV_SETTINGS. This way more variables can be added in future for individual boards without affecting the other config.h files.

Quoted 2 lines
Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20141104/964ada8f/attachment.pgp>
#3 lore raw

PATCH 1/2 keystone2: config: restructure handling of default env settings

In reply to Ivan Khoronzhuk
Quoted 16 lines · Ivan

From: Murali Karicheri <[email protected]>

Currently to customize env for various ks2 boards, individual variables such as NAME_FS etc are defined and included in the common config.h to define CONFIG_EXTRA_ENV_SETTINGS. This doesn't scale well if a variable is not applicable on a specific board. Using this scheme, we have to define variables with empty value and it's ugly. Instead, to allow board specific customization of default env variable, define a common CONFIG_EXTRA_ENV_KS2_SETTINGS for all common variables and define board specific variables in individual board specific config.h using CONFIG_EXTRA_ENV_KS2_BOARD_SETTINGS. Use the common and board specific variables to define CONFIG_EXTRA_ENV_SETTINGS. This way more variables can be added in future for individual boards without affecting the other config.h files.

Quoted 3 lines

Applied to u-boot-ti/master, thanks!

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20141105/beb377d2/attachment.pgp>
#4 lore raw

PATCH 2/2 keystone2: config: align names of images with MCSDK

In reply to Ivan Khoronzhuk

The Multicore Software Development Kit (MCSDK) provides foundational software for TI KeyStone II device platforms. It's supposed to be used with uboot, and it's convenient to have the same names for images, so correct environment image names according to the last MCSDK3.

---
 include/configs/k2e_evm.h  | 5 +++--
 include/configs/k2hk_evm.h | 5 +++--
 include/configs/k2l_evm.h  | 5 +++--
 include/configs/ks2_evm.h  | 3 +--
 4 files changed, 10 insertions(+), 8 deletions(-)
include/configs/k2e_evm.h +3 -2
index 6b87f6c..d83e07e 100644
@@ -21,10 +21,11 @@
 	"addr_mon=0x0c140000\0"						\
 	"args_ubi=setenv bootargs ${bootargs} rootfstype=ubifs "	\
 	"root=ubi0:rootfs rootflags=sync rw ubi.mtd=2,2048\0"		\
-	"name_fdt=k2e-evm.dtb\0"					\
+	"name_fdt=uImage-k2e-evm.dtb\0"					\
 	"name_mon=skern-k2e-evm.bin\0"					\
 	"name_ubi=k2e-evm-ubifs.ubi\0"					\
-	"name_uboot=u-boot-spi-k2e-evm.gph\0"
+	"name_uboot=u-boot-spi-k2e-evm.gph\0"				\
+	"name_fs=arago-console-image-k2e-evm.cpio.gz\0"
 
 #include <configs/ks2_evm.h>
 
include/configs/k2hk_evm.h +3 -2
index 33e43eb..ffddf13 100644
@@ -21,10 +21,11 @@
 	"addr_mon=0x0c5f0000\0"						\
 	"args_ubi=setenv bootargs ${bootargs} rootfstype=ubifs "	\
 	"root=ubi0:rootfs rootflags=sync rw ubi.mtd=2,2048\0"		\
-	"name_fdt=k2hk-evm.dtb\0"					\
+	"name_fdt=uImage-k2hk-evm.dtb\0"				\
 	"name_mon=skern-k2hk-evm.bin\0"					\
 	"name_ubi=k2hk-evm-ubifs.ubi\0"					\
-	"name_uboot=u-boot-spi-k2hk-evm.gph\0"
+	"name_uboot=u-boot-spi-k2hk-evm.gph\0"				\
+	"name_fs=arago-console-image-k2hk-evm.cpio.gz\0"
 
 #include <configs/ks2_evm.h>
 
include/configs/k2l_evm.h +3 -2
index 07326fc..805164a 100644
@@ -21,10 +21,11 @@
 	"addr_mon=0x0c140000\0"						\
 	"args_ubi=setenv bootargs ${bootargs} rootfstype=ubifs "	\
 	"root=ubi0:rootfs rootflags=sync rw ubi.mtd=2,4096\0"		\
-	"name_fdt=k2l-evm.dtb\0"					\
+	"name_fdt=uImage-k2l-evm.dtb\0"					\
 	"name_mon=skern-k2l-evm.bin\0"					\
 	"name_ubi=k2l-evm-ubifs.ubi\0"					\
-	"name_uboot=u-boot-spi-k2l-evm.gph\0"
+	"name_uboot=u-boot-spi-k2l-evm.gph\0"				\
+	"name_fs=arago-console-image-k2l-evm.cpio.gz\0"
 
 #include <configs/ks2_evm.h>
 
include/configs/ks2_evm.h +1 -2
index 19273d9..e4890ba 100644
@@ -260,8 +260,7 @@
 	"addr_ubi=0x82000000\0"						\
 	"addr_secdb_key=0xc000000\0"					\
 	"fdt_high=0xffffffff\0"						\
-	"name_fs=arago-console-image.cpio.gz\0"				\
-	"name_kern=uImage\0"						\
+	"name_kern=uImage-keystone-evm.bin\0"				\
 	"run_mon=mon_install ${addr_mon}\0"				\
 	"run_kern=bootm ${addr_kern} - ${addr_fdt}\0"			\
 	"init_net=run args_all args_net\0"				\
Signature · 1 line
1.9.1
#5 lore raw

PATCH 2/2 keystone2: config: align names of images with MCSDK

Quoted 6 lines · Ivan Khoronzhuk

The Multicore Software Development Kit (MCSDK) provides foundational software for TI KeyStone II device platforms. It's supposed to be used with uboot, and it's convenient to have the same names for images, so correct environment image names according to the last MCSDK3.

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20141104/00c5428d/attachment.pgp>
#6 lore raw

PATCH 2/2 keystone2: config: align names of images with MCSDK

In reply to Ivan Khoronzhuk
Quoted 7 lines · Ivan

The Multicore Software Development Kit (MCSDK) provides foundational software for TI KeyStone II device platforms. It's supposed to be used with uboot, and it's convenient to have the same names for images, so correct environment image names according to the last MCSDK3.

Applied to u-boot-ti/master, thanks!

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20141105/b246ef17/attachment.pgp>