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>__archive__
parent
a7ae20cc74
commit
e03255e408
|
@ -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,
|
||||
|
|
Loading…
Reference in New Issue