]> git.baikalelectronics.ru Git - kernel.git/commit
mtd: CFI cmdset_0002: enable erase-suspend-program
authorJoakim Tjernlund <joakim.tjernlund@transmode.se>
Thu, 19 Nov 2009 11:01:58 +0000 (12:01 +0100)
committerDavid Woodhouse <David.Woodhouse@intel.com>
Mon, 30 Nov 2009 09:58:53 +0000 (09:58 +0000)
commit76fd9f049b2be84ce0674500dc36e5eab136ee88
tree41c2711f7849f6a0be9ce388fad33fb4ddb62ffa
parent01b544cb373331bd93ef131b404eb762fcc0c503
mtd: CFI cmdset_0002: enable erase-suspend-program

Erase-suspend for writing is required to avoid blocking applications
that wish to write some data (to a NOR block other than the one being
erased). Particularly, it solves some huge delays that an application
(which writes to a UBIFS) will experience if UBI attaches to empty NOR
flash. In this case the UBI background thread will erase a lot of blocks
and the application can be blocked for minutes because of the "MTD/CFI
chip lock".

This feature has been disabled for years. Maybe this was because the old
code turned it on for erase-suspend read-only chips also
(cfip->EraseSuspend & 0x1). This is wrong and corrected now.

This patch was tweaked by Norbert van Bolhuis.

Signed-off-by: Norbert van Bolhuis <nvbolhuis@aimvalley.nl>
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
drivers/mtd/chips/cfi_cmdset_0002.c