[PATCH v2] mtd/nand: Support Micron chips, pagesize >= 4KB

Kevin Cernekee cernekee at gmail.com
Wed Aug 25 20:43:52 EDT 2010

On Mon, Aug 23, 2010 at 11:10 PM, Artem Bityutskiy <dedekind1 at gmail.com> wrote:
> 1. First we add the ONFI detection to MTD, and make it work.


> 2. If we have an ONFI device which nevertheless does not allow us
> reading ONFI data, then we run a 'onfi_broken_devices_quirk()' or
> something like this. And this quirk tries to use whatever heuristics.


It's more of a "broken controller quirk" than a "broken flash device
quirk," though.

It would be helpful to know if there are any other controller designs
that are unable to read the ONFI parameter page.  i.e. is this a
problem to be solved in the common code, or a driver-specific

> So, I was thinking that adding strange heuristics and quirks to generic
> code is bad. We should _first_ add proper ONFI code, and _then_ add
> exception for strange devices like you have.

Unfortunately, I think the heuristic/quirk logic is unavoidable for
Samsung and other non-ONFI vendors.

So the question becomes: if nand_base.c already has to have
heuristic/quirk code anyway, and some controller(s) can't speak ONFI
so they need even MORE heuristic/quirk code than the others - do we
add the latter code into nand_base.c or just put it in the driver?

More information about the linux-mtd mailing list