Memory mapping in pm.yml vs mapping in nrf52840dk_nrf52840.dts

Hello

When using mcuboot, the memory mapping shown in VSCode, which shows values from nrf52840dk_nrf52840.dts, differs from the mapping taken from pm.yml (see Partition Manager — nRF Connect SDK 2.2.0 documentation (nordicsemi.com) ).

To give figures:

- the dts (node &flash0) defines slot0 as starting at 0xc000, length 0x67000, slot1 starting at 0x73000, same length (419K)

- the map generated with "ninja partition_manager_report" shows application starting at 0x23200, length 0x6de00 (439K)

Why is it so? Have the memory mapping values from nrf52840dk_nrf52840.dts any usage? Where is the location of the storage partition located in the memory map from pm.yml?

Best Regards

Gerardo

Parents
  • Hi,

    The nRF Connect SDK includes a number of features that are not included in Zephyr, and this includes the Partition Manager. This can be configured in pm.yml. The partition manager does not use the memory map from the devicetree (.dts) at all, so this is not relevant for the nRF Connect SDK.

    The reason the dts files include memory map configurations is that these files are part of Zephyr, and in vanilla Zephyr there is no Partition Manager, and in that case, the .dts files are used.

    So, to wrap up: When using the nRF Connect SDK (which is what we provide and support, and where Zephyr is a key component), the Partition manager is relevant, and you can ignore the memory partition/slot definitions in the device tree.

Reply
  • Hi,

    The nRF Connect SDK includes a number of features that are not included in Zephyr, and this includes the Partition Manager. This can be configured in pm.yml. The partition manager does not use the memory map from the devicetree (.dts) at all, so this is not relevant for the nRF Connect SDK.

    The reason the dts files include memory map configurations is that these files are part of Zephyr, and in vanilla Zephyr there is no Partition Manager, and in that case, the .dts files are used.

    So, to wrap up: When using the nRF Connect SDK (which is what we provide and support, and where Zephyr is a key component), the Partition manager is relevant, and you can ignore the memory partition/slot definitions in the device tree.

Children
No Data
Related