Yes true. I've fixed this. (I hope it's working)
File patch crt0_v7m.s
Code: Select all
Reset_Handler:
/* Interrupts are globally masked initially.*/
cpsid i
/* PSP stack pointers initialization.*/
ldr r0, =__process_stack_end__
msr PSP, r0
+ b LoopCopyDataInit1
+CopyDataInit1:
+ ldr r3, =__ram4_start__
+ ldr r3, [r3, r1]
+ str r3, [r0, r1]
+ adds r1, r1, #4
+LoopCopyDataInit1:
+ ldr r0, =__ram4_start__
+ ldr r3, =__ram4_end__
+ adds r2, r0, r1
+ cmp r2, r3
+ bcc CopyDataInit1
#if CRT0_INIT_FPU == TRUE
/* FPU FPCCR initialization.*/
movw r0, #CRT0_FPCCR_INIT & 0xFFFF
movt r0, #CRT0_FPCCR_INIT >> 16
movw r1, #SCB_FPCCR & 0xFFFF
movt r1, #SCB_FPCCR >> 16
str r0, [r1]
dsb
isb
http://www.st.com/web/en/resource/techn ... 083249.pdf Page 20...21
But I wonder how the linker knows, that initialization code is missing in the startup section.
Sven