Message ID | alpine.DEB.2.02.1511130854360.11990@lnxricardw1.se.axis.com |
---|---|
State | New |
Headers | show |
diff --git a/hw/block/nand.c b/hw/block/nand.c index a68266f..f0e3413 100644 --- a/hw/block/nand.c +++ b/hw/block/nand.c @@ -712,7 +712,7 @@ static void glue(nand_blk_erase_, PAGE_SIZE)(NANDFlashState *s) memset(s->storage + (PAGE(addr) << OOB_SHIFT), 0xff, OOB_SIZE << s->erase_shift); i = SECTOR(addr); - page = SECTOR(addr + (ADDR_SHIFT + s->erase_shift)); + page = SECTOR(addr + (1 << (ADDR_SHIFT + s->erase_shift))); for (; i < page; i ++) if (blk_write(s->blk, i, iobuf, 1) < 0) { printf("%s: write error in sector %" PRIu64 "\n", __func__, i);
For the "main area on file, oob in memory" case, fix the shifts so that we erase the correct number of pages. Signed-off-by: Ricard Wanderlöf <ricardw@axis.com> --- hw/block/nand.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)