The partition table for the nRF9151-DK is different than the partition table generated when the Create a new board option is used in the nRF Connect SDK and the nRF9151-LACA is selected as the SoC.

Here is the partition table used when building for the nRF9151-DK:
dts/vendor/nordic/nrf91xx_partition.dtsi
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
boot_partition: partition@0 {
label = "mcuboot";
reg = <0x00000000 0x10000>;
};
slot0_partition: partition@10000 {
label = "image-0";
reg = <0x00010000 0x40000>;
};
slot0_ns_partition: partition@50000 {
label = "image-0-nonsecure";
reg = <0x00050000 0x30000>;
};
slot1_partition: partition@80000 {
label = "image-1";
reg = <0x00080000 0x40000>;
};
slot1_ns_partition: partition@c0000 {
label = "image-1-nonsecure";
reg = <0x000c0000 0x30000>;
};
tfm_ps_partition: partition@f0000 {
label = "tfm-ps";
reg = <0x000f0000 0x00004000>;
};
tfm_its_partition: partition@f4000 {
label = "tfm-its";
reg = <0x000f4000 0x00002000>;
};
tfm_otp_partition: partition@f6000 {
label = "tfm-otp";
reg = <0x000f6000 0x00002000>;
};
storage_partition: partition@f8000 {
label = "storage";
reg = <0x000f8000 0x00008000>;
};
};
The three partitions related to TF-M— tfm_ps_partition, tfm_its_partition, tfm_otp_partition— are not included in the template used when creating a new board.
scripts/west_commands/create_board/templates/nrf91/board-partitioning.dtsi.jinja2
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
boot_partition: partition@0 {
label = "mcuboot";
reg = <0x00000000 DT_SIZE_K(64)>;
};
slot0_partition: partition@10000 {
label = "image-0";
reg = <0x00010000 DT_SIZE_K(256)>;
};
slot0_ns_partition: partition@50000 {
label = "image-0-nonsecure";
reg = <0x00050000 DT_SIZE_K(212)>;
};
slot1_partition: partition@85000 {
label = "image-1";
reg = <0x00085000 DT_SIZE_K(256)>;
};
slot1_ns_partition: partition@c5000 {
label = "image-1-nonsecure";
reg = <0x000c5000 DT_SIZE_K(212)>;
};
storage_partition: partition@fa000 {
label = "storage";
reg = <0x000fa000 DT_SIZE_K(24)>;
};
};
My concern is that there is a comment in the partition table used for the nRF9151-DK that seems to indicate these partitions are important.
This layout matches (by necessity) that in the TF-M repository.
Questions:
- Was the omission of these three partitions in the board template an oversight or intentional?
- If I am developing a custom board based on the nRF9151, should I manually add these partitions back to the generated files? If they are required, shouldn't they be in the template?