MCUBoot with NRF54L15 - can't make it working

Hi, 

I am using NRF Connect environment and would like to enable by program to use MCU Boot functionality with dual-imaging support and FOTA updates.

My Kconfig.sysbuild has the following flags enabled:

CONFIG_BOOTLOADER_MCUBOOT=y
CONFIG_MCUBOOT_IMGTOOL_SIGN_VERSION="0.1.1"
CONFIG_MCUBOOT_COMPRESSED_IMAGE_SUPPORT_ENABLED=y
CONFIG_MCUBOOT_BOOTLOADER_MODE_DIRECT_XIP=y
CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU=y
CONFIG_PARTITION_MANAGER_ENABLED=y
After the build, I can see that MCUBOOT and MCUMGR flags are properly added to sysbuild/K.config as well as mcuboot module is in the the build directory.
However, what I don't see neither partitions.yml nor regions.yml to include MCU bootloader and secondary flash partition, also I don't see dfu_application.zip being generated after my project is built:
Partitions.yml:
app:
  address: 0x0
  end_address: 0x165000
  region: flash_primary
  size: 0x165000
bootconf:
  address: 0xffd080
  end_address: 0xffd084
  region: bootconf
  size: 0x4
otp:
  address: 0xffd500
  end_address: 0xffd9fc
  region: otp
  size: 0x4fc
sram_primary:
  address: 0x20000000
  end_address: 0x2002f000
  region: sram_primary
  size: 0x2f000
Regions.yml:
bootconf:
  base_address: 0xffd080
  default_driver_kconfig: ''
  device: ''
  dynamic_partition: null
  name: bootconf
  placement_strategy: start_to_end
  size: 0x4
flash_primary:
  base_address: 0x0
  default_driver_kconfig: CONFIG_SOC_FLASH_NRF_RRAM
  device: rram_controller
  dynamic_partition: null
  name: flash_primary
  placement_strategy: complex
  size: 0x165000
otp:
  base_address: 0xffd500
  default_driver_kconfig: ''
  device: ''
  dynamic_partition: null
  name: otp
  placement_strategy: start_to_end
  size: 0x4fc
sram_primary:
  base_address: 0x20000000
  default_driver_kconfig: ''
  device: ''
  dynamic_partition: sram_primary
  name: sram_primary
  placement_strategy: complex
  size: 0x2f000
What I am doing wrongly here?
Thanks in advance
Parents
  • Hi Alex,

    Kconfig.sysbuild is for defining custom KConfig symbols, not setting them.

    To enable MCUBoot, you only need to do the following:

    1. In your application directory, create a file named sysbuild.conf (this is where you configure sysbuild).

    2. Add the following line to that file to enable MCUBoot:

    SB_CONFIG_BOOTLOADER_MCUBOOT=y

    Best regards,
    Benjamin

Reply
  • Hi Alex,

    Kconfig.sysbuild is for defining custom KConfig symbols, not setting them.

    To enable MCUBoot, you only need to do the following:

    1. In your application directory, create a file named sysbuild.conf (this is where you configure sysbuild).

    2. Add the following line to that file to enable MCUBoot:

    SB_CONFIG_BOOTLOADER_MCUBOOT=y

    Best regards,
    Benjamin

Children
Related