Patch "mtd: nand: sunxi: Fix ECC strength choice" has been added to the 4.4-stable tree
Subsystems (4)
This is a note to let you know that I've just added the patch titled
mtd: nand: sunxi: Fix ECC strength choice
to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
mtd-nand-sunxi-fix-ecc-strength-choice.patch
and it can be found in the queue-4.4 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
f4c6cd1a7f2275d5bc0e494b21fff26f8dde80f0Mon Sep 17 00:00:00 2001
From: Miquel Raynal <[email protected]>
Date: Wed, 24 Jan 2018 23:49:31 +0100
Subject: mtd: nand: sunxi: Fix ECC strength choice
From: Miquel Raynal <[email protected]>
commit f4c6cd1a7f2275d5bc0e494b21fff26f8dde80f0 upstream.
When the requested ECC strength does not exactly match the strengths supported by the ECC engine, the driver is selecting the closest strength meeting the 'selected_strength > requested_strength' constraint. Fix the fact that, in this particular case, ecc->strength value was not updated to match the 'selected_strength'.
For instance, one can encounter this issue when no ECC requirement is filled in the device tree while the NAND chip minimum requirement is not a strength/step_size combo natively supported by the ECC engine.
--- drivers/mtd/nand/sunxi_nand.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-)
drivers/mtd/nand/sunxi_nand.c +7 -1
@@ -1046,8 +1046,14 @@ static int sunxi_nand_hw_common_ecc_ctrl/* Add ECC info retrieval from DT */ for (i =0 ; i <ARRAY_SIZE (strengths); i++) { -if (ecc->strength <= strengths[i]) +if (ecc->strength <= strengths[i]) { +/* +* Update ecc->strength value with the actual strength +* that will be used by the ECC engine. +*/ + ecc->strength = strengths[i];break ; + } }if (i >=ARRAY_SIZE (strengths)) {
Patches currently in stable-queue which might be from [email protected] are
queue-4.4/mtd-nand-sunxi-fix-ecc-strength-choice.patch queue-4.4/mtd-nand-fix-nand_do_read_oob-return-value.patch