-
Notifications
You must be signed in to change notification settings - Fork 736
[nrf fromlist] soc: nordic: pm support for nrf92 series #3538
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
Closed
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add support for getting usage statistics for DMM. Signed-off-by: Krzysztof Chruściński <[email protected]> (cherry picked from commit d10ee98)
Extended test to check usage stats and longer buffer alloc. Signed-off-by: Krzysztof Chruściński <[email protected]> (cherry picked from commit 3d31042)
Add stress test which validates that allocator is thread safe and has no memory leaks. Signed-off-by: Krzysztof Chruściński <[email protected]> (cherry picked from commit c02f904)
…mory region Skip stress test if null memory region. That's the case if DMM is disabled. Upstream PR #: 96831 Signed-off-by: Krzysztof Chruściński <[email protected]>
There were some corner cases and stress test could fail. Reworking tail bits handling to make the stress test pass. Upstream PR #: 96831 Signed-off-by: Krzysztof Chruściński <[email protected]>
…state The s2ram power state is a "suspend-to-ram" state which is not supported by the radio core, so delete it from the overlay. Signed-off-by: Bjarki Arge Andreasen <[email protected]> Signed-off-by: Adam Kondraciuk <[email protected]> (cherry picked from commit 91c8c07)
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]>
…sh config This adds a Kconfig dependency on FLASH_PAGE_LAYOUT when using flash with explicit erase, removing all code dependencies on flash configuration from the erasure logic. This module already requires FLASH_PAGE_LAYOUT to be set when using it with flash with explicit erase, as a silent requirement. The current code does not work without this option enabled except for the case where a BLOB has a size which is a multiple of the page size (since, without it, trying to erase flash space for the final block, which is of variable size, will fail). Also cleans up the code a bit. Signed-off-by: Ludvig Jordet <[email protected]> (cherry picked from commit 294a2cd)
…ocks Only erase a page when starting the first block on that page. This fixes a bug where, if the block size is smaller than the page size, the entire page would be erased upon start of each block when writing, meaning only the final block on each page would be retained. This works because blocks are always received in order. Signed-off-by: Ludvig Jordet <[email protected]> (cherry picked from commit 99190cb)
…flash
This fully decouples blob_io_flash from specific flash device details,
by not reading the write block size from a hard-coded device tree node,
instead pulling this from the actual flash device used.
The block write routine has been updated to be more generic and fix a
few bugs:
* The write buffer is now sized based on a KConfig option instead of
basing it off the device tree - this makes the module usable with
any flash device, not just the internal memory. The configured value
is checked during initialization, to ensure that the configured size
will fit the write block size required by the device passed to the
init function.
* The erase value used to fill the buffer when using a device with
explicit erase is now pulled from the flash parameters instead of
being hard-coded to `0xff`.
* An additional write block sized piece of buffer is allocated - the
previous buffer sizing with rounding up only worked if
`BLOB_RX_CHUNK_SIZE % WRITE_BLOCK_SIZE` was 0 or 1 (which
coincidentally worked in all testing because the chunk size defaults
to 161, and for internal flash w/write block size of 4,
`161 % 4 == 1`).
* The choice of whether to just write the chunk as-is or to
write-block align it is now based on the erase cap pulled from the
flash parameters, instead of checking the type of memory in the SOC.
This means the module dos _not_ currently support the case where
memory has to be written write-block aligned, but the memory does
_not_ use explicit erase. It uses a trick of filling the write
buffer with the erase value to avoid overwriting existing chunks,
which will not work in this case. This trick is required to support
random ordered chunks while still writing write-block aligned.
* The code has been cleaned up a bit in general.
Signed-off-by: Ludvig Jordet <[email protected]>
(cherry picked from commit db207b0)
…ions The only reason to keep these would be to enable conditional compilation of some parts of the code. However, we can't see enough benefit in doing this, particularly since the flash driver itself will conditionally handle certain paths depending on erase caps, so the options are deprecated to reduce complexity. Signed-off-by: Ludvig Jordet <[email protected]> (cherry picked from commit 8720ab7)
…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)
…e_s" This reverts commit bbfecc3. Signed-off-by: Adam Kondraciuk <[email protected]>
This reverts commit a41a631. Signed-off-by: Adam Kondraciuk <[email protected]>
This reverts commit cdc11bd. Signed-off-by: Adam Kondraciuk <[email protected]>
…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]>
…nd_buf" This reverts commit adb8f4e. Signed-off-by: Marek Pieta <[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]>
…ffer Ringbuffer is not safe in ISR but k_pipe without waiting is. So use pipe for events, so that possible GPIO callbacks from ISR content can post events. Upstream PR #: 97362 Signed-off-by: Seppo Takalo <[email protected]>
Use ring indicator to wake up the CMUX device from sleep. Only used for runtime power management, but same event could be used for initiating idle -> connected as well. Upstream PR #: 97362 Signed-off-by: Seppo Takalo <[email protected]>
When working on CMUX power saving, it is typical that we end up closing the pipe before the last RX_READY event is handled from workqueue, so we end up receiving -EPERM which is not really a fatal error. Pipes recover when they are re-opened. So drop this error and return zero instead, like modem_pipe_open() and close() does. Upstream PR #: 97362 Signed-off-by: Seppo Takalo <[email protected]>
Instead of copying all fields from cmux_config into run-time struct cmux, just have the configuration structure as a member. Upstream PR #: 97362 Signed-off-by: Seppo Takalo <[email protected]>
…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)
This reverts commit cdfeb62. Signed-off-by: Robert Robinson <[email protected]>
…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]>
Add PM support for nrf92 series products Signed-off-by: Pasi Liimatainen <[email protected]>
NordicBuilder
added a commit
to NordicBuilder/sdk-nrf
that referenced
this pull request
Nov 25, 2025
Automatically created by action-manifest-pr GH action from PR: nrfconnect/sdk-zephyr#3538 Signed-off-by: Nordic Builder <[email protected]>
|
The following west manifest projects have changed revision in this Pull Request: ✅ All manifest checks OK Note: This message is automatically posted and updated by the Manifest GitHub Action. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Add Power Management support for nrf92 series products.
Contents is based on nrf54h20 files and modified for nr92 where needed.
Upstream PR#: 99961