]> git.sur5r.net Git - u-boot/commitdiff
* Correct header printing for multi-image files in do_bootm()
authordzu <dzu>
Fri, 24 Oct 2003 13:14:45 +0000 (13:14 +0000)
committerdzu <dzu>
Fri, 24 Oct 2003 13:14:45 +0000 (13:14 +0000)
* Make CONFIG_SILENT_CONSOLE work with CONFIG_AUTOBOOT_KEYED

CHANGELOG
common/cmd_bootm.c
common/main.c

index abd42a0b0fb857d2ebe833b21b6a94ac45fcee43..0bb085b1cf5dbfda4e08d2399828b8dbd327f1a8 100644 (file)
--- a/CHANGELOG
+++ b/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:
index abdac2385a08ff647a3b1d9b2f7a54dfd5a137c3..07cda5658ad54877b530f62d0799f0ff580a9d91 100644 (file)
@@ -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);
index 73f8ff9f0bed86169cf5e5f83c10ccb240790c90..a0c9fe889fed268af4731d4bd6abce9231e6646c 100644 (file)
@@ -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;
 }