[PATCH] MTD: OneNAND: multiblock erase support

Mika Korhonen mika.j.korhonen at gmail.com
Tue Jun 23 07:27:32 EDT 2009

As you probably noticed, this is the revised version of the initial patch in

I made some changes based on the comments from Adrian Hunter and Kyungmin Park:
* removed the configuration option from Kconfig as it is supported by
all OneNAND chips and Flex-case is handled easily in code, bringing
the option back can be done easily if needed
* spin on multiblock erase and erase verify commands instead using
interrupt line: mb erase usually delays just 1 us, verify usually 30
us (is this still acceptable?)
* handle regions bigger than 64 eraseblocks instead of falling back to
block-by-block erase
* check bad blocks prior to sending mb erase commands
* Flex does not support mb erase, so single block version is always used

I extracted the single block erase to separate function, as well as
the multiblock one.

The erase speed in optimal full 64-eraseblock case seems to be about 1400 MB/s.


More information about the linux-mtd mailing list