Skip to content

Commit

Permalink
mtd: spinand: Use nanddev_get_ecc_conf() when relevant
Browse files Browse the repository at this point in the history
Instead of accessing ->strength/step_size directly.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20200827085208.16276-13-miquel.raynal@bootlin.com
  • Loading branch information
Miquel Raynal committed Sep 28, 2020
1 parent d193792 commit 9a333a7
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 9 deletions.
6 changes: 3 additions & 3 deletions drivers/mtd/nand/spi/core.c
Original file line number Diff line number Diff line change
Expand Up @@ -419,7 +419,7 @@ static int spinand_check_ecc_status(struct spinand_device *spinand, u8 status)
* fixed, so let's return the maximum possible value so that
* wear-leveling layers move the data immediately.
*/
return nand->eccreq.strength;
return nanddev_get_ecc_conf(nand)->strength;

case STATUS_ECC_UNCOR_ERROR:
return -EBADMSG;
Expand Down Expand Up @@ -1090,8 +1090,8 @@ static int spinand_init(struct spinand_device *spinand)
mtd->oobavail = ret;

/* Propagate ECC information to mtd_info */
mtd->ecc_strength = nand->eccreq.strength;
mtd->ecc_step_size = nand->eccreq.step_size;
mtd->ecc_strength = nanddev_get_ecc_conf(nand)->strength;
mtd->ecc_step_size = nanddev_get_ecc_conf(nand)->step_size;

return 0;

Expand Down
7 changes: 4 additions & 3 deletions drivers/mtd/nand/spi/macronix.c
Original file line number Diff line number Diff line change
Expand Up @@ -84,10 +84,11 @@ static int mx35lf1ge4ab_ecc_get_status(struct spinand_device *spinand,
* data around if it's not necessary.
*/
if (mx35lf1ge4ab_get_eccsr(spinand, &eccsr))
return nand->eccreq.strength;
return nanddev_get_ecc_conf(nand)->strength;

if (WARN_ON(eccsr > nand->eccreq.strength || !eccsr))
return nand->eccreq.strength;
if (WARN_ON(eccsr > nanddev_get_ecc_conf(nand)->strength ||
!eccsr))
return nanddev_get_ecc_conf(nand)->strength;

return eccsr;

Expand Down
6 changes: 3 additions & 3 deletions drivers/mtd/nand/spi/toshiba.c
Original file line number Diff line number Diff line change
Expand Up @@ -90,12 +90,12 @@ static int tx58cxgxsxraix_ecc_get_status(struct spinand_device *spinand,
* data around if it's not necessary.
*/
if (spi_mem_exec_op(spinand->spimem, &op))
return nand->eccreq.strength;
return nanddev_get_ecc_conf(nand)->strength;

mbf >>= 4;

if (WARN_ON(mbf > nand->eccreq.strength || !mbf))
return nand->eccreq.strength;
if (WARN_ON(mbf > nanddev_get_ecc_conf(nand)->strength || !mbf))
return nanddev_get_ecc_conf(nand)->strength;

return mbf;

Expand Down

0 comments on commit 9a333a7

Please sign in to comment.