/*
- * $Id: block2mtd.c,v 1.25 2005/03/07 20:29:05 joern Exp $
+ * $Id: block2mtd.c,v 1.28 2005/03/19 22:40:44 gleixner Exp $
  *
  * block2mtd.c - create an mtd from a block device
  *
 #include <linux/mtd/mtd.h>
 #include <linux/buffer_head.h>
 
-#define VERSION "$Revision: 1.24 $"
+#define VERSION "$Revision: 1.28 $"
 
 
 #define ERROR(fmt, args...) printk(KERN_ERR "block2mtd: " fmt "\n" , ## args)
 static struct page* page_readahead(struct address_space *mapping, int index)
 {
        filler_t *filler = (filler_t*)mapping->a_ops->readpage;
-       //do_page_cache_readahead(mapping, index, XXX, 64);
        cache_readahead(mapping, index);
        return read_cache_page(mapping, index, filler, NULL);
 }
 }
 
 
-static int parse_num32(u32 *num32, const char *token)
+static int parse_num(size_t *num, const char *token)
 {
        char *endp;
-       unsigned long n;
+       size_t n;
 
-       n = ustrtoul(token, &endp, 0);
+       n = (size_t) ustrtoul(token, &endp, 0);
        if (*endp)
                return -EINVAL;
 
-       *num32 = n;
+       *num = n;
        return 0;
 }
 
        char buf[80+12], *str=buf; /* 80 for device, 12 for erase size */
        char *token[2];
        char *name;
-       u32 erase_size = PAGE_SIZE;
+       size_t erase_size = PAGE_SIZE;
        int i, ret;
 
        if (strnlen(val, sizeof(buf)) >= sizeof(buf))
                return 0;
 
        if (token[1]) {
-               ret = parse_num32(&erase_size, token[1]);
+               ret = parse_num(&erase_size, token[1]);
                if (ret)
                        parse_err("illegal erase size");
        }