Skip to content

Commit d5ec504

Browse files
committed
applications: nrf_desktop: nrf54h20dk: use MCUboot custom code for PM
Enabled the CONFIG_SOC_NRF54H20_PM_S2RAM_OVERRIDE Kconfig option in the MCUboot image configuration for the nRF54H20 DK target. This change is aligned with the general direction of the MCUboot-based DFU solution for the nRF54H20 SoC. It limits the bootloader reponsibility for the wake-up from the Suspend To RAM (S2RAM) state to the bare minimum and allows more flexibility when it comes to future improvements for the power management system. These improvements can be easily updated with the DFU in the application image. On the other hand, the PM code cannot be changed in the MCUboot image in the most common case where the MCUboot is set up as an immutable bootloader. Ref: NCSDK-35408 Signed-off-by: Kamil Piszczek <[email protected]>
1 parent 635d811 commit d5ec504

File tree

4 files changed

+16
-12
lines changed

4 files changed

+16
-12
lines changed

applications/nrf_desktop/configuration/nrf54h20dk_nrf54h20_cpuapp/images/mcuboot/prj.conf

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,13 @@ CONFIG_BOOT_VERSION_CMP_USE_BUILD_NUMBER=y
1414
CONFIG_FLASH=y
1515
# CONFIG_FPROTECT is not supported yet on the nRF54H20 SoC
1616

17-
# Configure Zephyr system power management
18-
# The Zephyr system power management is used by the MCUboot bootloader to detect wake-up from
19-
# S2RAM and redirect execution to the resume routine of the application image
17+
# Configure support for resuming the application execution after suspend to RAM (S2RAM)
18+
# that is requested by the application. MCUboot does not support S2RAM itself, but serves
19+
# as an immediate actor while waking up from suspension.
2020
CONFIG_PM=y
2121
CONFIG_PM_S2RAM=y
2222
CONFIG_PM_S2RAM_CUSTOM_MARKING=y
23+
CONFIG_SOC_NRF54H20_PM_S2RAM_OVERRIDE=y
2324

2425
# Disable device power management as it is not used by the bootloader
2526
CONFIG_PM_DEVICE=n

applications/nrf_desktop/configuration/nrf54h20dk_nrf54h20_cpuapp/images/mcuboot/prj_dongle.conf

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,13 @@ CONFIG_BOOT_VERSION_CMP_USE_BUILD_NUMBER=y
1414
CONFIG_FLASH=y
1515
# CONFIG_FPROTECT is not supported yet on the nRF54H20 SoC
1616

17-
# Configure Zephyr system power management
18-
# The Zephyr system power management is used by the MCUboot bootloader to detect wake-up from
19-
# S2RAM and redirect execution to the resume routine of the application image
17+
# Configure support for resuming the application execution after suspend to RAM (S2RAM)
18+
# that is requested by the application. MCUboot does not support S2RAM itself, but serves
19+
# as an immediate actor while waking up from suspension.
2020
CONFIG_PM=y
2121
CONFIG_PM_S2RAM=y
2222
CONFIG_PM_S2RAM_CUSTOM_MARKING=y
23+
CONFIG_SOC_NRF54H20_PM_S2RAM_OVERRIDE=y
2324

2425
# Disable device power management as it is not used by the bootloader
2526
CONFIG_PM_DEVICE=n

applications/nrf_desktop/configuration/nrf54h20dk_nrf54h20_cpuapp/images/mcuboot/prj_release.conf

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,13 @@ CONFIG_FLASH=y
1616

1717
CONFIG_RESET_ON_FATAL_ERROR=y
1818

19-
# Configure Zephyr system power management
20-
# The Zephyr system power management is used by the MCUboot bootloader to detect wake-up from
21-
# S2RAM and redirect execution to the resume routine of the application image
19+
# Configure support for resuming the application execution after suspend to RAM (S2RAM)
20+
# that is requested by the application. MCUboot does not support S2RAM itself, but serves
21+
# as an immediate actor while waking up from suspension.
2222
CONFIG_PM=y
2323
CONFIG_PM_S2RAM=y
2424
CONFIG_PM_S2RAM_CUSTOM_MARKING=y
25+
CONFIG_SOC_NRF54H20_PM_S2RAM_OVERRIDE=y
2526

2627
# Disable device power management as it is not used by the bootloader
2728
CONFIG_PM_DEVICE=n

applications/nrf_desktop/configuration/nrf54h20dk_nrf54h20_cpuapp/images/mcuboot/prj_release_dongle.conf

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,13 @@ CONFIG_FLASH=y
1616

1717
CONFIG_RESET_ON_FATAL_ERROR=y
1818

19-
# Configure Zephyr system power management
20-
# The Zephyr system power management is used by the MCUboot bootloader to detect wake-up from
21-
# S2RAM and redirect execution to the resume routine of the application image
19+
# Configure support for resuming the application execution after suspend to RAM (S2RAM)
20+
# that is requested by the application. MCUboot does not support S2RAM itself, but serves
21+
# as an immediate actor while waking up from suspension.
2222
CONFIG_PM=y
2323
CONFIG_PM_S2RAM=y
2424
CONFIG_PM_S2RAM_CUSTOM_MARKING=y
25+
CONFIG_SOC_NRF54H20_PM_S2RAM_OVERRIDE=y
2526

2627
# Disable device power management as it is not used by the bootloader
2728
CONFIG_PM_DEVICE=n

0 commit comments

Comments
 (0)