nrf52840 and nrf5340
NCS 2.4.1
I have a project based on the Thread coap_client with mcubbot added, and we are migrating it from the 52840 to the 5340. We need to maintain firmware for both board types. I have created board files for both and can compile both.
I want to have separate mcuboot signature keys for each board, so that firmware for the nrf5340 cannot be accidentally loaded onto a nrf52840 and vice versa.
I though the way to do that was to provide a <boardname>.conf file in the child_image/mcuboot/boards directory. There I could define
=== child image mcuboot - begin === loading initial cache file D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/build/mcuboot/child_image_preload.cmake Loading Zephyr default modules (Zephyr base). -- Application: D:/NordicSemi/v2.4.1/bootloader/mcuboot/boot/zephyr -- CMake version: 3.20.5 -- Found Python3: D:/NordicSemi/toolchains/31f4403e35/opt/bin/python.exe (found suitable exact version "3.8.2") found components: Interpreter -- Cache files will be written to: D:/NordicSemi/v2.4.1/zephyr/.cache -- Zephyr version: 3.3.99 (D:/NordicSemi/v2.4.1/zephyr) -- Found west (found suitable version "1.0.0", minimum required is "0.7.1") -- Board: fl_digital_io -- Found host-tools: zephyr 0.16.0 (D:/NordicSemi/toolchains/31f4403e35/opt/zephyr-sdk) -- Found toolchain: zephyr 0.16.0 (D:/NordicSemi/toolchains/31f4403e35/opt/zephyr-sdk) -- Found Dtc: D:/NordicSemi/toolchains/31f4403e35/opt/bin/dtc.exe (found suitable version "1.4.7", minimum required is "1.4.6") -- Found BOARD.dts: D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/boards/arm/fl_digital_io/fl_digital_io.dts -- Found devicetree overlay: D:/NordicSemi/v2.4.1/bootloader/mcuboot/boot/zephyr/app.overlay 'label' is marked as deprecated in 'properties:' in D:/NordicSemi/v2.4.1/zephyr/dts/bindings\mtd\nordic,qspi-nor.yaml for node /soc/qspi@40029000/mx25r6435f@0. -- Generated zephyr.dts: D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/build/mcuboot/zephyr/zephyr.dts -- Generated devicetree_generated.h: D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/build/mcuboot/zephyr/include/generated/devicetree_generated.h -- Including generated dts.cmake file: D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/build/mcuboot/zephyr/dts.cmakeParsing D:/NordicSemi/v2.4.1/bootloader/mcuboot/boot/zephyr/Kconfig Loaded configuration 'D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/boards/arm/fl_digital_io/fl_digital_io_defconfig' Merged configuration 'D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/child_image/mcuboot/prj.conf' Merged configuration 'D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/child_image/mcuboot/boards/fl_digital_io.conf' Merged configuration 'D:/NordicSemi/v2.4.1/nrf/subsys/partition_manager/ext_flash_mcuboot_secondary.conf' Merged configuration 'D:/NordicSemi/v2.4.1/nrf/subsys/partition_manager/partition_manager_enabled.conf' Merged configuration 'D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/build/mcuboot/zephyr/misc/generated/extra_kconfig_options.conf' Configuration saved to 'D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/build/mcuboot/zephyr/.config' Kconfig header saved to 'D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/build/mcuboot/zephyr/include/generated/autoconf.h' -- Found GnuLd: d:/nordicsemi/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld.bfd.exe (found version "2.38")
Loading Zephyr default modules (Zephyr base). -- Application: D:/NordicSemi/v2.4.1/bootloader/mcuboot/boot/zephyr -- CMake version: 3.20.5 -- Found Python3: D:/NordicSemi/toolchains/31f4403e35/opt/bin/python.exe (found suitable exact version "3.8.2") found components: Interpreter -- Cache files will be written to: D:/NordicSemi/v2.4.1/zephyr/.cache -- Zephyr version: 3.3.99 (D:/NordicSemi/v2.4.1/zephyr) -- Found west (found suitable version "1.0.0", minimum required is "0.7.1") -- Board: fl_dio_nrf5340_cpuapp -- Found host-tools: zephyr 0.16.0 (D:/NordicSemi/toolchains/31f4403e35/opt/zephyr-sdk) -- Found toolchain: zephyr 0.16.0 (D:/NordicSemi/toolchains/31f4403e35/opt/zephyr-sdk) -- Found Dtc: D:/NordicSemi/toolchains/31f4403e35/opt/bin/dtc.exe (found suitable version "1.4.7", minimum required is "1.4.6") -- Found BOARD.dts: D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/boards/arm/fl_dio_nrf5340/fl_dio_nrf5340_cpuapp.dts -- Found devicetree overlay: D:/NordicSemi/v2.4.1/nrf/modules/mcuboot/usb.overlay -- Found devicetree overlay: D:/NordicSemi/v2.4.1/nrf/modules/mcuboot/flash_sim.overlay -- Generated zephyr.dts: D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/fl_dio_cpuapp/mcuboot/zephyr/zephyr.dts -- Generated devicetree_generated.h: D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/fl_dio_cpuapp/mcuboot/zephyr/include/generated/devicetree_generated.h -- Including generated dts.cmake file: D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/fl_dio_cpuapp/mcuboot/zephyr/dts.cmakeParsing D:/NordicSemi/v2.4.1/bootloader/mcuboot/boot/zephyr/Kconfig Loaded configuration 'D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/boards/arm/fl_dio_nrf5340/fl_dio_nrf5340_cpuapp_defconfig' Merged configuration 'D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/child_image/mcuboot/prj.conf' Merged configuration 'D:/NordicSemi/v2.4.1/nrf/subsys/pcd/pcd.conf' Merged configuration 'D:/NordicSemi/v2.4.1/nrf/subsys/partition_manager/partition_manager_enabled.conf' Merged configuration 'D:/NordicSemi/v2.4.1/nrf/subsys/partition_manager/ext_flash_mcuboot_secondary.conf' Merged configuration 'D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/fl_dio_cpuapp/mcuboot/zephyr/misc/generated/extra_kconfig_options.conf' Configuration saved to 'D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/fl_dio_cpuapp/mcuboot/zephyr/.config' Kconfig header saved to 'D:/FloLogic/VS_Code_Projects/FloLogic_NCS_2/fl_digitalio/fl_dio_cpuapp/mcuboot/zephyr/include/generated/autoconf.h'

