Skip to content

Commit f59e127

Browse files
committed
dts: mcxw7x: Add Power Management support
Add support for power management states Signed-off-by: Mahesh Mahadevan <[email protected]>
1 parent ca68c77 commit f59e127

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

dts/arm/nxp/nxp_mcxw7x_common.dtsi

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
cpu0: cpu@0 {
3333
compatible = "arm,cortex-m33f";
3434
reg = <0>;
35+
cpu-power-states = <&sleep &sleep_optimized &deep_sleep_optimized>;
3536
#address-cells = <1>;
3637
#size-cells = <1>;
3738

@@ -40,6 +41,46 @@
4041
reg = <0xe000ed90 0x40>;
4142
};
4243
};
44+
45+
power-states {
46+
/* This is corresponding to entering the "sleep" mode
47+
* of the MCXW without any futher configurations. This is most simple
48+
* state and is just entered by doing WFI mostly.
49+
*/
50+
sleep: sleep {
51+
compatible = "zephyr,power-state";
52+
power-state-name = "runtime-idle";
53+
min-residency-us = <100>;
54+
exit-latency-us = <0>;
55+
};
56+
/* This is corresponding to "sleep mode" with extra
57+
* optimization by gating the clocks of certain peripherals,
58+
* also the subdomains voltage levels could be configured differently
59+
* Note it is "suspend-to-idle" for zephyr due to some peripherals may
60+
* lose operation if their clock is gated, even though it is same
61+
* hardware power mode.
62+
*/
63+
sleep_optimized: sleep-optimized {
64+
compatible = "zephyr,power-state";
65+
power-state-name = "suspend-to-idle";
66+
substate-id = <0>;
67+
min-residency-us = <500>;
68+
exit-latency-us = <10>;
69+
};
70+
/* It is possible to do more configuring of the hardware in addition
71+
* to just enter deep sleep, the peripherals in core domain
72+
* can be power gated instead of just low power retention,
73+
* and different peripheral in wakeup domain can be put in low power
74+
* instead of remaining operational. So this is "standby" due to
75+
* allowing configure of power gating peripherals which could lose state
76+
*/
77+
deep_sleep_optimized: deep-sleep-optimized {
78+
compatible = "zephyr,power-state";
79+
power-state-name = "standby";
80+
min-residency-us = <1000>;
81+
exit-latency-us = <11>;
82+
};
83+
};
4384
};
4485

4586
soc {

0 commit comments

Comments
 (0)