Skip to content

Commit b046e33

Browse files
committed
Revert "cmake: linker: arm: put RAM sections in RAM region"
This reverts commit f5eada5. Fixes #57590. In order to fix incorrect program headers with CMAKE_LINKER_GENERATOR, issue #59064 needs to be addressed first. Until then, revert to the status quo from several versions back. Signed-off-by: Grzegorz Swiderski <[email protected]>
1 parent c8ac307 commit b046e33

File tree

2 files changed

+8
-8
lines changed

2 files changed

+8
-8
lines changed

cmake/linker_script/arm/linker.cmake

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ else()
4949
set(rom_start ${RAM_ADDR})
5050
endif()
5151

52-
zephyr_linker_group(NAME RAM_REGION VMA RAM LMA RAM)
52+
zephyr_linker_group(NAME RAM_REGION VMA RAM LMA ROM_REGION)
5353
zephyr_linker_group(NAME TEXT_REGION GROUP ROM_REGION SYMBOL SECTION)
5454
zephyr_linker_group(NAME RODATA_REGION GROUP ROM_REGION)
5555
zephyr_linker_group(NAME DATA_REGION GROUP RAM_REGION SYMBOL SECTION)
@@ -122,7 +122,7 @@ include(${COMMON_ZEPHYR_LINKER_DIR}/common-ram.cmake)
122122
#include(kobject.ld)
123123

124124
if(NOT CONFIG_USERSPACE)
125-
zephyr_linker_section(NAME .bss VMA RAM LMA RAM_REGION TYPE BSS)
125+
zephyr_linker_section(NAME .bss VMA RAM LMA FLASH TYPE BSS)
126126
zephyr_linker_section_configure(SECTION .bss INPUT COMMON)
127127
zephyr_linker_section_configure(SECTION .bss INPUT ".kernel_bss.*")
128128
# As memory is cleared in words only, it is simpler to ensure the BSS
@@ -137,11 +137,11 @@ endif()
137137

138138
include(${COMMON_ZEPHYR_LINKER_DIR}/ram-end.cmake)
139139

140-
zephyr_linker_symbol(OBJECT REGION_RAM SYMBOL __kernel_ram_start EXPR "(@__bss_start@)")
141-
zephyr_linker_symbol(OBJECT REGION_RAM SYMBOL __kernel_ram_end EXPR "(${RAM_ADDR} + ${RAM_SIZE})")
142-
zephyr_linker_symbol(OBJECT REGION_RAM SYMBOL __kernel_ram_size EXPR "(@__kernel_ram_end@ - @__bss_start@)")
143-
zephyr_linker_symbol(OBJECT REGION_RAM SYMBOL _image_ram_start EXPR "(${RAM_ADDR})" SUBALIGN 32) # ToDo calculate 32 correctly
144-
zephyr_linker_symbol(OBJECT REGION_RAM SYMBOL ARM_LIB_STACKHEAP EXPR "(${RAM_ADDR} + ${RAM_SIZE})" SIZE -0x1000)
140+
zephyr_linker_symbol(SYMBOL __kernel_ram_start EXPR "(@__bss_start@)")
141+
zephyr_linker_symbol(SYMBOL __kernel_ram_end EXPR "(${RAM_ADDR} + ${RAM_SIZE})")
142+
zephyr_linker_symbol(SYMBOL __kernel_ram_size EXPR "(@__kernel_ram_end@ - @__bss_start@)")
143+
zephyr_linker_symbol(SYMBOL _image_ram_start EXPR "(${RAM_ADDR})" SUBALIGN 32) # ToDo calculate 32 correctly
144+
zephyr_linker_symbol(SYMBOL ARM_LIB_STACKHEAP EXPR "(${RAM_ADDR} + ${RAM_SIZE})" SIZE -0x1000)
145145

146146
set(VECTOR_ALIGN 4)
147147
if(CONFIG_CPU_CORTEX_M_HAS_VTOR)

cmake/modules/extensions.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4495,7 +4495,7 @@ endfunction()
44954495
# zephyr_linker_symbol(SYMBOL bar EXPR "(@foo@ + 1024)")
44964496
#
44974497
function(zephyr_linker_symbol)
4498-
set(single_args "EXPR;SYMBOL;OBJECT")
4498+
set(single_args "EXPR;SYMBOL")
44994499
cmake_parse_arguments(SYMBOL "" "${single_args}" "" ${ARGN})
45004500

45014501
if(SECTION_UNPARSED_ARGUMENTS)

0 commit comments

Comments
 (0)