summaryrefslogtreecommitdiff
path: root/drivers/mtd/ubi/wl.h
diff options
context:
space:
mode:
authorStefano Babic <sbabic@denx.de>2015-10-30 14:52:51 +0100
committerStefano Babic <sbabic@denx.de>2015-10-30 14:52:51 +0100
commite573bdb324c78fac56655a493bea843842c9d9f8 (patch)
tree3933d354a6be71cbe66d583fec3f5b2479e596ee /drivers/mtd/ubi/wl.h
parenta69fdc7787bfa2f27eed74c2ee58c28ce932d502 (diff)
parent0eb4cf9c14315e1976a116de75da6f420ac0e8dd (diff)
downloadu-boot-imx-e573bdb324c78fac56655a493bea843842c9d9f8.zip
u-boot-imx-e573bdb324c78fac56655a493bea843842c9d9f8.tar.gz
u-boot-imx-e573bdb324c78fac56655a493bea843842c9d9f8.tar.bz2
Merge branch 'master' of git://git.denx.de/u-boot
Diffstat (limited to 'drivers/mtd/ubi/wl.h')
-rw-r--r--drivers/mtd/ubi/wl.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/drivers/mtd/ubi/wl.h b/drivers/mtd/ubi/wl.h
new file mode 100644
index 0000000..662dbe3
--- /dev/null
+++ b/drivers/mtd/ubi/wl.h
@@ -0,0 +1,34 @@
+#ifndef UBI_WL_H
+#define UBI_WL_H
+#ifdef CONFIG_MTD_UBI_FASTMAP
+static int anchor_pebs_avalible(struct rb_root *root);
+#ifndef __UBOOT__
+static void update_fastmap_work_fn(struct work_struct *wrk);
+#else
+void update_fastmap_work_fn(struct ubi_device *ubi);
+#endif
+static struct ubi_wl_entry *find_anchor_wl_entry(struct rb_root *root);
+static struct ubi_wl_entry *get_peb_for_wl(struct ubi_device *ubi);
+static void ubi_fastmap_close(struct ubi_device *ubi);
+static inline void ubi_fastmap_init(struct ubi_device *ubi, int *count)
+{
+ /* Reserve enough LEBs to store two fastmaps. */
+ *count += (ubi->fm_size / ubi->leb_size) * 2;
+#ifndef __UBOOT__
+ INIT_WORK(&ubi->fm_work, update_fastmap_work_fn);
+#endif
+}
+static struct ubi_wl_entry *may_reserve_for_fm(struct ubi_device *ubi,
+ struct ubi_wl_entry *e,
+ struct rb_root *root);
+#else /* !CONFIG_MTD_UBI_FASTMAP */
+static struct ubi_wl_entry *get_peb_for_wl(struct ubi_device *ubi);
+static inline void ubi_fastmap_close(struct ubi_device *ubi) { }
+static inline void ubi_fastmap_init(struct ubi_device *ubi, int *count) { }
+static struct ubi_wl_entry *may_reserve_for_fm(struct ubi_device *ubi,
+ struct ubi_wl_entry *e,
+ struct rb_root *root) {
+ return e;
+}
+#endif /* CONFIG_MTD_UBI_FASTMAP */
+#endif /* UBI_WL_H */