@@ -150,37 +150,35 @@ Suspend to RAM (S2RAM) operation of the application requires special support fro
150150MCUboot on the nRF54H20 SoC supports Suspend to RAM (S2RAM) functionality in the application.
151151It can detect a wake-up from S2RAM and redirect execution to the application's resume routine.
152152
153- To enable S2RAM support for your project, set the following MCUboot Kconfig options :
153+ To enable S2RAM support for your project, set the following MCUboot Kconfig option :
154154
155- * :kconfig:option: `CONFIG_PM ` - Power management support.
156- * :kconfig:option: `CONFIG_PM_S2RAM ` - Suspend to RAM support.
157- * :kconfig:option: `CONFIG_PM_S2RAM_CUSTOM_MARKING ` - Custom S2RAM marking support.
158- * :kconfig:option: `CONFIG_SOC_NRF54H20_PM_S2RAM_OVERRIDE ` - Enables MCUboot to override the default Nordic S2RAM implementation.
155+ * :kconfig:option: `CONFIG_SOC_EARLY_RESET_HOOK ` - Enables MCUboot to integrate S2RAM resume bridge into start-up code.
159156
160157Also ensure that your board's DTS file includes the following Zephyr nodes, which describe the linker sections used:
161158
162- * a ``zephyr,memory-region `` compatible node with nodelabel ``pm_s2ram `` of 32 B size for placing S2RAM cpu context RAM.
163- * a ``zephyr,memory-region `` compatible node with nodelabel ``mcuboot_s2ram `` of 4 B size for placing MCUboot's S2RAM magic variable.
159+ * a ``zephyr,memory-region `` compatible node with nodelabel ``mcuboot_s2ram `` of 8 B size for placing MCUboot's S2RAM magic variable.
160+ * a ``zephyr,memory-region `` compatible node labeled ``pm_s2ram_stack ``, with a size of 16 bytes.
161+ This region is used as the program stack during S2RAM resume by MCUboot.
164162
165163Example DTS snippet:
166164
167165.. code-block :: dts
168166
169167 / {
170168 soc {
171- /* run-time common mcuboot S2RAM support section */
172- mcuboot_s2ram: cpuapp_s2ram@22007fdc {
173- compatible = "zephyr,memory-region", "mmio-sram";
174- reg = <0x22007fdc 4 >;
175- zephyr,memory-region = "mcuboot_s2ram_context";
176- };
177-
178- /* S2RAM cpu context RAM allocation */
179- pm_s2ram: cpuapp_s2ram@22007fe0 {
180- compatible = "zephyr,memory-region", "mmio-sram";
181- reg = <0x22007fe0 32 >;
182- zephyr,memory-region = "pm_s2ram_context ";
183- };
169+ /* run-time common mcuboot S2RAM support section */
170+ mcuboot_s2ram: cpuapp_s2ram@22007fd8 {
171+ compatible = "zephyr,memory-region", "mmio-sram";
172+ reg = <0x22007fd8 8 >;
173+ zephyr,memory-region = "mcuboot_s2ram_context";
174+ };
175+
176+ /* temporary stack for S2RAM resume logic */
177+ pm_s2ram_stack: cpuapp_s2ram_stack@22007fc0 {
178+ compatible = "zephyr,memory-region", "mmio-sram";
179+ reg = <0x22007fc0 16 >;
180+ zephyr,memory-region = "pm_s2ram_stack ";
181+ };
184182 };
185183 };
186184
0 commit comments