Skip to content

Commit 7a96162

Browse files
alxelaxm-alperen-sener
authored andcommitted
[nrf fromtree] doc: update migration guide with mesh versions incompatibility
Commit adds description of key representation incompatibility for mesh images built with different crypto libraries. Signed-off-by: Aleksandr Khromykh <[email protected]> (cherry picked from commit 5e235bb)
1 parent 4f4b24b commit 7a96162

File tree

2 files changed

+13
-2
lines changed

2 files changed

+13
-2
lines changed

doc/connectivity/bluetooth/api/mesh/dfu.rst

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -212,9 +212,10 @@ re-provisioned. The complete list of available options is defined in :c:enum:`bt
212212
provisioning. In this case, the device stays provisioned and the new composition data takes place
213213
after re-provisioning using the Remote Provisioning models.
214214
:c:enumerator:`BT_MESH_DFU_EFFECT_UNPROV`
215-
This effect is chosen if the composition data in the new firmware changes, the device doesn't
215+
This effect is chosen if the composition data in the new firmware changes, the device does not
216216
support the remote provisioning, and the new composition data takes effect after applying the
217-
firmware.
217+
firmware. The effect can also be chosen, if it is necessary to unprovision the device for
218+
application-specific reasons.
218219

219220
When the Target node receives the Firmware Update Firmware Metadata Check message, the Firmware
220221
Update Server model calls the :c:member:`bt_mesh_dfu_srv_cb.check` callback, the application can

doc/releases/migration-guide-4.1.rst

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -305,6 +305,16 @@ Bluetooth Mesh
305305
set as deprecated. Default option for platforms that do not support TF-M
306306
is :kconfig:option:`CONFIG_BT_MESH_USES_MBEDTLS_PSA`.
307307

308+
* Mesh key representations are not backward compatible if images are built with TinyCrypt and
309+
crypto libraries based on the PSA API. Mesh no longer stores the key values for those crypto
310+
libraries. The crypto library stores the keys in the internal trusted storage.
311+
If a provisioned device is going to update its image that was built with
312+
the :kconfig:option:`CONFIG_BT_MESH_USES_TINYCRYPT` Kconfig option set on an image
313+
that was built with :kconfig:option:`CONFIG_BT_MESH_USES_MBEDTLS_PSA` or
314+
:kconfig:option:`CONFIG_BT_MESH_USES_TFM_PSA` without erasing the persistent area,
315+
it should be unprovisioned first and reprovisioned after update again.
316+
If the image is changed over Mesh DFU, use :c:enumerator:`BT_MESH_DFU_EFFECT_UNPROV`.
317+
308318
* Mesh explicitly depends on the Secure Storage subsystem if storing into
309319
non-volatile memory (:kconfig:option:`CONFIG_BT_SETTINGS`) is enabled and
310320
Mbed TLS library (:kconfig:option:`CONFIG_BT_MESH_USES_MBEDTLS_PSA`) is used.

0 commit comments

Comments
 (0)