-
Notifications
You must be signed in to change notification settings - Fork 6.9k
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
rw6xx: Add Support for Standby Power Mode #84945
Open
mmahadevan108
wants to merge
15
commits into
zephyrproject-rtos:main
Choose a base branch
from
nxp-upstream:Add_PM_Mode3
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
+588
−51
Conversation
This file contains 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
zephyrbot
added
area: Power Management
area: UART
Universal Asynchronous Receiver-Transmitter
platform: NXP Drivers
NXP Semiconductors, drivers
area: GPIO
platform: NXP
NXP
labels
Jan 31, 2025
zephyrbot
requested review from
bjarki-andreasen,
butok,
ceolin,
dbaluta,
decsny,
DerekSnell,
dleach02,
EmilioCBen,
henrikbrixandersen,
JordanYates,
manuargue,
mnkp,
nashif,
teburd and
tmleman
January 31, 2025 03:34
Push a commit from #74371 to fix CI failures. |
Add PM action for MCUX LPC driver Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Add power action callback handlers to the driver. Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
This maps to Power Mode 3 in the SoC. Add RTC node that is used to wakeup from this mode. Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
This is required to re-initialize the peripherals on exit from Power Mode 3. Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
This clock is used for certain peripherals such as RTC. On certain RW612 boards such as rd_rw612_bga, XTAL32K and ENET share pins. Add code to check if ENET and XTAL32 are enabled at the same time. Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Since the clock source when running in PM mode 3 is the slower 1KHx clock, we adjust the SYS_CLOCK_TICKS_PER_SEC value to get better accuracy. Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
This maps to Zephyr power state Standby. In this power state the OS Timer cannot be used as a wakeup source as it will be powered off. Hence the counter is enabled and RTC is used to keep track of system ticks and wakeup the system. Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Update the clock init code to gate off unused clocks. Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Power Domains are used to re-enable peripherals when exit Power Mode 3 (Standby). Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
mmahadevan108
force-pushed
the
Add_PM_Mode3
branch
from
February 3, 2025 16:46
3428e54
to
a49fb1c
Compare
Provide an API for other drivers to fire GPIO callbacks Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Call the API provided to fire a GPIO interrupt if registered on wakeup from PM Mode 3. Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
This is used as wakeup source to wakeup from Power Modes 3 and 4. Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Enable PM mode 3 on NXP FRDM_RW612 and RD_RW612 boards. Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
This driver triggers the TURN_ON and TURN_OFF actions for certain power states. These power states are specified via device tree. Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
1. The sys_clock_idle_exit function could be invoked multiple times. Hence add code so that is counter is stopped and the OS Timer is initialized once. 2. Reset the OS Timer when exiting low power modes where the OS Timer loses its state 3. Improve the cycles conversion algorithm. Round to the nearest microsecond when converting from ticks to microsecond rather than always rounding up to the next highest value. Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
mmahadevan108
force-pushed
the
Add_PM_Mode3
branch
from
February 3, 2025 19:10
a49fb1c
to
2c4e466
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
area: Devicetree
area: GPIO
area: Power Management
area: Timer
Timer
area: UART
Universal Asynchronous Receiver-Transmitter
platform: NXP Drivers
NXP Semiconductors, drivers
platform: NXP
NXP
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.
This maps to Power Mode 3 in the SoC Power Profile
This PR is dependent on #74371 and #84938