Skip to content

Conversation

@nordic-segl
Copy link
Contributor

No description provided.

bjarki-andreasen and others added 30 commits October 23, 2025 14:43
…_INIT"

This reverts commit 69ad052.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
…s (NRFS)"

This reverts commit 20e985d.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
…SF client"

This reverts commit 8c97493.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
…IN for nRF54H20

The nRF54H20s power domains use NRFS, which uses the irq vectors used
for this test suite. Disable power domains to not conflict with the
test suite.

Upstream PR #: 97452

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
…or nrf54h

The nrf54h20 needs a slightly increased latency limit as the latency
is around 650us at 8MHz, which is right above the current limit of
648us (CONFIG_SPI_IDEAL_TRANSFER_DURATION_SCALING=12).

Increase CONFIG_SPI_IDEAL_TRANSFER_DURATION_SCALING to 15 to match
cpuppr_xip and match the observed latency.

Upstream PR #: 97452

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
Introduce nordic NRFS SWEXT power domain bindings and add it to
relevant SoC devicetree files.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
(cherry picked from commit cf2e80d)
This is a follow-up to commit f0f5f8c.

There is no need to check if TXE interrupt flag is set before
calling tx_dummy_bytes(), as the function can handle the case
when it is called even though there is no room in the TX FIFO.
On the other hand, the check may be actually harmful, as it may
prevent adding more items to the TX FIFO while the SSI controller
is waiting until the FIFO achieves its transfer start level.
Remove the check then and exit the ISR loop when no dummy bytes
could be written into the TX FIFO.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
(cherry picked from commit 7ff2be0)
…nt device transition"

This reverts commit 5696f6b.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
…ECT"

This reverts commit 8fc703b.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
…ROTECT"

This reverts commit 5d60e58.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
This reverts commit 4d2bcf7.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
…ARY.PROTECTEDMEM"

This reverts commit 9f2450f.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
…ARY.TRIGGER"

This reverts commit 6c9b26c.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
This reverts commit ccefb2a.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
Add support for UICR.WDTSTART.

UICR.WDTSTART configures the automatic start of a local watchdog timer
before the application core is booted. This provides early system
protection ensuring that the system can recover from early boot
failures.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
(cherry picked from commit af32ebd)
Add support for UICR.SECONDARY.TRIGGER configuration, which enables
automatic booting of secondary firmware based on specific reset reasons.

This introduces Kconfig options for configuring:
- UICR.SECONDARY.TRIGGER.ENABLE - Enable/disable automatic triggers
- UICR.SECONDARY.TRIGGER.RESETREAS - Bitmask of reset reasons that
  trigger secondary firmware boot

Individual Kconfig options are provided for each reset reason:
- APPLICATIONWDT0/1 - Application core watchdog timeouts
- APPLICATIONLOCKUP - Application core CPU lockup
- RADIOCOREWDT0/1 - Radio core watchdog timeouts
- RADIOCORELOCKUP - Radio core CPU lockup

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
(cherry picked from commit 9dc2b61)
…ECTEDMEM

Add support for UICR.SECONDARY.PROTECTEDMEM configuration, which enables
configuration of the protected memory region for secondary firmware.

This introduces Kconfig options for configuring:
- GEN_UICR_SECONDARY_PROTECTEDMEM - Enable/disable protected memory
  for secondary firmware
- GEN_UICR_SECONDARY_PROTECTEDMEM_SIZE_BYTES - Size of the protected
  memory region in bytes

The implementation validates that the configured size is divisible by
4096 bytes (4 KiB) as required by the hardware, and converts it to
4 KiB units when writing to UICR.SECONDARY.PROTECTEDMEM.SIZE4KB.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
(cherry picked from commit c3f6b8c)
Add support for UICR.LOCK configuration, which locks the entire UICR
configuration in NVR0 to prevent unauthorized modifications.

This introduces a Kconfig option GEN_UICR_LOCK that enables locking
of the UICR. Once locked, the UICR can only be modified by performing
an ERASEALL operation.

This is a critical security feature for production devices, typically
enabled alongside UICR.APPROTECT, UICR.PROTECTEDMEM, and
UICR.ERASEPROTECT to establish a complete device protection scheme.

When enabled, the gen_uicr.py script sets UICR.LOCK to 0xFFFFFFFF,
which configures the NVR0 page as read-only and enforces integrity
checks on the UICR content.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
(cherry picked from commit 1ffdf09)
Add support for UICR.ERASEPROTECT configuration, which blocks ERASEALL
operations to prevent bulk erasure of protected memory.

This introduces a Kconfig option GEN_UICR_ERASEPROTECT that enables
blocking of ERASEALL operations on NVR0, preserving UICR settings even
if an attacker attempts a full-chip erase.

This is a critical security feature for production devices. When enabled
together with UICR.LOCK, it becomes impossible to modify the UICR in
any way, establishing a permanent device protection scheme. Due to this
irreversibility, it should only be enabled during the final stages of
production.

When enabled, the gen_uicr.py script sets UICR.ERASEPROTECT to
0xFFFFFFFF, which prevents the ERASEALL command from affecting the
NVR0 page.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
(cherry picked from commit e20352d)
Add support for UICR.APPROTECT configuration, which controls debugger
and access-port permissions through the TAMPC peripheral.

This introduces three Kconfig options that allow independent control
over access port protection for different processor domains:

- GEN_UICR_APPROTECT_APPLICATION_PROTECTED: Controls debug access to
  the application domain processor
- GEN_UICR_APPROTECT_RADIOCORE_PROTECTED: Controls debug access to
  the radio core processor
- GEN_UICR_APPROTECT_CORESIGHT_PROTECTED: Controls access to the
  CoreSight debug infrastructure

When enabled, each option sets the corresponding UICR.APPROTECT
register to PROTECTED (0xFFFFFFFF), which disables debug access for
that domain. When disabled, the registers remain at their erased value
(UNPROTECTED), allowing full debug access.

This feature is critical for production devices where debug access must
be restricted to prevent unauthorized access to sensitive code and data.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
(cherry picked from commit 1438f8a)
…e transition

Add --permit-permanently-transitioning-device-to-deployed safety flag
to gen_uicr.py, required when enabling both UICR.LOCK and
UICR.ERASEPROTECT together. This prevents accidental permanent locking
of devices since this combination makes the configuration irreversible.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
(cherry picked from commit 35b89ab)
…DEF's

Add missing gen_uicr UNDEF's.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
(cherry picked from commit 8e59980)
…ode for all ICs

Until now, for historical reasons (see
f42cef9 and
58e0e31), the use of the --erase-mode
command-line switch was reserved for the nRF54L family. But in fact this
can be used (instead of --erase) for any of the Nordic ICs. This patch
extends the usage of this switch regardless of family.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
(cherry picked from commit 146fd2c)
In order to allow for users to invoke "west flash" without actual
hardware connected but still running the logic and pregeneration of
commands, specifically the json file.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
(cherry picked from commit 0679c0571246e6b0a4f746bff7187d0cc240da9a)
Removing the deprecated kconfigs for nrf54h20 target.

Signed-off-by: alperen sener <alperen.sener@nordicsemi.no>
… ns"

This reverts commit 5f7678f.

Signed-off-by: Travis Lam <travis.lam@nordicsemi.no>
Instantiate NRF_PLATFORM_LUMOS for all nrf lumos product,
Add NRF_SKIP_CLOCK_CONFIG kconfig to be a general kconfig
in nordic soc Kconfig, so that it can be used by other
lumos product.

Signed-off-by: Travis Lam <travis.lam@nordicsemi.no>
(cherry picked from commit 0042c1d)
Factor out UDC_DWC2 dependency.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
(cherry picked from commit 0018e8d)
…RF54LM20A SoC

Kconfig option UDC_DWC2_USBHS_VBUS_READY_TIMEOUT depends on services
exclusively available for nRF54H20, but the option can also be used for
nRF54LM20A, where there are no service dependencies, and VREG can be
accessed by the driver directly. Let depend the option on the SOC
series, as the controller can be used by the different CPUs on the SOC.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
(cherry picked from commit 4fe2c5b)
…n Kconfig.dwc2

This is a follow up to commit 4fe2c5b.

The UDC_DWC2_USBHS_VBUS_READY_TIMEOUT Kconfig option should be available
also for nRF92 Series SoCs (as it was previously when it depended on
NRFS_HAS_VBUS_DETECTOR_SERVICE), otherwise some builds will fail for
such targets.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
(cherry picked from commit 6360c7f)
nordic-segl and others added 24 commits November 20, 2025 07:35
…4l15 NS

drivers.uart.async_api filter is meet on nrf54l15 NS platform.
However, overlay file is needed to configure uart peripheral.

Add overlay required to pass uart_async_api test.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit eb41b82)
…5 NS

Enable clock control tests on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit 2e685e5)
…4l15 NS

Enable gpio_basic_api test on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit 26562e6)
…54l15 NS

Enable nrf_grtc_timer test on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit 69fa00d)
Enable I2S tests on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit 539b5b5)
Sort alphabetically supported features on
- nrf54l15dk/nrf54l15/cpuapp,
- nrf54l15dk/nrf54l15/cpuapp/ns,
platforms.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit ef3a97a)
Enable pwm_gpio_loopback test on
nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit 2a0b1d2)
…l15 NS

Enable temp_senor test on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit 8a01e8d)
Enable QDEC test on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit e761ba1)
Enable adc_api test on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit 4689b29)
…nrf54l15 NS

Enable spi_controller_peripheral test on
nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit 399c0a9)
…S formatting

Fix DTS overlay file formatting as requested by
the compliance check.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit 3a7afe3)
…est overlays

Overlay files that modify test configuration shall be stored
in the main application directory.
There is no board with f.e. '1mhz' name.

Move test overlays from boards sub-direcotry to the main
application directory.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit c359c44)
…n nrf54l15 NS

Add DTS overlay required to pass the test.
Test filter is meet for nrf54l15 NS platform.
However, test fails due to missing node configuration.

Fix the counter test on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit 89723c1)
Add reqired empty line as indicated by the compliance check.
Add License header.
Add information about GPIO loopbacks used by the test.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit 5501999)
…15 NS

Enable i2c_slave test on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit 55f9d2c)
Move DTS overlay files that modify test configuration
from boards sub-directory to the main application directory.
There is no 'i2c_speed_fast' board.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit cfe1ffa)
…rf54l15 NS

Enable wdt_basic_api test on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit 80a00b8)
Tests cases which needs to apply a single overlay file for testing
should not use snippets.

Cleanup the test case by reordering the snippet to be SoC specific and
adjust overlay selection using FILE_SUFFIX.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
(cherry picked from commit bbfcaa2)
Add overlays required to run the gpio_loopback test on
nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit 07d4577)
…P+PPR

Extend sample with possibility to use PPR core instead of Radio core.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
(cherry picked from commit 87d15bb)
…le implementation

Add implementation of `sys_clock_disable` function for GRTC timer.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
(cherry picked from commit dfff593)
…em clock disabled

Extend the system off samples by adding an option to disable
the system clock. When the system clock is disabled additional
power savings can be observed.
After using the `sys_clock_disable()` function, the GRTC is
turned off making system time-related features unavailable.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
(cherry picked from commit 127ba8d)
… set to NONE

This is a follow-up to commit d1abe40.

Function `qspi_wait_while_writing()` (and also `qspi_rdsr()` that is
called by it) is now always required for `qspi_erase()`, so it can no
longer be under `#if !IS_EQUAL(INST_0_QER, JESD216_DW15_QER_VAL_NONE)`.

Also definition of `dev_config` in `configure_chip()` needs to be moved,
as for QER set to NONE, it is not used and causes a compilation warning.

Add a test case that will ensure the driver can be built successfully
with `quad-enable-requirements = "NONE"`.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
(cherry picked from commit 68fab5f)
NordicBuilder added a commit to NordicBuilder/sdk-nrf that referenced this pull request Nov 20, 2025
Automatically created by action-manifest-pr GH action from PR:
nrfconnect/sdk-zephyr#3519

Signed-off-by: Nordic Builder <pylon@nordicsemi.no>
Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
@nordic-segl nordic-segl force-pushed the NRFX-NONE_Investigate-wdt-current branch from 42a9423 to 8f9b737 Compare November 20, 2025 13:49
NordicBuilder added a commit to NordicBuilder/sdk-nrf that referenced this pull request Nov 20, 2025
Automatically created by action-manifest-pr GH action from PR:
nrfconnect/sdk-zephyr#3519

Signed-off-by: Nordic Builder <pylon@nordicsemi.no>
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.