aboutsummaryrefslogtreecommitdiff
path: root/src/flash/nor
diff options
context:
space:
mode:
authorAndreas Färber <afaerber@suse.de>2016-04-24 05:05:33 +0200
committerFreddie Chopin <freddie.chopin@gmail.com>2016-05-05 22:40:29 +0100
commite03255e408bf1586350640114751b6e1290f5fef (patch)
tree578f349ac49fd26f9f27f5793b6213ed092ba77f /src/flash/nor
parenta7ae20cc7479290bb9ca04760f5a5c7951c2ecf4 (diff)
xmc4xxx: Fix error propagation for erase_check callback
If an error occurs during xmc4xxx_blank_check_memory() aka .erase_check, it would break out of the loop over flash sectors and return ERROR_OK. Instead return the error code so that tcl.c can notify the user. Change-Id: Ie2c1b7933eef2b240b28f8a292634fbbf5b31706 Signed-off-by: Andreas Färber <afaerber@suse.de> Reviewed-on: http://openocd.zylin.com/3425 Tested-by: jenkins Reviewed-by: Freddie Chopin <freddie.chopin@gmail.com>
Diffstat (limited to 'src/flash/nor')
-rw-r--r--src/flash/nor/xmc4xxx.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/flash/nor/xmc4xxx.c b/src/flash/nor/xmc4xxx.c
index f676e8cd..31979302 100644
--- a/src/flash/nor/xmc4xxx.c
+++ b/src/flash/nor/xmc4xxx.c
@@ -620,7 +620,7 @@ static int xmc4xxx_enter_page_mode(struct flash_bank *bank)
* implement our own */
/** Checks whether a memory region is zeroed. */
-int xmc4xxx_blank_check_memory(struct target *target,
+static int xmc4xxx_blank_check_memory(struct target *target,
uint32_t address, uint32_t count, uint32_t *blank)
{
struct working_area *erase_check_algorithm;
@@ -680,7 +680,7 @@ static int xmc4xxx_flash_blank_check(struct flash_bank *bank)
{
struct target *target = bank->target;
int i;
- int retval;
+ int retval = ERROR_OK;
uint32_t blank;
if (bank->target->state != TARGET_HALTED) {
@@ -704,7 +704,7 @@ static int xmc4xxx_flash_blank_check(struct flash_bank *bank)
bank->sectors[i].is_erased = 0;
}
- return ERROR_OK;
+ return retval;
}
static int xmc4xxx_write_page(struct flash_bank *bank, const uint8_t *pg_buf,