On Wed, 27 May 2020 10:44:30 +0200 Boris Brezillon <boris.brezillon@xxxxxxxxxxxxx> wrote: > On Wed, 27 May 2020 10:33:56 +0200 > Miquel Raynal <miquel.raynal@xxxxxxxxxxx> wrote: > > > Boris Brezillon <boris.brezillon@xxxxxxxxxxxxx> wrote on Wed, 27 May > > 2020 00:59:28 +0200: > > > > > On Tue, 26 May 2020 21:56:21 +0200 > > > Miquel Raynal <miquel.raynal@xxxxxxxxxxx> wrote: > > > > > > > Now that the misleading mix between ECC engine type and OOB placement > > > > has been addressed, add a new enumeration to properly define ECC types > > > > (also called provider or mode). > > > > > > > > Signed-off-by: Miquel Raynal <miquel.raynal@xxxxxxxxxxx> > > > > Reviewed-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxx> > > > > --- > > > > drivers/mtd/nand/raw/nand_base.c | 7 +++++++ > > > > include/linux/mtd/rawnand.h | 16 ++++++++++++++++ > > > > 2 files changed, 23 insertions(+) > > > > > > > > diff --git a/drivers/mtd/nand/raw/nand_base.c b/drivers/mtd/nand/raw/nand_base.c > > > > index 515cd4681660..5c6ab5b93270 100644 > > > > --- a/drivers/mtd/nand/raw/nand_base.c > > > > +++ b/drivers/mtd/nand/raw/nand_base.c > > > > @@ -5018,6 +5018,13 @@ static const char * const nand_ecc_modes[] = { > > > > [NAND_ECC_ON_DIE] = "on-die", > > > > }; > > > > > > > > +static const char * const nand_ecc_engine_providers[] = { > > > > > > This table is not used here, are you sure it should be introduced now? > > > > > > > + [NAND_ECC_ENGINE_NONE] = "none", > > > > + [NAND_ECC_ENGINE_SOFT] = "soft", > > > > + [NAND_ECC_ENGINE_CONTROLLER] = "hw", > > > > > > ^ "on-controller" ? > > > > This would break DT backward compatibility, I am afraid I cannot do > > that. > > You can always keep a translation table for the old prop > (nand-ecc-mode) and have a new one for the new prop > (nand-ecc-engine-type). But maybe you're not introducing a new property > in this series, in which case the translation table here is just fine. BTW, this DT prop is more a way to select among several ECC engines when you have a choice, so maybe it should be named nand-use-ecc-engine-type/nand-select-ecc-engine-type instead of nand-ecc-provider/nand-ecc-engine-type.