Home
last modified time | relevance | path

Searched refs:ubi (Results 1 – 25 of 62) sorted by relevance

123

/linux/drivers/mtd/ubi/
A Dwl.c899 ubi->move_from = ubi->move_to = NULL;
958 ubi->move_from = ubi->move_to = NULL;
1553 err = ubi_io_read(ubi, ubi->peb_buf, pnum, 0, ubi->peb_size);
1800 ubi->used = ubi->erroneous = ubi->free = ubi->scrub = RB_ROOT;
1950 tree_destroy(ubi, &ubi->used);
1951 tree_destroy(ubi, &ubi->free);
1952 tree_destroy(ubi, &ubi->scrub);
1984 tree_destroy(ubi, &ubi->used);
1985 tree_destroy(ubi, &ubi->erroneous);
1986 tree_destroy(ubi, &ubi->free);
[all …]
A Dbuild.c264 if (ubi && ubi->is_dead) in ubi_get_device()
304 if (ubi && !ubi->is_dead && MAJOR(ubi->cdev.dev) == major) { in ubi_get_by_major()
333 if (ubi && !ubi->is_dead && MAJOR(ubi->cdev.dev) == major) { in ubi_major2num()
628 ubi->peb_count = mtd_div_by_eb(ubi->mtd->size, ubi->mtd); in io_init()
708 ubi->leb_start = ALIGN(ubi->leb_start, ubi->min_io_size); in io_init()
751 ubi->leb_size = ubi->peb_size - ubi->leb_start; in io_init()
1036 ubi->peb_size, ubi->peb_size >> 10, ubi->leb_size); in ubi_attach_mtd_dev()
1038 ubi->min_io_size, ubi->max_write_size, ubi->hdrs_min_io_size); in ubi_attach_mtd_dev()
1040 ubi->vid_hdr_offset, ubi->vid_hdr_aloffset, ubi->leb_start); in ubi_attach_mtd_dev()
1042 ubi->good_peb_count, ubi->bad_peb_count, ubi->corr_peb_count); in ubi_attach_mtd_dev()
[all …]
A Dfastmap-wl.c85 e = find_mean_wl_entry(ubi, &ubi->free); in ubi_wl_get_fm_peb()
90 self_check_in_wl_tree(ubi, e, &ubi->free); in ubi_wl_get_fm_peb()
121 ubi->fm_size / ubi->leb_size - 1 + ubi->fm_pool_rsv_cnt; in wait_free_pebs_for_pool()
154 if (!ubi->ro_mode && !ubi->fm_disabled) in left_free_count()
155 fm_used = ubi->fm_size / ubi->leb_size - 1; in left_free_count()
192 if (!ubi->ro_mode && !ubi->fm_disabled) in ubi_refill_pools_and_lock()
208 wl_tree_add(ubi->fm_anchor, &ubi->free); in ubi_refill_pools_and_lock()
218 ubi->fm_anchor = ubi_wl_get_fm_peb(ubi, 1); in ubi_refill_pools_and_lock()
338 prot_queue_add(ubi, ubi->lookuptbl[ret]); in ubi_wl_get_peb()
526 return_unused_peb(ubi, ubi->fm_anchor); in ubi_fastmap_close()
[all …]
A Dio.c351 err = ubi_self_check_all_ff(ubi, pnum, 0, ubi->peb_size); in do_sync_erase()
390 err = ubi_io_read(ubi, ubi->peb_buf, pnum, 0, ubi->peb_size); in torture_peb()
394 err = ubi_check_pattern(ubi->peb_buf, 0xFF, ubi->peb_size); in torture_peb()
403 memset(ubi->peb_buf, patterns[i], ubi->peb_size); in torture_peb()
404 err = ubi_io_write(ubi, ubi->peb_buf, pnum, 0, ubi->peb_size); in torture_peb()
408 memset(ubi->peb_buf, ~patterns[i], ubi->peb_size); in torture_peb()
409 err = ubi_io_read(ubi, ubi->peb_buf, pnum, 0, ubi->peb_size); in torture_peb()
515 ubi_dump_flash(ubi, pnum, 0, ubi->peb_size); in nor_erase_prepare()
557 if (ubi->nor_flash && ubi->mtd->writesize == 1) { in ubi_io_sync_erase()
1153 err = ubi_io_write(ubi, p, pnum, ubi->vid_hdr_aloffset, in ubi_io_write_vid_hdr()
[all …]
A Ddebug.h64 if (ubi->dbg.emulate_bitflips) in ubi_dbg_bitflip()
71 if (ubi->dbg.emulate_io_failures) in ubi_dbg_write_failure()
78 if (ubi->dbg.emulate_io_failures) in ubi_dbg_erase_failure()
242 if (ubi_dbg_bitflip(ubi)) in ubi_dbg_is_bitflip()
256 if (ubi_dbg_write_failure(ubi)) in ubi_dbg_is_write_failure()
258 return ubi_dbg_fail_write(ubi); in ubi_dbg_is_write_failure()
364 return ubi->dbg.disable_bgt; in ubi_dbg_is_bgt_disabled()
369 return ubi->dbg.chk_io; in ubi_dbg_chk_io()
374 return ubi->dbg.chk_gen; in ubi_dbg_chk_gen()
379 return ubi->dbg.chk_fastmap; in ubi_dbg_chk_fastmap()
[all …]
A Dvmt.c59 struct ubi_device *ubi = vol->ubi; in vol_attribute_show() local
62 if (!ubi->volumes[vol->vol_id] || ubi->volumes[vol->vol_id]->is_dead) { in vol_attribute_show()
170 if (ubi->ro_mode) in ubi_create_volume()
217 if (ubi->volumes[i] && !ubi->volumes[i]->is_dead && in ubi_create_volume()
226 vol->usable_leb_size = ubi->leb_size - ubi->leb_size % req->alignment; in ubi_create_volume()
233 ubi->avail_pebs); in ubi_create_volume()
250 vol->ubi = ubi; in ubi_create_volume()
362 struct ubi_device *ubi = vol->ubi; in ubi_remove_volume() local
369 if (ubi->ro_mode) in ubi_remove_volume()
447 struct ubi_device *ubi = vol->ubi; in ubi_resize_volume() local
[all …]
A Dvtbl.c568 vol->ubi = ubi; in init_volumes()
644 ubi->volumes[vol_id2idx(ubi, vol->vol_id)] = vol; in init_volumes()
647 vol->ubi = ubi; in init_volumes()
800 ubi->vtbl_slots = ubi->leb_size / UBI_VTBL_RECORD_SIZE; in ubi_read_volume_table()
804 ubi->vtbl_size = ubi->vtbl_slots * UBI_VTBL_RECORD_SIZE; in ubi_read_volume_table()
805 ubi->vtbl_size = ALIGN(ubi->vtbl_size, ubi->min_io_size); in ubi_read_volume_table()
818 ubi->vtbl = create_empty_lvol(ubi, ai); in ubi_read_volume_table()
833 ubi->vtbl = process_lvol(ubi, ai, av); in ubi_read_volume_table()
838 ubi->avail_pebs = ubi->good_peb_count - ubi->corr_peb_count; in ubi_read_volume_table()
844 err = init_volumes(ubi, ai, ubi->vtbl); in ubi_read_volume_table()
[all …]
A Deba.c807 struct ubi_device *ubi = vol->ubi; in try_recover_peb() local
838 err = ubi_io_read_data(ubi, ubi->peb_buf, pnum, 0, offset); in try_recover_peb()
945 struct ubi_device *ubi = vol->ubi; in try_write_vid_and_data() local
969 ubi_warn(ubi, in try_write_vid_and_data()
1406 ubi_calc_data_len(ubi, ubi->peb_buf, data_size); in ubi_eba_copy_leb()
1511 ubi->beb_rsvd_pebs, ubi->beb_rsvd_level); in print_rsvd_warning()
1693 if (ubi->avail_pebs < ubi->beb_rsvd_level) { in ubi_eba_init()
1695 ubi->beb_rsvd_pebs = ubi->avail_pebs; in ubi_eba_init()
1698 ubi->beb_rsvd_pebs = ubi->beb_rsvd_level; in ubi_eba_init()
1700 ubi->avail_pebs -= ubi->beb_rsvd_pebs; in ubi_eba_init()
[all …]
A Dubi.h333 struct ubi_device *ubi; member
1102 ubi_init_vid_buf(ubi, vidb, buf); in ubi_alloc_vid_buf()
1135 if (!ubi->ro_mode) { in ubi_ro_mode()
1136 ubi->ro_mode = 1; in ubi_ro_mode()
1151 return ubi_io_read(ubi, buf, pnum, offset + ubi->leb_start, len); in ubi_io_read_data()
1166 ubi_ro_mode(ubi); in ubi_io_write_data()
1169 return ubi_io_write(ubi, buf, pnum, offset + ubi->leb_start, len); in ubi_io_write_data()
1192 if (idx >= ubi->vtbl_slots) in idx2vol_id()
1226 if (ubi->fm) { in ubi_find_fm_block()
1228 if (ubi->fm->e[i]->pnum == pnum) in ubi_find_fm_block()
[all …]
A Dkapi.c53 if (!ubi) in ubi_get_device_info()
135 if (!ubi) in ubi_open_volume()
349 struct ubi_device *ubi = vol->ubi; in ubi_close_volume() local
393 struct ubi_device *ubi = vol->ubi; in leb_read_sanity_check() local
447 struct ubi_device *ubi = vol->ubi; in ubi_leb_read() local
487 struct ubi_device *ubi = vol->ubi; in ubi_leb_read_sg() local
538 struct ubi_device *ubi = vol->ubi; in ubi_leb_write() local
583 struct ubi_device *ubi = vol->ubi; in ubi_leb_change() local
623 struct ubi_device *ubi = vol->ubi; in ubi_leb_erase() local
684 struct ubi_device *ubi = vol->ubi; in ubi_leb_unmap() local
[all …]
A Dfastmap.c890 memset(ubi->fm_buf, 0, ubi->fm_size); in ubi_scan_fastmap()
1025 ret = ubi_io_read_data(ubi, ubi->fm_buf + (ubi->leb_size * i), in ubi_scan_fastmap()
1077 ubi->fm = fm; in ubi_scan_fastmap()
1078 ubi->fm_pool.max_size = ubi->fm->max_pool_size; in ubi_scan_fastmap()
1079 ubi->fm_wl_pool.max_size = ubi->fm->max_wl_pool_size; in ubi_scan_fastmap()
1106 struct ubi_device *ubi = vol->ubi; in ubi_fastmap_init_checkmap() local
1152 memset(ubi->fm_buf, 0, ubi->fm_size); in ubi_write_fastmap()
1207 set_seen(ubi, ubi->fm_pool.pebs[i], seen_pebs); in ubi_write_fastmap()
1218 set_seen(ubi, ubi->fm_wl_pool.pebs[i], seen_pebs); in ubi_write_fastmap()
1497 if (ubi->ro_mode || ubi->fm_disabled) { in ubi_update_fastmap()
[all …]
A Dmisc.c34 length = ALIGN(i + 1, ubi->min_io_size); in ubi_calc_data_len()
94 int need = ubi->beb_rsvd_level - ubi->beb_rsvd_pebs; in ubi_update_reserved()
96 if (need <= 0 || ubi->avail_pebs == 0) in ubi_update_reserved()
99 need = min_t(int, need, ubi->avail_pebs); in ubi_update_reserved()
100 ubi->avail_pebs -= need; in ubi_update_reserved()
101 ubi->rsvd_pebs += need; in ubi_update_reserved()
102 ubi->beb_rsvd_pebs += need; in ubi_update_reserved()
117 ubi->beb_rsvd_level = ubi->bad_peb_limit - ubi->bad_peb_count; in ubi_calculate_reserved()
118 if (ubi->beb_rsvd_level < 0) { in ubi_calculate_reserved()
119 ubi->beb_rsvd_level = 0; in ubi_calculate_reserved()
[all …]
A Dattach.c513 err = ubi_io_read_data(ubi, ubi->peb_buf, pnum, 0, len); in ubi_compare_lebs()
878 memset(ubi->peb_buf, 0x00, ubi->leb_size); in check_corruption()
880 err = ubi_io_read(ubi, ubi->peb_buf, pnum, ubi->leb_start, in check_corruption()
881 ubi->leb_size); in check_corruption()
897 if (ubi_check_pattern(ubi->peb_buf, 0xFF, ubi->leb_size)) in check_corruption()
905 pnum, ubi->leb_start, ubi->leb_size); in check_corruption()
907 ubi->peb_buf, ubi->leb_size, 1); in check_corruption()
1595 ubi->good_peb_count = ubi->peb_count - ubi->bad_peb_count; in ubi_attach()
1614 if (ubi->fm && ubi_dbg_chk_fastmap(ubi)) { in ubi_attach()
1641 ubi_wl_close(ubi); in ubi_attach()
[all …]
A Dwl.h7 static struct ubi_wl_entry *get_peb_for_wl(struct ubi_device *ubi);
8 static struct ubi_wl_entry *next_peb_for_wl(struct ubi_device *ubi);
9 static bool need_wear_leveling(struct ubi_device *ubi);
10 static void ubi_fastmap_close(struct ubi_device *ubi);
11 static inline void ubi_fastmap_init(struct ubi_device *ubi, int *count) in ubi_fastmap_init() argument
13 if (ubi->fm_disabled) in ubi_fastmap_init()
14 ubi->fm_pool_rsv_cnt = 0; in ubi_fastmap_init()
16 *count += (ubi->fm_size / ubi->leb_size) * 2 + ubi->fm_pool_rsv_cnt; in ubi_fastmap_init()
17 INIT_WORK(&ubi->fm_work, update_fastmap_work_fn); in ubi_fastmap_init()
23 static struct ubi_wl_entry *get_peb_for_wl(struct ubi_device *ubi);
[all …]
A Dupd.c54 vtbl_rec = ubi->vtbl[vol->vol_id]; in set_update_marker()
57 mutex_lock(&ubi->device_mutex); in set_update_marker()
60 mutex_unlock(&ubi->device_mutex); in set_update_marker()
82 vtbl_rec = ubi->vtbl[vol->vol_id]; in clear_update_marker()
97 mutex_lock(&ubi->device_mutex); in clear_update_marker()
100 mutex_unlock(&ubi->device_mutex); in clear_update_marker()
123 vol->upd_buf = vmalloc(ubi->leb_size); in ubi_start_update()
127 err = set_update_marker(ubi, vol); in ubi_start_update()
133 err = ubi_eba_unmap_leb(ubi, vol, i); in ubi_start_update()
273 if (ubi->ro_mode) in ubi_more_update_data()
[all …]
A Dcdev.c150 ubi_err(vol->ubi, "updating"); in vol_cdev_llseek()
161 struct ubi_device *ubi = desc->vol->ubi; in vol_cdev_fsync() local
165 err = ubi_sync(ubi->ubi_num); in vol_cdev_fsync()
176 struct ubi_device *ubi = vol->ubi; in vol_cdev_read() local
185 ubi_err(vol->ubi, "updating"); in vol_cdev_read()
253 struct ubi_device *ubi = vol->ubi; in vol_cdev_direct_write() local
329 struct ubi_device *ubi = vol->ubi; in vol_cdev_write() local
384 struct ubi_device *ubi = vol->ubi; in vol_cdev_ioctl() local
835 struct ubi_device *ubi; in ubi_cdev_ioctl() local
843 if (!ubi) in ubi_cdev_ioctl()
[all …]
A Ddebug.c339 if (!ubi) in dfs_file_read()
341 d = &ubi->dbg; in dfs_file_read()
390 ubi_put_device(ubi); in dfs_file_read()
407 if (!ubi) in dfs_file_write()
409 d = &ubi->dbg; in dfs_file_write()
462 ubi_put_device(ubi); in dfs_file_write()
570 ubi_put_device(ubi); in eraseblk_count_release()
601 ubi->ubi_num); in ubi_debugfs_init_dev()
683 ubi->dbg.power_cut_counter = ubi->dbg.power_cut_min; in ubi_dbg_power_cut()
685 if (ubi->dbg.power_cut_max > ubi->dbg.power_cut_min) { in ubi_dbg_power_cut()
[all …]
A DMakefile2 obj-$(CONFIG_MTD_UBI) += ubi.o
4 ubi-y += vtbl.o vmt.o upd.o build.o cdev.o kapi.o eba.o io.o wl.o attach.o
5 ubi-y += misc.o debug.o
6 ubi-$(CONFIG_MTD_UBI_FASTMAP) += fastmap.o
7 ubi-$(CONFIG_MTD_UBI_BLOCK) += block.o
/linux/Documentation/ABI/stable/
A Dsysfs-class-ubi1 What: /sys/class/ubi/
10 What: /sys/class/ubi/version
42 What: /sys/class/ubi/ubiX/bad_peb_count
49 What: /sys/class/ubi/ubiX/bgt_enabled
57 What: /sys/class/ubi/ubiX/dev
74 What: /sys/class/ubi/ubiX/max_ec
88 What: /sys/class/ubi/ubiX/min_io_size
96 What: /sys/class/ubi/ubiX/mtd_num
110 What: /sys/class/ubi/ubiX/ro_mode
134 What: /sys/class/ubi/ubiX/ubiX_Y/
[all …]
/linux/Documentation/devicetree/bindings/mtd/partitions/
A Dlinux,ubi.yaml4 $id: http://devicetree.org/schemas/mtd/partitions/linux,ubi.yaml#
23 const: linux,ubi
30 "^ubi-volume-.*$":
31 $ref: /schemas/mtd/partitions/ubi-volume.yaml#
55 label = "ubi";
56 compatible = "linux,ubi";
59 ubi-volume-caldata {
/linux/arch/arm/boot/dts/microchip/
A Dat91-kizboxmini-common.dtsi15 bootargs = "ubi.mtd=ubi";
152 ubi@20000 {
153 label = "ubi";
A Dat91-kizbox.dts17 bootargs = "ubi.mtd=ubi";
148 ubi@20000 {
149 label = "ubi";
A Dat91-kizbox2-common.dtsi16 bootargs = "ubi.mtd=ubi";
218 ubi@20000 {
219 label = "ubi";
A Dat91-kizbox3_common.dtsi35 bootargs = "ubi.mtd=ubi";
146 ubi@2A0000 {
147 label = "ubi";
/linux/Documentation/devicetree/bindings/nvmem/layouts/
A Du-boot,env.yaml116 label = "ubi";
117 compatible = "linux,ubi";
120 ubi-volume-u-boot-env {

Completed in 69 milliseconds

123