Patchwork [U-Boot,16/16] RX-51: Add support for bootmenu

login
register
mail settings
Submitter Pali Rohár
Date Dec. 17, 2011, 5:03 p.m.
Message ID <1324141398-14859-16-git-send-email-pali.rohar@gmail.com>
Download mbox | patch
Permalink /patch/132017/
State Changes Requested
Headers show

Comments

Pali Rohár - Dec. 17, 2011, 5:03 p.m.
* default bootmenu contains: NOLO kernel, internal eMMC memory, external SD card, u-boot boot order
 * when keyboard is closed always boot NOLO kernel
 * when keyborad is open in CONFIG_PREBOOT try load bootmenu.scr from first FAT partition of internal eMMC memory (know as MyDocs) which (should) overwrite default bootmenu

Signed-off-by: Pali Rohár <pali.rohar@gmail.com>
---
 include/configs/nokia_rx51.h |   21 +++++++++++++++++----
 1 files changed, 17 insertions(+), 4 deletions(-)

Patch

diff --git a/include/configs/nokia_rx51.h b/include/configs/nokia_rx51.h
index bb77d5c..ddb4ea4 100644
--- a/include/configs/nokia_rx51.h
+++ b/include/configs/nokia_rx51.h
@@ -134,6 +134,7 @@ 
 #define CONFIG_CMD_MMC						/* MMC support */
 #undef CONFIG_CMD_ONENAND					/* NAND support */
 
+#define CONFIG_CMD_BOOTMENU					/* ANSI terminal Boot Menu */
 #define CONFIG_CMD_CLR						/* ANSI terminal clear screen command */
 
 #undef CONFIG_CMD_FLASH						/* flinfo, erase, protect */
@@ -185,8 +186,6 @@  int rx51_kp_getc(void);
 #endif
 
 /* Environment information */
-#define CONFIG_BOOTDELAY		3
-
 #define CONFIG_EXTRA_ENV_SETTINGS \
 	"usbtty=cdc_acm\0" \
 	"stdin=vga\0" \
@@ -232,10 +231,21 @@  int rx51_kp_getc(void);
 			"fi;" \
 		"fi\0" \
 	"immcboot=setenv mmcnum 1; run trymmcboot\0" \
-	"emmcboot=setenv mmcnum 0; run trymmcboot\0"
+	"emmcboot=setenv mmcnum 0; run trymmcboot\0" \
+	"menucmd=bootmenu\0" \
+	"bootmenu_0=Internal flash=run noloboot\0" \
+	"bootmenu_1=Internal eMMC=run immcboot\0" \
+	"bootmenu_2=External SD card=run emmcboot\0" \
+	"bootmenu_3=U-Boot boot order=boot\0" \
+	"bootmenu_delay=3\0"
 
 #define CONFIG_PREBOOT \
-	"if test $slide_sw != open; then run noloboot; fi;"
+	"if test $slide_sw = open; then " \
+		"setenv mmcnum 1; setenv mmcpart 1; setenv mmctype fat; setenv mmcfile bootmenu.scr;" \
+		"run trymmcscript;" \
+	"else " \
+		"setenv bootmenu_delay 0;" \
+	"fi"
 
 #define CONFIG_PREMONITOR \
 	"echo Extra commands:;" \
@@ -253,7 +263,10 @@  int rx51_kp_getc(void);
 	"run noloboot;" \
 	"echo"
 
+#define CONFIG_MENUCMD
+
 #define CONFIG_AUTO_COMPLETE
+
 /*
  * Miscellaneous configurable options
  */