Lines Matching +full:wear +full:- +full:leveling
1 // SPDX-License-Identifier: GPL-2.0
45 return -ERANGE; in tx58cxgxsxraix_ooblayout_ecc()
47 region->offset = mtd->oobsize / 2; in tx58cxgxsxraix_ooblayout_ecc()
48 region->length = mtd->oobsize / 2; in tx58cxgxsxraix_ooblayout_ecc()
57 return -ERANGE; in tx58cxgxsxraix_ooblayout_free()
60 region->offset = 2; in tx58cxgxsxraix_ooblayout_free()
61 region->length = (mtd->oobsize / 2) - 2; in tx58cxgxsxraix_ooblayout_free()
76 struct spi_mem_op op = SPINAND_GET_FEATURE_OP(0x30, spinand->scratchbuf); in tx58cxgxsxraix_ecc_get_status()
83 return -EBADMSG; in tx58cxgxsxraix_ecc_get_status()
89 * in order to avoid forcing the wear-leveling layer to move in tx58cxgxsxraix_ecc_get_status()
92 if (spi_mem_exec_op(spinand->spimem, &op)) in tx58cxgxsxraix_ecc_get_status()
93 return nanddev_get_ecc_conf(nand)->strength; in tx58cxgxsxraix_ecc_get_status()
95 mbf = *(spinand->scratchbuf) >> 4; in tx58cxgxsxraix_ecc_get_status()
97 if (WARN_ON(mbf > nanddev_get_ecc_conf(nand)->strength || !mbf)) in tx58cxgxsxraix_ecc_get_status()
98 return nanddev_get_ecc_conf(nand)->strength; in tx58cxgxsxraix_ecc_get_status()
106 return -EINVAL; in tx58cxgxsxraix_ecc_get_status()