Difference from "vanilla" Zephyr
References to the Zephyr guide and hints for partition configuration.
Because nRF Connect SDK is based on Zephyr, the following pages in the Zephyr guide apply to nRF Connect SDK as well:
There is only one difference you should be aware of when customizing partitions for core dumps:
Core dump partition configuration
Although nRF Connect SDK uses Partition Manager to compute flash partitions, the Zephyr core dump module also requires the core dump partition to be defined in the devicetree. Therefore, you need to add the core dump partition both to the Partition Manager configuration and to the devicetree.
For example, add the following file to the root of your project when building for nRF7002DK without TF-M:
app:
address: 0x0
end_address: 0xec000
region: flash_primary
size: 0xec000
coredump_partition:
address: 0xf0000
end_address: 0x100000
region: flash_primary
size: 0x10000
settings_storage:
address: 0xec000
end_address: 0xf0000
region: flash_primary
size: 0x4000Then, add the following devicetree overlay:
/delete-node/ &storage_partition;
/delete-node/ &tfm_ps_partition;
/delete-node/ &tfm_its_partition;
/delete-node/ &tfm_otp_partition;
&flash0 {
partitions {
/* Reserve last 64 KiB of flash for core dumps */
coredump_partition: partition@f0000 {
label = "coredump-partition";
reg = <0x000f0000 DT_SIZE_K(64)>;
};
};
};Ensure that the address and size of the core dump partition in the devicetree overlay and in the Partition Manager configuration match. Check our core dump sample on GitHub, for example, to see the Partition Manager configuration for nRF7002DK with TF-M.
How is this guide?