From d5d4d5791fcc3eebdc143d1dcd5c8a8834a70260 Mon Sep 17 00:00:00 2001 From: Simon Maurer Date: Tue, 20 Aug 2024 16:02:22 +0200 Subject: [PATCH] arch: arm: cortex_a_r/cortex_m: fix text region overlap with ram in !XIP ROM_ADDR and RAM_ADDR is same when CONFIG_XIP is not defined. If we reset the location for RAMABLE region to RAM_ADDR text region, which is part of rom, overlaps with initial ram region. This commit tries to avoid this incorrect behaviour for cortex_a and cortex_m Signed-off-by: Simon Maurer --- include/zephyr/arch/arm/cortex_a_r/scripts/linker.ld | 3 +++ include/zephyr/arch/arm/cortex_m/scripts/linker.ld | 3 +++ 2 files changed, 6 insertions(+) diff --git a/include/zephyr/arch/arm/cortex_a_r/scripts/linker.ld b/include/zephyr/arch/arm/cortex_a_r/scripts/linker.ld index 1d2744e253b..2dd15be6031 100644 --- a/include/zephyr/arch/arm/cortex_a_r/scripts/linker.ld +++ b/include/zephyr/arch/arm/cortex_a_r/scripts/linker.ld @@ -257,7 +257,10 @@ SECTIONS GROUP_START(RAMABLE_REGION) +#ifdef CONFIG_XIP . = RAM_ADDR; +#endif + /* Align the start of image RAM with the * minimum granularity required by MPU. */ diff --git a/include/zephyr/arch/arm/cortex_m/scripts/linker.ld b/include/zephyr/arch/arm/cortex_m/scripts/linker.ld index f9efbb5c9ed..b5a9c6ce76c 100644 --- a/include/zephyr/arch/arm/cortex_m/scripts/linker.ld +++ b/include/zephyr/arch/arm/cortex_m/scripts/linker.ld @@ -257,7 +257,10 @@ SECTIONS GROUP_START(RAMABLE_REGION) +#ifdef CONFIG_XIP . = RAM_ADDR; +#endif + /* Align the start of image RAM with the * minimum granularity required by MPU. */