Skip to content

Commit 4f79401

Browse files
committed
[bsp][renesas]Link script adds finsh related sections.
1 parent e58ecd9 commit 4f79401

File tree

2 files changed

+83
-1
lines changed
  • bsp/renesas

2 files changed

+83
-1
lines changed

bsp/renesas/ra8d1-ek/script/fsp.ld

+55-1
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ MEMORY
9696
}
9797

9898
/* Library configurations */
99-
GROUP(libgcc.a libc.a libm.a libnosys.a)
99+
GROUP(libc.a libm.a libnosys.a)
100100

101101
/* Linker script to place sections and symbol values. Should be used together
102102
* with other linker script that defines memory regions FLASH and RAM.
@@ -181,6 +181,26 @@ SECTIONS
181181
KEEP(*(.init))
182182
KEEP(*(.fini))
183183

184+
/* section information for finsh shell */
185+
. = ALIGN(4);
186+
__fsymtab_start = .;
187+
KEEP(*(FSymTab))
188+
__fsymtab_end = .;
189+
190+
. = ALIGN(4);
191+
__vsymtab_start = .;
192+
KEEP(*(VSymTab))
193+
__vsymtab_end = .;
194+
195+
/* section information for initial. */
196+
. = ALIGN(4);
197+
__rt_init_start = .;
198+
KEEP(*(SORT(.rti_fn*)))
199+
__rt_init_end = .;
200+
201+
. = ALIGN(4);
202+
KEEP(*(FalPartTable))
203+
184204
/* .ctors */
185205
*crtbegin.o(.ctors)
186206
*crtbegin?.o(.ctors)
@@ -213,6 +233,14 @@ SECTIONS
213233

214234
KEEP(*(.eh_frame*))
215235

236+
/* new GCC version uses .init_array */
237+
PROVIDE(__ctors_start__ = .);
238+
KEEP (*(SORT(.init_array.*)))
239+
KEEP (*(.init_array))
240+
PROVIDE(__ctors_end__ = .);
241+
242+
. = ALIGN(4);
243+
216244
__ROM_End = .;
217245
} > FLASH = 0xFF
218246

@@ -566,6 +594,19 @@ SECTIONS
566594
__noinit_end = .;
567595
} > RAM
568596

597+
. = .;
598+
__nocache_pre_location = .;
599+
.nocache ALIGN(32) (NOLOAD):
600+
{
601+
__nocache_start = .;
602+
603+
KEEP(*(.nocache))
604+
605+
. = ALIGN(32);
606+
__nocache_end = .;
607+
} > RAM
608+
. = (SIZEOF(.nocache) > 0) ? __nocache_end : __nocache_pre_location;
609+
569610
.bss :
570611
{
571612
. = ALIGN(4);
@@ -649,6 +690,19 @@ SECTIONS
649690
__SDRAM_End = .;
650691
} > SDRAM
651692

693+
. = .;
694+
__nocache_sdram_pre_location = .;
695+
.nocache_sdram ALIGN(32) (NOLOAD):
696+
{
697+
__nocache_sdram_start = .;
698+
699+
KEEP(*(.nocache_sdram))
700+
701+
. = ALIGN(32);
702+
__nocache_sdram_end = .;
703+
} > SDRAM
704+
. = (SIZEOF(.nocache_sdram) > 0) ? __nocache_sdram_end : __nocache_sdram_pre_location;
705+
652706
/* Note: There are no secure/non-secure boundaries for SDRAM. These symbols are provided for the RA configuration tool. */
653707
__tz_SDRAM_N = __SDRAM_End;
654708

bsp/renesas/ra8d1-vision-board/script/fsp.ld

+28
Original file line numberDiff line numberDiff line change
@@ -181,6 +181,26 @@ SECTIONS
181181
KEEP(*(.init))
182182
KEEP(*(.fini))
183183

184+
/* section information for finsh shell */
185+
. = ALIGN(4);
186+
__fsymtab_start = .;
187+
KEEP(*(FSymTab))
188+
__fsymtab_end = .;
189+
190+
. = ALIGN(4);
191+
__vsymtab_start = .;
192+
KEEP(*(VSymTab))
193+
__vsymtab_end = .;
194+
195+
/* section information for initial. */
196+
. = ALIGN(4);
197+
__rt_init_start = .;
198+
KEEP(*(SORT(.rti_fn*)))
199+
__rt_init_end = .;
200+
201+
. = ALIGN(4);
202+
KEEP(*(FalPartTable))
203+
184204
/* .ctors */
185205
*crtbegin.o(.ctors)
186206
*crtbegin?.o(.ctors)
@@ -213,6 +233,14 @@ SECTIONS
213233

214234
KEEP(*(.eh_frame*))
215235

236+
/* new GCC version uses .init_array */
237+
PROVIDE(__ctors_start__ = .);
238+
KEEP (*(SORT(.init_array.*)))
239+
KEEP (*(.init_array))
240+
PROVIDE(__ctors_end__ = .);
241+
242+
. = ALIGN(4);
243+
216244
__ROM_End = .;
217245
} > FLASH = 0xFF
218246

0 commit comments

Comments
 (0)