cmake: linker: Automatically generates memory regions

As already done for the regular linker script, dinamically generates the
memory regions with the 'zephyr,memory-region' compatible also when
using the cmake linker generator.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
This commit is contained in:
Carlo Caione 2022-02-02 14:56:33 +01:00 committed by Anas Nashif
commit 34339e2560

View file

@ -34,20 +34,11 @@ zephyr_linker_memory(NAME FLASH FLAGS rx START ${FLASH_ADDR} SIZE ${FLASH_SIZ
zephyr_linker_memory(NAME RAM FLAGS wx START ${RAM_ADDR} SIZE ${RAM_SIZE}) zephyr_linker_memory(NAME RAM FLAGS wx START ${RAM_ADDR} SIZE ${RAM_SIZE})
zephyr_linker_memory(NAME IDT_LIST FLAGS wx START ${IDT_ADDR} SIZE 2K) zephyr_linker_memory(NAME IDT_LIST FLAGS wx START ${IDT_ADDR} SIZE 2K)
# TI CCFG Registers # Only use 'rw' as FLAGS. It's not used anyway.
zephyr_linker_dts_memory(NODELABEL ti_ccfg_partition FLAGS rwx) dt_comp_path(paths COMPATIBLE "zephyr,memory-region")
foreach(path IN LISTS paths)
# Data & Instruction Tightly Coupled Memory zephyr_linker_dts_memory(PATH ${path} FLAGS rw)
zephyr_linker_dts_memory(CHOSEN "zephyr,itcm" FLAGS rw) endforeach()
zephyr_linker_dts_memory(CHOSEN "zephyr,dtcm" FLAGS rw)
zephyr_linker_dts_memory(NODELABEL sram1 FLAGS rw)
zephyr_linker_dts_memory(NODELABEL sram2 FLAGS rw)
zephyr_linker_dts_memory(NODELABEL sram3 FLAGS rw)
zephyr_linker_dts_memory(NODELABEL sram4 FLAGS rw)
zephyr_linker_dts_memory(NODELABEL sdram1 FLAGS rw)
zephyr_linker_dts_memory(NODELABEL sdram2 FLAGS rw)
zephyr_linker_dts_memory(NODELABEL backup_sram FLAGS rw)
if(CONFIG_XIP) if(CONFIG_XIP)
zephyr_linker_group(NAME ROM_REGION LMA FLASH) zephyr_linker_group(NAME ROM_REGION LMA FLASH)