> Maybe the following example (output is pasted below) can illustrate the issue
> a bit better. First I try to flash a 20KB block, then a 21KB block and
> finally a 24KB block. Only the blocks of 20 and 24 succeed, because they 
> happen
> to be nicely 4K alligned. All blocks that are not 4K alligned will fail. 
> OpenOCD
> tries to erase, (un)protect and flash only those sectors that are modified,
> but doesn't take into account that some platforms require certain alligments.

This error message is specific to stm32.

Did you look at the stm32 source code?

Are you *sure* the error message isn't in fact telling you that this is a quaint
requirement of stm32?

Warn : 225 1129 stm32x.c:366 stm32x_protect(): Error: start and end
sectors must be on a 4 sector boundary

There is a bug in stm32 code in that it gives you a warning and not
an error, but that's minor.


        if ((first && (first % stm32x_info->ppage_size)) || ((last + 1) &&
(last + 1) % stm32x_info->ppage_size))
        {
                LOG_WARNING("Error: start and end sectors must be on a %d sector
boundary", stm32x_info->ppage_size);
                return ERROR_FLASH_SECTOR_INVALID;
        }

-- 
Øyvind Harboe
http://www.zylin.com/zy1000.html
ARM7 ARM9 ARM11 XScale Cortex
JTAG debugger and flash programmer
_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to