Hi Boris, Boris Brezillon <boris.brezil...@collabora.com> wrote on Mon, 28 Sep 2020 18:03:43 +0200:
> On Mon, 28 Sep 2020 17:50:05 +0200 > Miquel Raynal <miquel.ray...@bootlin.com> wrote: > > > > > The way OOB > > > > bytes are organized do not seem relevant to me, I think i prefer the > > > > "_4_/_8_" naming,even if it's not very explicit. > > > > > > The ECC strength doesn't say anything about the scheme used for ECC > > > bytes placement, and you might end up with 2 different schemes > > > providing the same strength, or the same scheme used for 2 different > > > strengths. > > > > So perhaps both should be present in the name? > > No, the point was to re-use the same functions for various strengths if > they use the same ECC placement scheme. I get the point, but is the current implementation generic enough? I see hardcoded numbers, I have no idea if these numbers are common to all strength given a specific layout, or if they only match for a given strength? +static int micron_4_ooblayout_ecc(struct mtd_info *mtd, int section, + struct mtd_oob_region *region) +{ + struct spinand_device *spinand = mtd_to_spinand(mtd); + + if (section >= spinand->base.memorg.pagesize / + mtd->ecc_step_size) + return -ERANGE; + + region->offset = (section * 16) + 8; + region->length = 8; + + return 0; +} If possible, I would like to avoid several successive renaming. Thanks, Miquèl