Skip to content

Conversation

@adamkondraciuk
Copy link
Contributor

No description provided.

ahasztag and others added 30 commits October 7, 2025 14:54
…platforms

The swapped_app image, added via ExternalZephyrProject_Add,
wasn't receiving the swap method configuration from sysbuild.
If trying to build the test with a different configuration that
SWAP_USING_OFFSET (for example SWAP_USING_MOVE)
this resulted in a boot loop due to configuration mismatch
between swapped_image and mcuboot.

This fix ensures proper configuration propagation and prevents
similar mismatches in future scenarios.

Signed-off-by: Artur Hadasz <[email protected]>
(cherry picked from commit 7c1721d)
…d state

Add new idle state with cache retention enabled.

Signed-off-by: Adam Kondraciuk <[email protected]>
(cherry picked from commit 6f7a183)
Add the definition of pm_s2ram_stack memory region for nRF54H20.

Upstream PR #: 95914

Signed-off-by: Tomasz Chyrowicz <[email protected]>
(cherry picked from commit c274834)
Added support for hardening decision on resume from
S2RAM by MCUboot bootloader.
Application sets additional variable to MCUBOOT_S2RAM_RESUME_MAGIC
which allows the bootloader to doublecheck.

Signed-off-by: Andrzej Puzdrowski <[email protected]>
(cherry picked from commit d4bb1c6)
nrf_squash! [nrf noup] soc/nordic/nf54h/pm_s2ram: S2RAM resume hardening

Extended mcuboot_resume_s suture by slot_info field intended to
be used by MCUboot for recognize proper boot slot in direct-xp
mode.

Signed-off-by: Andrzej Puzdrowski <[email protected]>
MCUBOOT requires LTO to be enabled, while using code relocation
forces switching it off. When `__ramfunc` is used, LTO can also
be used. Then the `cache_retain_and_sleep` function will work
correctly, but slightly slower.

Upstream PR #: 97094

Signed-off-by: Adam Kondraciuk <[email protected]>
…rf54h20 PPR XIP

Add overlay and config file required to run the uart_async_api
test on nrf54h20dk/nrf54h20/cpuppr/xip platform.

Signed-off-by: Sebastian Głąb <[email protected]>
(cherry picked from commit e0a9a16)
Extend test coverage with new test.

Upstream PR #: 94110

Signed-off-by: Karol Lasończyk <[email protected]>
…p_send_pdu"

This reverts commit 510e36c.

Signed-off-by: Marek Pieta <[email protected]>
… TX is done"

This reverts commit d1d9b2d.

Signed-off-by: Marek Pieta <[email protected]>
By default, the BLE stack calls sent callback for ATT data when the data
is passed to BLE controller for transmission. Enabling this Kconfig
option delays calling the sent callback until data transmission is
finished by BLE controller (the callback is delayed until receiving the
Number of Completed Packets HCI Event).

If the ATT sent callback is delayed until data transmission is done by
BLE controller, the transmitted buffer may have an additional reference.
The reference is used to extend lifetime of the net buffer until the
data transmission is confirmed by ACK of the remote.

Jira: NCSDK-27422
Jira: NCSDK-28624
Jira: NCSDK-35650

Signed-off-by: Marek Pieta <[email protected]>
…eleted

When bt_l2cap_send_pdu() succeeds, it transfers buffer ownership to the
stack, which must eventually invoke the provided callback. This contract
is honored in all paths where transmission becomes impossible:

- Normal transmission: callback invoked with err=0 after HCI Number of
  Completed Packets event (tx_notify_process)
- Send errors (after tx allocated): callback invoked with err=-ESHUTDOWN
  via conn_tx_destroy
- Send errors (before tx allocated): callback invoked with the specific
  error code in send_buf error_return path
- Connection disconnect: callbacks invoked with err=-ESHUTDOWN via
  process_unack_tx -> conn_tx_destroy for all PDUs in tx_pending

However, when a channel is deleted (l2cap_chan_del), PDUs remaining in
the tx_queue are dropped without invoking their callbacks, violating the
ownership contract.

Fix this by extracting and invoking any non-NULL callbacks from the
closure stored in buf->user_data before releasing the buffers. The
callback is invoked with err=-ESHUTDOWN, making this path analogous to
process_unack_tx: both drain queues of unsent PDUs when transmission
becomes impossible due to external events (channel deletion vs connection
disconnect). The only difference is the buffer lifecycle stage - in
l2cap_chan_del, PDUs are still in tx_queue (closure in buf->user_data),
while in process_unack_tx, they've progressed to tx_pending (callback in
bt_conn_tx struct).

Note: conn_tx_destroy() cannot be used here because no bt_conn_tx struct
has been allocated yet - the closure is still in buf->user_data.

Upstream PR #: 97056

Signed-off-by: Aleksander Wasaznik <[email protected]>
Enable twister tests execution on nrf54h20dk/nrf54h20/cpuppr target.

Upstream PR #: 97165

Signed-off-by: Bartlomiej Buczek <[email protected]>
Fill in necessary config files with test data.

Upstream PR #: 97109

Signed-off-by: Bartlomiej Buczek <[email protected]>
…nd i2s

Add missing SoC header include required by memory region assertion
to adc_nrfx_saadc and i2s_nrf_tdm shims.

Upstream PR #: 97104

Signed-off-by: Michał Bainczyk <[email protected]>
Fill in necessary config files with platforms data.

Upstream PR #: 97110

Signed-off-by: Bartlomiej Buczek <[email protected]>
Introduce hook for customize reset.S code even before stack is
initialized or RAM is accessed. Hook can be enabled using
CONFIG_SOC_EARLY_RESET_HOOK=y.
Hook implementation is by soc_early_reset_hook() function which should
be provided by custom code.

Signed-off-by: Andrzej Puzdrowski <[email protected]>

(cherry picked from commit 418eed0)
…fixture

Add "external_flash" fixture to the no_explicit_erase testcase
in order to run twister only on boards with such HW setup.
Other runnable test cases has it already.

Signed-off-by: Piotr Kosycarz <[email protected]>
(cherry picked from commit 2318832)
…supply-gpios test

Supply-gpios feature test [nrf54h20] requires gpio_loopback fixture.

Signed-off-by: Bartosz Miller <[email protected]>
(cherry picked from commit 424459d)
…enable check

Instead of checking register values directly, use a function from
nrfx that does this.

Upstream PR #: 96538

Signed-off-by: Michał Bainczyk <[email protected]>
…_access_write

Change the value returned from disk_flash_access_write to return
the return code instead of a hardcoded zero.

Upstream PR #: 95468

Signed-off-by: Michał Bainczyk <[email protected]>
nrf-squash! [nrf noup] entropy: Add fake entropy nRF PRNG driver

LM20a is used, L20 was removed.
Old L20 file is from other noup: dbd3934

Signed-off-by: Piotr Kosycarz <[email protected]>
Add UICR.SECURESTORAGE configuration based on device tree partitions.
Validates partition layout and populates size fields in 1KB units.
Handles missing partitions gracefully.

Signed-off-by: Sebastian Bøe <[email protected]>
(cherry picked from commit 38a0f71)
…ESSOR

Add support for uicr.SECONDARY.PROCESSOR.

Signed-off-by: Sebastian Bøe <[email protected]>
(cherry picked from commit 9f45d2c)
Add support for PROTECTEDMEM.

Signed-off-by: Sebastian Bøe <[email protected]>
(cherry picked from commit 7c9275c)
Hi-Im-David and others added 24 commits November 4, 2025 10:43
…requencies

These represent the outputted frequencies of the AUXPLL of
different settings set in the device tree set using dt-bindings
in nrf-auxpll.h. This is added to remove the need for 'magic numbers'
in drivers and tests.

Signed-off-by: David Jewsbury <[email protected]>
(cherry picked from commit 0770210)
…frequency macros

Frequencies being for AUXPLL were register assignments and
not actual frequencies.

Signed-off-by: David Jewsbury <[email protected]>
(cherry picked from commit eb60562)
…cros

Eliminate the need for magic numbers when
setting AUXPLL_FREQ_OUT

Signed-off-by: David Jewsbury <[email protected]>
(cherry picked from commit 9a3a954)
Add support for audio_auxpll clock source as an alternative to audiopll
in the i2s_nrf_tdm driver. This enables TDM functionality on platforms
that use the auxiliary PLL for audio clocking.

- Add audio_auxpll node detection and configuration
- Update clock management to support both audiopll and audio_auxpll
- Add build assertions for supported frequency configurations

Signed-off-by: Erdem Simsek <[email protected]>
(cherry picked from commit 8338097)
Add I2S_TRIGGER_DROP call in the error test to ensure proper cleanup
after stopping the I2S device. This validates that the drop trigger
is properly handled in error conditions and resources are released.

Signed-off-by: Erdem Simsek <[email protected]>
(cherry picked from commit aec9da0)
Update commit id for hal_renesas

Signed-off-by: Phuc Pham <[email protected]>
Signed-off-by: Tien Nguyen <[email protected]>
(cherry picked from commit 62116a7)
Update revision of hal_renesas to get the FSP 6.1.0 migration

Signed-off-by: Khoa Tran <[email protected]>
(cherry picked from commit 6207380)
Update revision of hal_renesas to get RA8T2 support

Signed-off-by: Khoa Tran <[email protected]>
(cherry picked from commit ac941a3)
…stats blob"

This reverts commit 9fde3d0.

Signed-off-by: Robert Robinson <[email protected]>
…guards

Update the few modules to pick up some redefinition fixes.

Signed-off-by: Fabio Baltieri <[email protected]>
(cherry picked from commit 056f3b0)
…k 8.72.4 release

Update hal_nordic to pull file missing change from mdk 8.72.4 release

Signed-off-by: Robert Robinson <[email protected]>
(cherry picked from commit 84dfded)
A helper script is added to the nrf_wifi repo for parsing and dumping
nRF70 FW stats blob.

Note: "noup" to avoid churn by pulling min/max PR.

Signed-off-by: Chaitanya Tata <[email protected]>
(cherry picked from commit b71d290)
(cherry picked from commit 9fde3d0)
Pull nRF71 OSAL support, full support is till TBD.

Signed-off-by: Chaitanya Tata <[email protected]>
(cherry picked from commit 9f8bb3c)
(cherry picked from commit cdfeb62)
Add BT_HCI_VS_FATAL_ERROR_SUPPORT Kconfig to allow
out-of-tree Controllers to control Zephyr HCI Vendor-
Specific Fatal Error event support.

Upstream PR #: 98840

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
Currently it is possible to have an enabled (status="okay")
"suspend-to-ram" "zephyr,power-state" in the devicetree,
CONFIG_PM=y, but CONFIG_PM_S2RAM=n

This means the presence and state of the "suspend-to-ram" power
state in the devicetree does not match the PM_S2RAM option,
despite PM_S2RAM being dependent on the devicetree state.

This commit makes the devicetree the "source of truth" for
whether one or more s2ram power states shall be included and
supported, by enabling PM_S2RAM if any s2ram power state with
status "okay" is present in the devicetree. To disable the
s2ram power state, like with any other state, disable it by
setting its state to "disabled".

The help of the now promptless PM_S2RAM config has been
updated to reflect the new meaning. It previously held
cortex-m specific implementation details, these have been
removed as these details are already present in the file
pointed to as well (arch/arm/core/cortex_m/pm_s2ram.c
line 22)

Signed-off-by: Bjarki Arge Andreasen <[email protected]>
(cherry picked from commit 4626f6b)
…ptless

The config PM_S2RAM_CUSTOM_MARKING is not an optional config for a
user to select, it is required by some soc implementations of S2RAM,
in which case it must be selected by the soc.

Refactor the configuration to be HAS_PM_S2RAM_CUSTOM_MARKING, and
make the currently only soc which needs it select it. Then update
samples which previously had to select this option for this soc.

Signed-off-by: Bjarki Arge Andreasen <[email protected]>
(cherry picked from commit 1767f13)
This commit adds support using pm_s2ram for 54H when the
MPU is disabled. This is the case for the out of tree
sample `sdk-nrf/samples/nrf54h/empty_app_core`.

Without this commit the linker will fail to link
`z_arm_mpu_init` and `z_arm_configure_static_mpu_regions`.

Signed-off-by: Rubin Gerritsen <[email protected]>
(cherry picked from commit 05b77ec)
On nrf54h20 only cpuapp supports s2ram low power cpu state.

Signed-off-by: Sebastian Głąb <[email protected]>
(cherry picked from commit 6ec7634)
…e_s"

This reverts commit 079a5d6.

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

This reduced the amount of duplicate code and unifies the code
with other platforms.

MPU retention was originally added in
ee9d239.

Signed-off-by: Rubin Gerritsen <[email protected]>
(cherry picked from commit b45d7a8)
…uncs

This reduced the amount of duplicate code and unifies the code
with other platforms.

With this change fewer registers are stored and restored.
See also comment in scb.h for scb_context stating that
only essential registers are stored and restored.

No longer stored:
- ICSR
- SCR
- CFSR
- HFSR
- DFSR
- MMFAR
- BFAR
- AFSR

No longer used:
- SHPR[3..12]. This backup register was declared in the wrong way.
  In core_cm33.h and core_cm4.h this is declared as an array of
  12 uint8_t's. That is 3 uint32_t's.

Orignal SCB retention was added in
2055f7d.

Signed-off-by: Rubin Gerritsen <[email protected]>
(cherry picked from commit 4c0d478)
…uncs

This reduced the amount of duplicate code and unifies the code
with other platforms.

With this change the caller and callee status registers are
stored separately. Also, a different set of status registers
are stored:
 - FPSCR instead of FPDSCR. FPDSCR contains the default values
   to be assigned to FPSCR when a new floating-point context
   is created. It therefore seems more correct to store the
   FPSCR.
 - FPCCR and FPCAR are no longer stored.

FPU retention was originally added in:
8a5365c.

Signed-off-by: Rubin Gerritsen <[email protected]>
(cherry picked from commit 43cd4ca)
@adamkondraciuk adamkondraciuk force-pushed the 54h-pm-s2ram-use-arm-funcs branch from 2c9b142 to 8e80fa9 Compare November 5, 2025 13:48
rugeGerritsen and others added 3 commits November 5, 2025 16:51
This commit fixes a change introduced in #97025
where too many definitions where removed.

Fixes issue #98382

Signed-off-by: Rubin Gerritsen <[email protected]>
(cherry picked from commit 499102f)
Added support for hardening decision on resume from
S2RAM by MCUboot bootloader.
Application sets additional variable to MCUBOOT_S2RAM_RESUME_MAGIC
which allows the bootloader to doublecheck.

Signed-off-by: Andrzej Puzdrowski <[email protected]>
(cherry picked from commit d4bb1c6)
nrf_squash! [nrf noup] soc/nordic/nf54h/pm_s2ram: S2RAM resume hardening

Extended mcuboot_resume_s suture by slot_info field intended to
be used by MCUboot for recognize proper boot slot in direct-xp
mode.

Signed-off-by: Andrzej Puzdrowski <[email protected]>
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.