gdb: Reset flash_mode with when erase or flash fails.
Thanks to Dave Marples <dave@marples.net>, extracted from #607
This commit is contained in:
parent
58281ec232
commit
8289862b55
|
@ -490,19 +490,23 @@ handle_v_packet(char *packet, int plen)
|
|||
target_reset(cur_target);
|
||||
flash_mode = 1;
|
||||
}
|
||||
if(target_flash_erase(cur_target, addr, len) == 0)
|
||||
if(target_flash_erase(cur_target, addr, len) == 0) {
|
||||
gdb_putpacketz("OK");
|
||||
else
|
||||
} else {
|
||||
flash_mode = 0;
|
||||
gdb_putpacketz("EFF");
|
||||
}
|
||||
|
||||
} else if (sscanf(packet, "vFlashWrite:%08lx:%n", &addr, &bin) == 1) {
|
||||
/* Write Flash Memory */
|
||||
len = plen - bin;
|
||||
DEBUG_GDB("Flash Write %08lX %08lX\n", addr, len);
|
||||
if(cur_target && target_flash_write(cur_target, addr, (void*)packet + bin, len) == 0)
|
||||
if(cur_target && target_flash_write(cur_target, addr, (void*)packet + bin, len) == 0) {
|
||||
gdb_putpacketz("OK");
|
||||
else
|
||||
} else {
|
||||
flash_mode = 0;
|
||||
gdb_putpacketz("EFF");
|
||||
}
|
||||
|
||||
} else if (!strcmp(packet, "vFlashDone")) {
|
||||
/* Commit flash operations. */
|
||||
|
|
Loading…
Reference in New Issue