Skip to main content
Visitor II
July 5, 2021
Solved

How to activate hibernation on STM32MP15X with embedded Linux?

  • July 5, 2021
  • 3 replies
  • 5829 views

In our project we are currently trying to decrease boot time and energy consumption of an embedded linux running on an STM32MP153.

To improve energy consumption we are trying to activate hibernation, in order to test suspend-to-disk as well as the hybrid-sleep mechanism.

I have activated hibernation in the kernel and have also created a swap disk (which does not mount properly after reboot) by hand.

But still "/sys/power/state" gives me nothing more but "mem", indicating we can only do a suspend-to-ram and returns "not supported" for anything else i'll try to echo into it.

Is there a possibility to enable hibernation, even if the documentation does not list it explicitly?

Thanks in advance!

    This topic has been closed for replies.
    Best answer by PatrickF

    Hi,

    as per AN5109:

    "echo 'mem' > /sys/power/state

    The 'disk', 'freeze' and 'standby' commands are not supported on STM32MP15x lines."

    For sure, with some development, all should be possible (I'm not SW specialist).

    Using LPDDR2 or LPDDR3 with STANDBY (no RETRAM), you could be below 500 uW typical power for STM32MP15x VDD + DDR (DDR power is dominant).

    With a wakeup for Linux in less than 1sec.

    See https://wiki.st.com/stm32mpu/wiki/How_to_define_your_low-power_strategy

    Regards.

    3 replies

    PatrickFAnswer
    Technical Moderator
    July 5, 2021

    Hi,

    as per AN5109:

    "echo 'mem' > /sys/power/state

    The 'disk', 'freeze' and 'standby' commands are not supported on STM32MP15x lines."

    For sure, with some development, all should be possible (I'm not SW specialist).

    Using LPDDR2 or LPDDR3 with STANDBY (no RETRAM), you could be below 500 uW typical power for STM32MP15x VDD + DDR (DDR power is dominant).

    With a wakeup for Linux in less than 1sec.

    See https://wiki.st.com/stm32mpu/wiki/How_to_define_your_low-power_strategy

    Regards.

    RAhlb.1Author
    Visitor II
    July 6, 2021

    Hey,

    thanks for the fast answer.

    I must've overread the AN5109 part with /sys/power/state. Very unfortunate, but we should be mostly fine, even only with 'mem'.

    I'll bring that recommendation into discussion the next time I have a HW specialist around me. That sounds promising, as we are at around 22 secs for a cold start right now. But first I have to fix another issue, as the Wireless LAN does not restart after a suspend.

    Technical Moderator
    July 6, 2021

    For boot time, some generic information here https://wiki.st.com/stm32mpu/wiki/How_to_optimize_the_boot_time

    Technical Moderator
    July 6, 2021

    In case of different issue (e.g. WLAN as you mention), maybe good to create another question thread.

    Regards.

    In order to give better visibility on the answered topics, please click on 'Select as Best' on the reply which solved your issue or answered your question. See also 'Best Answers'