]> git.baikalelectronics.ru Git - uboot.git/commit
mtd: rawnand: brcmnand: fix OOB R/W with Hamming ECC
authorÁlvaro Fernández Rojas <noltari@gmail.com>
Sat, 11 Feb 2023 15:29:09 +0000 (16:29 +0100)
committerDario Binacchi <dario.binacchi@amarulasolutions.com>
Mon, 27 Feb 2023 15:30:05 +0000 (16:30 +0100)
commit785d15d3ebd73ff6a66481b162a63e55a23e0fb0
treee807a0a3dc12d6e03c3f3410cbc48e2770ef8444
parentdf32787407e75f5253d7b99fa8098a8dbc4d3468
mtd: rawnand: brcmnand: fix OOB R/W with Hamming ECC

Hamming ECC doesn't cover the OOB data, so reading or writing OOB shall
always be done without ECC enabled.
This is a problem when adding JFFS2 cleanmarkers to erased blocks. If JFFS2
clenmarkers are added to the OOB with ECC enabled, OOB bytes will be changed
from ff ff ff to 00 00 00, reporting incorrect ECC errors.

Fixes: 27c5b17cd1b1 ("mtd: nand: add NAND driver "library" for Broadcom STB NAND controller")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Acked-by: Brian Norris <computersforpeace@gmail.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20210224080210.23686-1-noltari@gmail.com
[Ported to U-Boot from the Linux kernel]
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: William Zhang <william.zhang@broadcom.com>
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
drivers/mtd/nand/raw/brcmnand/brcmnand.c