fixes linker script to place .data with offset if ram is at address 0

This commit is contained in:
2026-02-01 15:09:27 +01:00
parent 18bc691033
commit 51d493fb5a

View File

@@ -11,7 +11,8 @@ SECTIONS
{ {
__stack_size = DEFINED(__stack_size) ? __stack_size : 2K; __stack_size = DEFINED(__stack_size) ? __stack_size : 2K;
__stack_segment_size = DEFINED(__stack_segment_size) ? __stack_segment_size : __stack_size; __stack_segment_size = DEFINED(__stack_segment_size) ? __stack_segment_size : __stack_size;
__data_vma_base = ORIGIN(LOCATION_DATA) + ((ORIGIN(LOCATION_DATA) == 0) ? 0x10 : 0);
/* Code/Const in LOCATION_TEXT */ /* Code/Const in LOCATION_TEXT */
. = ORIGIN(LOCATION_TEXT); . = ORIGIN(LOCATION_TEXT);
.text : ALIGN(4) .text : ALIGN(4)
@@ -48,7 +49,7 @@ SECTIONS
} > LOCATION_TEXT :text } > LOCATION_TEXT :text
/* .data in LOCATION_DATA, Load-Image in LOCATION_TEXT, PHDR is data */ /* .data in LOCATION_DATA, Load-Image in LOCATION_TEXT, PHDR is data */
.data : ALIGN(4) .data __data_vma_base : ALIGN(4)
{ {
__data_start = .; __data_start = .;
*(.data .data.*) *(.data .data.*)