dsp5680xx - match page erase with mass erase
when last==first==0 then mass erase is executed, it's faster. the page marking was wrong in this case. Change-Id: I5c579d59b5c4778cf057cb5986e086abdd4209b2 Signed-off-by: Rodrigo L. Rosa <rodrigorosa.lg@gmail.com> Reviewed-on: http://openocd.zylin.com/232 Tested-by: jenkins Reviewed-by: Øyvind Harboe <oyvindharboe@gmail.com>__archive__
parent
83be6cfc16
commit
f80ef64858
|
@ -198,6 +198,8 @@ static int dsp5680xx_flash_info(struct flash_bank *bank, char *buf, int buf_size
|
||||||
static int dsp5680xx_flash_erase(struct flash_bank * bank, int first, int last){
|
static int dsp5680xx_flash_erase(struct flash_bank * bank, int first, int last){
|
||||||
int retval;
|
int retval;
|
||||||
retval = dsp5680xx_f_erase(bank->target, (uint32_t) first, (uint32_t) last);
|
retval = dsp5680xx_f_erase(bank->target, (uint32_t) first, (uint32_t) last);
|
||||||
|
if ((!(first|last)) || ((first == 0) && (last == (HFM_SECTOR_COUNT-1))))
|
||||||
|
last = HFM_SECTOR_COUNT-1;
|
||||||
if(retval == ERROR_OK)
|
if(retval == ERROR_OK)
|
||||||
for(int i = first;i<=last;i++)
|
for(int i = first;i<=last;i++)
|
||||||
bank->sectors[i].is_erased = 1;
|
bank->sectors[i].is_erased = 1;
|
||||||
|
|
Loading…
Reference in New Issue