I'm having a problem in which the OpenSTM32 System Workbench debugger
reports “Warn : no flash bank found for address 20000000” when I flash
my STM32 target using System Workbench. The debugger then fails the
binary compare process and prevents me from debugging.
My linker script defines a memory region called DTCM which is mapped to
RAM starting at 0x20000000 for 64K bytes:
RAM (xrw) : ORIGIN = 0x20010000, LENGTH = 256K
DTCM(xrw) : ORIGIN = 0x20000000, LENGTH = 64K
ROM (rx) : ORIGIN = 0x8000000, LENGTH = 1024K
The tool is trying to treat DTCM as a flash targeted block but it’s
really RAM. It’s guaranteed to fail verification because it’s not flash
(that is, not ROM).
Can anyone please tell me how to exclude this memory region from the set
of bytes written to flash memory? I don't know if it's a linker script
problem, openocd configuration problem, GDB configuration problem, or
Thanks - John Speth