cmake: linker: arm: Fix missing flash load size use

Fixes a mismatch between the cmake and ld linker scripts whereby
the cmake script was missing using the flash load size Kconfig
option (if it was said), which would result in images far larger
than they should have allowed to be

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
This commit is contained in:
Jamie McCrae 2023-11-01 09:55:59 +00:00 committed by Carles Cufí
commit 5031da95c6

View file

@ -16,10 +16,17 @@ math(EXPR FLASH_ADDR
OUTPUT_FORMAT HEXADECIMAL
)
math(EXPR FLASH_SIZE
"(${CONFIG_FLASH_SIZE} + 0) * 1024 - (${CONFIG_FLASH_LOAD_OFFSET} + 0)"
OUTPUT_FORMAT HEXADECIMAL
)
if(CONFIG_FLASH_LOAD_SIZE GREATER 0)
math(EXPR FLASH_SIZE
"(${CONFIG_FLASH_LOAD_SIZE} + 0)"
OUTPUT_FORMAT HEXADECIMAL
)
else()
math(EXPR FLASH_SIZE
"(${CONFIG_FLASH_SIZE} + 0) * 1024 - (${CONFIG_FLASH_LOAD_OFFSET} + 0)"
OUTPUT_FORMAT HEXADECIMAL
)
endif()
set(RAM_ADDR ${CONFIG_SRAM_BASE_ADDRESS})
math(EXPR RAM_SIZE "(${CONFIG_SRAM_SIZE} + 0) * 1024" OUTPUT_FORMAT HEXADECIMAL)