]> Pileus Git - ~andy/linux/commit
UBI: avoid program operation on NOR flash after erasure interrupted
authorQi Wang 王起 (qiwang) <qiwang@micron.com>
Wed, 1 Jan 2014 13:06:11 +0000 (13:06 +0000)
committerArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
Thu, 9 Jan 2014 16:25:38 +0000 (18:25 +0200)
commit2c7ca5cc3624e05a5235f70039adce30725972d6
tree97d43cb7b5e6616370011544d0e8d6a8f37b630f
parentb6b44e0ad27881d4649b2afa15a27fb8867210ea
UBI: avoid program operation on NOR flash after erasure interrupted

nor_erase_prepare() will be called before erase a NOR flash, it will program '0'
into a block to mark this block. But program data into a erasure interrupted block
can cause program timtout(several minutes at most) error, could impact other
operation on NOR flash. So UBIFS can read this block first to avoid unneeded
program operation.

This patch try to put read operation at head of write operation in
nor_erase_prepare(), read out the data.
If the data is already corrupt, then no need to program any data into this block,
just go to erase this block.

This patch is validated on Micron NOR flash, part number is:JS28F512M29EWHA

Signed-off-by: Qi Wang <qiwang@micron.com>
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
drivers/mtd/ubi/io.c