Browse Source

* Correct header printing for multi-image files in do_bootm()

* Make CONFIG_SILENT_CONSOLE work with CONFIG_AUTOBOOT_KEYED
dzu 21 years ago
parent
commit
8cb8143ef7
3 changed files with 32 additions and 1 deletions
  1. 4 0
      CHANGELOG
  2. 1 1
      common/cmd_bootm.c
  3. 27 0
      common/main.c

+ 4 - 0
CHANGELOG

@@ -2,6 +2,10 @@
 Changes for U-Boot 1.0.0:
 ======================================================================
 
+* Correct header printing for multi-image files in do_bootm()
+
+* Make CONFIG_SILENT_CONSOLE work with CONFIG_AUTOBOOT_KEYED
+
 * Fix PCI problems on PPChameleon board
 
 * Patch by Steven Scholz, 18 Oct 2003:

+ 1 - 1
common/cmd_bootm.c

@@ -205,7 +205,7 @@ int do_bootm (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
 	SHOW_BOOT_PROGRESS (3);
 
 	/* for multi-file images we need the data part, too */
-	print_image_hdr (hdr);
+	print_image_hdr (addr);
 
 	data = addr + sizeof(image_header_t);
 	len  = ntohl(hdr->ih_size);

+ 27 - 0
common/main.c

@@ -102,6 +102,18 @@ static __inline__ int abortboot(int bootdelay)
 	u_int presskey_max = 0;
 	u_int i;
 
+#ifdef CONFIG_SILENT_CONSOLE
+	{
+		DECLARE_GLOBAL_DATA_PTR;
+
+		if (gd->flags & GD_FLG_SILENT) {
+			/* Restore serial console */
+			console_assign (stdout, "serial");
+			console_assign (stderr, "serial");
+		}
+	}
+#endif
+
 #  ifdef CONFIG_AUTOBOOT_PROMPT
 	printf (CONFIG_AUTOBOOT_PROMPT, bootdelay);
 #  endif
@@ -180,6 +192,21 @@ static __inline__ int abortboot(int bootdelay)
 		printf("key timeout\n");
 #  endif
 
+#ifdef CONFIG_SILENT_CONSOLE
+	{
+		DECLARE_GLOBAL_DATA_PTR;
+
+		if (abort) {
+			/* permanently enable normal console output */
+			gd->flags &= ~(GD_FLG_SILENT);
+		} else if (gd->flags & GD_FLG_SILENT) {
+			/* Restore silent console */
+			console_assign (stdout, "nulldev");
+			console_assign (stderr, "nulldev");
+		}
+	}
+#endif
+
 	return abort;
 }