Lines Matching refs:ubi

39 void ubi_do_get_device_info(struct ubi_device *ubi, struct ubi_device_info *di)  in ubi_do_get_device_info()  argument
41 di->ubi_num = ubi->ubi_num; in ubi_do_get_device_info()
42 di->leb_size = ubi->leb_size; in ubi_do_get_device_info()
43 di->leb_start = ubi->leb_start; in ubi_do_get_device_info()
44 di->min_io_size = ubi->min_io_size; in ubi_do_get_device_info()
45 di->max_write_size = ubi->max_write_size; in ubi_do_get_device_info()
46 di->ro_mode = ubi->ro_mode; in ubi_do_get_device_info()
47 di->cdev = ubi->cdev.dev; in ubi_do_get_device_info()
61 struct ubi_device *ubi; in ubi_get_device_info() local
65 ubi = ubi_get_device(ubi_num); in ubi_get_device_info()
66 if (!ubi) in ubi_get_device_info()
68 ubi_do_get_device_info(ubi, di); in ubi_get_device_info()
69 ubi_put_device(ubi); in ubi_get_device_info()
80 void ubi_do_get_volume_info(struct ubi_device *ubi, struct ubi_volume *vol, in ubi_do_get_volume_info() argument
84 vi->ubi_num = ubi->ubi_num; in ubi_do_get_volume_info()
105 ubi_do_get_volume_info(desc->vol->ubi, desc->vol, vi); in ubi_get_volume_info()
131 struct ubi_device *ubi; in ubi_open_volume() local
146 ubi = ubi_get_device(ubi_num); in ubi_open_volume()
147 if (!ubi) in ubi_open_volume()
150 if (vol_id < 0 || vol_id >= ubi->vtbl_slots) { in ubi_open_volume()
165 spin_lock(&ubi->volumes_lock); in ubi_open_volume()
166 vol = ubi->volumes[vol_id]; in ubi_open_volume()
199 spin_unlock(&ubi->volumes_lock); in ubi_open_volume()
204 mutex_lock(&ubi->ckvol_mutex); in ubi_open_volume()
207 err = ubi_check_volume(ubi, vol_id); in ubi_open_volume()
209 mutex_unlock(&ubi->ckvol_mutex); in ubi_open_volume()
214 ubi_warn(ubi, "volume %d on UBI device %d is corrupted", in ubi_open_volume()
215 vol_id, ubi->ubi_num); in ubi_open_volume()
220 mutex_unlock(&ubi->ckvol_mutex); in ubi_open_volume()
225 spin_unlock(&ubi->volumes_lock); in ubi_open_volume()
230 ubi_put_device(ubi); in ubi_open_volume()
231 ubi_err(ubi, "cannot open device %d, volume %d, error %d", in ubi_open_volume()
249 struct ubi_device *ubi; in ubi_open_volume_nm() local
264 ubi = ubi_get_device(ubi_num); in ubi_open_volume_nm()
265 if (!ubi) in ubi_open_volume_nm()
268 spin_lock(&ubi->volumes_lock); in ubi_open_volume_nm()
270 for (i = 0; i < ubi->vtbl_slots; i++) { in ubi_open_volume_nm()
271 struct ubi_volume *vol = ubi->volumes[i]; in ubi_open_volume_nm()
278 spin_unlock(&ubi->volumes_lock); in ubi_open_volume_nm()
289 ubi_put_device(ubi); in ubi_open_volume_nm()
338 struct ubi_device *ubi = vol->ubi; in ubi_close_volume() local
341 ubi->ubi_num, vol->vol_id, desc->mode); in ubi_close_volume()
343 spin_lock(&ubi->volumes_lock); in ubi_close_volume()
359 spin_unlock(&ubi->volumes_lock); in ubi_close_volume()
363 ubi_put_device(ubi); in ubi_close_volume()
382 struct ubi_device *ubi = vol->ubi; in leb_read_sanity_check() local
385 if (vol_id < 0 || vol_id >= ubi->vtbl_slots || lnum < 0 || in leb_read_sanity_check()
436 struct ubi_device *ubi = vol->ubi; in ubi_leb_read() local
448 err = ubi_eba_read_leb(ubi, vol, lnum, buf, offset, len, check); in ubi_leb_read()
450 ubi_warn(ubi, "mark volume %d as corrupted", vol_id); in ubi_leb_read()
476 struct ubi_device *ubi = vol->ubi; in ubi_leb_read_sg() local
488 err = ubi_eba_read_leb_sg(ubi, vol, sgl, lnum, offset, len, check); in ubi_leb_read_sg()
490 ubi_warn(ubi, "mark volume %d as corrupted", vol_id); in ubi_leb_read_sg()
527 struct ubi_device *ubi = vol->ubi; in ubi_leb_write() local
532 if (vol_id < 0 || vol_id >= ubi->vtbl_slots) in ubi_leb_write()
540 offset & (ubi->min_io_size - 1) || len & (ubi->min_io_size - 1)) in ubi_leb_write()
549 return ubi_eba_write_leb(ubi, vol, lnum, buf, offset, len); in ubi_leb_write()
572 struct ubi_device *ubi = vol->ubi; in ubi_leb_change() local
577 if (vol_id < 0 || vol_id >= ubi->vtbl_slots) in ubi_leb_change()
584 len > vol->usable_leb_size || len & (ubi->min_io_size - 1)) in ubi_leb_change()
593 return ubi_eba_atomic_leb_change(ubi, vol, lnum, buf, len); in ubi_leb_change()
612 struct ubi_device *ubi = vol->ubi; in ubi_leb_erase() local
626 err = ubi_eba_unmap_leb(ubi, vol, lnum); in ubi_leb_erase()
630 return ubi_wl_flush(ubi, vol->vol_id, lnum); in ubi_leb_erase()
673 struct ubi_device *ubi = vol->ubi; in ubi_leb_unmap() local
686 return ubi_eba_unmap_leb(ubi, vol, lnum); in ubi_leb_unmap()
709 struct ubi_device *ubi = vol->ubi; in ubi_leb_map() local
725 return ubi_eba_write_leb(ubi, vol, lnum, NULL, 0, 0); in ubi_leb_map()
771 struct ubi_device *ubi; in ubi_sync() local
773 ubi = ubi_get_device(ubi_num); in ubi_sync()
774 if (!ubi) in ubi_sync()
777 mtd_sync(ubi->mtd); in ubi_sync()
778 ubi_put_device(ubi); in ubi_sync()
797 struct ubi_device *ubi; in ubi_flush() local
800 ubi = ubi_get_device(ubi_num); in ubi_flush()
801 if (!ubi) in ubi_flush()
804 err = ubi_wl_flush(ubi, vol_id, lnum); in ubi_flush()
805 ubi_put_device(ubi); in ubi_flush()