
make "sf update" work with unaligned `len' parameter, by deleting the whole last sector before writing, so to allow for:
sf update ${load_addr_r} 0 ${filesize}
Signed-off-by: Gerlando Falauto gerlando.falauto@keymile.com Cc: Valentin Longchamp valentin.longchamp@keymile.com Cc: Holger Brunck holger.brunck@keymile.com --- common/cmd_sf.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/common/cmd_sf.c b/common/cmd_sf.c index 3cfedde..d97d4a5 100644 --- a/common/cmd_sf.c +++ b/common/cmd_sf.c @@ -142,7 +142,8 @@ static const char *spi_flash_update_block(struct spi_flash *flash, u32 offset, *skipped += len; return NULL; } - if (spi_flash_erase(flash, offset, len)) + /* Erase the entire sector */ + if (spi_flash_erase(flash, offset, flash->sector_size)) return "erase"; if (spi_flash_write(flash, offset, len, buf)) return "write";