You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Updated ABI comp page and 54H gs guide:
Highlighted need to upgrade to the
latest SoC binaries available.
Signed-off-by: Francesco Domenico Servidio <[email protected]>
Copy file name to clipboardExpand all lines: doc/nrf/app_dev/device_guides/nrf54h/ug_nrf54h20_gs.rst
+13-9Lines changed: 13 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -104,15 +104,16 @@ Install a terminal emulator, such as the `Serial Terminal app`_ (from the nRF Co
104
104
Both of these terminal emulators start the required :ref:`toolchain environment <using_toolchain_environment>`.
105
105
106
106
.. _ug_nrf54h20_gs_bringup:
107
+
.. _ug_nrf54h20_gs_bringup_bicr:
107
108
.. _ug_nrf54h20_gs_bicr:
108
109
109
110
.. rst-class:: numbered-step
110
111
111
-
Programming the BICR
112
-
********************
112
+
Bring-up step: Programming the BICR
113
+
***********************************
113
114
114
115
The Board Information Configuration Registers (BICR) are non-volatile memory (NVM) registers that contain information on how the nRF54H20 SoC must interact with other board elements, including information about power and clock delivery to the SoC.
115
-
To prepare the nRF54H20 DK for first use, you must manually program the values of the BICR using a precompiled BICR binary file (:file:`bicr.hex`).
116
+
To prepare the nRF54H20 DK for its first use, you must manually program the required values into the BICR using a precompiled BICR binary file (:file:`bicr.hex`).
116
117
117
118
1. Download the `nRF54H20 DK BICR binary file`_.
118
119
#. Connect the nRF54H20 DK to your computer using the **DEBUGGER** port on the DK.
@@ -129,11 +130,12 @@ To prepare the nRF54H20 DK for first use, you must manually program the values o
To program the nRF54H20 SoC binaries based on IronSide SE on your nRF54H20 SoC-based device, your device must be in lifecycle state (LCS) ``EMPTY``.
@@ -142,11 +144,11 @@ Programming the nRF54H20 SoC binaries
142
144
Devices already provisioned using SUIT-based binaries and in LCS ``RoT`` cannot be transitioned back to LCS ``EMPTY``.
143
145
For more information, see :ref:`abi_compatibility`.
144
146
145
-
After programming the BICR, program the nRF54H20 SoC with the :ref:`nRF54H20 SoC binaries <abi_compatibility>`.
147
+
After programming the BICR, program the :ref:`nRF54H20 SoC binaries <abi_compatibility>`.
146
148
This bundle contains the precompiled firmware for the :ref:`Secure Domain <ug_nrf54h20_secure_domain>` and :ref:`System Controller <ug_nrf54h20_sys_ctrl>`.
147
149
To program the nRF54H20 SoC binaries to the nRF54H20 DK, do the following:
148
150
149
-
1. Download the `nRF54H20 SoC binaries v22.2.0+14`_, compatible with the nRF54H20 DK v0.9.0 and later DK revisions.
151
+
1. Download the `latest nRF54H20 SoC binaries`_.
150
152
151
153
.. note::
152
154
On MacOS, ensure that the ZIP file is not unpacked automatically upon download.
@@ -155,10 +157,12 @@ To program the nRF54H20 SoC binaries to the nRF54H20 DK, do the following:
@@ -19,31 +19,24 @@ When ABI compatibility is maintained, binaries of one component can interface co
19
19
For example, adding a new function to a library is typically an ABI-compatible change, as existing binaries remain functional.
20
20
However, changes that affect data structure layouts, such as altering field order or size, break ABI compatibility because they change the memory layout expected by existing binaries.
21
21
22
-
ABI compatibility matrix for the nRF54H20 SoC binaries
* To use the most recent version of the |NCS|, you must provision your nRF54H20-based device with the compatible IronSide-based SoC binaries.
28
-
Devices already provisioned using SUIT-based SoC binaries and in LCS ``RoT`` cannot be transitioned back to LCS ``EMPTY``.
25
+
.. note::
26
+
To use the most recent version of the |NCS|, always provision your nRF54H20 SoC-based device with the latest IronSide SE-based SoC binaries available.
29
27
30
-
For more information on provisioning devices, see :ref:`ug_nrf54h20_gs_bringup`.
28
+
.. caution::
29
+
The nRF54H20 SoC binaries do not support rollbacks to previous versions.
31
30
32
-
* The nRF54H20 SoC binaries only support specific versions of the |NCS| and do not support rollbacks to previous versions.
33
-
Upgrading the nRF54H20 SoC binaries on your development kit might break the DK's compatibility with applications developed for earlier versions of the |NCS|.
31
+
You must download the `latest nRF54H20 SoC binaries`_ for the nRF54H20 SoC.
34
32
35
-
To migrate your existing applications to the newest version of the |NCS|, see :ref:`migration_guides`.
33
+
Legacy ABI compatibility matrix for the nRF54H20 SoC binaries
The following table illustrates ABI compatibility between different versions of the nRF54H20 SoC binaries and the |NCS|:
38
-
39
-
.. list-table::
40
-
:header-rows: 1
41
-
42
-
* - |NCS| versions
43
-
- Compatible nRF54H20 SoC binaries version based on IronSide Secure Element (IronSide SE)
44
-
* - |NCS| v3.1.0
45
-
- `nRF54H20 SoC binaries v22.2.0+14`_, compatible with the nRF54H20 DK v0.9.0 and later DK revisions in LCS ``EMPTY``.
36
+
The following table illustrates the legacy ABI compatibility between older versions of the nRF54H20 SoC binaries and older versions of the |NCS|:
46
37
38
+
.. caution::
39
+
* Devices already provisioned using SUIT-based SoC binaries and in LCS ``RoT`` cannot be upgraded to IronSide SE.
47
40
48
41
.. list-table::
49
42
:header-rows: 1
@@ -69,19 +62,131 @@ The following table illustrates ABI compatibility between different versions of
69
62
* - |NCS| v2.6.99-cs2
70
63
- nRF54H20 SoC binaries v0.3.3
71
64
72
-
Maintaining ABI compatibility ensures that the Secure Domain and System Controller firmware binaries do not need to be recompiled each time the application, radio binaries, or both are recompiled, as long as they are based on a compatible |NCS| version.
73
-
Additionally, maintaining ABI compatibility allows the nRF54H20 SoC binary components to work together without recompilation when updating to newer |NCS| versions.
74
-
75
65
Provisioning the nRF54H20 SoC
76
66
*****************************
77
67
78
68
To provision the nRF54H20 SoC using the nRF54H20 SoC binaries, see :ref:`ug_nrf54h20_gs_bringup`.
79
69
80
-
nRF54H20 SoC binaries v22.2.0+14 changelog
81
-
******************************************
70
+
nRF54H20 SoC binaries changelog
71
+
*******************************
82
72
83
73
The following sections provide detailed lists of changes by component.
84
74
75
+
IronSide Secure Element (IronSide SE) v23.0.1+16
76
+
================================================
77
+
78
+
Changed
79
+
-------
80
+
81
+
* The domain-specific built-in keys identified by ``CRACEN_BUILTIN_*_ID``. (NCSDK-35202)
82
+
* The way IronSide SE treats the ``UICR.VERSION`` field. (NCSDK-35253)
83
+
84
+
The erase value is now interpreted as the highest supported UICR format version.
85
+
Other values must match a supported version or cause a boot error.
86
+
Currently, only version 2.0 (``0x00020000``) is supported.
87
+
* IronSide SE no longer disables RETAIN for every GPIO pin at boot. (NCSDK-35080)
88
+
89
+
Pins are now retained when the application boots, and the application must disable retention before using them.
90
+
* ``UICR.LOCK`` can now be set in ``LCS_EMPTY`` without hindering LFCLK calibration. (NCSDK-34458)
91
+
92
+
Fixed
93
+
-----
94
+
95
+
* EXMIF XIP region is now accessible. (NCSDK-35256)
96
+
97
+
IronSide Secure Element (IronSide SE) v23.0.0+15
98
+
================================================
99
+
100
+
Added
101
+
-----
102
+
103
+
* IronSide SE now supports most CRACEN PSA features.
104
+
The available features correspond to the following configuration::
* Passing 0-sized buffers are now allowed for optional arguments. (NCSDK-34171).
136
241
137
-
* The default owner ID of some peripherals, where previously it was set to SECURE or SYSCTRL instead of APPLICATION (NCSDK-34187).
242
+
* The default owner ID of some peripherals, where previously it was set to SECURE or SYSCTRL instead of APPLICATION. (NCSDK-34187)
138
243
139
244
IronSide Secure Element (IronSide SE) v22.0.2+10
140
245
================================================
@@ -219,7 +324,7 @@ IronSide Secure Element (IronSide SE) v21.0.1
219
324
Added
220
325
-----
221
326
222
-
* Boot report to be written to radio core (NCSDK-33583).
327
+
* Boot report to be written to radio core. (NCSDK-33583)
223
328
224
329
Updated
225
330
-------
@@ -242,17 +347,17 @@ Added
242
347
* Support for the IronSide SE update service. (NCSDK-32173)
243
348
This service allows updating IronSide SE firmware using the ``west ncs-ironside-se-update`` command.
244
349
The update is performed over SWD, and the device must be in a debug mode.
245
-
* Experimental support for a new UICR format (NCSDK-32444).
350
+
* Experimental support for a new UICR format. (NCSDK-32444)
246
351
At this stage, the functionality is mainly for internal testing and development, and user tools for interacting with UICR will be added at a later stage.
247
-
* Boot report support (NCSDK-32393).
248
-
* CPUCONF service for booting the radio core (NCSDK-32925).
352
+
* Boot report support. (NCSDK-32393)
353
+
* CPUCONF service for booting the radio core. (NCSDK-32925)
249
354
Currently, only ``hello world`` is supported.
250
-
* IronSide calls, the successor to SSF (NCSDK-32441).
355
+
* IronSide calls, the successor to SSF. (NCSDK-32441).
251
356
252
357
Updated
253
358
-------
254
359
255
-
* The limited PSA Crypto API is now implemented as an IronSide call (NCSDK-32912).
360
+
* The limited PSA Crypto API is now implemented as an IronSide call. (NCSDK-32912)
256
361
This replaces the temporary IPC mechanism from the last release.
257
362
258
363
Fixed
@@ -338,10 +443,10 @@ Updated
338
443
Removed (from legacy SUIT-based SDFW)
339
444
-------------------------------------
340
445
341
-
* SSF and all SSF services have been disabled (NCSDK-32000).
342
-
* Resource configuration based on UICR has been disabled (NCSDK-31999).
343
-
* The SDFW ADAC interface has been disabled (NCSDK-31994).
344
-
* SUIT is no longer supported (NCSDK-31996).
446
+
* SSF and all SSF services have been disabled. (NCSDK-32000)
447
+
* Resource configuration based on UICR has been disabled. (NCSDK-31999)
448
+
* The SDFW ADAC interface has been disabled. (NCSDK-31994)
0 commit comments