summaryrefslogtreecommitdiff
path: root/include/config_distro_bootcmd.h
diff options
context:
space:
mode:
authorDerald D. Woods <woods.technical@gmail.com>2018-01-20 21:16:13 -0600
committerTom Rini <trini@konsulko.com>2018-01-28 12:27:29 -0500
commit6e1364fe4558f248222a0223e06fd0e73e72bf0a (patch)
tree8507bf38272ba6209cf4c690b96ff5180c639d1c /include/config_distro_bootcmd.h
parentaf2f44267fdc006e47166187632f63d396822bed (diff)
distro bootcmd: Allow board defined UBI partition and volume names
This commit allows overriding the default assumption that the boot UBI MTD partition is named 'UBI' and the UBI volume is 'boot'. A board desiring to use a legacy or alternative NAND layout can now define the following two extra environment variables: bootubipart=<some_ubi_partition_name> bootubivol=<some_ubi_volume_name> EXAMPLE: [include/configs/some_board.h] ---8<------------------------------------------------------------------- [...] #include <config_distro_defaults.h> #define MEM_LAYOUT_ENV_SETTINGS \ DEFAULT_LINUX_BOOT_ENV #define BOOT_TARGET_DEVICES(func) \ func(UBIFS, ubifs, 0) #include <config_distro_bootcmd.h> [...] #define CONFIG_EXTRA_ENV_SETTINGS \ MEM_LAYOUT_ENV_SETTINGS \ "bootubivol=rootfs\0" \ "bootubipart=rootfs\0" \ BOOTENV [...] ---8<------------------------------------------------------------------- Signed-off-by: Derald D. Woods <woods.technical@gmail.com>
Diffstat (limited to 'include/config_distro_bootcmd.h')
-rw-r--r--include/config_distro_bootcmd.h15
1 files changed, 10 insertions, 5 deletions
diff --git a/include/config_distro_bootcmd.h b/include/config_distro_bootcmd.h
index 5c469a23fa..f567cebd38 100644
--- a/include/config_distro_bootcmd.h
+++ b/include/config_distro_bootcmd.h
@@ -71,10 +71,15 @@
#ifdef CONFIG_CMD_UBIFS
#define BOOTENV_SHARED_UBIFS \
"ubifs_boot=" \
- "if ubi part UBI && ubifsmount ubi${devnum}:boot; then " \
- "setenv devtype ubi; " \
- "setenv bootpart 0; " \
- "run scan_dev_for_boot; " \
+ "env exists bootubipart || " \
+ "env set bootubipart UBI; " \
+ "env exists bootubivol || " \
+ "env set bootubivol boot; " \
+ "if ubi part ${bootubipart} && " \
+ "ubifsmount ubi${devnum}:${bootubivol}; " \
+ "then " \
+ "setenv devtype ubi; " \
+ "run scan_dev_for_boot; " \
"fi\0"
#define BOOTENV_DEV_UBIFS BOOTENV_DEV_BLKDEV
#define BOOTENV_DEV_NAME_UBIFS BOOTENV_DEV_NAME_BLKDEV
@@ -125,7 +130,7 @@
"${kernel_addr_r} efi/boot/"BOOTEFI_NAME"; " \
"if fdt addr ${fdt_addr_r}; then " \
"bootefi ${kernel_addr_r} ${fdt_addr_r};" \
- "else " \
+ "else " \
"bootefi ${kernel_addr_r} ${fdtcontroladdr};" \
"fi\0" \
\