]> git.ipfire.org Git - people/ms/u-boot.git/blobdiff - fs/fs.c
arc: add stubs for map_physmem() and unmap_physmem()
[people/ms/u-boot.git] / fs / fs.c
diff --git a/fs/fs.c b/fs/fs.c
index 483273fe20b8212075f74526cb86aa2ae3e36988..b2d6a532330cb2cc14d77a5490971b6bcebd1d0b 100644 (file)
--- a/fs/fs.c
+++ b/fs/fs.c
 #include <config.h>
 #include <errno.h>
 #include <common.h>
+#include <mapmem.h>
 #include <part.h>
 #include <ext4fs.h>
 #include <fat.h>
 #include <fs.h>
 #include <sandboxfs.h>
+#include <ubifs_uboot.h>
 #include <asm/io.h>
 #include <div64.h>
 #include <linux/math64.h>
@@ -155,6 +157,21 @@ static struct fstype_info fstypes[] = {
                .write = fs_write_sandbox,
                .uuid = fs_uuid_unsupported,
        },
+#endif
+#ifdef CONFIG_CMD_UBIFS
+       {
+               .fstype = FS_TYPE_UBIFS,
+               .name = "ubifs",
+               .null_dev_desc_ok = true,
+               .probe = ubifs_set_blk_dev,
+               .close = ubifs_close,
+               .ls = ubifs_ls,
+               .exists = ubifs_exists,
+               .size = ubifs_size,
+               .read = ubifs_read,
+               .write = fs_write_unsupported,
+               .uuid = fs_uuid_unsupported,
+       },
 #endif
        {
                .fstype = FS_TYPE_ANY,
@@ -300,10 +317,8 @@ int fs_read(const char *filename, ulong addr, loff_t offset, loff_t len,
        unmap_sysmem(buf);
 
        /* If we requested a specific number of bytes, check we got it */
-       if (ret == 0 && len && *actread != len) {
-               printf("** Unable to read file %s **\n", filename);
-               ret = -1;
-       }
+       if (ret == 0 && len && *actread != len)
+               printf("** %s shorter than offset + len **\n", filename);
        fs_close();
 
        return ret;