Boris Brezillon <boris.brezillon@xxxxxxxxxxxxx> wrote on Thu, 28 May 2020 16:52:17 +0200: > On Thu, 28 May 2020 16:49:26 +0200 > Miquel Raynal <miquel.raynal@xxxxxxxxxxx> wrote: > > > Boris Brezillon <boris.brezillon@xxxxxxxxxxxxx> wrote on Thu, 28 May > > 2020 16:39:07 +0200: > > > > > On Thu, 28 May 2020 13:31:11 +0200 > > > Miquel Raynal <miquel.raynal@xxxxxxxxxxx> wrote: > > > > > > > Embed a generic NAND ECC high-level object in the nand_device > > > > structure to carry all the ECC engine configuration/data. Adapt the > > > > raw NAND and SPI-NAND cores to fit the change. > > > > > > > > Signed-off-by: Miquel Raynal <miquel.raynal@xxxxxxxxxxx> > > > > --- > > > > drivers/mtd/nand/Kconfig | 1 + > > > > drivers/mtd/nand/raw/atmel/nand-controller.c | 9 +++-- > > > > drivers/mtd/nand/raw/brcmnand/brcmnand.c | 7 ++-- > > > > drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c | 12 +++--- > > > > drivers/mtd/nand/raw/marvell_nand.c | 7 ++-- > > > > drivers/mtd/nand/raw/mtk_nand.c | 4 +- > > > > drivers/mtd/nand/raw/nand_base.c | 25 ++++++------ > > > > drivers/mtd/nand/raw/nand_esmt.c | 11 +++--- > > > > drivers/mtd/nand/raw/nand_hynix.c | 41 ++++++++++---------- > > > > drivers/mtd/nand/raw/nand_jedec.c | 4 +- > > > > drivers/mtd/nand/raw/nand_micron.c | 14 ++++--- > > > > drivers/mtd/nand/raw/nand_onfi.c | 8 ++-- > > > > drivers/mtd/nand/raw/nand_samsung.c | 19 ++++----- > > > > drivers/mtd/nand/raw/nand_toshiba.c | 11 +++--- > > > > drivers/mtd/nand/raw/sunxi_nand.c | 5 ++- > > > > drivers/mtd/nand/raw/tegra_nand.c | 9 +++-- > > > > drivers/mtd/nand/spi/core.c | 8 ++-- > > > > drivers/mtd/nand/spi/macronix.c | 6 +-- > > > > drivers/mtd/nand/spi/toshiba.c | 6 +-- > > > > include/linux/mtd/nand.h | 8 ++-- > > > > 20 files changed, 115 insertions(+), 100 deletions(-) > > > > > > > > diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig > > > > index a4478ffa279d..3327d8539a73 100644 > > > > --- a/drivers/mtd/nand/Kconfig > > > > +++ b/drivers/mtd/nand/Kconfig > > > > @@ -13,6 +13,7 @@ menu "ECC engine support" > > > > > > > > config MTD_NAND_ECC > > > > bool > > > > + select MTD_NAND_CORE > > > > > > This select looks suspicious. Shouldn't it be a depends on, and more > > > importantly, I think it should be part of patch 15. > > > > Wouldn't we break a lot of users by using depends on? > > > > Or maybe we can turn it on by default? > > It's a sub-functionality of the NAND core, so it should be a depends on > in my opinion. Why would that break users. Aren't you selecting > MTD_NAND_CORE in MTD_RAWNAND now? Those options should really remain > hidden, and be selected at the SPI/raw NAND framework level. I remembered we discussed that point already, yes the generic core is selected by the SPI/raw NAND layers, so it should be fine. I'll move this as a depends on in the previous patch.