Merge branch 'next' of git://git.denx.de/u-boot-avr32
[platform/kernel/u-boot.git] / fs / jffs2 / jffs2_1pass.c
index 1993dc2..b5e7ab8 100644 (file)
 #include <malloc.h>
 #include <linux/stat.h>
 #include <linux/time.h>
+#include <watchdog.h>
 
 #if defined(CONFIG_CMD_JFFS2)
 
@@ -145,7 +146,7 @@ static struct part_info *current_part;
 
 #if (defined(CONFIG_JFFS2_NAND) && \
      defined(CONFIG_CMD_NAND) )
-#if defined(CFG_NAND_LEGACY)
+#if defined(CONFIG_NAND_LEGACY)
 #include <linux/mtd/nand_legacy.h>
 #else
 #include <nand.h>
@@ -160,13 +161,10 @@ static struct part_info *current_part;
  *
  */
 
-#if defined(CFG_NAND_LEGACY)
+#if defined(CONFIG_NAND_LEGACY)
 /* this one defined in nand_legacy.c */
 int read_jffs2_nand(size_t start, size_t len,
                size_t * retlen, u_char * buf, int nanddev);
-#else
-/* info for NAND chips, defined in drivers/mtd/nand/nand.c */
-extern nand_info_t nand_info[];
 #endif
 
 #define NAND_PAGE_SIZE 512
@@ -203,7 +201,7 @@ static int read_nand_cached(u32 off, u32 size, u_char *buf)
                                }
                        }
 
-#if defined(CFG_NAND_LEGACY)
+#if defined(CONFIG_NAND_LEGACY)
                        if (read_jffs2_nand(nand_cache_off, NAND_CACHE_SIZE,
                                                &retlen, nand_cache, id->num) < 0 ||
                                        retlen != NAND_CACHE_SIZE) {
@@ -1188,6 +1186,8 @@ jffs2_1pass_build_lists(struct part_info * part)
                        oldoffset = offset;
                }
 
+               WATCHDOG_RESET();
+
                node = (struct jffs2_unknown_node *) get_node_mem((u32)part->offset + offset);
                if (node->magic == JFFS2_MAGIC_BITMASK && hdr_crc(node)) {
                        /* if its a fragment add it */
@@ -1213,16 +1213,18 @@ jffs2_1pass_build_lists(struct part_info * part)
                        } else if (node->nodetype == JFFS2_NODETYPE_CLEANMARKER) {
                                if (node->totlen != sizeof(struct jffs2_unknown_node))
                                        printf("OOPS Cleanmarker has bad size "
-                                               "%d != %d\n", node->totlen,
+                                               "%d != %zu\n",
+                                               node->totlen,
                                                sizeof(struct jffs2_unknown_node));
                        } else if (node->nodetype == JFFS2_NODETYPE_PADDING) {
                                if (node->totlen < sizeof(struct jffs2_unknown_node))
                                        printf("OOPS Padding has bad size "
-                                               "%d < %d\n", node->totlen,
+                                               "%d < %zu\n",
+                                               node->totlen,
                                                sizeof(struct jffs2_unknown_node));
                        } else {
-                               printf("Unknown node type: %x len %d "
-                                       "offset 0x%x\n", node->nodetype,
+                               printf("Unknown node type: %x len %d offset 0x%x\n",
+                                       node->nodetype,
                                        node->totlen, offset);
                        }
                        offset += ((node->totlen + 3) & ~3);