i.MX6UL: isiot: Add modeboot env via board_late_init
Add runtime, modeboot env which is setting mmcboot, or nandboot based on the bootdevice so-that conditional macros b/w MMC and NAND for CONFIG_BOOTCOMMAND should be avoided in config files. Cc: Matteo Lisi <matteo.lisi@engicam.com> Cc: Michael Trimarchi <michael@amarulasolutions.com> Reviewed by: Stefano Babic <sbabic@denx.de> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
This commit is contained in:
parent
7cf22dc8d8
commit
2e2a8dc635
@ -103,6 +103,27 @@ static void setup_gpmi_nand(void)
|
||||
}
|
||||
#endif /* CONFIG_NAND_MXS */
|
||||
|
||||
int board_late_init(void)
|
||||
{
|
||||
switch ((imx6_src_get_boot_mode() & IMX6_BMODE_MASK) >>
|
||||
IMX6_BMODE_SHIFT) {
|
||||
case IMX6_BMODE_SD:
|
||||
case IMX6_BMODE_ESD:
|
||||
case IMX6_BMODE_MMC:
|
||||
case IMX6_BMODE_EMMC:
|
||||
setenv("modeboot", "mmcboot");
|
||||
break;
|
||||
case IMX6_BMODE_NAND:
|
||||
setenv("modeboot", "nandboot");
|
||||
break;
|
||||
default:
|
||||
setenv("modeboot", "");
|
||||
break;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int board_init(void)
|
||||
{
|
||||
/* Address of boot parameters */
|
||||
|
@ -37,3 +37,4 @@ CONFIG_PINCTRL=y
|
||||
CONFIG_PINCTRL_IMX6=y
|
||||
CONFIG_MXC_UART=y
|
||||
CONFIG_IMX_THERMAL=y
|
||||
CONFIG_BOARD_LATE_INIT=y
|
||||
|
@ -39,3 +39,4 @@ CONFIG_PINCTRL=y
|
||||
CONFIG_PINCTRL_IMX6=y
|
||||
CONFIG_MXC_UART=y
|
||||
CONFIG_IMX_THERMAL=y
|
||||
CONFIG_BOARD_LATE_INIT=y
|
||||
|
@ -40,3 +40,4 @@ CONFIG_PINCTRL_IMX6=y
|
||||
CONFIG_SYS_I2C_MXC=y
|
||||
CONFIG_MXC_UART=y
|
||||
CONFIG_IMX_THERMAL=y
|
||||
CONFIG_BOARD_LATE_INIT=y
|
||||
|
@ -64,8 +64,7 @@
|
||||
"fitboot=echo Booting FIT image from mmc ...; " \
|
||||
"run mmcargs; " \
|
||||
"bootm ${loadaddr}\0" \
|
||||
"mmcboot=echo Booting from mmc ...; " \
|
||||
"run mmcargs; " \
|
||||
"_mmcboot=run mmcargs; " \
|
||||
"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
|
||||
"if run loadfdt; then " \
|
||||
"bootm ${loadaddr} - ${fdt_addr}; " \
|
||||
@ -79,6 +78,20 @@
|
||||
"else " \
|
||||
"bootm; " \
|
||||
"fi\0" \
|
||||
"mmcboot=echo Booting from mmc ...; " \
|
||||
"if mmc rescan; then " \
|
||||
"if run loadbootscript; then " \
|
||||
"run bootscript; " \
|
||||
"else " \
|
||||
"if run loadfit; then " \
|
||||
"run fitboot; " \
|
||||
"else " \
|
||||
"if run loadimage; then " \
|
||||
"run _mmcboot; " \
|
||||
"fi; " \
|
||||
"fi; " \
|
||||
"fi; " \
|
||||
"fi\0" \
|
||||
"nandboot=echo Booting from nand ...; " \
|
||||
"if mtdparts; then " \
|
||||
"echo Starting nand boot ...; " \
|
||||
@ -90,24 +103,7 @@
|
||||
"nand read ${fdt_addr} dtb 0x100000; " \
|
||||
"bootm ${loadaddr} - ${fdt_addr}\0"
|
||||
|
||||
#ifdef CONFIG_NAND_MXS
|
||||
# define CONFIG_BOOTCOMMAND "run nandboot"
|
||||
#else
|
||||
# define CONFIG_BOOTCOMMAND \
|
||||
"if mmc rescan; then " \
|
||||
"if run loadbootscript; then " \
|
||||
"run bootscript; " \
|
||||
"else " \
|
||||
"if run loadfit; then " \
|
||||
"run fitboot; " \
|
||||
"else " \
|
||||
"if run loadimage; then " \
|
||||
"run mmcboot; " \
|
||||
"fi; " \
|
||||
"fi; " \
|
||||
"fi; " \
|
||||
"fi"
|
||||
#endif
|
||||
#define CONFIG_BOOTCOMMAND "run $modeboot"
|
||||
|
||||
/* Miscellaneous configurable options */
|
||||
#define CONFIG_SYS_MEMTEST_START 0x80000000
|
||||
|
Loading…
Reference in New Issue
Block a user