Skip to content

Conversation

@jonathannilsen
Copy link
Contributor

No description provided.

@jonathannilsen jonathannilsen force-pushed the iron-replace-update branch 5 times, most recently from a9c346e to 44fd57b Compare July 30, 2025 09:55
…ript"

This reverts commit f8ed7bb.

Signed-off-by: Jonathan Nilsen <[email protected]>
This reverts commit cabe684.

Signed-off-by: Jonathan Nilsen <[email protected]>
…not programmed"

This reverts commit 24c79af.

Signed-off-by: Jonathan Nilsen <[email protected]>
…54h"

This reverts commit 5f67798.

Signed-off-by: Jonathan Nilsen <[email protected]>
…tifacts if present"

This reverts commit 8caa2d4.

Signed-off-by: Jonathan Nilsen <[email protected]>
…upport"

This reverts commit 8ab3430.

Signed-off-by: Jonathan Nilsen <[email protected]>
…y map"

This reverts commit ba6ff5d.

Signed-off-by: Jonathan Nilsen <[email protected]>
…t for nRF54H"

This reverts commit 169f221.

Signed-off-by: Jonathan Nilsen <[email protected]>
…SIZE"

This reverts commit 0c78958.

Signed-off-by: Jonathan Nilsen <[email protected]>
…he base variants"

This reverts commit 6a5823e.

Signed-off-by: Jonathan Nilsen <[email protected]>
… app core only"

This reverts commit c62de71.

Signed-off-by: Jonathan Nilsen <[email protected]>
… and cpurad remotes"

This reverts commit 90eebd5.

Signed-off-by: Jonathan Nilsen <[email protected]>
…elling"

This reverts commit c0ea350.

Signed-off-by: Jonathan Nilsen <[email protected]>
…workaround"

This reverts commit 51f83ce.

Signed-off-by: Jonathan Nilsen <[email protected]>
…o CPUCONF service"

This reverts commit c7e8957.

Signed-off-by: Jonathan Nilsen <[email protected]>
This reverts commit dfccb09.

Signed-off-by: Jonathan Nilsen <[email protected]>
lstnl and others added 27 commits July 31, 2025 07:43
Until register ABB->STATUSANA is visible it must be checked using
defined offset to base ABB register.

Signed-off-by: Łukasz Stępnicki <[email protected]>
(cherry picked from commit 24322c6)
s/IRONside/IronSide/g

Signed-off-by: Grzegorz Swiderski <[email protected]>
(cherry picked from commit 75dd614)
…o soc/nordic

Move the IronSide APIs to soc/nordic from drivers/firmware since
these are vendor specific APIs. The header files are now included
from <nrf_ironside/*.h>. Adjust code that uses these APIs accordingly.

Also move the DT binding for "nordic,ironside-call" from
bindings/firmware to bindings/misc.

Signed-off-by: Jonathan Nilsen <[email protected]>
(cherry picked from commit b18c326)
This reverts commit 8955e01.

Signed-off-by: Jonathan Nilsen <[email protected]>
Replaces using an odd mix of Kconfig dts for partition offsets with
just use dts for non-secure board targets

Signed-off-by: Jamie McCrae <[email protected]>
(cherry picked from commit e68f8e3)
…itionally

All Nordic boards were enabling CONFIG_HW_STACK_PROTECTION
unconditionally, which is usually not a problem except if the particular
application happens to want to disable the MPU (or equivalent hardware
for RISC-V). In that case, the following warning is shown:

warning: HW_STACK_PROTECTION (defined at arch/Kconfig) was assigned the
value 'y' but got the value 'n'.
Check these unsatisfied dependencies: ARCH_HAS_STACK_PROTECTION (=n).

In order to avoid this warning, conditionally enable the hardware stack
protection only when the architecture supports it.

Signed-off-by: Carles Cufi <[email protected]>
(cherry picked from commit 9a9ae6f)
Non-secure variants for nRF7002 DK were removed from upstream
in commit 10d4973. Revert these
changes downstream, so that the NS variants are still available.

Signed-off-by: Andrzej Głąbek <[email protected]>
Signed-off-by: Johann Fischer <[email protected]>
(cherry picked from commit 06171de)
This patch backports the nrf9131ek to a time before tfm was refactored.

To be reverted when TF-M is updated.

Signed-off-by: Maximilian Deubel <[email protected]>
(cherry picked from commit 410528f)
If the application uses slot 1 (i.e. in Direct XIP mode),
boot radio slot 1 instead of slot 0.

Signed-off-by: Tomasz Chyrowicz <[email protected]>
(cherry picked from commit 9dd514c)
…rad remotes

Switch which board is the remote in the test case for
mbox communication between nrf54h20dk/nrf54h20/cpuapp and
nrf54h20dk/nrf54h20/cpurad, making cpurad the remote instead.
This is done to prepare the sample for executing with IronSide SE,
where using cpurad as the main board doesn't make as much sense,
since cpuapp has to start cpurad.

Signed-off-by: Jonathan Nilsen <[email protected]>
(cherry picked from commit d6673e1)
…e only

Update this multi-core test to always run the `main` and `remote` images
on cpuapp and cpurad respectively.

This is to prepare the test for running with IronSide SE, in which case
keeping cpurad as the main board target wouldn't make as much sense,
because cpurad would have to be started by cpuapp.

Signed-off-by: Grzegorz Swiderski <[email protected]>
(cherry picked from commit 559ace1)
…variants

This replaces the legacy SDFW compatible board configuration with the
IronSide SE compatible one, thus removing support for running samples
and tests on nRF54H20 devices with the old firmware.

All applications are expected to work on `nrf54h20dk/nrf54h20/cpuapp`
out of the box. For other board targets, all applications are expected
to boot, but may require additional peripheral configuration in UICR.
Build system support for the new UICR format is to be added separately.

Co-authored-by: Jonathan Nilsen <[email protected]>
Signed-off-by: Jonathan Nilsen <[email protected]>
Signed-off-by: Grzegorz Swiderski <[email protected]>
(cherry picked from commit b4c18e8)
CONFIG_USE_DT_CODE_PARTITION had to be disabled to add MCUboot support.
As a result, CONFIG_FLASH_LOAD_SIZE was left at zero, which means that
the linker would claim all available MRAM for the app core.

For now, we can't allow that, because the default nRF54H20 DK memory map
divides MRAM between multiple cores in order to support various samples.

Signed-off-by: Grzegorz Swiderski <[email protected]>
(cherry picked from commit b7b8b27)
…F54H

nrf-regtool will not be used as part of IronSide SE compatible builds.
It will remain in use for the nRF92 series, until that too undergoes a
switch from SDFW to IronSide SE.

Signed-off-by: Grzegorz Swiderski <[email protected]>
(cherry picked from commit 835649a)
Update memory map to be compatible with latest IronSide.

180kB MRAM is reserved.

Co-authored-by: Håkon Amundsen <[email protected]>
Signed-off-by: Håkon Amundsen <[email protected]>
Signed-off-by: Jonathan Nilsen <[email protected]>
(cherry picked from commit 7324eea)
Refactor the default RAM memory map on nrf54h20dk:

Removes use of "nordic,owned-memory" which is no longer needed on
nrf54h20. Reserved memory nodes that were under "nordic,owned-memory"
have been moved directly under reserved-memory.

The memory shared between cpuapp-cpusec and cpurad-cpusec in RAM0x
is no longer used with IronSide, since IPC buffers toward the secure
domain are at new fixed locations. The cpuapp_data region
has been expanded to fill the available space in RAM0x when removing
these shared memory regions.

Signed-off-by: Jonathan Nilsen <[email protected]>
(cherry picked from commit 38e6002)
With IronSide SE there is only one defined UICR which is at
the location of the APPLICATION UICR. Update the devicetree
definition accordingly, and use the "nordic,nrf-uicr" compatible
on the node since the domain distinction added by the v2 compatible
is no longer relevant.

Signed-off-by: Jonathan Nilsen <[email protected]>
(cherry picked from commit b43ae17)
Add support for generating UICR and associated artifacts in a
format compatible with IronSide SE, to be used for Nordic SoCs
in the Haltium family.

The main feature added with this is the ability to configure certain
global domain peripherals that are managed by the secure domain
through setting UICR.PERIPHCONF. This register points at a blob of
(register address, register value) pairs which are loaded
into the peripherals by IronSide SE ahead of the application boot.

The added helper macros in uicr.h can be used to add register
configurations to the PERIPHCONF. Entries added through these macros
are then extracted by a script, post-processed and placed in a blob
located at specific part of MRAM.

A default PERIPHCONF configuration has been added for the nrf54h20
soc to support the standard BLE use case (matching the configuration
in the soc devicetree).

Signed-off-by: Jonathan Nilsen <[email protected]>
(cherry picked from commit 56b6e57)
…if present

Program the new UICR and PERIPHCONF artifacts if they are generated.
These are required for the application to operate properly if they
are in use.

Signed-off-by: Jonathan Nilsen <[email protected]>
(cherry picked from commit eb7239c)
Update the recover mechanism for nrf54h to only call recover
once. Using nrfutil device recover with both --core Network and
--core Application is redundant with IronSide SE as both of these
map to the same operation which does a full erase of the device MRAM.

Additionally, recovering twice in a row specifically in a nrfutil
batch file (which is used by this runner implementation) triggers some
odd behavior with the current latest version of
nrfutil device + IronSide SE, which can cause the device to enter a
reset loop and appear unresponsive and preventing 'west flash --recover'
from working properly.

Signed-off-by: Jonathan Nilsen <[email protected]>
(cherry picked from commit 78a6157)
…rammed

Booting the radio core when it is not programmed will typically
cause a reset loop. This can happen when programming multiple
images to a device, and the app core image is programmed before
the radio core.

With this change we avoid the reset loop in that case.

Signed-off-by: Håkon Amundsen <[email protected]>
(cherry picked from commit 7697eff)
Fixes generating a library for devices that do not need it which
gives a cmake warning

Signed-off-by: Jamie McCrae <[email protected]>
(cherry picked from commit 85d4ebc)
Upstream PR #: 92340

Added support for the IronSide TDD service which allows configuring and
powering the trace and debug domain of the nrf54h20.
Also provide option to start the trace and debug domain in the soc start
sequence.

Signed-off-by: Karsten Koenig <[email protected]>
Upstream PR #: 92340

Configure the CTRLSEL value and the clock pin so that the TRACE pins
work when the TDD gets used.

Signed-off-by: Karsten Koenig <[email protected]>
Upstream PR #: 92340

Added support for ETM tracing via TPIU to the JLinkScript.

Signed-off-by: Karsten Koenig <[email protected]>
Upstream PR #: 93768

Format a few files with clang-format.

Signed-off-by: Jonathan Nilsen <[email protected]>
@rlubos rlubos merged commit 2c2453c into nrfconnect:main Jul 31, 2025
18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.