mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-10 15:14:43 +00:00
omap3: evm: Explicitly use DISTRO_DEFAULTS features at startup
[primary] Check MMC 0:1 for /extlinux/extlinux.conf and boot [fallback 1] Check MMC 0:1 zImage and run mmcbootz [fallback 2] Check MMC 0:1 uImage and run mmcboot [fallback 3] Check NAND partitions and run nandboot If 'extlinux.conf' is not found on MMC 0, the previous boot behavior is followed. Signed-off-by: Derald D. Woods <woods.technical@gmail.com>
This commit is contained in:
parent
90351547ce
commit
8a3556edba
2 changed files with 72 additions and 32 deletions
|
@ -6,8 +6,8 @@ CONFIG_SYS_MALLOC_F_LEN=0x2000
|
|||
CONFIG_SYS_MPUCLK=720
|
||||
CONFIG_TARGET_OMAP3_EVM=y
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
# CONFIG_USE_BOOTCOMMAND is not set
|
||||
CONFIG_BOOTDELAY=3
|
||||
CONFIG_USE_BOOTCOMMAND=y
|
||||
CONFIG_SYS_CONSOLE_INFO_QUIET=y
|
||||
CONFIG_DEFAULT_FDT_FILE="omap3-evm.dtb"
|
||||
CONFIG_VERSION_VARIABLE=y
|
||||
|
|
|
@ -86,8 +86,49 @@
|
|||
/* Environment */
|
||||
#define CONFIG_PREBOOT "usb start"
|
||||
|
||||
#if !defined(CONFIG_SPL_BUILD)
|
||||
|
||||
#include <config_distro_defaults.h>
|
||||
|
||||
#define MEM_LAYOUT_ENV_SETTINGS \
|
||||
DEFAULT_LINUX_BOOT_ENV
|
||||
|
||||
#if defined(CONFIG_NAND)
|
||||
#define BOOTENV_DEV_NAND(devtypeu, devtypel, instance) \
|
||||
"bootcmd_" #devtypel #instance "=" \
|
||||
"run nandboot\0"
|
||||
|
||||
#define BOOTENV_DEV_NAME_NAND(devtypeu, devtypel, instance) \
|
||||
#devtypel #instance " "
|
||||
#endif /* CONFIG_NAND */
|
||||
|
||||
#define BOOTENV_DEV_UIMAGE_MMC(devtypeu, devtypel, instance) \
|
||||
"bootcmd_" #devtypel #instance "=" \
|
||||
"setenv mmcdev " #instance"; " \
|
||||
"run mmcboot\0"
|
||||
|
||||
#define BOOTENV_DEV_NAME_UIMAGE_MMC(devtypeu, devtypel, instance) \
|
||||
#devtypel #instance " "
|
||||
|
||||
#define BOOTENV_DEV_ZIMAGE_MMC(devtypeu, devtypel, instance) \
|
||||
"bootcmd_" #devtypel #instance "=" \
|
||||
"setenv mmcdev " #instance"; " \
|
||||
"run mmcbootz\0"
|
||||
|
||||
#define BOOTENV_DEV_NAME_ZIMAGE_MMC(devtypeu, devtypel, instance) \
|
||||
#devtypel #instance " "
|
||||
|
||||
#define BOOT_TARGET_DEVICES(func) \
|
||||
func(MMC, mmc, 0) \
|
||||
func(ZIMAGE_MMC, zimage_mmc, 0) \
|
||||
func(UIMAGE_MMC, uimage_mmc, 0) \
|
||||
func(NAND, nand, 0)
|
||||
|
||||
#include <config_distro_bootcmd.h>
|
||||
|
||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
DEFAULT_LINUX_BOOT_ENV \
|
||||
MEM_LAYOUT_ENV_SETTINGS \
|
||||
"fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \
|
||||
"mtdids=" CONFIG_MTDIDS_DEFAULT "\0" \
|
||||
"mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \
|
||||
"bootenv=uEnv.txt\0" \
|
||||
|
@ -107,40 +148,39 @@
|
|||
"loadbootenv=fatload mmc ${mmcdev} ${loadaddr} ${bootenv}\0" \
|
||||
"importbootenv=echo Importing environment from mmc ...; " \
|
||||
"env import -t ${loadaddr} ${filesize}\0" \
|
||||
"bootscript=echo Running bootscript from mmc ...; " \
|
||||
"source ${loadaddr}\0" \
|
||||
"loaduimage=setenv bootfile uImage; " \
|
||||
"fatload mmc ${mmcdev} ${loadaddr} uImage\0" \
|
||||
"loadzimage=setenv bootfile zImage; " \
|
||||
"fatload mmc ${mmcdev} ${loadaddr} zImage\0" \
|
||||
"loaddtb=fatload mmc ${mmcdev} ${fdtaddr} " CONFIG_DEFAULT_FDT_FILE "\0" \
|
||||
"mmcboot=echo Booting ${bootfile} from mmc ...; " \
|
||||
"run mmcargs; " \
|
||||
"bootm ${loadaddr} - ${fdtaddr}\0" \
|
||||
"mmcbootz=echo Booting ${bootfile} from mmc ...; " \
|
||||
"run mmcargs; " \
|
||||
"bootz ${loadaddr} - ${fdtaddr}\0" \
|
||||
"nandboot=echo Booting uImage from nand ...; " \
|
||||
"run nandargs; " \
|
||||
"nand read ${loadaddr} kernel; " \
|
||||
"nand read ${fdtaddr} dtb; " \
|
||||
"bootm ${loadaddr} - ${fdtaddr}\0"
|
||||
|
||||
#define CONFIG_BOOTCOMMAND \
|
||||
"mmc dev ${mmcdev}; if mmc rescan; then " \
|
||||
"if run loadbootenv; then " \
|
||||
"mmcbootenv=" \
|
||||
"mmc dev ${mmcdev}; " \
|
||||
"if mmc rescan && run loadbootenv; then " \
|
||||
"run importbootenv; " \
|
||||
"if test -n $uenvcmd; then " \
|
||||
"echo Running uenvcmd ...; " \
|
||||
"run uenvcmd; " \
|
||||
"fi; " \
|
||||
"else " \
|
||||
"if run loadzimage && run loaddtb; then " \
|
||||
"run mmcbootz; fi; " \
|
||||
"if run loaduimage && run loaddtb; then " \
|
||||
"run mmcboot; fi; " \
|
||||
"run nandboot; " \
|
||||
"fi; " \
|
||||
"else run nandboot; fi"
|
||||
"fi\0" \
|
||||
"loaduimage=setenv bootfile uImage; " \
|
||||
"fatload mmc ${mmcdev} ${loadaddr} uImage\0" \
|
||||
"loadzimage=setenv bootfile zImage; " \
|
||||
"fatload mmc ${mmcdev} ${loadaddr} zImage\0" \
|
||||
"loaddtb=fatload mmc ${mmcdev} ${fdtaddr} ${fdtfile}\0" \
|
||||
"mmcboot=run mmcbootenv; " \
|
||||
"if run loaduimage && run loaddtb; then " \
|
||||
"echo Booting ${bootfile} from mmc ...; " \
|
||||
"run mmcargs; " \
|
||||
"bootm ${loadaddr} - ${fdtaddr}; " \
|
||||
"fi\0" \
|
||||
"mmcbootz=run mmcbootenv; " \
|
||||
"if run loadzimage && run loaddtb; then " \
|
||||
"echo Booting ${bootfile} from mmc ...; " \
|
||||
"run mmcargs; " \
|
||||
"bootz ${loadaddr} - ${fdtaddr};" \
|
||||
"fi\0" \
|
||||
"nandboot=echo Booting uImage from nand ...; " \
|
||||
"run nandargs; " \
|
||||
"nand read ${loadaddr} kernel; " \
|
||||
"nand read ${fdtaddr} dtb; " \
|
||||
"bootm ${loadaddr} - ${fdtaddr}\0" \
|
||||
BOOTENV
|
||||
|
||||
#endif /* !CONFIG_SPL_BUILD */
|
||||
|
||||
#endif /* __CONFIG_H */
|
||||
|
|
Loading…
Reference in a new issue