bsps: Support .rtemsstack.* linker input sections

Use a dedicated memory region or place it between the BSS and workspace.

Update #3459.
This commit is contained in:
Sebastian Huber
2018-06-19 15:10:36 +02:00
parent c8df844cf3
commit 715d6167e0
78 changed files with 266 additions and 77 deletions

View File

@@ -188,6 +188,10 @@ SECTIONS
_WorkAreaBase = . ;
.rtemsstack (NOLOAD) : {
*(SORT(.rtemsstack.*))
} > onchip_ram
_CPU_Interrupt_stack_low = 0x0f000000 ;
_CPU_Interrupt_stack_high = _CPU_Interrupt_stack_low + 4096 ;

View File

@@ -199,6 +199,10 @@ SECTIONS
_WorkAreaBase = . ;
.rtemsstack (NOLOAD) : {
*(SORT(.rtemsstack.*))
} > onchip_ram
_CPU_Interrupt_stack_low = 0xFFFFF000;
_CPU_Interrupt_stack_high = 0xFFFFFFFF;

View File

@@ -200,7 +200,10 @@ SECTIONS
PROVIDE (end = .);
_WorkAreaBase = . ;
. = 0x00480000 ;
.rtemsstack (NOLOAD) : {
*(SORT(.rtemsstack.*))
} > onchip_ram
_CPU_Interrupt_stack_low = 0xFFFFF000;
_CPU_Interrupt_stack_high = 0xFFFFFFFF;

View File

@@ -206,6 +206,10 @@ SECTIONS
_WorkAreaBase = . ;
.rtemsstack (NOLOAD) : {
*(SORT(.rtemsstack.*))
} > onchip_ram
_CPU_Interrupt_stack_low = 0xFFFFF000;
_CPU_Interrupt_stack_high = 0xFFFFFFFF;

View File

@@ -144,11 +144,14 @@ SECTIONS
__bss_end = .;
} > ram
.stack . : {
.stack : {
. = . + 4096;
}
} > ram
.rtemsstack (NOLOAD) : {
*(SORT(.rtemsstack.*))
} > ram
. = ALIGN(16);
_WorkAreaBase = . ;
. = ALIGN(16);
@@ -188,6 +191,5 @@ SECTIONS
.debug_funcnames 0 : { *(.debug_funcnames) }
.debug_typenames 0 : { *(.debug_typenames) }
.debug_varnames 0 : { *(.debug_varnames) }
.stack : { _stack = .; *(.stack) }
/* These must appear regardless of . */
}

View File

@@ -187,7 +187,10 @@ SECTIONS
__bss_end = .;
} > ram
. = ALIGN(16);
.rtemsstack (NOLOAD) : {
*(SORT(.rtemsstack.*))
} > ram
_WorkAreaBase = . ;
. = ALIGN(16);

View File

@@ -190,7 +190,10 @@ SECTIONS
*(.rela.sbss2 .rela.sbss2.* .rela.gnu.linkonce.sb2.*)
*(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*)
} >ram
. = ALIGN(16);
.rtemsstack (NOLOAD) : {
*(SORT(.rtemsstack.*))
} > ram
_WorkAreaBase = . ;

View File

@@ -209,6 +209,10 @@ SECTIONS
} > ram
_stack = .;
.rtemsstack (NOLOAD) : {
*(SORT(.rtemsstack.*))
} > ram
_WorkAreaBase = . ;
_CPU_Interrupt_stack_low = 0x00080000 ;