diff --git a/doc/nrf/app_dev/device_guides/nrf54h/ug_nrf54h20_pm_optimization.rst b/doc/nrf/app_dev/device_guides/nrf54h/ug_nrf54h20_pm_optimization.rst index 8f7507ee63dd..a8a37e67a217 100644 --- a/doc/nrf/app_dev/device_guides/nrf54h/ug_nrf54h20_pm_optimization.rst +++ b/doc/nrf/app_dev/device_guides/nrf54h/ug_nrf54h20_pm_optimization.rst @@ -158,30 +158,41 @@ To enable S2RAM support for your project, set the following MCUboot Kconfig opti Also ensure that your board DTS file includes the following zephyr nodes for describing linker section used: -* a ``zephyr,memory-region`` compatible node with nodelabel ``pm_s2ram`` of 32 B size for placing S2RAM cpu context RAM. -* a ``zephyr,memory-region`` compatible node with nodelabel ``mcuboot_s2ram`` of 4 B size for placing MCUboot's S2RAM magic variable. +* A ``zephyr,memory-region`` compatible node labeled ``pm_s2ram``, with a size of 32 bytes. + This region is used to store the S2RAM CPU context. +* A ``zephyr,memory-region`` compatible node labeled ``pm_s2ram_stack``, with a size of 32 bytes. + This region is used as the program stack during S2RAM resume. +* A ``zephyr,memory-region`` compatible node labeled ``mcuboot_s2ram``, with a size of 4 bytes. + This region is used to store the MCUboot S2RAM magic variable. Example DTS snippet: .. code-block:: dts - / { + / { soc { - /* run-time common mcuboot S2RAM support section */ - mcuboot_s2ram: cpuapp_s2ram@22007fdc { - compatible = "zephyr,memory-region", "mmio-sram"; - reg = <0x22007fdc 4>; - zephyr,memory-region = "mcuboot_s2ram_context"; - }; - - /* S2RAM cpu context RAM allocation */ - pm_s2ram: cpuapp_s2ram@22007fe0 { - compatible = "zephyr,memory-region", "mmio-sram"; - reg = <0x22007fe0 32>; - zephyr,memory-region = "pm_s2ram_context"; - }; + /* run-time common mcuboot S2RAM support section */ + mcuboot_s2ram: cpuapp_s2ram@22007fdc { + compatible = "zephyr,memory-region", "mmio-sram"; + reg = <0x22007fdc 4>; + zephyr,memory-region = "mcuboot_s2ram_context"; + }; + + /* temporary stack for S2RAM resume logic */ + pm_s2ram_stack: cpuapp_s2ram_stack@22007fd0 { + compatible = "zephyr,memory-region", "mmio-sram"; + reg = <0x22007fd0 16>; + zephyr,memory-region = "pm_s2ram_stack"; + }; + + /* S2RAM cpu context RAM allocation */ + pm_s2ram: cpuapp_s2ram@22007fe0 { + compatible = "zephyr,memory-region", "mmio-sram"; + reg = <0x22007fe0 32>; + zephyr,memory-region = "pm_s2ram_context"; + }; }; - }; + }; Memory and cache optimization recommendations ============================================= diff --git a/west.yml b/west.yml index 72a841fe90f4..390483ef698c 100644 --- a/west.yml +++ b/west.yml @@ -65,7 +65,7 @@ manifest: # https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/zephyr/guides/modules.html - name: zephyr repo-path: sdk-zephyr - revision: 7d3bd3993600d433ab0653391aee2fa2b4ce3fda + revision: d4bb1c6b9f1c941480a457b18ae36c9bdf49faa7 import: # In addition to the zephyr repository itself, NCS also # imports the contents of zephyr/west.yml at the above