@@ -49,14 +49,14 @@ ENTRY(Reset_Handler)
4949/* Highest address of the user mode stack */
5050_estack = 0x20030000; /* end of RAM */
5151/* Generate a link error if heap and stack don't fit into RAM */
52- _Min_Heap_Size = 0x400 ; /* required amount of heap */
53- _Min_Stack_Size = 0x1000 ; /* required amount of stack */
52+ _Min_Heap_Size = 0x400 ; /* required amount of heap */
53+ _Min_Stack_Size = 0x1000 ; /* required amount of stack */
5454
5555/* Specify the memory areas */
5656MEMORY
5757{
58- FLASH (rx) : ORIGIN = 0x08000000 , LENGTH = 512K
59- RAM1 (xrw) : ORIGIN = 0x20000004 , LENGTH = 0x2FFFC
58+ FLASH (rx) : ORIGIN = 0x08007000 , LENGTH = 512K
59+ RAM1 (xrw) : ORIGIN = 0x20000008 , LENGTH = 0x2FFF8
6060RAM_SHARED (xrw) : ORIGIN = 0x20030000 , LENGTH = 10K
6161}
6262
@@ -71,6 +71,12 @@ SECTIONS
7171 . = ALIGN (4 );
7272 } >FLASH
7373
74+ .ota_region 0x08007140 :
75+ {
76+ KEEP (*(TAG_OTA_START))
77+ . = ALIGN (4 );
78+ } >FLASH
79+
7480 /* The program code and other data goes into FLASH */
7581 .text :
7682 {
@@ -125,6 +131,13 @@ SECTIONS
125131 PROVIDE_HIDDEN (__fini_array_end = .);
126132 } >FLASH
127133
134+ .ota_region_end :
135+ {
136+ . = ALIGN (4 );
137+ KEEP (*(TAG_OTA_END))
138+ . = ALIGN (4 );
139+ } >FLASH
140+
128141 /* used by the startup to initialize data */
129142 _sidata = LOADADDR (.data );
130143
@@ -182,6 +195,8 @@ SECTIONS
182195 MAPPING_TABLE (NOLOAD) : { *(MAPPING_TABLE) } >RAM_SHARED
183196 MB_MEM1 (NOLOAD) : { *(MB_MEM1) } >RAM_SHARED
184197 MB_MEM2 (NOLOAD) : { _sMB_MEM2 = . ; *(MB_MEM2) ; _eMB_MEM2 = . ; } >RAM_SHARED
198+ TAG_OTA_END (NOLOAD) : { KEEP (*(TAG_OTA_END)) } >FLASH
199+
185200}
186201
187202
0 commit comments