STM32F7 ITCM
Flash _write_access can _not_ be done at 0x00200000. It has to be done at 0x08000000.
To get openocd to load a flash with code linked for ITCM access, something like
MEMORY
{
ITCM (rwx) : ORIGIN = 0x00000000, LENGTH = itcm_length
ITCMFL (rx) : ORIGIN = 0x00200000, LENGTH = flash0_length
FLASH0 (rx) : ORIGIN = 0x08000000, LENGTH = flash0_length
SRAM0 (rwx) : ORIGIN = 0x20000000, LENGTH = ram0_length
}
SECTIONS
{
.itcmtext :
{
. = ALIGN(4);
_svect = .;
KEEP(*(.isr_vector))
_evect = .;
*(.nutinit)
*(.text .text.* .gnu.linkonce.t.*)
*(.glue_7t)
*(.glue_7)
*(.gcc_except_table)
= ALIGN(4);
} > ITCMFL AT > FLASH0
has to be written in the linker script.