On Thu, 19 Sep 2019 21:31:02 +0200 Miquel Raynal <miquel.raynal@xxxxxxxxxxx> wrote: > NAND ECC modes (or providers) have their own enumeration but, unlike > their algorithms counterpart, there is no invalid or uninitialized > value to discriminate between an error and having chosen a no-ECC > situation. Add an "invalid" entry for this purpose. > > Signed-off-by: Miquel Raynal <miquel.raynal@xxxxxxxxxxx> > --- > drivers/mtd/nand/raw/nand_base.c | 2 +- > include/linux/mtd/rawnand.h | 1 + > 2 files changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/mtd/nand/raw/nand_base.c b/drivers/mtd/nand/raw/nand_base.c > index 3bf2d56eced2..e6c483ec191a 100644 > --- a/drivers/mtd/nand/raw/nand_base.c > +++ b/drivers/mtd/nand/raw/nand_base.c > @@ -4851,7 +4851,7 @@ static int of_get_nand_ecc_mode(struct device_node *np) > if (err < 0) > return err; > > - for (i = 0; i < ARRAY_SIZE(nand_ecc_modes); i++) > + for (i = NAND_ECC_NONE; i < ARRAY_SIZE(nand_ecc_modes); i++) > if (!strcasecmp(pm, nand_ecc_modes[i])) > return i; > > diff --git a/include/linux/mtd/rawnand.h b/include/linux/mtd/rawnand.h > index cd834e9f7e78..ccdc0c314acc 100644 > --- a/include/linux/mtd/rawnand.h > +++ b/include/linux/mtd/rawnand.h > @@ -84,6 +84,7 @@ struct nand_chip; > * Constants for ECC_MODES > */ > enum nand_ecc_mode { > + NAND_ECC_INVALID, Just nitpicking, but I feel -1 would be better fit for this INVALID value. NAND_ECC_INVALID = -1, NAND_ECC_NONE = 0, Unless you plan to add an entry for ECC_INVALID in nand_ecc_modes, of course, in which case you indeed want to start at 0. Regardless of that, the change looks good to me: Reviewed-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxx> > NAND_ECC_NONE, > NAND_ECC_SOFT, > NAND_ECC_HW, ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/