diff mbox

[U-Boot,14/15] New config variable CONFIG_PREMONITOR

Message ID 1314876881-9669-14-git-send-email-pali.rohar@gmail.com
State Superseded, archived
Headers show

Commit Message

Pali Rohár Sept. 1, 2011, 11:34 a.m. UTC
* if defined run env "premonitor" before Main Loop for Monitor Command Processing
---
 common/env_common.c |    3 +++
 common/main.c       |   10 ++++++++++
 2 files changed, 13 insertions(+), 0 deletions(-)
diff mbox

Patch

diff --git a/common/env_common.c b/common/env_common.c
index 19149b5..fe9e525 100644
--- a/common/env_common.c
+++ b/common/env_common.c
@@ -99,6 +99,9 @@  const uchar default_environment[] = {
 #ifdef	CONFIG_PREBOOT
 	"preboot="	CONFIG_PREBOOT			"\0"
 #endif
+#ifdef	CONFIG_PREMONITOR
+	"premonitor="	CONFIG_PREMONITOR		"\0"
+#endif
 #ifdef	CONFIG_ROOTPATH
 	"rootpath="	MK_STR(CONFIG_ROOTPATH)		"\0"
 #endif
diff --git a/common/main.c b/common/main.c
index f28b250..b1fb453 100644
--- a/common/main.c
+++ b/common/main.c
@@ -413,6 +413,16 @@  void main_loop (void)
 	}
 #endif
 
+#ifdef CONFIG_PREMONITOR
+	if ((s = getenv ("premonitor")) != NULL) {
+# ifndef CONFIG_SYS_HUSH_PARSER
+		run_command (s, 0);
+# else
+		parse_string_outer(s, FLAG_PARSE_SEMICOLON | FLAG_EXIT_FROM_LOOP);
+# endif
+	}
+#endif /* CONFIG_PREMONITOR */
+
 	/*
 	 * Main Loop for Monitor Command Processing
 	 */