Lines Matching refs:pnum
118 static int add_to_list(struct ubi_attach_info *ai, int pnum, int vol_id, in add_to_list() argument
124 dbg_bld("add to free: PEB %d, EC %d", pnum, ec); in add_to_list()
126 dbg_bld("add to erase: PEB %d, EC %d", pnum, ec); in add_to_list()
128 dbg_bld("add to alien: PEB %d, EC %d", pnum, ec); in add_to_list()
137 aeb->pnum = pnum; in add_to_list()
159 static int add_corrupted(struct ubi_attach_info *ai, int pnum, int ec) in add_corrupted() argument
163 dbg_bld("add to corrupted: PEB %d, EC %d", pnum, ec); in add_corrupted()
170 aeb->pnum = pnum; in add_corrupted()
193 const struct ubi_ainf_volume *av, int pnum) in validate_vid_hdr() argument
238 ubi_err(ubi, "inconsistent VID header at PEB %d", pnum); in validate_vid_hdr()
258 int vol_id, int pnum, in add_volume() argument
324 int pnum, const struct ubi_vid_hdr *vid_hdr) in ubi_compare_lebs() argument
360 pnum); in ubi_compare_lebs()
367 pnum); in ubi_compare_lebs()
375 pnum = aeb->pnum; in ubi_compare_lebs()
376 err = ubi_io_read_vid_hdr(ubi, pnum, vh, 0); in ubi_compare_lebs()
382 pnum, err); in ubi_compare_lebs()
398 err = ubi_io_read_data(ubi, ubi->peb_buf, pnum, 0, len); in ubi_compare_lebs()
406 pnum, crc, data_crc); in ubi_compare_lebs()
411 dbg_bld("PEB %d CRC is OK", pnum); in ubi_compare_lebs()
419 dbg_bld("second PEB %d is newer, copy_flag is set", pnum); in ubi_compare_lebs()
421 dbg_bld("first PEB %d is newer, copy_flag is set", pnum); in ubi_compare_lebs()
448 int ubi_add_to_av(struct ubi_device *ubi, struct ubi_attach_info *ai, int pnum, in ubi_add_to_av() argument
462 pnum, vol_id, lnum, ec, sqnum, bitflips); in ubi_add_to_av()
464 av = add_volume(ai, vol_id, pnum, vid_hdr); in ubi_add_to_av()
495 aeb->pnum, aeb->sqnum, aeb->ec); in ubi_add_to_av()
522 cmp_res = ubi_compare_lebs(ubi, aeb, pnum, vid_hdr); in ubi_add_to_av()
531 err = validate_vid_hdr(ubi, vid_hdr, av, pnum); in ubi_add_to_av()
535 err = add_to_list(ai, aeb->pnum, aeb->vol_id, in ubi_add_to_av()
542 aeb->pnum = pnum; in ubi_add_to_av()
559 return add_to_list(ai, pnum, vol_id, lnum, ec, in ubi_add_to_av()
569 err = validate_vid_hdr(ubi, vid_hdr, av, pnum); in ubi_add_to_av()
578 aeb->pnum = pnum; in ubi_add_to_av()
662 const struct ubi_attach_info *ai, int pnum, int ec) in early_erase_peb() argument
673 pnum, ec); in early_erase_peb()
683 err = ubi_io_sync_erase(ubi, pnum, 0); in early_erase_peb()
687 err = ubi_io_write_ec_hdr(ubi, pnum, ec_hdr); in early_erase_peb()
717 dbg_bld("return free PEB %d, EC %d", aeb->pnum, aeb->ec); in ubi_early_get_peb()
731 err = early_erase_peb(ubi, ai, aeb->pnum, aeb->ec+1); in ubi_early_get_peb()
737 dbg_bld("return PEB %d, EC %d", aeb->pnum, aeb->ec); in ubi_early_get_peb()
763 int pnum) in check_corruption() argument
770 err = ubi_io_read(ubi, ubi->peb_buf, pnum, ubi->leb_start, in check_corruption()
791 pnum); in check_corruption()
795 pnum, ubi->leb_start, ubi->leb_size); in check_corruption()
819 int pnum, int *vid, unsigned long long *sqnum) in scan_peb() argument
824 dbg_bld("scan PEB %d", pnum); in scan_peb()
827 err = ubi_io_is_bad(ubi, pnum); in scan_peb()
835 err = ubi_io_read_ec_hdr(ubi, pnum, ech, 0); in scan_peb()
846 return add_to_list(ai, pnum, UBI_UNKNOWN, UBI_UNKNOWN, in scan_peb()
850 return add_to_list(ai, pnum, UBI_UNKNOWN, UBI_UNKNOWN, in scan_peb()
910 image_seq, pnum, ubi->image_seq); in scan_peb()
918 err = ubi_io_read_vid_hdr(ubi, pnum, vidh, 0); in scan_peb()
956 err = check_corruption(ubi, vidh, pnum); in scan_peb()
962 err = add_to_list(ai, pnum, UBI_UNKNOWN, in scan_peb()
966 err = add_corrupted(ai, pnum, ec); in scan_peb()
971 err = add_to_list(ai, pnum, UBI_UNKNOWN, UBI_UNKNOWN, in scan_peb()
978 err = add_to_list(ai, pnum, UBI_UNKNOWN, in scan_peb()
981 err = add_to_list(ai, pnum, UBI_UNKNOWN, in scan_peb()
1008 err = add_to_list(ai, pnum, vol_id, lnum, in scan_peb()
1023 err = add_to_list(ai, pnum, vol_id, lnum, in scan_peb()
1038 pnum); in scan_peb()
1039 err = ubi_add_to_av(ubi, ai, pnum, ec, vidh, bitflips); in scan_peb()
1085 pr_cont(" %d", aeb->pnum); in late_analysis()
1229 int err, pnum; in scan_all() local
1244 for (pnum = start; pnum < ubi->peb_count; pnum++) { in scan_all()
1247 dbg_gen("process PEB %d", pnum); in scan_all()
1248 err = scan_peb(ubi, ai, pnum, NULL, NULL); in scan_all()
1340 int err, pnum, fm_anchor = -1; in scan_fast() local
1353 for (pnum = 0; pnum < UBI_FM_MAX_START; pnum++) { in scan_fast()
1358 dbg_gen("process PEB %d", pnum); in scan_fast()
1359 err = scan_peb(ubi, *ai, pnum, &vol_id, &sqnum); in scan_fast()
1365 fm_anchor = pnum; in scan_fast()
1505 int pnum, err, vols_found = 0; in self_check_ai() local
1566 if (aeb->pnum < 0 || aeb->ec < 0) { in self_check_ai()
1583 if (aeb->pnum >= ubi->peb_count) { in self_check_ai()
1585 aeb->pnum, ubi->peb_count); in self_check_ai()
1640 err = ubi_io_read_vid_hdr(ubi, aeb->pnum, vidh, 1); in self_check_ai()
1710 for (pnum = 0; pnum < ubi->peb_count; pnum++) { in self_check_ai()
1711 err = ubi_io_is_bad(ubi, pnum); in self_check_ai()
1716 buf[pnum] = 1; in self_check_ai()
1721 buf[aeb->pnum] = 1; in self_check_ai()
1724 buf[aeb->pnum] = 1; in self_check_ai()
1727 buf[aeb->pnum] = 1; in self_check_ai()
1730 buf[aeb->pnum] = 1; in self_check_ai()
1733 buf[aeb->pnum] = 1; in self_check_ai()
1736 for (pnum = 0; pnum < ubi->peb_count; pnum++) in self_check_ai()
1737 if (!buf[pnum]) { in self_check_ai()
1738 ubi_err(ubi, "PEB %d is not referred", pnum); in self_check_ai()