UBIFS: Implement read-only UBIFS support in U-Boot
The U-Boot UBIFS implementation is largely a direct copy from the current
Linux version (2.6.29-rc6). As already done in the UBI version we have an
"abstraction layer" to redefine or remove some OS calls (e.g. mutex_lock()
...). This makes it possible to use the original Linux code with very
little changes. And by this we can better update to later Linux versions.
I removed some of the Linux features that are not used in the U-Boot
version (e.g. garbage-collection, write support).
Signed-off-by: Stefan Roese <sr@denx.de>
CC: Artem Bityutskiy <dedekind@infradead.org>
CC: Adrian Hunter <ext-Adrian.Hunter@nokia.com>
diff --git a/include/ubi_uboot.h b/include/ubi_uboot.h
index b415219..74312ab 100644
--- a/include/ubi_uboot.h
+++ b/include/ubi_uboot.h
@@ -18,7 +18,12 @@
#include <malloc.h>
#include <div64.h>
#include <linux/crc32.h>
+#include <linux/types.h>
+#include <linux/list.h>
+#include <linux/rbtree.h>
+#include <linux/string.h>
#include <linux/mtd/mtd.h>
+#include <linux/mtd/ubi.h>
#ifdef CONFIG_CMD_ONENAND
#include <onenand_uboot.h>
@@ -193,7 +198,7 @@
/* module */
#define THIS_MODULE 0
-#define try_module_get(...) 0
+#define try_module_get(...) 1
#define module_put(...) do { } while (0)
#define module_init(...)
#define module_exit(...)
@@ -206,7 +211,9 @@
#define MODULE_AUTHOR(...)
#define MODULE_LICENSE(...)
+#ifndef __UBIFS_H__
#include "../drivers/mtd/ubi/ubi.h"
+#endif
/* functions */
extern int ubi_mtd_param_parse(const char *val, struct kernel_param *kp);