Commit 2528460c authored by Nikita Kiryanov's avatar Nikita Kiryanov Committed by Scott Wood
Browse files

mtd: nand: omap: fix HAM1_SW ecc using default value for ecc.size

Commit "mtd: nand: omap: enable BCH ECC scheme using ELM for generic
platform" (d016dc42

) changed the way
software ECC is configured, both during boot, and during ecc switch, in a way
that is not backwards compatible with older systems:

Older version of omap_gpmc.c always assigned ecc.size = 0 when configuring
for software ecc, relying on nand_scan_tail() to select a default for ecc.size
(256), while the new version of omap_gpmc.c assigns ecc.size = pagesize,
which is likely to not be 256.

Since 1 bit hamming sw ecc is only meant to be used by legacy devices, revert
to the original behavior.

Cc: Igor Grinberg <>
Cc: Tom Rini <>
Cc: Scott Wood <>
Cc: Pekon Gupta <>
Signed-off-by: default avatarNikita Kiryanov <>
Acked-by: default avatarPekon Gupta <>
parent 5d7a49b9
......@@ -776,7 +776,7 @@ static int omap_select_ecc_scheme(struct nand_chip *nand,
bch_priv.type = 0;
nand->ecc.mode = NAND_ECC_SOFT;
nand->ecc.layout = NULL;
nand->ecc.size = pagesize;
nand->ecc.size = 0;
bch->ecc_scheme = OMAP_ECC_HAM1_CODE_SW;
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment