src/flash/tms470: remove testing of sectors[].is_erased state
The erase check routine checked sectors only if is_erased != 1 Check sector unconditionally. While on it fix clang static analyzer warnings. Change-Id: I9988615fd8530c55a9b0c54b1900f89b550345e9 Signed-off-by: Tomas Vanek <vanekt@fbl.cz> Reviewed-on: http://openocd.zylin.com/4401 Tested-by: jenkins
This commit is contained in:
parent
f05bcdebbb
commit
62b088df4e
|
@ -151,6 +151,7 @@ static int tms470_read_part_info(struct flash_bank *bank)
|
||||||
if (bank->sectors) {
|
if (bank->sectors) {
|
||||||
free(bank->sectors);
|
free(bank->sectors);
|
||||||
bank->sectors = NULL;
|
bank->sectors = NULL;
|
||||||
|
bank->num_sectors = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -754,9 +755,6 @@ static int tms470_erase_sector(struct flash_bank *bank, int sector)
|
||||||
target_write_u32(target, 0xFFFFFFDC, glbctrl);
|
target_write_u32(target, 0xFFFFFFDC, glbctrl);
|
||||||
LOG_DEBUG("set glbctrl = 0x%08" PRIx32 "", glbctrl);
|
LOG_DEBUG("set glbctrl = 0x%08" PRIx32 "", glbctrl);
|
||||||
|
|
||||||
if (result == ERROR_OK)
|
|
||||||
bank->sectors[sector].is_erased = 1;
|
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1044,27 +1042,17 @@ static int tms470_erase_check(struct flash_bank *bank)
|
||||||
* an attempt to reduce the JTAG overhead.
|
* an attempt to reduce the JTAG overhead.
|
||||||
*/
|
*/
|
||||||
for (sector = 0; sector < bank->num_sectors; sector++) {
|
for (sector = 0; sector < bank->num_sectors; sector++) {
|
||||||
if (bank->sectors[sector].is_erased != 1) {
|
uint32_t i, addr = bank->base + bank->sectors[sector].offset;
|
||||||
uint32_t i, addr = bank->base + bank->sectors[sector].offset;
|
|
||||||
|
|
||||||
LOG_INFO("checking flash bank %d sector %d", tms470_info->ordinal, sector);
|
LOG_INFO("checking flash bank %d sector %d", tms470_info->ordinal, sector);
|
||||||
|
|
||||||
target_read_buffer(target, addr, bank->sectors[sector].size, buffer);
|
target_read_buffer(target, addr, bank->sectors[sector].size, buffer);
|
||||||
|
|
||||||
bank->sectors[sector].is_erased = 1;
|
bank->sectors[sector].is_erased = 1;
|
||||||
for (i = 0; i < bank->sectors[sector].size; i++) {
|
for (i = 0; i < bank->sectors[sector].size; i++) {
|
||||||
if (buffer[i] != 0xff) {
|
if (buffer[i] != 0xff) {
|
||||||
LOG_WARNING("tms470 bank %d, sector %d, not erased.",
|
bank->sectors[sector].is_erased = 0;
|
||||||
tms470_info->ordinal,
|
break;
|
||||||
sector);
|
|
||||||
LOG_WARNING(
|
|
||||||
"at location 0x%08" PRIx32 ": flash data is 0x%02x.",
|
|
||||||
addr + i,
|
|
||||||
buffer[i]);
|
|
||||||
|
|
||||||
bank->sectors[sector].is_erased = 0;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (bank->sectors[sector].is_erased != 1) {
|
if (bank->sectors[sector].is_erased != 1) {
|
||||||
|
|
Loading…
Reference in New Issue