Skip to content

fixup! [nrf noup] modules: hal_nordic: nrfx: Add SoftDevice PPI resou… #3008

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 795 commits into
base: main
Choose a base branch
from

Conversation

eivindj-nordic
Copy link
Contributor

…rces

Use PPI resources information from SoftDevice when it is present.

rlubos and others added 30 commits June 16, 2025 10:59
…h20dk configuration"

This reverts commit 408e904.

Signed-off-by: Robert Lubos <[email protected]>
…erwrite vref_mv"

This reverts commit 8760d8b.

Signed-off-by: Robert Lubos <[email protected]>
…annel configuration"

This reverts commit 6f641d7.

Signed-off-by: Robert Lubos <[email protected]>
…d info"

This reverts commit d75dd6e.

Signed-off-by: Robert Lubos <[email protected]>
…ipheral"

This reverts commit e11e414.

Signed-off-by: Robert Lubos <[email protected]>
… bitshifting"

This reverts commit ad46869.

Signed-off-by: Robert Lubos <[email protected]>
…r nRF54H20""

This reverts commit e5294f2.

Signed-off-by: Robert Lubos <[email protected]>
…ol: update fll16m"

This reverts commit 996711a.

Signed-off-by: Robert Lubos <[email protected]>
…d loop impl"

This reverts commit eb46dac.

Signed-off-by: Robert Lubos <[email protected]>
Add `IPC_SERVICE_BACKEND_ICBMSG_EP_BOUND_WORK_Q_STACK_SIZE` config
and parametrize its value depending on the optimization level.

Signed-off-by: Adam Kondraciuk <[email protected]>
(cherry picked from commit 3168969)
This reverts commit 28bd478.

This commit can be reverted as the cause of test failure
has been removed in ipc service by increasing workqueue stack size.

Signed-off-by: Adam Kondraciuk <[email protected]>
(cherry picked from commit bdab748)
Support for list of images in build info was added with commit
4061311 and is used by sysbuild.

Zephyr itself also uses CMake's External Project feature when including
TF-M or TF-A in a Zephyr build.

Populate build info with TF-M / TF-A information when said image is
included in the build.

Signed-off-by: Torsten Rasmussen <[email protected]>
(cherry picked from commit 2d5a810)
Add number of channels implemented by the local DPPIC instances.

Signed-off-by: Adam Kondraciuk <[email protected]>
(cherry picked from commit 8cc7c29)
… for DPPIC

The `owned-channels` property specifies which channels are assigned to
a given target. Additionally, the `source-channels` or `sink-channels`
property defines channels that can be used to forward an event outside
the DPPI domain, otherwise they can only be used within it.

Signed-off-by: Adam Kondraciuk <[email protected]>
(cherry picked from commit d2c3923)
…ures"

The marking procedures can be reverted, since at this stage
it is already allowed to use the stack.
The MSP is temporairly set to interrupt stack in `reset.S` file before
calling s2ram procedures..

Upstream PR #: 87304

Signed-off-by: Adam Kondraciuk <[email protected]>

This reverts commit e68d110f7c175f2a9275659d023c9d37d1e4b4f1.

(cherry picked from commit e577726)
Optimize `pm_s2ram_mark_check_and_clear()` function.

Upstream PR #: 87304

Signed-off-by: Adam Kondraciuk <[email protected]>
(cherry picked from commit c06e85e)
… security

Add support for configuring enterprise mode security.
Fixes SHEL-3573.

Upstream PR #: 88653

Signed-off-by: Ravi Dondaputi <[email protected]>
(cherry picked from commit 8d5a7a7)
Enable Wi-Fi credentials support. Update the heap sizes as
required for enterprise mode.

Upstream PR #: 88653

Signed-off-by: Ravi Dondaputi <[email protected]>
(cherry picked from commit 506f060)
For reasons other than system off, the retained data should be cleared.

Signed-off-by: Adam Kondraciuk <[email protected]>
(cherry picked from commit df70041)
This commit sets `ZEPHYR_<MODULE_NAME>_KCONFIG` variable for each
Kconfig file discovered in `nrf/modules/<module>/Kconfig`.

This is not meant as a permanent solution; we should do more careful
consideration on the optimal approach forward that will allow
compliance_check.py to be used downstream with custom
module_ext_roots, and at the same time keep current flexibility for
module glue code handling intact.

Signed-off-by: Torsten Rasmussen <[email protected]>
Signed-off-by: Martí Bolívar <[email protected]>
Signed-off-by: Carles Cufi <[email protected]>
(cherry picked from commit 385e1c8)
Add scripts/quarantine.yaml file, which will be used in CI.

Signed-off-by: Piotr Golyzniak <[email protected]>
Signed-off-by: Andrzej Głąbek <[email protected]>
Signed-off-by: Maciej Perkowski <[email protected]>
Signed-off-by: Robert Lubos <[email protected]>
(cherry picked from commit 124f663)
This file is used for NCS-specific testing configuration based on
modifications to files in this repository.

Signed-off-by: Alperen Sener <[email protected]>
Signed-off-by: Elisabeth Solheim Klakken <[email protected]>
Signed-off-by: Mariusz Poslinski <[email protected]>
Signed-off-by: Markus Swarowsky <[email protected]>
Signed-off-by: Robert Lubos <[email protected]>
Signed-off-by: Sebastian Wezel <[email protected]>
Signed-off-by: Tomasz Tyzenhauz <[email protected]>
Signed-off-by: Fredrik Ås <[email protected]>
Signed-off-by: Michał Szablowski <[email protected]>
Signed-off-by: Tony Le <[email protected]>
Signed-off-by: Krishna T <[email protected]>
Signed-off-by: Dawid Przybylo <[email protected]>
Signed-off-by: Rubin Gerritsen <[email protected]>
Signed-off-by: Jørgen Kvalvaag <[email protected]>
Signed-off-by: Magne Værnes <[email protected]>
Signed-off-by: Lang Xie <[email protected]>
Signed-off-by: Alexander Svensen <[email protected]>
Signed-off-by: Jan Gałda <[email protected]>
Signed-off-by: Vladislav Litvinov <[email protected]>
Signed-off-by: Guojun Wang <[email protected]>
Signed-off-by: Piotr Kosycarz <[email protected]>
Signed-off-by: Thomas Stilwell <[email protected]>
Signed-off-by: Krzysztof Szromek <[email protected]>
Signed-off-by: Grzegorz Chwierut <[email protected]>
Signed-off-by: Eduardo Montoya <[email protected]>
Signed-off-by: Pavel Vasilyev <[email protected]>
(cherry picked from commit a38b6ea)
New Twister schema is not supported yet in sdk-zephyr, drop this patch
once Twister is updated.

Signed-off-by: Gerard Marull-Paretas <[email protected]>
(cherry picked from commit 39f3b69)
… map"

This reverts commit c37deeb.

This is only a temporary change, until we align our CI. To be removed
once natsort is avaialble in the NCS CI.

Signed-off-by: Robert Lubos <[email protected]>
(cherry picked from commit fe7a3c3)
Kconfig search is handled in a separate docset in NCS, so remove the
page. This is a long-term noup patch.

Signed-off-by: Gerard Marull-Paretas <[email protected]>
Signed-off-by: Krishna T <[email protected]>
(cherry picked from commit 5e3cc22)
piotrkoziar and others added 24 commits July 1, 2025 10:34
… apply Errata 56

Adds config option that allows configuration workaround 56.

Upstream PR #: 92315

Signed-off-by: Piotr Koziar <[email protected]>
This commit adds a new Kconfig option by enabling which Host will keep
bonding with the same Central instead of rejecting pairing.

Brief implementation details:

This implementation adds a new flag to bt_keys struct:
BT_KEYS_ID_CONFLICT. The flag is set, when:
- bonding with the same peer and conflict identified
- when loading conflicting keys from persistent storage.

When bonding and conflict is identified, the new keys aren't added to
the Resolving List immediately. Instead, the old keys stay in the
Resolving List.

When start advertising, Host finds conflicting keys that are already
added to the Resolving List and substitues them.

If, however, there is another advertiser already started for the added
keys, the new request is reject and advertising start function returns
-EPERM.

This is supported by Peripheral role only for now.

Signed-off-by: Pavel Vasilyev <[email protected]>
Until register ABB->STATUSANA is visible it must be checked using
defined offset to base ABB register.

Upstream PR #: 92313

Signed-off-by: Łukasz Stępnicki <[email protected]>
This reverts commit 3608e26.

It needs more work.

Signed-off-by: Grzegorz Swiderski <[email protected]>
This reverts commit 360c80c.

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

Functions like `add` and `sub` can only return base 10 integers, which
means they can't really be used to define Kconfig symbols of type `hex`.

For the same reason, there already exist pairs of devicetree functions
named e.g., `dt_node_reg_addr_(int|hex)` after different return types.

Introduce `add_hex`, `sub_hex`, and friends.

To avoid confusion, it should be possible for those new functions to
accept arguments in base 16 as well. It's actually easier to let all
arithmetic functions take their inputs in "any" base, by leveraging
Python's built-in: `int(..., base=0)`.

Signed-off-by: Grzegorz Swiderski <[email protected]>
(cherry picked from commit 64bb8b6)
Upstream PR #: 91826

s/IRONside/IronSide/g

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

Upstream PR #: 91826

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 ac944ac742117669a1904bde345a4bacd4a1d5fc)
…e only

Upstream PR #: 91826

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 921733127636ea9cdb34cc1d74b557bc45029dbb)
…variants

Upstream PR #: 91826

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 ffa2e92ac089a9fc8545281ab51dd9b64f34c35c)
Upstream PR #: 91826

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 6edd8d9b9db94630e642a586b2d572e0715ede95)
…F54H

Upstream PR #: 91826

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 925897a8858437286072eee904c5f8ce44b165b8)
Upstream PR #: 91826

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 ce6c9859ebec2b844c7ba4c3aca4f3591d47bf42)
Upstream PR #: 91826

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 e6f25af3528d0186c06fb5802fcbf70e5ad6e097)
Upstream PR #: 91826

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 7173111bd1d331783d4baae868919ed1c968b051)
Upstream PR #: 91826

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 04b901e469731891553e20a0fe56a490c75fb8b1)
…if present

Upstream PR #: 91826

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 9efd957fc462ece94b7ee2cc01a29a37fd90e184)
Upstream PR #: 91826

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 81aab562d563e36d9a5c5215bfe20411fcb5f8ab)
Upstream PR #: 91826

Use designated IRQ numbers, instead of generic defaults.

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

Upstream PR #: 91826

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 7ceb179961d11518bd083958ca524aab2ff01669)
Upstream PR #: 92033

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 1f56dd0ebdd9d1e763cbf539edd29e24b0a74c58)
Enable the `empty_app_core` image when building for `cpurad`.

Signed-off-by: Grzegorz Swiderski <[email protected]>
…thread stacks

The spi_loopback test suite creates three internal threads. The
stack sizes for these threads is hardcoded to 512, which is to little
for some socs, namely the nrf54h20 cpuapp if pm device runtime is
enabled. Instead, determine the stack sizes the same way ztest
stack sizes are determined.

Signed-off-by: Bjarki Arge Andreasen <[email protected]>
(cherry picked from commit 5163b8c)
fixup! 8aa56dd
Use PPI resources information from SoftDevice when it is present.

Signed-off-by: Eivind Jølsgard <[email protected]>
@eivindj-nordic eivindj-nordic force-pushed the fixup_nrfx_config_reserved_resources_softdevice_include branch from b07ea1a to 2b6f1e1 Compare July 1, 2025 12:58
Copy link

sonarqubecloud bot commented Jul 1, 2025

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.