Lines Matching defs:lnum

361  * @lnum: logical eraseblock number to read from
368 static int leb_read_sanity_check(struct ubi_volume_desc *desc, int lnum,
375 if (vol_id < 0 || vol_id >= ubi->vtbl_slots || lnum < 0 ||
376 lnum >= vol->used_ebs || offset < 0 || len < 0 ||
384 if (lnum == vol->used_ebs - 1 &&
398 * @lnum: logical eraseblock number to read from
404 * This function reads data from offset @offset of logical eraseblock @lnum and
422 int ubi_leb_read(struct ubi_volume_desc *desc, int lnum, char *buf, int offset,
429 dbg_gen("read %d bytes from LEB %d:%d:%d", len, vol_id, lnum, offset);
431 err = leb_read_sanity_check(desc, lnum, offset, len);
438 err = ubi_eba_read_leb(ubi, vol, lnum, buf, offset, len, check);
452 * @lnum: logical eraseblock number to read from
462 int ubi_leb_read_sg(struct ubi_volume_desc *desc, int lnum, struct ubi_sgl *sgl,
469 dbg_gen("read %d bytes from LEB %d:%d:%d", len, vol_id, lnum, offset);
471 err = leb_read_sanity_check(desc, lnum, offset, len);
478 err = ubi_eba_read_leb_sg(ubi, vol, sgl, lnum, offset, len, check);
491 * @lnum: logical eraseblock number to write to
497 * logical eraseblock @lnum.
513 int ubi_leb_write(struct ubi_volume_desc *desc, int lnum, const void *buf,
520 dbg_gen("write %d bytes to LEB %d:%d:%d", len, vol_id, lnum, offset);
528 if (!ubi_leb_valid(vol, lnum) || offset < 0 || len < 0 ||
539 return ubi_eba_write_leb(ubi, vol, lnum, buf, offset, len);
546 * @lnum: logical eraseblock number to change
558 int ubi_leb_change(struct ubi_volume_desc *desc, int lnum, const void *buf,
565 dbg_gen("atomically write %d bytes to LEB %d:%d", len, vol_id, lnum);
573 if (!ubi_leb_valid(vol, lnum) || len < 0 ||
583 return ubi_eba_atomic_leb_change(ubi, vol, lnum, buf, len);
590 * @lnum: logical eraseblock number
592 * This function un-maps logical eraseblock @lnum and synchronously erases the
599 int ubi_leb_erase(struct ubi_volume_desc *desc, int lnum)
605 dbg_gen("erase LEB %d:%d", vol->vol_id, lnum);
610 if (!ubi_leb_valid(vol, lnum))
616 err = ubi_eba_unmap_leb(ubi, vol, lnum);
620 return ubi_wl_flush(ubi, vol->vol_id, lnum);
627 * @lnum: logical eraseblock number
629 * This function un-maps logical eraseblock @lnum and schedules the
660 int ubi_leb_unmap(struct ubi_volume_desc *desc, int lnum)
665 dbg_gen("unmap LEB %d:%d", vol->vol_id, lnum);
670 if (!ubi_leb_valid(vol, lnum))
676 return ubi_eba_unmap_leb(ubi, vol, lnum);
683 * @lnum: logical eraseblock number
685 * This function maps an un-mapped logical eraseblock @lnum to a physical
687 * function the logical eraseblock @lnum will be empty (contain only %0xFF
696 int ubi_leb_map(struct ubi_volume_desc *desc, int lnum)
701 dbg_gen("map LEB %d:%d", vol->vol_id, lnum);
706 if (!ubi_leb_valid(vol, lnum))
712 if (ubi_eba_is_mapped(vol, lnum))
715 return ubi_eba_write_leb(ubi, vol, lnum, NULL, 0, 0);
722 * @lnum: logical eraseblock number
724 * This function checks if logical eraseblock @lnum is mapped to a physical
735 int ubi_is_mapped(struct ubi_volume_desc *desc, int lnum)
739 dbg_gen("test LEB %d:%d", vol->vol_id, lnum);
741 if (!ubi_leb_valid(vol, lnum))
747 return ubi_eba_is_mapped(vol, lnum);
777 * @lnum: logical eraseblock number to flush for
785 int ubi_flush(int ubi_num, int vol_id, int lnum)
794 err = ubi_wl_flush(ubi, vol_id, lnum);