summaryrefslogtreecommitdiff
path: root/common/cmd_flash.c
diff options
context:
space:
mode:
authorJoe Hershberger <joe.hershberger@ni.com>2012-08-17 15:36:41 -0500
committerStefan Roese <sr@denx.de>2012-09-03 11:24:27 +0200
commitde15a06aad1f221255366ac07238c80fed146da1 (patch)
tree73921dc7c0bfabbad9696bc1e97181367c0029d6 /common/cmd_flash.c
parent6822a647b94cb05869231251e5a29f9742bb3ce2 (diff)
cfi: Make the flash erase and write operations abortable
Check for ctrlc() in operations that take time and loop over the flash addresses. In netconsole, tstc() is expensive. Only check once in a while to not slow down the operation significantly. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Signed-off-by: Stefan Roese <sr@denx.de>
Diffstat (limited to 'common/cmd_flash.c')
-rw-r--r--common/cmd_flash.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/common/cmd_flash.c b/common/cmd_flash.c
index 0e9b2e3c741..e55d366c65d 100644
--- a/common/cmd_flash.c
+++ b/common/cmd_flash.c
@@ -443,7 +443,8 @@ int flash_sect_erase (ulong addr_first, ulong addr_last)
rcode = flash_erase (info, s_first[bank], s_last[bank]);
}
}
- printf ("Erased %d sectors\n", erased);
+ if (rcode == 0)
+ printf("Erased %d sectors\n", erased);
} else if (rcode == 0) {
puts ("Error: start and/or end address"
" not on sector boundary\n");