есть идея править оригинальный linker.ld. Вот начало правки:
diff --git a/include/zephyr/arch/arm/cortex_m/scripts/linker.ld b/include/zephyr/arch/arm/cortex_m/scripts/linker.ld
index 688165d0698..f201b206f75 100644
--- a/include/zephyr/arch/arm/cortex_m/scripts/linker.ld
+++ b/include/zephyr/arch/arm/cortex_m/scripts/linker.ld
@@ -87,6 +87,7 @@ MEMORY
#endif
FLASH (rx) : ORIGIN = ROM_ADDR, LENGTH = ROM_SIZE
RAM (wx) : ORIGIN = RAM_ADDR, LENGTH = RAM_SIZE
+ NXP_FLASH_LMA (rx) : ORIGIN = 0x60000000, LENGTH = 4M
#if defined(CONFIG_LINKER_DEVNULL_MEMORY)
DEVNULL_ROM (rx) : ORIGIN = DEVNULL_ADDR, LENGTH = DEVNULL_SIZE
#endif
@@ -124,7 +125,7 @@ SECTIONS
__rom_region_start = ROM_ADDR;
- SECTION_PROLOGUE(rom_start,,)
+ SECTION_PROLOGUE(rom_start,,) ALIGN_WITH_INPUT
{
/* Located in generated directory. This file is populated by calling
@@ -132,16 +133,17 @@ SECTIONS
* table and debug information.
*/
#include <snippets-rom-start.ld>
-
+/*
} GROUP_LINK_IN(ROMSTART_REGION)
-
+*/
+ } > FLASH AT> NXP_FLASH_LMA
Этот diff отработал для выбранных мной секций:rom_start 00002278 80000000 -> 60000000