@@ -158,30 +158,41 @@ To enable S2RAM support for your project, set the following MCUboot Kconfig opti
158
158
159
159
Also ensure that your board DTS file includes the following zephyr nodes for describing linker section used:
160
160
161
- * a ``zephyr,memory-region `` compatible node with nodelabel ``pm_s2ram `` of 32 B size for placing S2RAM cpu context RAM.
162
- * a ``zephyr,memory-region `` compatible node with nodelabel ``mcuboot_s2ram `` of 4 B size for placing MCUboot's S2RAM magic variable.
161
+ * A ``zephyr,memory-region `` compatible node labeled ``pm_s2ram ``, with a size of 32 bytes.
162
+ This region is used to store the S2RAM CPU context.
163
+ * A ``zephyr,memory-region `` compatible node labeled ``pm_s2ram_stack ``, with a size of 32 bytes.
164
+ This region is used as the program stack during S2RAM resume.
165
+ * A ``zephyr,memory-region `` compatible node labeled ``mcuboot_s2ram ``, with a size of 4 bytes.
166
+ This region is used to store the MCUboot S2RAM magic variable.
163
167
164
168
Example DTS snippet:
165
169
166
170
.. code-block :: dts
167
171
168
- / {
172
+ / {
169
173
soc {
170
- /* run-time common mcuboot S2RAM support section */
171
- mcuboot_s2ram: cpuapp_s2ram@22007fdc {
172
- compatible = "zephyr,memory-region", "mmio-sram";
173
- reg = <0x22007fdc 4>;
174
- zephyr,memory-region = "mcuboot_s2ram_context";
175
- };
176
-
177
- /* S2RAM cpu context RAM allocation */
178
- pm_s2ram: cpuapp_s2ram@22007fe0 {
179
- compatible = "zephyr,memory-region", "mmio-sram";
180
- reg = <0x22007fe0 32>;
181
- zephyr,memory-region = "pm_s2ram_context";
182
- };
174
+ /* run-time common mcuboot S2RAM support section */
175
+ mcuboot_s2ram: cpuapp_s2ram@22007fdc {
176
+ compatible = "zephyr,memory-region", "mmio-sram";
177
+ reg = <0x22007fdc 4>;
178
+ zephyr,memory-region = "mcuboot_s2ram_context";
179
+ };
180
+
181
+ /* temporary stack for S2RAM resume logic */
182
+ pm_s2ram_stack: cpuapp_s2ram_stack@22007fd0 {
183
+ compatible = "zephyr,memory-region", "mmio-sram";
184
+ reg = <0x22007fd0 16>;
185
+ zephyr,memory-region = "pm_s2ram_stack";
186
+ };
187
+
188
+ /* S2RAM cpu context RAM allocation */
189
+ pm_s2ram: cpuapp_s2ram@22007fe0 {
190
+ compatible = "zephyr,memory-region", "mmio-sram";
191
+ reg = <0x22007fe0 32>;
192
+ zephyr,memory-region = "pm_s2ram_context";
193
+ };
183
194
};
184
- };
195
+ };
185
196
186
197
Memory and cache optimization recommendations
187
198
=============================================
0 commit comments