Hi Marco & Miquel, On Fri, Jan 17, 2020 at 2:10 AM Marco Felsch <m.felsch@xxxxxxxxxxxxxx> wrote: > > Hi Zak, Miquel, > > On 20-01-16 19:22, Miquel Raynal wrote: > > Hi Zak, > > > > zdhays@xxxxxxxxx wrote on Fri, 10 Jan 2020 11:25:01 -0500: > > > > > From: Zak Hays <zdhays@xxxxxxxxx> > > > > > > Recent changes to the driver require use of on-die correction if > > > the internal ECC enable bit is set. On some Micron parts, this bit > > > is enabled by default and there is no method for disabling it. > > Which changes did you mean here? I was referring to the combination of these two patches: 9748e1d87573 Thomas Petazzoni mtd: nand: add support for Micron on-die ECC cb2bf403a462 Chris Packham mtd: rawnand: micron: allow forced on-die ECC > > > > This is a false assumption though as that bit being enabled does not > > > necessarily mean that the on-die ECC *has* to be used. It has been > > > verified with a Micron FAE that other methods of error correction are > > > still valid even if this bit is set. > > It would be cool if a micron FAE can provide a document with all the > quirks and how those quirks can be handled. > Agreed. I'll ask my contact at Micron if such a document exists and if they would be willing to share it. > > > HW ECC offers generally higher performance than on-die so it is > > > preferred in some situations. This also allows multiple NAND parts to > > > be supported on the same PCB as some parts may not support on-die > > > error correction. > > By HW ECC you mean the host ecc controller? > Yes. I used the term HW ECC as that is how it is referenced in the device tree (nand-ecc-mode = "hw") and the driver (NAND_ECC_HW). > > > With that in mind, only throw a warning that the on-die bit is set > > > and allow the init to continue. > > > > I don't think I can take this patch as-is. We must find a reliable way > > to discriminate Micron parts features. If we cannot (I think we can't > > before of the endless list of bugs they have introduced without > > documenting them), the best way is to build a static table. > That's understandable. I'll look into this a little more and see if it's feasible to implement a static table to handle this. Thanks, Zak On Fri, Jan 17, 2020 at 2:28 PM Zak Hays <zdhays@xxxxxxxxx> wrote: > > Hi Marco & Miquel, > > On Fri, Jan 17, 2020 at 2:10 AM Marco Felsch <m.felsch@xxxxxxxxxxxxxx> wrote: > > > > Hi Zak, Miquel, > > > > On 20-01-16 19:22, Miquel Raynal wrote: > > > Hi Zak, > > > > > > zdhays@xxxxxxxxx wrote on Fri, 10 Jan 2020 11:25:01 -0500: > > > > > > > From: Zak Hays <zdhays@xxxxxxxxx> > > > > > > > > Recent changes to the driver require use of on-die correction if > > > > the internal ECC enable bit is set. On some Micron parts, this bit > > > > is enabled by default and there is no method for disabling it. > > > > Which changes did you mean here? > > I was referring to the combination of these two patches: > > 9748e1d87573 Thomas Petazzoni mtd: nand: add support for Micron on-die ECC > cb2bf403a462 Chris Packham mtd: rawnand: micron: allow forced on-die ECC > > > > > > > This is a false assumption though as that bit being enabled does not > > > > necessarily mean that the on-die ECC *has* to be used. It has been > > > > verified with a Micron FAE that other methods of error correction are > > > > still valid even if this bit is set. > > > > It would be cool if a micron FAE can provide a document with all the > > quirks and how those quirks can be handled. > > > > Agreed. I'll ask my contact at Micron if such a document exists and > if they would be willing to share it. > > > > > HW ECC offers generally higher performance than on-die so it is > > > > preferred in some situations. This also allows multiple NAND parts to > > > > be supported on the same PCB as some parts may not support on-die > > > > error correction. > > > > By HW ECC you mean the host ecc controller? > > > > Yes. I used the term HW ECC as that is how it is referenced in the > device tree (nand-ecc-mode = "hw") and the driver (NAND_ECC_HW). > > > > > With that in mind, only throw a warning that the on-die bit is set > > > > and allow the init to continue. > > > > > > I don't think I can take this patch as-is. We must find a reliable way > > > to discriminate Micron parts features. If we cannot (I think we can't > > > before of the endless list of bugs they have introduced without > > > documenting them), the best way is to build a static table. > > > > That's understandable. I'll look into this a little more and see if it's > feasible to implement a static table to handle this. > > Thanks, > Zak ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/