Lines Matching refs:pnum
178 struct ubi_ainf_peb *ubi_alloc_aeb(struct ubi_attach_info *ai, int pnum, in ubi_alloc_aeb() argument
187 aeb->pnum = pnum; in ubi_alloc_aeb()
229 static int add_to_list(struct ubi_attach_info *ai, int pnum, int vol_id, in add_to_list() argument
235 dbg_bld("add to free: PEB %d, EC %d", pnum, ec); in add_to_list()
237 dbg_bld("add to erase: PEB %d, EC %d", pnum, ec); in add_to_list()
239 dbg_bld("add to alien: PEB %d, EC %d", pnum, ec); in add_to_list()
244 aeb = ubi_alloc_aeb(ai, pnum, ec); in add_to_list()
268 static int add_corrupted(struct ubi_attach_info *ai, int pnum, int ec) in add_corrupted() argument
272 dbg_bld("add to corrupted: PEB %d, EC %d", pnum, ec); in add_corrupted()
274 aeb = ubi_alloc_aeb(ai, pnum, ec); in add_corrupted()
296 static int add_fastmap(struct ubi_attach_info *ai, int pnum, in add_fastmap() argument
301 aeb = ubi_alloc_aeb(ai, pnum, ec); in add_fastmap()
309 dbg_bld("add to fastmap list: PEB %d, vol_id %d, sqnum: %llu", pnum, in add_fastmap()
332 const struct ubi_ainf_volume *av, int pnum) in validate_vid_hdr() argument
377 ubi_err(ubi, "inconsistent VID header at PEB %d", pnum); in validate_vid_hdr()
397 int vol_id, int pnum, in add_volume() argument
439 int pnum, const struct ubi_vid_hdr *vid_hdr) in ubi_compare_lebs() argument
475 pnum); in ubi_compare_lebs()
482 pnum); in ubi_compare_lebs()
490 pnum = aeb->pnum; in ubi_compare_lebs()
491 err = ubi_io_read_vid_hdr(ubi, pnum, vidb, 0); in ubi_compare_lebs()
497 pnum, err); in ubi_compare_lebs()
513 err = ubi_io_read_data(ubi, ubi->peb_buf, pnum, 0, len); in ubi_compare_lebs()
521 pnum, crc, data_crc); in ubi_compare_lebs()
526 dbg_bld("PEB %d CRC is OK", pnum); in ubi_compare_lebs()
534 dbg_bld("second PEB %d is newer, copy_flag is set", pnum); in ubi_compare_lebs()
536 dbg_bld("first PEB %d is newer, copy_flag is set", pnum); in ubi_compare_lebs()
563 int ubi_add_to_av(struct ubi_device *ubi, struct ubi_attach_info *ai, int pnum, in ubi_add_to_av() argument
577 pnum, vol_id, lnum, ec, sqnum, bitflips); in ubi_add_to_av()
579 av = add_volume(ai, vol_id, pnum, vid_hdr); in ubi_add_to_av()
610 aeb->pnum, aeb->sqnum, aeb->ec); in ubi_add_to_av()
637 cmp_res = ubi_compare_lebs(ubi, aeb, pnum, vid_hdr); in ubi_add_to_av()
646 err = validate_vid_hdr(ubi, vid_hdr, av, pnum); in ubi_add_to_av()
650 err = add_to_list(ai, aeb->pnum, aeb->vol_id, in ubi_add_to_av()
657 aeb->pnum = pnum; in ubi_add_to_av()
674 return add_to_list(ai, pnum, vol_id, lnum, ec, in ubi_add_to_av()
684 err = validate_vid_hdr(ubi, vid_hdr, av, pnum); in ubi_add_to_av()
688 aeb = ubi_alloc_aeb(ai, pnum, ec); in ubi_add_to_av()
772 const struct ubi_attach_info *ai, int pnum, int ec) in early_erase_peb() argument
783 pnum, ec); in early_erase_peb()
793 err = ubi_io_sync_erase(ubi, pnum, 0); in early_erase_peb()
797 err = ubi_io_write_ec_hdr(ubi, pnum, ec_hdr); in early_erase_peb()
827 dbg_bld("return free PEB %d, EC %d", aeb->pnum, aeb->ec); in ubi_early_get_peb()
841 err = early_erase_peb(ubi, ai, aeb->pnum, aeb->ec+1); in ubi_early_get_peb()
847 dbg_bld("return PEB %d, EC %d", aeb->pnum, aeb->ec); in ubi_early_get_peb()
873 int pnum) in check_corruption() argument
880 err = ubi_io_read(ubi, ubi->peb_buf, pnum, ubi->leb_start, in check_corruption()
901 pnum); in check_corruption()
905 pnum, ubi->leb_start, ubi->leb_size); in check_corruption()
942 int pnum, bool fast) in scan_peb() argument
950 dbg_bld("scan PEB %d", pnum); in scan_peb()
953 err = ubi_io_is_bad(ubi, pnum); in scan_peb()
961 err = ubi_io_read_ec_hdr(ubi, pnum, ech, 0); in scan_peb()
972 return add_to_list(ai, pnum, UBI_UNKNOWN, UBI_UNKNOWN, in scan_peb()
976 return add_to_list(ai, pnum, UBI_UNKNOWN, UBI_UNKNOWN, in scan_peb()
1036 image_seq, pnum, ubi->image_seq); in scan_peb()
1044 err = ubi_io_read_vid_hdr(ubi, pnum, vidb, 0); in scan_peb()
1097 err = check_corruption(ubi, vidh, pnum); in scan_peb()
1103 err = add_to_list(ai, pnum, UBI_UNKNOWN, in scan_peb()
1107 err = add_corrupted(ai, pnum, ec); in scan_peb()
1112 err = add_to_list(ai, pnum, UBI_UNKNOWN, UBI_UNKNOWN, in scan_peb()
1119 err = add_to_list(ai, pnum, UBI_UNKNOWN, in scan_peb()
1122 err = add_to_list(ai, pnum, UBI_UNKNOWN, in scan_peb()
1143 err = add_to_list(ai, pnum, vol_id, lnum, in scan_peb()
1158 err = add_to_list(ai, pnum, vol_id, lnum, in scan_peb()
1173 pnum); in scan_peb()
1176 err = add_fastmap(ai, pnum, vidh, ec); in scan_peb()
1178 err = ubi_add_to_av(ubi, ai, pnum, ec, vidh, bitflips); in scan_peb()
1225 pr_cont(" %d", aeb->pnum); in late_analysis()
1377 int err, pnum; in scan_all() local
1392 for (pnum = start; pnum < ubi->peb_count; pnum++) { in scan_all()
1395 dbg_gen("process PEB %d", pnum); in scan_all()
1396 err = scan_peb(ubi, ai, pnum, false); in scan_all()
1489 int err, pnum; in scan_fast() local
1506 for (pnum = 0; pnum < UBI_FM_MAX_START; pnum++) { in scan_fast()
1509 dbg_gen("process PEB %d", pnum); in scan_fast()
1510 err = scan_peb(ubi, scan_ai, pnum, true); in scan_fast()
1662 int pnum, err, vols_found = 0; in self_check_ai() local
1723 if (aeb->pnum < 0 || aeb->ec < 0) { in self_check_ai()
1740 if (aeb->pnum >= ubi->peb_count) { in self_check_ai()
1742 aeb->pnum, ubi->peb_count); in self_check_ai()
1797 err = ubi_io_read_vid_hdr(ubi, aeb->pnum, vidb, 1); in self_check_ai()
1867 for (pnum = 0; pnum < ubi->peb_count; pnum++) { in self_check_ai()
1868 err = ubi_io_is_bad(ubi, pnum); in self_check_ai()
1873 buf[pnum] = 1; in self_check_ai()
1878 buf[aeb->pnum] = 1; in self_check_ai()
1881 buf[aeb->pnum] = 1; in self_check_ai()
1884 buf[aeb->pnum] = 1; in self_check_ai()
1887 buf[aeb->pnum] = 1; in self_check_ai()
1890 buf[aeb->pnum] = 1; in self_check_ai()
1893 for (pnum = 0; pnum < ubi->peb_count; pnum++) in self_check_ai()
1894 if (!buf[pnum]) { in self_check_ai()
1895 ubi_err(ubi, "PEB %d is not referred", pnum); in self_check_ai()