RX-51: Add support for bootmenu

* default bootmenu entries:
   attached kernel, internal eMMC memory, external SD card,
   u-boot boot order

 * in CONFIG_PREBOOT try load bootmenu.scr from first partition
   of internal eMMC memory (also known as MyDocs) which (should)
   overwrite default bootmenu entries

 * when keyboard slide is closed boot first menu entry

 * when keyborad slide is open show bootmenu

Signed-off-by: Pali Rohár <pali.rohar@gmail.com>
Signed-off-by: Anatolij Gustschin <agust@denx.de>
This commit is contained in:
Pali Rohár 2013-03-07 05:15:19 +00:00 committed by Anatolij Gustschin
parent e7abe91967
commit d999398822

View file

@ -148,6 +148,7 @@
#define CONFIG_CMDLINE_EDITING /* add command line history */
#define CONFIG_AUTO_COMPLETE /* add autocompletion support */
#define CONFIG_CMD_BOOTMENU /* ANSI terminal Boot Menu */
#define CONFIG_CMD_CLEAR /* ANSI terminal clear screen command */
#ifdef ONENAND_SUPPORT
@ -287,8 +288,6 @@ int rx51_kp_getc(void);
#endif
/* Environment information */
#define CONFIG_BOOTDELAY 3
#define CONFIG_EXTRA_ENV_SETTINGS \
"mtdparts=" MTDPARTS_DEFAULT "\0" \
"usbtty=cdc_acm\0" \
@ -360,10 +359,40 @@ int rx51_kp_getc(void);
"fi\0" \
"emmcboot=setenv mmcnum 1; run trymmcboot\0" \
"sdboot=setenv mmcnum 0; run trymmcboot\0" \
"menucmd=bootmenu\0" \
"bootmenu_0=Attached kernel=run attachboot\0" \
"bootmenu_1=Internal eMMC=run emmcboot\0" \
"bootmenu_2=External SD card=run sdboot\0" \
"bootmenu_3=U-Boot boot order=boot\0" \
"bootmenu_delay=30\0" \
""
#define CONFIG_PREBOOT \
"if run slide; then true; else run attachboot; fi;" \
"setenv mmcnum 1; setenv mmcpart 1;" \
"setenv mmcscriptfile bootmenu.scr;" \
"if run switchmmc; then " \
"setenv mmcdone true;" \
"setenv mmctype fat;" \
"if run scriptload; then true; else " \
"setenv mmctype ext2;" \
"if run scriptload; then true; else " \
"setenv mmctype ext4;" \
"if run scriptload; then true; else " \
"setenv mmcdone false;" \
"fi;" \
"fi;" \
"fi;" \
"if ${mmcdone}; then " \
"run scriptboot;" \
"fi;" \
"fi;" \
"if run slide; then true; else " \
"setenv bootmenu_delay 0;" \
"setenv bootdelay 0;" \
"fi"
#define CONFIG_POSTBOOTMENU \
"echo;" \
"echo Extra commands:;" \
"echo run sercon - Use serial port for control.;" \
"echo run usbcon - Use usbtty for control.;" \
@ -379,6 +408,11 @@ int rx51_kp_getc(void);
"run attachboot;" \
"echo"
#define CONFIG_BOOTDELAY 30
#define CONFIG_AUTOBOOT_KEYED
#define CONFIG_MENU
#define CONFIG_MENU_SHOW
/*
* Miscellaneous configurable options
*/