@@ -41,14 +41,20 @@ LOG_MODULE_REGISTER(soc, CONFIG_SOC_LOG_LEVEL);
4141 DT_REG_ADDR(COND_CODE_1(DT_FIXED_SUBPARTITION_EXISTS(DT_NODELABEL(label)), \
4242 (DT_GPARENT(DT_PARENT(DT_NODELABEL(label)))), \
4343 (DT_GPARENT(DT_NODELABEL(label))))))
44+ #define FIXED_PARTITION_NODE_MTD (node ) \
45+ COND_CODE_1( \
46+ DT_FIXED_SUBPARTITION_EXISTS(node), \
47+ (DT_MTD_FROM_FIXED_SUBPARTITION(node)), \
48+ (DT_MTD_FROM_FIXED_PARTITION(node)))
4449
4550#ifdef CONFIG_USE_DT_CODE_PARTITION
4651#define FLASH_LOAD_OFFSET DT_REG_ADDR(DT_CHOSEN(zephyr_code_partition))
4752#elif defined(CONFIG_FLASH_LOAD_OFFSET )
4853#define FLASH_LOAD_OFFSET CONFIG_FLASH_LOAD_OFFSET
4954#endif
50-
51- #define PARTITION_IS_RUNNING_APP_PARTITION (label ) \
55+ #define FIXED_PARTITION_IS_RUNNING_APP_PARTITION (label ) \
56+ DT_SAME_NODE(FIXED_PARTITION_NODE_MTD(DT_CHOSEN(zephyr_code_partition)), \
57+ FIXED_PARTITION_NODE_MTD(DT_NODELABEL(label))) && \
5258 (DT_REG_ADDR(DT_NODELABEL(label)) <= FLASH_LOAD_OFFSET && \
5359 DT_REG_ADDR(DT_NODELABEL(label)) + DT_REG_SIZE(DT_NODELABEL(label)) > FLASH_LOAD_OFFSET)
5460
@@ -210,7 +216,7 @@ void soc_late_init_hook(void)
210216 void * radiocore_address = NULL ;
211217
212218#if DT_NODE_EXISTS (DT_NODELABEL (cpurad_slot1_partition ))
213- if (PARTITION_IS_RUNNING_APP_PARTITION (cpuapp_slot1_partition )) {
219+ if (FIXED_PARTITION_IS_RUNNING_APP_PARTITION (cpuapp_slot1_partition )) {
214220 radiocore_address = (void * )(FIXED_PARTITION_ADDRESS (cpurad_slot1_partition ) +
215221 CONFIG_ROM_START_OFFSET );
216222 } else {
0 commit comments