nRF Connect SDK v2.7.0 - External SPI flash not being allocated to mcuboot_secondary partition

Hello,

I'm updating an existing NCS 2.6 application (smp_ble_feat) for a Particle Xenon (nRF52840 board) that uses onboard 4MB SPI flash.

I've successfully built the new sysbuild version under NCS 2.7.0. In examining the partitions.yml file, I find that although the firmware uses 4Mb SPI flash for the app, mcuboot_secondary partition isn't using part of the 4MB SPI flash. It still uses the SOC flash.

Here is the MCUBoot configuration, particle_xenon.conf:

# Disable Zephyr console
CONFIG_CONSOLE=n

# Multithreading
CONFIG_MULTITHREADING=y

# MCUBoot settings
CONFIG_BOOT_MAX_IMG_SECTORS=2048

# MCUboot serial recovery
CONFIG_MCUBOOT_SERIAL=y
CONFIG_BOOT_SERIAL_DETECT_DELAY=450
CONFIG_MCUBOOT_INDICATION_LED=y
CONFIG_BOOT_SERIAL_CDC_ACM=y

# USB
CONFIG_USB_DEVICE_STACK=y
CONFIG_USB_DEVICE_REMOTE_WAKEUP=n
CONFIG_USB_DEVICE_PRODUCT="XENON MCUBOOT"

CONFIG_PM_PARTITION_SIZE_MCUBOOT=0x16000

### Enable SPI flash
CONFIG_FLASH=y
CONFIG_SPI=y
CONFIG_SPI_NOR=y
CONFIG_NORDIC_QSPI_NOR=n

CONFIG_SPI_NOR_FLASH_LAYOUT_PAGE_SIZE=4096
CONFIG_BOOT_ERASE_PROGRESSIVELY=y
CONFIG_SOC_FLASH_NRF_EMULATE_ONE_BYTE_WRITE_ACCESS=y
CONFIG_FPROTECT=y

CONFIG_PM_EXTERNAL_FLASH_MCUBOOT_SECONDARY=y
CONFIG_PM_OVERRIDE_EXTERNAL_DRIVER_CHECK=y

### Enable serial recovery
CONFIG_BOOT_SERIAL_NO_APPLICATION=y
CONFIG_UART_CONSOLE=n

The generated partitions.yml from the NCS 2.7.0 sysbuild is shown below.

The app  sees the 4MB SPI flash corrrectly but none is being allocated to MCUBoot. The internal nRF52840 flash is still being used by mcuboot_secondary.
 partiton.

smp_ble_feat application under NCS 2.6.0:

Note that mcuboot_secondary used external SPI flash:

and app starts using external flash after mcuboot_secondary, as expected.



What am I doing incorrectly in updating from NCS 2.6 to NCS 2.7.0 sysbuild? The build appears to run fine but for some reason mcuboot_secondary still uses SOC Flash.

I would be grateful if you could review above and let me know what's wrong with th MCUboot configuration. Thank you.


Regards,
Ravi

Related