U-Boot version environment variable "ver" added (CONFIG_VERSION_VARIABLE).
diff --git a/common/cmd_nvedit.c b/common/cmd_nvedit.c
index c404157..3c2a553 100644
--- a/common/cmd_nvedit.c
+++ b/common/cmd_nvedit.c
@@ -180,9 +180,13 @@
 #ifndef CONFIG_ENV_OVERWRITE
 
 		/*
-		 * Ethernet Address and serial# can be set only once
+		 * Ethernet Address and serial# can be set only once,
+		 * ver is readonly.
 		 */
 		if ( (strcmp (name, "serial#") == 0) ||
+#if defined(CONFIG_VERSION_VARIABLE)
+		     (strcmp (name, "ver") == 0) ||
+#endif /* CONFIG_VERSION_VARIABLE */
 		    ((strcmp (name, "ethaddr") == 0)
 #if defined(CONFIG_OVERWRITE_ETHADDR_ONCE) && defined(CONFIG_ETHADDR)
 		     && (strcmp (env_get_addr(oldval),MK_STR(CONFIG_ETHADDR)) != 0)
@@ -358,7 +362,7 @@
 	}
 #endif	/* CFG_CMD_NET */
 
-#ifdef CONFIG_AMIGAONEG3SE 
+#ifdef CONFIG_AMIGAONEG3SE
 	if (strcmp(argv[1], "vga_fg_color") == 0 ||
 	    strcmp(argv[1], "vga_bg_color") == 0 ) {
 		extern void video_set_color(unsigned char attr);
diff --git a/common/main.c b/common/main.c
index 9ee32a5..e32845e 100644
--- a/common/main.c
+++ b/common/main.c
@@ -279,6 +279,16 @@
 	}
 #endif  /* CONFIG_MODEM_SUPPORT */
 
+#ifdef CONFIG_VERSION_VARIABLE
+	{
+		extern char version_string[];
+		char *str = getenv("ver");
+
+		if (!str)
+			setenv ("ver", version_string);  /* set version variable */
+	}
+#endif /* CONFIG_VERSION_VARIABLE */
+
 #ifdef CFG_HUSH_PARSER
 	u_boot_hush_start ();
 #endif