diff --git a/subsys/dfu/img_util/flash_img.c b/subsys/dfu/img_util/flash_img.c index cc703ed6d4b..085cee589bd 100644 --- a/subsys/dfu/img_util/flash_img.c +++ b/subsys/dfu/img_util/flash_img.c @@ -23,6 +23,14 @@ LOG_MODULE_REGISTER(LOG_MODULE_NAME); #include #endif +#include +/* DT_FLASH_AREA_IMAGE_XX_YY values used below are auto-generated by DT */ +#ifdef CONFIG_TRUSTED_EXECUTION_NONSECURE +#define FLASH_AREA_IMAGE_SECONDARY DT_FLASH_AREA_IMAGE_1_NONSECURE_ID +#else +#define FLASH_AREA_IMAGE_SECONDARY DT_FLASH_AREA_IMAGE_1_ID +#endif /* CONFIG_TRUSTED_EXECUTION_NONSECURE */ + BUILD_ASSERT_MSG((CONFIG_IMG_BLOCK_BUF_SIZE % DT_FLASH_WRITE_BLOCK_SIZE == 0), "CONFIG_IMG_BLOCK_BUF_SIZE is not a multiple of " "DT_FLASH_WRITE_BLOCK_SIZE"); @@ -212,6 +220,6 @@ int flash_img_init(struct flash_img_context *ctx) #ifdef CONFIG_IMG_ERASE_PROGRESSIVELY ctx->off_last = -1; #endif - return flash_area_open(DT_FLASH_AREA_IMAGE_1_ID, + return flash_area_open(FLASH_AREA_IMAGE_SECONDARY, (const struct flash_area **)&(ctx->flash_area)); }