-
Notifications
You must be signed in to change notification settings - Fork 716
Idle sample fixes nrf54h #3314
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
Draft
bjarki-andreasen
wants to merge
25
commits into
nrfconnect:main
Choose a base branch
from
bjarki-andreasen:idle-sample-fixes-nrf54h
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.
Draft
Idle sample fixes nrf54h #3314
bjarki-andreasen
wants to merge
25
commits into
nrfconnect:main
from
bjarki-andreasen:idle-sample-fixes-nrf54h
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
This was referenced Sep 26, 2025
4744597
to
ca2e549
Compare
5ba628d
to
131e9f7
Compare
34fb242
to
83cd357
Compare
…f CONFIG_PM=y The default log process thread stack size needs to be increased to account for the recursion into resuming power domains, which may happen within char_out for some backends like uart. Upstream PR #: 96695 Signed-off-by: Bjarki Arge Andreasen <[email protected]>
The NRFX SAADC device driver needs to implement PM DEVICE for it to work with power domains, which is required for some SoCs. Inline PM device runtime "self get/put" pm has been implemented for the normal sync read API. Upstream PR #: 96711 Signed-off-by: Bjarki Arge Andreasen <[email protected]>
…r_slow_main The ADC and COMP on the nrf54h20 both have all of their analog inputs routed to pads in different power domains than themselves, this means the device drivers for both of them need to request the pads to be resumed when active to allow any reading of the pads. To keep the drivers simple, we can rely on HW to keep the power domain the COMP and ADC are in powered, which happens automatically when the ADC or COMP is ENABLED. We can then place them on the power domain of their pads in the devicetree. This ensures the pads are powered and not retained while the devices are RESUMED. Upstream PR #: 96711 Signed-off-by: Bjarki Arge Andreasen <[email protected]>
Many SoCs which use PM_DEVICE_RUNTIME need every device in the system to have PM_DEVICE_RUNTIME enabled to function. Currently, this is only possible by adding zephyr,pm-device-runtime-auto; to every node in every devicetree which could potentially implement device power management. This is very error prone since its easy to miss a node, especially if users apply overlays, where users need to know and remember to apply or reapply this property. This commit adds a Kconfig, disabled by default, which automatically treats every device as if it had the zephyr,pm-device-runtime-auto property added to every node. Signed-off-by: Bjarki Arge Andreasen <[email protected]> (cherry picked from commit 34c51c5)
…NABLE for all Enable CONFIG_PM_DEVICE_RUNTIME_DEFAULT_ENABLE by default for all nordic SoCs if CONFIG_PM_DEVICE_RUNTIME is used. This will ensure consistent behavior across all nordic SoCs and remove the need for pasting the devicetree propert zephyr,pm-device-runtime-auto everywhere. Signed-off-by: Bjarki Arge Andreasen <[email protected]> (cherry picked from commit 61a9d6a)
… devices All devices used in their "normal"/intended configuration do not require management of the power domains, as the hardware itself will request them automatically. Thus by default, don't specify the power domains to avoid redundant resume/suspend cycles, which are slow and require threading (IPC) making devices not isr ok. Upstream PR #: 97452 Signed-off-by: Bjarki Arge Andreasen <[email protected]>
This reverts commit 6c0719c. Signed-off-by: Bjarki Arge Andreasen <[email protected]>
…efault" This reverts commit e9c0ac1. Signed-off-by: Bjarki Arge Andreasen <[email protected]>
This reverts commit 275f20e. Signed-off-by: Bjarki Arge Andreasen <[email protected]>
Applying dts-linter results for files in dts/arm/nordic Signed-off-by: Kyle Micallef Bonnici <[email protected]> (cherry picked from commit 51d5135)
…r for siwx91x SoC 1. Added siwx91x power domain node in siwg917.dtsi 2. Updated UART device nodes to reference the newly added power domain. 3. Implemented power domain driver to manage power domain transitions for the SoC. Signed-off-by: Sai Santhosh Malae <[email protected]> (cherry picked from commit 295431d)
Introduce nrfx_swext device driver for NRFS SWEXT power domain device. Signed-off-by: Bjarki Arge Andreasen <[email protected]> (cherry picked from commit 5db84c7)
DT_PROP_OR instead of DT_INST_PROP_OR was used and property from device tree was never used. Signed-off-by: Krzysztof Chruściński <[email protected]> (cherry picked from commit 767c21a)
The gpio pad groups are redundant if pin retention is handled per pin, and the quirky cross domain feature is managed by the application. Remove it entirely. Upstream PR #: 97452 Signed-off-by: Bjarki Arge Andreasen <[email protected]>
GPIO pad power domain management is not neccesary if the quirky cross domain feature is handled at the application level. Replace it with directly setting/clearing pin retention, as hardware will force power domains on automatically. Upstream PR #: 97452 Signed-off-by: Bjarki Arge Andreasen <[email protected]>
Replace the pad group integration with directly setting/clearing pin retention for output pins if required, since the pad group integration is redundant if the quirky cross domain feature is managed by the application. Upstream PR #: 97452 Signed-off-by: Bjarki Arge Andreasen <[email protected]>
…nalog input types External analog input types changed from `string` to `int`. Signed-off-by: Jakub Zymelka <[email protected]> (cherry picked from commit e5ecbd2)
Devices which use AIN (COMP, LPCOMP, SAADC) don't use pinctrl to configure their pins, thus pinctrl can't manage pin retention like is done for other devices. Thus for now, add manually disabling pin retention to the drivers. In the future, we should probably use pinctrl for these inputs as well, at which point this commit can be reverted. Upstream PR #: 97452 Signed-off-by: Bjarki Arge Andreasen <[email protected]>
83cd357
to
bdda47d
Compare
The hsfll120 is requested automatically by hardware which needs it, CLOCK_CONTROL can be used to set to lower the frequency it runs at, but this is a quirk which may be handled by the application if desired. Disable the global clocks and remove references to the hsfll120 from devices in the devicetree, and update samples which specifically test the control of the clocks using CLOCK_CONTROL to enable them. Signed-off-by: Bjarki Arge Andreasen <[email protected]>
The nRF54H20 supports a Bluetooth controller. The HCI driver interface has changed upstream in zephyrproject-rtos/zephyr#72323 so now we need to add it to device tree. Signed-off-by: Rubin Gerritsen <[email protected]> (cherry picked from commit e9a13c3) (cherry picked from commit 6f17dc3)
The SoftDevice Controller is a different controller than the open source link layer with a different set of quirks. It should therefore have its own device tree binding. This commit converts the SoftDevice Controller driver to use this new DTS binding instead of reusing the existing one. This commit updates or adds additional overlays for existing samples, applications and tests that were using the open source link layer. Signed-off-by: Rubin Gerritsen <[email protected]> Signed-off-by: Kristoffer Rist Skøien <[email protected]> Signed-off-by: Rafał Kuźnia <[email protected]> (cherry picked from commit 946fcec) (cherry picked from commit 6d216e1)
The SDC HCI controller is defined as a device tree node. A node representing the SDC controller is added and selected as the default over the open source link layer. This is consistent with other SoCs. Signed-off-by: Rafał Kuźnia <[email protected]> (cherry picked from commit da86248) (cherry picked from commit e40f531)
Enable nxp cmp test. Signed-off-by: Zhaoxiang Jin <[email protected]> (cherry picked from commit 78b4fed)
…hanged input types Align samples and tests boards overlays for changed comparator input types. Signed-off-by: Jakub Zymelka <[email protected]> (cherry picked from commit 6d7f429)
…to int Unify external analog inputs type to be consistent in COMP, LPCOMP and SAADC nordic drivers. Signed-off-by: Jakub Zymelka <[email protected]> (cherry picked from commit d85bdb7)
bdda47d
to
13bf4eb
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.
Cherry pick fixes and updates to PM