On Thu, 19 Sep 2019 21:31:04 +0200 Miquel Raynal <miquel.raynal@xxxxxxxxxxx> wrote: > The use of "OOB_FIRST" or "SYNDROME" placements should not be encoded > in the ECC engine mode (also called type, or provider). > > Create a "placement" field in NAND chip and change all occurrences of > the NAND_ECC_HW_SYNDROME and NAND_ECC_HW_OOB_FIRST enumerations to be > just NAND_ECC_HW and possibly a placement entry like > NAND_ECC_SYNDROME_OOB_PLACEMENT or NAND_ECC_OOB_FIRST_PLACEMENT. > > Signed-off-by: Miquel Raynal <miquel.raynal@xxxxxxxxxxx> > --- > arch/arm/mach-davinci/board-dm355-leopard.c | 3 +- > drivers/mtd/nand/raw/cafe_nand.c | 3 +- > drivers/mtd/nand/raw/davinci_nand.c | 8 +- > drivers/mtd/nand/raw/denali.c | 3 +- > drivers/mtd/nand/raw/diskonchip.c | 3 +- > drivers/mtd/nand/raw/ingenic/jz4740_nand.c | 3 +- > drivers/mtd/nand/raw/lpc32xx_slc.c | 3 +- > drivers/mtd/nand/raw/nand_base.c | 125 ++++++++++---------- > drivers/mtd/nand/raw/r852.c | 3 +- > include/linux/mtd/rawnand.h | 6 +- > include/linux/platform_data/mtd-davinci.h | 1 + > 11 files changed, 89 insertions(+), 72 deletions(-) > > diff --git a/arch/arm/mach-davinci/board-dm355-leopard.c b/arch/arm/mach-davinci/board-dm355-leopard.c > index b9e9950dd300..99f4388e8864 100644 > --- a/arch/arm/mach-davinci/board-dm355-leopard.c > +++ b/arch/arm/mach-davinci/board-dm355-leopard.c > @@ -76,7 +76,8 @@ static struct davinci_nand_pdata davinci_nand_data = { > .mask_chipsel = BIT(14), > .parts = davinci_nand_partitions, > .nr_parts = ARRAY_SIZE(davinci_nand_partitions), > - .ecc_mode = NAND_ECC_HW_SYNDROME, > + .ecc_mode = NAND_ECC_HW, > + .ecc_oob_placement = NAND_ECC_SYNDROME_OOB_PLACEMENT, I guess we can simply name this field ->ecc_placement (see my comment on patch 3). > .ecc_bits = 4, > .bbt_options = NAND_BBT_USE_FLASH, > }; ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/