-
Notifications
You must be signed in to change notification settings - Fork 735
54h pm s2ram use arm funcs #3405
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
adamkondraciuk
wants to merge
2,063
commits into
nrfconnect:main
Choose a base branch
from
adamkondraciuk:54h-pm-s2ram-use-arm-funcs
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
54h pm s2ram use arm funcs #3405
adamkondraciuk
wants to merge
2,063
commits into
nrfconnect:main
from
adamkondraciuk:54h-pm-s2ram-use-arm-funcs
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
…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]>
Fill in necessary config files with platforms data. Upstream PR #: 97110 Signed-off-by: Bartlomiej Buczek <[email protected]>
This reverts commit cc5a1b4. Signed-off-by: Andrzej Puzdrowski <[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)
…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]>
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]>
This reverts commit 98bd8d2. 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)
2c9b142 to
8e80fa9
Compare
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]>
8e80fa9 to
87fe4d9
Compare
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.
No description provided.