Revert "[new uImage] Add autostart flag to bootm_headers structure"
authorWolfgang Denk <wd@denx.de>
Sat, 9 Aug 2008 23:26:26 +0000 (01:26 +0200)
committerWolfgang Denk <wd@denx.de>
Sat, 9 Aug 2008 23:26:26 +0000 (01:26 +0200)
This reverts commit f5614e7926863bf0225ec860d9b319741a9c4004.

The commit was based on a misunderstanding of the (documented)
meaning of the 'autostart' environment variable. It might cause
boards to hang if 'autostart' was used, with the potential to brick
them. Go back to the documented behaviour.

Conflicts:

common/cmd_bootm.c
common/image.c
include/image.h

Signed-off-by: Wolfgang Denk <wd@denx.de>
common/cmd_bootm.c
common/image.c
include/image.h

index 18d71008dad975593c898733e39287ee4d80fd86..2dffdfac883018fac9a6600a5199d30c096597ba 100644 (file)
@@ -138,7 +138,6 @@ int do_bootm (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
 
        memset ((void *)&images, 0, sizeof (images));
        images.verify = getenv_yesno ("verify");
-       images.autostart = getenv_yesno ("autostart");
        images.lmb = &lmb;
 
        lmb_init(&lmb);
index c3545a7c766f5cdc2d7025c5eb2858e3ea64ea1b..180734838949087c3c571ff409998a8950999827 100644 (file)
@@ -189,6 +189,22 @@ int image_check_dcrc (image_header_t *hdr)
        return (dcrc == image_get_dcrc (hdr));
 }
 
+void memmove_wd (void *to, void *from, size_t len, ulong chunksz)
+{
+#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
+       while (len > 0) {
+               size_t tail = (len > chunksz) ? chunksz : len;
+               WATCHDOG_RESET ();
+               memmove (to, from, tail);
+               to += tail;
+               from += tail;
+               len -= tail;
+       }
+#else  /* !(CONFIG_HW_WATCHDOG || CONFIG_WATCHDOG) */
+       memmove (to, from, len);
+#endif /* CONFIG_HW_WATCHDOG || CONFIG_WATCHDOG */
+}
+#endif /* USE_HOSTCC */
 
 /**
  * image_multi_count - get component (sub-image) count
index 46138fa7880b8f2da8c46319ee59c41a085ef290..4b9c582718dc875ff9b10e7ca4780fcb6375b190 100644 (file)
@@ -220,7 +220,6 @@ typedef struct bootm_headers {
 #endif
 
        int             verify;         /* getenv("verify")[0] != 'n' */
-       int             autostart;      /* getenv("autostart")[0] != 'n' */
        struct lmb      *lmb;           /* for memory mgmt */
 } bootm_headers_t;