RFC: [PATCH] MTD OneNAND: multiblock erase support

Mika Korhonen mika.j.korhonen at gmail.com
Mon Jun 15 07:02:42 EDT 2009

2009/6/15 Adrian Hunter <adrian.hunter at nokia.com>:
> Mika Korhonen wrote:
>> I wrote an initial support for OneNAND multiblock erase feature.  When
>> done in maximum 64 eraseblock batches multiblock erase is up to 30x
>> faster than block-by-block erase (not including erase verify, though).
>> However, I only had possibility to test this with an OMAP board, so I
>> don't know if e.g. the default onenand_wait needs adjustment. Also for
>> Flex-OneNAND the support goes off. Does Flex even have mb erase?
>> What do you think?
> I expect all OneNAND support multiblock erase, so the config should
> go away.  Kyungmin can probably comment on that.

Yes, I was thinking about that as well. Is it included in all chips?

> Waiting for multiblock-erase, you should probably spin, not use the
> interrupt line.  You should change the wait function in
> onenand_base and omap2.c.
> You should handle multiple multiblock erases.
> You should check for bad blocks *before* doing command 0x95


> Waiting for erase-verify, you should probably spin too.
I just tried that and it looks like spinning in verify read makes a
difference as I got 30% faster total time for 1600 block erase.

Thanks for good advice!

More information about the linux-mtd mailing list