[PATCH] MTD: OneNAND: multiblock erase support

Mika Korhonen mika.j.korhonen at gmail.com
Tue Jun 23 09:19:21 EDT 2009


2009/6/23 Artem Bityutskiy <dedekind at infradead.org>:
> On Tue, 2009-06-23 at 14:02 +0300, Mika Korhonen wrote:
>> Add support for multiblock erase command. OneNANDs (excluding Flex-OneNAND)
>> are capable of simultaneous erase of up to 64 eraseblocks.
>> This changes the erase requests for regions covering multiple eraseblocks
>> to be performed using multiblock erase.
>>
>> Signed-off-by: Mika Korhonen <ext-mika.2.korhonen at nokia.com>
>> ---
>>  drivers/mtd/onenand/omap2.c        |   22 +++-
>>  drivers/mtd/onenand/onenand_base.c |  268 ++++++++++++++++++++++++++++-------
>>  include/linux/mtd/onenand.h        |    2 +
>>  include/linux/mtd/onenand_regs.h   |    2 +
>>  4 files changed, 236 insertions(+), 58 deletions(-)
>
> Just out of curiosity, what is your use-case for this?
>

When erasing and programming large amounts, e.g. filesystem images on
OneNAND the erase part takes about 10-15% of the time. Using
multiblock erase it takes almost no time (up to 30x faster) :)
Obviously, it is especially useful if the data to be programmed covers
only part of the erased region.

Mika



More information about the linux-mtd mailing list