mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-28 23:51:33 +00:00
geam6ul: 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> Cc: Stefano Babic <sbabic@denx.de> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
This commit is contained in:
parent
4bbd40596b
commit
9786496cdc
3 changed files with 36 additions and 19 deletions
|
@ -257,6 +257,7 @@ config TARGET_MX6UL_14X14_EVK
|
|||
|
||||
config TARGET_MX6UL_GEAM
|
||||
bool "Support Engicam GEAM6UL"
|
||||
select BOARD_LATE_INIT
|
||||
select MX6UL
|
||||
select OF_CONTROL
|
||||
select DM
|
||||
|
|
|
@ -103,6 +103,25 @@ 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:
|
||||
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 */
|
||||
|
|
|
@ -63,7 +63,7 @@
|
|||
"fitboot=echo Booting FIT image from mmc ...; " \
|
||||
"run mmcargs; " \
|
||||
"bootm ${loadaddr}\0" \
|
||||
"mmcboot=echo Booting from mmc ...; " \
|
||||
"_mmcboot=run mmcargs; " \
|
||||
"run mmcargs; " \
|
||||
"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
|
||||
"if run loadfdt; then " \
|
||||
|
@ -78,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 ...; " \
|
||||
|
@ -89,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 a new issue