DFU and bootloader comparison
The Nordic Semiconductor implementation of the SUIT procedure is the only supported bootloader and Device Firmware Update (DFU) procedure for the nRF54H Series of System on Chips (SoC). It provides a more flexible and tailored DFU experience compared to the MCUboot procedure and nRF Secure Immutable Bootloader to better fit the needs of the SoC’s multiple cores and transports. See the diagram and comparison table below for further comparison.
![MCUboot and SUIT, and nRF Secure Immutable Bootloader architecture comparison](../../../_images/nrf54h20_suit_mcuboot_comparison.png)
MCUboot, SUIT, and nRF Secure Immutable Bootloader architecture comparison
Characteristic |
MCUboot |
SUIT |
nRF Secure Immutable Bootloader |
---|---|---|---|
Primary function |
Bootloader and DFU |
Flexible, script-based DFU system |
Secure Immutable Bootloader |
Customization |
Built by users; partitions customized with Kconfig options and DTS. Kconfig and DTS configurable with multi-image builds or sysbuild. Becomes static post-compilation. |
SDFW provided by Nordic, delivered in binary form. Customizable with manifests and configuration. |
Limited; focused on initial boot security. |
Slot management |
Symmetrical primary and secondary slot style. Primary slot is where the system is executed from (by default). Secondary slot is the destination for the DFU (by default). |
Single DFU partition; components act as slots. The DFU partition size can be located anywhere in the nonvolatile memory, accessible in the application core. Information about the location of the DFU is not hardcoded in the SDFW and can be changed between updates. |
Not applicable for firmware updates. |
Slot characteristics |
Equal primary and secondary slot sizes lead to high memory overhead. |
Single DFU partition with customizable component sizes. |
Highly efficient due to immutable design. |
Slot definition |
Static definition; challenging to change post-deployment. |
Technical possibility to change component definitions between updates. |
Fixed and immutable; no post-deployment changes. |
Invocation process |
Limited customization through metadata. |
Flexible customization within the manifest (metadata). |
Authenticated firmware execution; no update mechanism post-boot. |
Flash memory layout |
Specific allocations for primary and secondary slots. |
Single DFU partition with flexible component slots. |
OTP regions for provisioned data; specific layout for boot and application partitions. |