diff --git a/drivers/mtd/mtdcore.c b/drivers/mtd/mtdcore.c index 796ac07..bdb94ce 100644 --- a/drivers/mtd/mtdcore.c +++ b/drivers/mtd/mtdcore.c @@ -476,6 +476,8 @@ int add_mtd_device(struct mtd_info *mtd) the notifier, since we hold the mtd_table_mutex */ list_for_each_entry(not, &mtd_notifiers, list) not->add(mtd); +#else + pr_debug("mtd: Giving out device %d to %s\n", i, mtd->name); #endif mutex_unlock(&mtd_table_mutex); diff --git a/drivers/mtd/mtdpart.c b/drivers/mtd/mtdpart.c index d20b857..3dc47b3 100644 --- a/drivers/mtd/mtdpart.c +++ b/drivers/mtd/mtdpart.c @@ -572,6 +572,7 @@ out_register: return slave; } +#ifndef __UBOOT__ int mtd_add_partition(struct mtd_info *master, const char *name, long long offset, long long length) { @@ -651,6 +652,7 @@ int mtd_del_partition(struct mtd_info *master, int partno) return ret; } EXPORT_SYMBOL_GPL(mtd_del_partition); +#endif /* * This function, given a master MTD object and a partition table, creates diff --git a/fs/ubifs/super.c b/fs/ubifs/super.c index 9c87db4..5f53691 100644 --- a/fs/ubifs/super.c +++ b/fs/ubifs/super.c @@ -2241,8 +2241,14 @@ static int ubifs_fill_super(struct super_block *sb, void *data, int silent) int err; c->vfs_sb = sb; +#ifndef __UBOOT__ /* Re-open the UBI device in read-write mode */ c->ubi = ubi_open_volume(c->vi.ubi_num, c->vi.vol_id, UBI_READWRITE); +#else + /* U-Boot read only mode */ + c->ubi = ubi_open_volume(c->vi.ubi_num, c->vi.vol_id, UBI_READONLY); +#endif + if (IS_ERR(c->ubi)) { err = PTR_ERR(c->ubi); goto out; diff --git a/include/linux/mtd/mtd.h b/include/linux/mtd/mtd.h index b7b4757..e6cfd55 100644 --- a/include/linux/mtd/mtd.h +++ b/include/linux/mtd/mtd.h @@ -480,6 +480,7 @@ static inline int mtd_is_bitflip_or_eccerr(int err) { #ifdef __UBOOT__ /* drivers/mtd/mtdcore.h */ int add_mtd_device(struct mtd_info *mtd); +int del_mtd_device(struct mtd_info *mtd); int add_mtd_partitions(struct mtd_info *, const struct mtd_partition *, int); int del_mtd_partitions(struct mtd_info *); #endif